From 8d9bb1e1ccd767f1ffddab7952c0981c8af904bf Mon Sep 17 00:00:00 2001 From: Marcel van Lohuizen Date: Wed, 1 Nov 2017 18:45:42 +0100 Subject: [PATCH] vendor/golang_org/x/net/idna: update from upstream The only file that really changed is x/net/idna (upstream 8253218a). See CL 73730: avoid memory leak in validation codes The rest is just a small change in the generation line at the top. Change-Id: I62c5172f77f63d919c41d11c6db0a9517bc2a221 Reviewed-on: https://go-review.googlesource.com/74953 Reviewed-by: Brad Fitzpatrick --- src/vendor/golang_org/x/net/idna/idna.go | 19 +++++++++++++++++-- src/vendor/golang_org/x/net/idna/punycode.go | 2 +- src/vendor/golang_org/x/net/idna/tables.go | 2 +- src/vendor/golang_org/x/net/idna/trie.go | 2 +- src/vendor/golang_org/x/net/idna/trieval.go | 2 +- .../x/text/secure/bidirule/bidirule.go | 2 +- src/vendor/golang_org/x/text/secure/doc.go | 2 +- .../golang_org/x/text/transform/transform.go | 2 +- .../golang_org/x/text/unicode/bidi/bidi.go | 2 +- .../golang_org/x/text/unicode/bidi/bracket.go | 2 +- .../golang_org/x/text/unicode/bidi/core.go | 2 +- .../golang_org/x/text/unicode/bidi/prop.go | 2 +- .../golang_org/x/text/unicode/bidi/tables.go | 2 +- .../golang_org/x/text/unicode/bidi/trieval.go | 2 +- src/vendor/golang_org/x/text/unicode/doc.go | 2 +- .../x/text/unicode/norm/composition.go | 2 +- .../x/text/unicode/norm/forminfo.go | 2 +- .../golang_org/x/text/unicode/norm/input.go | 2 +- .../golang_org/x/text/unicode/norm/iter.go | 2 +- .../x/text/unicode/norm/normalize.go | 2 +- .../x/text/unicode/norm/readwriter.go | 2 +- .../golang_org/x/text/unicode/norm/tables.go | 2 +- .../x/text/unicode/norm/transform.go | 2 +- .../golang_org/x/text/unicode/norm/trie.go | 2 +- 24 files changed, 40 insertions(+), 25 deletions(-) diff --git a/src/vendor/golang_org/x/net/idna/idna.go b/src/vendor/golang_org/x/net/idna/idna.go index 731282a834..9fd0334cd9 100644 --- a/src/vendor/golang_org/x/net/idna/idna.go +++ b/src/vendor/golang_org/x/net/idna/idna.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Copyright 2016 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style @@ -309,7 +309,7 @@ func (p *Profile) process(s string, toASCII bool) (string, error) { for ; len(s) > 0 && s[0] == '.'; s = s[1:] { } } - // TODO: allow for a quick check the tables data. + // TODO: allow for a quick check of the tables data. // It seems like we should only create this error on ToASCII, but the // UTS 46 conformance tests suggests we should always check this. if err == nil && p.verifyDNSLength && s == "" { @@ -405,6 +405,9 @@ func validateRegistration(p *Profile, s string) (idem string, bidi bool, err err } for i := 0; i < len(s); { v, sz := trie.lookupString(s[i:]) + if sz == 0 { + return s, bidi, runeError(utf8.RuneError) + } bidi = bidi || info(v).isBidi(s[i:]) // Copy bytes not copied so far. switch p.simplify(info(v).category()) { @@ -446,6 +449,15 @@ func validateAndMap(p *Profile, s string) (vm string, bidi bool, err error) { var combinedInfoBits info for i := 0; i < len(s); { v, sz := trie.lookupString(s[i:]) + if sz == 0 { + b = append(b, s[k:i]...) + b = append(b, "\ufffd"...) + k = len(s) + if err == nil { + err = runeError(utf8.RuneError) + } + break + } combinedInfoBits |= info(v) bidi = bidi || info(v).isBidi(s[i:]) start := i @@ -584,6 +596,9 @@ func validateFromPunycode(p *Profile, s string) error { // loop. for i := 0; i < len(s); { v, sz := trie.lookupString(s[i:]) + if sz == 0 { + return runeError(utf8.RuneError) + } if c := p.simplify(info(v).category()); c != valid && c != deviation { return &labelError{s, "V6"} } diff --git a/src/vendor/golang_org/x/net/idna/punycode.go b/src/vendor/golang_org/x/net/idna/punycode.go index fab9229881..02c7d59af3 100644 --- a/src/vendor/golang_org/x/net/idna/punycode.go +++ b/src/vendor/golang_org/x/net/idna/punycode.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Copyright 2016 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style diff --git a/src/vendor/golang_org/x/net/idna/tables.go b/src/vendor/golang_org/x/net/idna/tables.go index c00dc075e9..a470c5a3e2 100644 --- a/src/vendor/golang_org/x/net/idna/tables.go +++ b/src/vendor/golang_org/x/net/idna/tables.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Code generated by running "go generate" in golang_org/x/text. DO NOT EDIT. diff --git a/src/vendor/golang_org/x/net/idna/trie.go b/src/vendor/golang_org/x/net/idna/trie.go index 000fb979a0..c4ef847e7a 100644 --- a/src/vendor/golang_org/x/net/idna/trie.go +++ b/src/vendor/golang_org/x/net/idna/trie.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Copyright 2016 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style diff --git a/src/vendor/golang_org/x/net/idna/trieval.go b/src/vendor/golang_org/x/net/idna/trieval.go index 4bf062ca64..5f4e5f2e74 100644 --- a/src/vendor/golang_org/x/net/idna/trieval.go +++ b/src/vendor/golang_org/x/net/idna/trieval.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Code generated by running "go generate" in golang_org/x/text. DO NOT EDIT. diff --git a/src/vendor/golang_org/x/text/secure/bidirule/bidirule.go b/src/vendor/golang_org/x/text/secure/bidirule/bidirule.go index b2350fe1cb..c3ca2bc6fe 100644 --- a/src/vendor/golang_org/x/text/secure/bidirule/bidirule.go +++ b/src/vendor/golang_org/x/text/secure/bidirule/bidirule.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Copyright 2016 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style diff --git a/src/vendor/golang_org/x/text/secure/doc.go b/src/vendor/golang_org/x/text/secure/doc.go index 4912b9b9a7..5eb60b94bf 100644 --- a/src/vendor/golang_org/x/text/secure/doc.go +++ b/src/vendor/golang_org/x/text/secure/doc.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Copyright 2016 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style diff --git a/src/vendor/golang_org/x/text/transform/transform.go b/src/vendor/golang_org/x/text/transform/transform.go index 2a1b190b0d..9ddfa80cf3 100644 --- a/src/vendor/golang_org/x/text/transform/transform.go +++ b/src/vendor/golang_org/x/text/transform/transform.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Copyright 2013 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style diff --git a/src/vendor/golang_org/x/text/unicode/bidi/bidi.go b/src/vendor/golang_org/x/text/unicode/bidi/bidi.go index 4c9735ef0b..e691ae8694 100644 --- a/src/vendor/golang_org/x/text/unicode/bidi/bidi.go +++ b/src/vendor/golang_org/x/text/unicode/bidi/bidi.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Copyright 2015 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style diff --git a/src/vendor/golang_org/x/text/unicode/bidi/bracket.go b/src/vendor/golang_org/x/text/unicode/bidi/bracket.go index f08a93d9be..0784e797b7 100644 --- a/src/vendor/golang_org/x/text/unicode/bidi/bracket.go +++ b/src/vendor/golang_org/x/text/unicode/bidi/bracket.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Copyright 2015 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style diff --git a/src/vendor/golang_org/x/text/unicode/bidi/core.go b/src/vendor/golang_org/x/text/unicode/bidi/core.go index a352ad622a..9a934b8430 100644 --- a/src/vendor/golang_org/x/text/unicode/bidi/core.go +++ b/src/vendor/golang_org/x/text/unicode/bidi/core.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Copyright 2015 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style diff --git a/src/vendor/golang_org/x/text/unicode/bidi/prop.go b/src/vendor/golang_org/x/text/unicode/bidi/prop.go index ed191c220d..878b8c41b9 100644 --- a/src/vendor/golang_org/x/text/unicode/bidi/prop.go +++ b/src/vendor/golang_org/x/text/unicode/bidi/prop.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Copyright 2016 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style diff --git a/src/vendor/golang_org/x/text/unicode/bidi/tables.go b/src/vendor/golang_org/x/text/unicode/bidi/tables.go index 89fa7a1d89..fb2229efa8 100644 --- a/src/vendor/golang_org/x/text/unicode/bidi/tables.go +++ b/src/vendor/golang_org/x/text/unicode/bidi/tables.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Code generated by running "go generate" in golang_org/x/text. DO NOT EDIT. diff --git a/src/vendor/golang_org/x/text/unicode/bidi/trieval.go b/src/vendor/golang_org/x/text/unicode/bidi/trieval.go index a825fdea4d..c3f0e21f3e 100644 --- a/src/vendor/golang_org/x/text/unicode/bidi/trieval.go +++ b/src/vendor/golang_org/x/text/unicode/bidi/trieval.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Code generated by running "go generate" in golang_org/x/text. DO NOT EDIT. diff --git a/src/vendor/golang_org/x/text/unicode/doc.go b/src/vendor/golang_org/x/text/unicode/doc.go index 36b462a3e1..55a6775d59 100644 --- a/src/vendor/golang_org/x/text/unicode/doc.go +++ b/src/vendor/golang_org/x/text/unicode/doc.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Copyright 2015 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style diff --git a/src/vendor/golang_org/x/text/unicode/norm/composition.go b/src/vendor/golang_org/x/text/unicode/norm/composition.go index a0a9d06122..80287d2d5d 100644 --- a/src/vendor/golang_org/x/text/unicode/norm/composition.go +++ b/src/vendor/golang_org/x/text/unicode/norm/composition.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Copyright 2011 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style diff --git a/src/vendor/golang_org/x/text/unicode/norm/forminfo.go b/src/vendor/golang_org/x/text/unicode/norm/forminfo.go index f3e2930daf..6455840072 100644 --- a/src/vendor/golang_org/x/text/unicode/norm/forminfo.go +++ b/src/vendor/golang_org/x/text/unicode/norm/forminfo.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Copyright 2011 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style diff --git a/src/vendor/golang_org/x/text/unicode/norm/input.go b/src/vendor/golang_org/x/text/unicode/norm/input.go index 3473f2c1c5..315f6fcaa1 100644 --- a/src/vendor/golang_org/x/text/unicode/norm/input.go +++ b/src/vendor/golang_org/x/text/unicode/norm/input.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Copyright 2011 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style diff --git a/src/vendor/golang_org/x/text/unicode/norm/iter.go b/src/vendor/golang_org/x/text/unicode/norm/iter.go index 75243bbd69..d0ae6cbc1b 100644 --- a/src/vendor/golang_org/x/text/unicode/norm/iter.go +++ b/src/vendor/golang_org/x/text/unicode/norm/iter.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Copyright 2011 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style diff --git a/src/vendor/golang_org/x/text/unicode/norm/normalize.go b/src/vendor/golang_org/x/text/unicode/norm/normalize.go index 51e161abb9..4de4ed6ed0 100644 --- a/src/vendor/golang_org/x/text/unicode/norm/normalize.go +++ b/src/vendor/golang_org/x/text/unicode/norm/normalize.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Copyright 2011 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style diff --git a/src/vendor/golang_org/x/text/unicode/norm/readwriter.go b/src/vendor/golang_org/x/text/unicode/norm/readwriter.go index 482ac85c74..068ab57153 100644 --- a/src/vendor/golang_org/x/text/unicode/norm/readwriter.go +++ b/src/vendor/golang_org/x/text/unicode/norm/readwriter.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Copyright 2011 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style diff --git a/src/vendor/golang_org/x/text/unicode/norm/tables.go b/src/vendor/golang_org/x/text/unicode/norm/tables.go index aa23cc61d1..d6466836ce 100644 --- a/src/vendor/golang_org/x/text/unicode/norm/tables.go +++ b/src/vendor/golang_org/x/text/unicode/norm/tables.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Code generated by running "go generate" in golang_org/x/text. DO NOT EDIT. diff --git a/src/vendor/golang_org/x/text/unicode/norm/transform.go b/src/vendor/golang_org/x/text/unicode/norm/transform.go index 0ea6efacf5..73869a5a1c 100644 --- a/src/vendor/golang_org/x/text/unicode/norm/transform.go +++ b/src/vendor/golang_org/x/text/unicode/norm/transform.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Copyright 2013 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style diff --git a/src/vendor/golang_org/x/text/unicode/norm/trie.go b/src/vendor/golang_org/x/text/unicode/norm/trie.go index 4cbea644a1..761439ce59 100644 --- a/src/vendor/golang_org/x/text/unicode/norm/trie.go +++ b/src/vendor/golang_org/x/text/unicode/norm/trie.go @@ -1,4 +1,4 @@ -// Code generated by running "go run gen.go -core" in golang.org/x/text. DO NOT EDIT. +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. // Copyright 2011 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style -- 2.48.1