Address virtual host style addressing bugs for short subdomains provided in endpoint_url
#2941
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This addresses #2938. Currently
RuleSetStandardLibrary.aws_is_virtual_hostable_s3_bucket
is performing the exact same validations on the entire input value as it does with individual subdomains within the input value. This is incorrect because only the entire value needs to be at least 3 characters, not each individual component. As described in the issue, this caused a bug when enabling virtual style addressing and providing anendpoint_url
to an S3 client that is insecure (http not https). For bucket names that look like URLs containing short subdomain fragments, path style is being used instead which is incorrect.Additionally, we only need to perform validation that the input value is not an IPV4 address, None and all lowercase at the top level so the recursive check has been removed.