Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cannot use pattern syntax inside ipv6 address #115

Closed
wanderview opened this issue Sep 2, 2021 · 0 comments
Closed

cannot use pattern syntax inside ipv6 address #115

wanderview opened this issue Sep 2, 2021 · 0 comments

Comments

@wanderview
Copy link
Member

We added support to the constructor string parser over in #113. This allows ipv6 literals like new URLPattern("http://[\\:\\:1]") to be used. There is, however, a separate ipv6 problem.

If you have an ipv6 hostname it becomes impossible to use any pattern syntax inside the address. For example, all of these currently throw:

// these throw right now
new URLPattern({ hostname: '[:address]' });
new URLPattern("http://[:address]");

The problem is that we pass only the "plain text" parts of the pattern to the hostname encoding callback. The callback then delegates to the URL parsing state machine. So the URL parsing state machine sees a [ string by itself. This throws since the URL parsing state machine requires any hostname starting with [ to also end with a ] and then also successfully parse as ipv6.

We will need to use a more lenient hostname encoding callback for hostname patterns that appear to be ipv6.

chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this issue Sep 2, 2021
This adds support for patterns that having matching syntax inside of
IPv6 address hostnames like:

  new URLPattern({ hostname: '[:address]' });

This issue is discussed here:

  whatwg/urlpattern#115

This CL also does a drive-by fix of a stale header reference in the
blink presubmit warnings.

Fixed: 1245998
Change-Id: I772258dc69c2b658ee4d7306b4f1975324624338
chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this issue Sep 3, 2021
This adds support for patterns that having matching syntax inside of
IPv6 address hostnames like:

  new URLPattern({ hostname: '[:address]' });

This issue is discussed here:

  whatwg/urlpattern#115

This CL also does a drive-by fix of a stale header reference in the
blink presubmit warnings.

Fixed: 1245998
Change-Id: I772258dc69c2b658ee4d7306b4f1975324624338
wanderview added a commit that referenced this issue Sep 3, 2021
Support pattern syntax in ipv6 hostnames. (Fixes #115)
chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this issue Sep 8, 2021
This adds support for patterns that having matching syntax inside of
IPv6 address hostnames like:

  new URLPattern({ hostname: '[:address]' });

This issue is discussed here:

  whatwg/urlpattern#115

This CL also does a drive-by fix of a stale header reference in the
blink presubmit warnings.

Fixed: 1245998
Change-Id: I772258dc69c2b658ee4d7306b4f1975324624338
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3140140
Reviewed-by: Jeremy Roman <jbroman@chromium.org>
Reviewed-by: Stephen McGruer <smcgruer@chromium.org>
Commit-Queue: Ben Kelly <wanderview@chromium.org>
Cr-Commit-Position: refs/heads/main@{#919392}
chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this issue Sep 8, 2021
This adds support for patterns that having matching syntax inside of
IPv6 address hostnames like:

  new URLPattern({ hostname: '[:address]' });

This issue is discussed here:

  whatwg/urlpattern#115

This CL also does a drive-by fix of a stale header reference in the
blink presubmit warnings.

Fixed: 1245998
Change-Id: I772258dc69c2b658ee4d7306b4f1975324624338
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3140140
Reviewed-by: Jeremy Roman <jbroman@chromium.org>
Reviewed-by: Stephen McGruer <smcgruer@chromium.org>
Commit-Queue: Ben Kelly <wanderview@chromium.org>
Cr-Commit-Position: refs/heads/main@{#919392}
moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this issue Sep 22, 2021
…v6 hostnames., a=testonly

Automatic update from web-platform-tests
URLPattern: Support pattern syntax in IPv6 hostnames.

This adds support for patterns that having matching syntax inside of
IPv6 address hostnames like:

  new URLPattern({ hostname: '[:address]' });

This issue is discussed here:

  whatwg/urlpattern#115

This CL also does a drive-by fix of a stale header reference in the
blink presubmit warnings.

Fixed: 1245998
Change-Id: I772258dc69c2b658ee4d7306b4f1975324624338
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3140140
Reviewed-by: Jeremy Roman <jbroman@chromium.org>
Reviewed-by: Stephen McGruer <smcgruer@chromium.org>
Commit-Queue: Ben Kelly <wanderview@chromium.org>
Cr-Commit-Position: refs/heads/main@{#919392}

--

wpt-commits: 9ed05ce5db764a0c508090034ffbb7014ec2b639
wpt-pr: 30309
aosmond pushed a commit to aosmond/gecko that referenced this issue Sep 24, 2021
…v6 hostnames., a=testonly

Automatic update from web-platform-tests
URLPattern: Support pattern syntax in IPv6 hostnames.

This adds support for patterns that having matching syntax inside of
IPv6 address hostnames like:

  new URLPattern({ hostname: '[:address]' });

This issue is discussed here:

  whatwg/urlpattern#115

This CL also does a drive-by fix of a stale header reference in the
blink presubmit warnings.

Fixed: 1245998
Change-Id: I772258dc69c2b658ee4d7306b4f1975324624338
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3140140
Reviewed-by: Jeremy Roman <jbroman@chromium.org>
Reviewed-by: Stephen McGruer <smcgruer@chromium.org>
Commit-Queue: Ben Kelly <wanderview@chromium.org>
Cr-Commit-Position: refs/heads/main@{#919392}

--

wpt-commits: 9ed05ce5db764a0c508090034ffbb7014ec2b639
wpt-pr: 30309
Gabisampaio pushed a commit to Gabisampaio/wpt that referenced this issue Nov 18, 2021
This adds support for patterns that having matching syntax inside of
IPv6 address hostnames like:

  new URLPattern({ hostname: '[:address]' });

This issue is discussed here:

  whatwg/urlpattern#115

This CL also does a drive-by fix of a stale header reference in the
blink presubmit warnings.

Fixed: 1245998
Change-Id: I772258dc69c2b658ee4d7306b4f1975324624338
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3140140
Reviewed-by: Jeremy Roman <jbroman@chromium.org>
Reviewed-by: Stephen McGruer <smcgruer@chromium.org>
Commit-Queue: Ben Kelly <wanderview@chromium.org>
Cr-Commit-Position: refs/heads/main@{#919392}
wanderview added a commit to wanderview/urlpattern-polyfill that referenced this issue Jan 6, 2022
kenchris pushed a commit to kenchris/urlpattern-polyfill that referenced this issue Jan 6, 2022
mjfroman pushed a commit to mjfroman/moz-libwebrtc-third-party that referenced this issue Oct 14, 2022
This adds support for patterns that having matching syntax inside of
IPv6 address hostnames like:

  new URLPattern({ hostname: '[:address]' });

This issue is discussed here:

  whatwg/urlpattern#115

This CL also does a drive-by fix of a stale header reference in the
blink presubmit warnings.

Fixed: 1245998
Change-Id: I772258dc69c2b658ee4d7306b4f1975324624338
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3140140
Reviewed-by: Jeremy Roman <jbroman@chromium.org>
Reviewed-by: Stephen McGruer <smcgruer@chromium.org>
Commit-Queue: Ben Kelly <wanderview@chromium.org>
Cr-Commit-Position: refs/heads/main@{#919392}
NOKEYCHECK=True
GitOrigin-RevId: d78439a4b3e959d8f0fca925eaba89758164ccc9
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

1 participant