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

net/url: Parse doesn't support RFC 6847: literal IPv6 address w/ zone in URI #6530

Closed
mikioh opened this issue Oct 3, 2013 · 3 comments
Closed
Milestone

Comments

@mikioh
Copy link
Contributor

mikioh commented Oct 3, 2013

go run [attached] shows "url.Parse: parse http://[fe80::1%25em0]:5963/: hexadecimal
escape in host" error.
See http://tools.ietf.org/html/rfc6874.

Attachments:

  1. url.go (554 bytes)
@mikioh
Copy link
Contributor Author

mikioh commented Oct 3, 2013

Comment 1:

Labels changed: added go1.3maybe, removed priority-triage.

@rsc
Copy link
Contributor

rsc commented Dec 4, 2013

Comment 2:

Labels changed: added release-none, removed go1.3maybe.

@rsc
Copy link
Contributor

rsc commented Dec 4, 2013

Comment 3:

Labels changed: added repo-main.

@mikioh mikioh removed the Thinking label Feb 4, 2015
@mikioh mikioh closed this as completed in 8e95654 Apr 7, 2015
@mikioh mikioh added this to the Go1.5 milestone Apr 9, 2015
yichengq added a commit to yichengq/etcd that referenced this issue Oct 5, 2015
We use url.ParseQuery to parse names-to-urls string, but it has side
effect that unescape the string. If the initial-cluster string has ipv6
which contains `%25`, it will unescape it to `%` and make further url
parse failed.

Fix it by modifiying the parse process.

Go1.4 doesn't support literal IPv6 address w/ zone in
URI(golang/go#6530), so we only enable tests
in Go1.5+.
yichengq added a commit to yichengq/etcd that referenced this issue Oct 5, 2015
We use url.ParseQuery to parse names-to-urls string, but it has side
effect that unescape the string. If the initial-cluster string has ipv6
which contains `%25`, it will unescape it to `%` and make further url
parse failed.

Fix it by modifiying the parse process.

Go1.4 doesn't support literal IPv6 address w/ zone in
URI(golang/go#6530), so we only enable tests
in Go1.5+.
yichengq added a commit to yichengq/etcd that referenced this issue Oct 15, 2015
We use url.ParseQuery to parse names-to-urls string, but it has side
effect that unescape the string. If the initial-cluster string has ipv6
which contains `%25`, it will unescape it to `%` and make further url
parse failed.

Fix it by modifiying the parse process.

Go1.4 doesn't support literal IPv6 address w/ zone in
URI(golang/go#6530), so we only enable tests
in Go1.5+.
@golang golang locked and limited conversation to collaborators Jun 25, 2016
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants