aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-03-29[release-branch.go1.10] go1.10.1go1.10.1Andrew Bonventre
Change-Id: I0636f60e705f8182d6fba4ce6199c67f94c04e36 Reviewed-on: https://go-review.googlesource.com/103168 Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Andrew Bonventre <andybons@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-03-29[release-branch.go1.10] runtime: identify special functions by flag instead ↵Keith Randall
of address When there are plugins, there may not be a unique copy of runtime functions like goexit, mcall, etc. So identifying them by entry address is problematic. Instead, keep track of each special function using a field in the symbol table. That way, multiple copies of the same runtime function will be treated identically. Fixes #24351 Fixes #23133 Change-Id: Iea3232df8a6af68509769d9ca618f530cc0f84fd Reviewed-on: https://go-review.googlesource.com/100739 Run-TryBot: Keith Randall <khr@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-on: https://go-review.googlesource.com/102793 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Keith Randall <khr@golang.org>
2018-03-29[release-branch.go1.10] doc: update 1.9.5 release notes to include ↵Andrew Bonventre
net/http/pprof Change-Id: I7c0716711a2cadd347fdf242c792b109539f7355 Reviewed-on: https://go-review.googlesource.com/103163 Reviewed-by: Andrew Bonventre <andybons@golang.org> Reviewed-on: https://go-review.googlesource.com/103166 Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Andrew Bonventre <andybons@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-03-29[release-branch.go1.10] doc: update release notes for Go 1.9.5Andrew Bonventre
Change-Id: Idf88d289bac9603d852a9d19eb4b764f8589f8d9 Reviewed-on: https://go-review.googlesource.com/103159 Reviewed-by: Andrew Bonventre <andybons@golang.org> Reviewed-on: https://go-review.googlesource.com/103162 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-03-29[release-branch.go1.10] doc: document Go 1.10.1Andrew Bonventre
Change-Id: Ibba5d4fd8124db9b1e4e50b8f37366f8dd23f47e Reviewed-on: https://go-review.googlesource.com/103217 Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-on: https://go-review.googlesource.com/103222 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Andrew Bonventre <andybons@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-03-29[release-branch.go1.10] doc: document Go 1.9.5Andrew Bonventre
Change-Id: I8f12b188d2e13555e1d7634b9cc0319fc737cb1d Reviewed-on: https://go-review.googlesource.com/103216 Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-on: https://go-review.googlesource.com/103221 Reviewed-by: Andrew Bonventre <andybons@golang.org> Run-TryBot: Andrew Bonventre <andybons@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-03-29[release-branch.go1.10] net/http/pprof: harden handler responsesAndrew Bonventre
A very small number of old browsers consider content as HTML even when it is explicitly stated in the Content-Type header that it is not. If content served is based on user-supplied input, then an XSS is possible. Introduce three mitigations: + Don't reflect user input in error strings + Set a Content-Disposition header when requesting a resource that should never be displayed in a browser window + Set X-Content-Type-Options: nosniff on all responses Change-Id: I81c9d6736e0439ebd1db99cd7fb701cc56d24805 Reviewed-on: https://go-review.googlesource.com/102318 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Filippo Valsorda <filippo@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-on: https://go-review.googlesource.com/103218 Reviewed-by: Ian Lance Taylor <iant@golang.org>
2018-03-29[release-branch.go1.10] cmd/go: add more C compiler/linker options to whitelistIan Lance Taylor
Fixes #23937 Change-Id: Ie63d91355d1a724d0012d99d457d939deeeb8d3e Reviewed-on: https://go-review.googlesource.com/102818 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Andrew Bonventre <andybons@golang.org> Reviewed-on: https://go-review.googlesource.com/103015 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
2018-03-29[release-branch.go1.10] cmd/go: if -race, don't run coverage on runtime packagesIan Lance Taylor
Don't compile the runtime packages with coverage when using the race detector. The user can, perhaps accidentally, request coverage for the runtime by using -coverpkg=all. If using the race detector, the runtime package coverage will call into the race detector before it has been initialized. This will cause the program to crash mysteriously on startup. Fixes #23882 Change-Id: I9a63867a9138797d8b8afb0856ae21079accdb27 Reviewed-on: https://go-review.googlesource.com/94898 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Andrew Bonventre <andybons@golang.org> Reviewed-on: https://go-review.googlesource.com/103095 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
2018-03-29[release-branch.go1.10] crypto/x509: matching any requested EKU should be ↵Adam Langley
sufficient. The documentation was unclear here and I misremembered the behaviour and changed it in 1.10: it used to be that matching any EKU was enough but 1.10 requires that all EKUs match. Restore 1.9 behaviour and clarify the documentation to make it official. Fixes #24162. Change-Id: Ic9466cd0799cb27ec3a3a7e6c96f10c2aacc7020 Reviewed-on: https://go-review.googlesource.com/97720 Run-TryBot: Adam Langley <agl@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Filippo Valsorda <filippo@golang.org> Reviewed-on: https://go-review.googlesource.com/102790 Run-TryBot: Andrew Bonventre <andybons@golang.org>
2018-03-29[release-branch.go1.10] go/internal/srcimporter: simplify and fix package ↵Hiroshi Ioka
file lookup The old code was a blend of (copied) code that existed before go/build, and incorrect adjustments made when go/build was introduced. This change leaves package path determination entirely to go/build and in the process fixes issues with relative import paths. Fixes #23092 Fixes #24392 Change-Id: I9e900538b365398751bace56964495c5440ac4ae Reviewed-on: https://go-review.googlesource.com/83415 Run-TryBot: Robert Griesemer <gri@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Robert Griesemer <gri@golang.org> Reviewed-on: https://go-review.googlesource.com/102789 Run-TryBot: Andrew Bonventre <andybons@golang.org>
2018-03-29[release-branch.go1.10] cmd/compile: mark LAA and LAAG as clobbering flags ↵Michael Munday
on s390x The atomic add instructions modify the condition code and so need to be marked as clobbering flags. Fixes #24449. Change-Id: Ic69c8d775fbdbfb2a56c5e0cfca7a49c0d7f6897 Reviewed-on: https://go-review.googlesource.com/101455 Run-TryBot: Michael Munday <mike.munday@ibm.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-on: https://go-review.googlesource.com/102788 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Michael Munday <mike.munday@ibm.com>
2018-03-29[release-branch.go1.10] net: don't let cancelation of a DNS lookup affect ↵Ian Lance Taylor
another lookup Updates #8602 Updates #20703 Fixes #22724 Change-Id: I27b72311b2c66148c59977361bd3f5101e47b51d Reviewed-on: https://go-review.googlesource.com/100840 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-on: https://go-review.googlesource.com/102787 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
2018-03-29[release-branch.go1.10] syscall: use Android O friendly fstatat syscall to ↵Tobias Klauser
implement Stat on linux/amd64 The Android O seccomp policy disallows the stat syscall on amd64, see https://android.googlesource.com/platform/bionic/+/android-4.2.2_r1.2/libc/SYSCALLS.TXT Use the fstatat syscall with AT_FDCWD and zero flags instead to achieve the same behavior. Fixes #24403 Change-Id: I36fc9ec9bc938cd8e9de30f66c0eb9d2e24debf6 Reviewed-on: https://go-review.googlesource.com/100878 Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Elias Naur <elias.naur@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-on: https://go-review.googlesource.com/102976 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
2018-03-29[release-branch.go1.10] runtime: use Android O friendly faccessat syscall on ↵Tobias Klauser
linux/amd64 The Android O seccomp policy disallows the access syscall on amd64, see https://android.googlesource.com/platform/bionic/+/android-4.2.2_r1.2/libc/SYSCALLS.TXT Use the faccessat syscall with AT_FDCWD instead to achieve the same behavior. Updates #24403 Change-Id: I9db847c1c0f33987a3479b3f96e721fb9588cde2 Reviewed-on: https://go-review.googlesource.com/100877 Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-on: https://go-review.googlesource.com/102995 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
2018-03-29[release-branch.go1.10] runtime: add symbol for AT_FDCWD on Linux amd64 and ↵Tobias Klauser
mips64x Also order the syscall number list by numerically for mips64x. Follow-up for CL 92895. Change-Id: I5f01f8c626132a06160997fce8a2aef0c486bb1c Reviewed-on: https://go-review.googlesource.com/93616 Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Austin Clements <austin@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-on: https://go-review.googlesource.com/103035 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
2018-03-29[release-branch.go1.10] runtime: use Android O friendly syscalls on 64-bit ↵Jason A. Donenfeld
machines Android O disallows open on 64-bit, so let's use openat with AT_FDCWD to achieve the same behavior. Android O disallows epoll_wait on 64-bit, so let's use epoll_pwait with the last argument as NULL to achieve the same behavior. See here: https://android.googlesource.com/platform/bionic/+/master/libc/seccomp/arm64_app_policy.cpp https://android.googlesource.com/platform/bionic/+/master/libc/seccomp/mips64_app_policy.cpp https://android.googlesource.com/platform/bionic/+/master/libc/seccomp/x86_64_app_policy.cpp Fixes #23750 Change-Id: If8d5a663357471e5d2c1f516151344a9d05b188a Reviewed-on: https://go-review.googlesource.com/92895 Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-by: Austin Clements <austin@google.com> Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-on: https://go-review.googlesource.com/102792 Run-TryBot: Andrew Bonventre <andybons@golang.org>
2018-03-29[release-branch.go1.10] cmd/cover: don't crash on non-gofmt'ed inputIan Lance Taylor
Without the change to cover.go, the new test fails with panic: overlapping edits: [4946,4950)->"", [4947,4947)->"thisNameMustBeVeryLongToCauseOverflowOfCounterIncrementStatementOntoNextLineForTest.Count[112]++;" The original code inserts "else{", deletes "else", and then positions a new block just after the "}" that must come before the "else". That works on gofmt'ed code, but fails if the code looks like "}else". When there is no space between the "{" and the "else", the new block is inserted into a location that we are deleting, leading to the "overlapping edits" mentioned above. This CL fixes this case by not deleting the "else" but just using the one that is already there. That requires adjust the block offset to come after the "{" that we insert. Fixes #23927 Change-Id: I40ef592490878765bbce6550ddb439e43ac525b2 Reviewed-on: https://go-review.googlesource.com/98935 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Robert Griesemer <gri@golang.org> Reviewed-on: https://go-review.googlesource.com/102786 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
2018-03-29[release-branch.go1.10] cmd/go: run vet on packages with only cgo filesIan Lance Taylor
CgoFiles is not included in GoFiles, so we need to check both. Fixes #24193 Change-Id: I6a67bd912e3d9a4be0eae8fa8db6fa8a07fb5df3 Reviewed-on: https://go-review.googlesource.com/99175 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-on: https://go-review.googlesource.com/102785 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
2018-03-29[release-branch.go1.10] encoding/json: avoid assuming side-effect free ↵Joe Tsai
reflect.Value.Addr().Elem() Consider the following: type child struct{ Field string } type parent struct{ child } p := new(parent) v := reflect.ValueOf(p).Elem().Field(0) v.Field(0).SetString("hello") // v.Field = "hello" v = v.Addr().Elem() // v = *(&v) v.Field(0).SetString("goodbye") // v.Field = "goodbye" It would appear that v.Addr().Elem() should have the same value, and that it would be safe to set "goodbye". However, after CL 66331, any interspersed calls between Field calls causes the RO flag to be set. Thus, setting to "goodbye" actually causes a panic. That CL affects decodeState.indirect which assumes that back-to-back Value.Addr().Elem() is side-effect free. We fix that logic to keep track of the Addr() and Elem() calls and set v back to the original after a full round-trip has occured. Fixes #24152 Updates #24153 Change-Id: Ie50f8fe963f00cef8515d89d1d5cbc43b76d9f9c Reviewed-on: https://go-review.googlesource.com/97796 Reviewed-by: Matthew Dempsky <mdempsky@google.com> Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-on: https://go-review.googlesource.com/102784 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Joe Tsai <thebrokentoaster@gmail.com> Reviewed-by: Ian Lance Taylor <iant@golang.org>
2018-03-29[release-branch.go1.10] crypto/x509: parse invalid DNS names and email ↵Adam Langley
addresses. Go 1.10 requires that SANs in certificates are valid. However, a non-trivial number of (generally non-WebPKI) certificates have invalid strings in dnsName fields and some have even put those dnsName SANs in CA certificates. This change defers validity checking until name constraints are checked. Fixes #23995, #23711. Change-Id: I2e0ebb0898c047874a3547226b71e3029333b7f1 Reviewed-on: https://go-review.googlesource.com/96378 Run-TryBot: Adam Langley <agl@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-on: https://go-review.googlesource.com/102783 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Filippo Valsorda <filippo@golang.org>
2018-03-29[release-branch.go1.10] archive/zip: fix handling of Info-ZIP Unix extended ↵Joe Tsai
timestamps The Info-ZIP Unix1 extra field is specified as such: >>> Value Size Description ----- ---- ----------- 0x5855 Short tag for this extra block type ("UX") TSize Short total data size for this block AcTime Long time of last access (GMT/UTC) ModTime Long time of last modification (GMT/UTC) <<< The previous handling was incorrect in that it read the AcTime field instead of the ModTime field. The test-osx.zip test unfortunately locked in the wrong behavior. Manually parsing that ZIP file shows that the encoded MS-DOS date and time are 0x4b5f and 0xa97d, which corresponds with a date of 2017-10-31 21:11:58, which matches the correct mod time (off by 1 second due to MS-DOS timestamp resolution). Fixes #23901 Change-Id: I567824c66e8316b9acd103dbecde366874a4b7ef Reviewed-on: https://go-review.googlesource.com/96895 Run-TryBot: Joe Tsai <joetsai@google.com> Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-on: https://go-review.googlesource.com/102782 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Joe Tsai <thebrokentoaster@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-03-29[release-branch.go1.10] runtime: don't check for String/Error methods in ↵Ian Lance Taylor
printany They have either already been called by preprintpanics, or they can not be called safely because of the various conditions checked at the start of gopanic. Fixes #24059 Change-Id: I4a6233d12c9f7aaaee72f343257ea108bae79241 Reviewed-on: https://go-review.googlesource.com/96755 Reviewed-by: Austin Clements <austin@google.com> Reviewed-on: https://go-review.googlesource.com/102781 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-03-29[release-branch.go1.10] crypto/x509: tighten EKU checking for requested EKUs.Adam Langley
There are, sadly, many exceptions to EKU checking to reflect mistakes that CAs have made in practice. However, the requirements for checking requested EKUs against the leaf should be tighter than for checking leaf EKUs against a CA. Fixes #23884 Change-Id: I05ea874c4ada0696d8bb18cac4377c0b398fcb5e Reviewed-on: https://go-review.googlesource.com/96379 Reviewed-by: Jonathan Rudenberg <jonathan@titanous.com> Reviewed-by: Filippo Valsorda <hi@filippo.io> Run-TryBot: Filippo Valsorda <hi@filippo.io> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-on: https://go-review.googlesource.com/102780 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Filippo Valsorda <filippo@golang.org>
2018-03-29[release-branch.go1.10] cmd/go: permit pkg-config flags in any argument positionIan Lance Taylor
Fixes #23875 Change-Id: I503af71f44d11cd6b787fef100246b55735614a0 Reviewed-on: https://go-review.googlesource.com/94896 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-on: https://go-review.googlesource.com/102779 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
2018-03-29[release-branch.go1.10] cmd/go: restrict meta imports to valid schemesIan Lance Taylor
Before this change, when using -insecure, we permitted any meta import repo root as long as it contained "://". When not using -insecure, we restrict meta import repo roots to be valid URLs. People may depend on that somehow, so permit meta import repo roots to be invalid URLs, but require them to have valid schemes per RFC 3986. Fixes #23867 Change-Id: Iac666dfc75ac321bf8639dda5b0dba7c8840922d Reviewed-on: https://go-review.googlesource.com/94603 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-on: https://go-review.googlesource.com/102778 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-02-17[release-branch.go1.10] doc: update devel/release.html to add Go 1.10Andrew Bonventre
Change-Id: I869f1607b0209ad190bc02999879f0682965fdf7 Reviewed-on: https://go-review.googlesource.com/94915 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> (cherry picked from commit 27be37a4038e0c5e11510e7b0b6ec4f2c4cfc879) Reviewed-on: https://go-review.googlesource.com/94916 Reviewed-by: Andrew Bonventre <andybons@golang.org> Run-TryBot: Andrew Bonventre <andybons@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-02-16[release-branch.go1.10] go1.10go1.10Andrew Bonventre
Change-Id: I3663c2156d093efa09343512a69f040ecc8331e0 Reviewed-on: https://go-review.googlesource.com/94696 Run-TryBot: Andrew Bonventre <andybons@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-02-16[release-branch.go1.10] cmd/go: add options to security whitelistIan Lance Taylor
Also permit passing flags to pkg-config, as we used to. Also change the error message to refer to https://golang.org/s/invalidflag. Fixes #23749 Change-Id: I3fbeb4c346610e6fd55e8720e720b0a40e352ab5 Reviewed-on: https://go-review.googlesource.com/93836 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> (cherry picked from commit f7c2a71632854050d9fe6de115c6c346fcd9774c) Reviewed-on: https://go-review.googlesource.com/94676 Run-TryBot: Andrew Bonventre <andybons@golang.org> Reviewed-by: Andrew Bonventre <andybons@golang.org>
2018-02-16[release-branch.go1.10] cmd/compile: permit go:cgo_import_dynamic anywhereIan Lance Taylor
It's used on Solaris to import symbols from shared libraries, e.g., in golang.org/x/sys/unix and golang.org/x/net/internal/socket. We could use a different directive but that would require build tags in all the places that use it. Updates #23672 Updates #23749 Change-Id: I47fcf72a6d2862e304204705979c2056c2f78ec5 Reviewed-on: https://go-review.googlesource.com/94018 Run-TryBot: Andrew Bonventre <andybons@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> (cherry picked from commit 4a54ff21c25f1b5d7a4f73fd33214e1f8c83a9b9) Reviewed-on: https://go-review.googlesource.com/94675 Reviewed-by: Andrew Bonventre <andybons@golang.org>
2018-02-16[release-branch.go1.10] doc: add note about invalid flag errors to 1.10 ↵Ian Lance Taylor
release notes Updates #23672 Updates #23749 Change-Id: I85b6493bd1e4095398508b7ef395c35463dfbde1 Reviewed-on: https://go-review.googlesource.com/94158 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Andrew Bonventre <andybons@golang.org> (cherry picked from commit f2354d0aacdd5ce1952c5441c6a489378ccb7656) Reviewed-on: https://go-review.googlesource.com/94655
2018-02-15[release-branch.go1.10] doc: mention net/http Server Content-Type changeBrad Fitzpatrick
Updates #20784 Change-Id: Ic07c78a86da5026e407ac9ecb3117d320c198048 Reviewed-on: https://go-review.googlesource.com/93695 Reviewed-by: Andrew Bonventre <andybons@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-02-15[release-branch.go1.10] doc: remove draft notice from Go 1.10 release notesIan Lance Taylor
Change-Id: I063b556b59ecb8a8f4a3f121c32982b90eee2d74 Reviewed-on: https://go-review.googlesource.com/94159 Reviewed-by: Andrew Bonventre <andybons@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> (cherry picked from commit 229a8ce639f6c729700ad19321705b654890b502) Reviewed-on: https://go-review.googlesource.com/94455
2018-02-15[release-branch.go1.10] cmd/compile: fix constant folding of right shifts on ↵Keith Randall
s390x Repeat previous fix on amd64 for s390x. Sub-word right shifts should sign extend before shifting. Update #23812 Change-Id: I2d770190c7d8a22310b0dbd9facb3fb05afa362a Reviewed-on: https://go-review.googlesource.com/94028 Run-TryBot: Keith Randall <khr@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> (cherry picked from commit 1566bf90253097dfec83f621a48e761ded4d2144) Reviewed-on: https://go-review.googlesource.com/94216
2018-02-15[release-branch.go1.10] cmd/compile: fix constant folding of right shiftsKeith Randall
The sub-word shifts need to sign-extend before shifting, to avoid bringing in data from higher in the argument. Fixes #23812 Change-Id: I0a95a0b49c48f3b40b85765bb4a9bb492be0cd73 Reviewed-on: https://go-review.googlesource.com/93716 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Cherry Zhang <cherryyz@google.com> (cherry picked from commit 755b36aa532f6b23081bf5eaf83449c1a6dd8114) Reviewed-on: https://go-review.googlesource.com/94215 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-02-12all: restore changes from faulty merge/revertAndrew Bonventre
This reverts commit 3b6abd8a4501d816e80b4d46e6fda4df486ccb66. Change-Id: I8ca100501c1844af78a547989786d14dac6b494a Reviewed-on: https://go-review.googlesource.com/93456 Reviewed-by: Andrew Bonventre <andybons@golang.org>
2018-02-12Revert "[release-branch.go1.10] all: merge master into release-branch.go1.10"Andrew Bonventre
This reverts commit b83d7f72537bdc0cec2e949d73ae40fbd42b7c63. Reason for revert: wrong branch Change-Id: I28ebb121f7b3e331729e8a6a00961b876f3dd0f2 Reviewed-on: https://go-review.googlesource.com/93455 Reviewed-by: Andrew Bonventre <andybons@golang.org>
2018-02-12[release-branch.go1.10] all: merge master into release-branch.go1.10Andrew Bonventre
* 74b56022a1 doc: note that x509 cert parsing rejects some more certs now * c52e27e68d CONTRIBUTING: remove Pull Request bit * 829b64c1ea cmd/fix: fix cast check * ee59f6dff2 doc: minor wording improvement to the diagnostics guide * c6e7330ebd all: remove PULL_REQUEST_TEMPLATE from .github * d814c2be9b doc: remove Pull Request note in README.md * 104445e314 doc: document Go 1.9.4 and Go 1.8.7 Change-Id: I58bfc6800964504258690d774a9b0aeaba509086
2018-02-12doc: note that x509 cert parsing rejects some more certs nowBrad Fitzpatrick
Fixes #23711
2018-02-11CONTRIBUTING: remove Pull Request bitBrad Fitzpatrick
Also remove the "Also, please do not post patches on the issue tracker" part, since that didn't seem to reduce the number of patches inlined into bug reports. And now that we accept PRs, people will probably try that first. We'll see. Fixes #23779 Updates #18517 Change-Id: I449e0afd7292718e57d9d428494799c78296a0d2 Reviewed-on: https://go-review.googlesource.com/93335 Reviewed-by: Andrew Bonventre <andybons@golang.org>
2018-02-09cmd/fix: fix cast checkKeith Randall
Need 2-result cast so we can check the result correctly. Fixes #23762 Change-Id: Icac3a5415156fe918988f369d6022a9a29c14089 Reviewed-on: https://go-review.googlesource.com/93078 Run-TryBot: Keith Randall <khr@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-02-09doc: minor wording improvement to the diagnostics guideJBD
Change-Id: I8469fbbb934f096f04ad68c592aacdb805b6d2d4 GitHub-Last-Rev: 6d2cfcc23d0d8e6a1b6ca383dae51f0cada2e1b3 GitHub-Pull-Request: golang/go#23754 Reviewed-on: https://go-review.googlesource.com/92996 Reviewed-by: Andrew Bonventre <andybons@golang.org>
2018-02-09all: remove PULL_REQUEST_TEMPLATE from .githubAndrew Bonventre
Update golang/go#18517 Change-Id: I76d928d5fcc5ed22beaffb86f0fa8fbf6d4ac3d7 Reviewed-on: https://go-review.googlesource.com/93035 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-02-08doc: remove Pull Request note in README.mdAndrew Bonventre
Since we now accept Pull Requests via GerritBot, this comment is obsolete. Change-Id: I0de8ecff7d1f146320a52f143e65068f8adbeaa6 GitHub-Last-Rev: 01818bdf7a8361efde427a872b813f2e8510cef7 GitHub-Pull-Request: golang/go#23752 Reviewed-on: https://go-review.googlesource.com/92995 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2018-02-07doc: document Go 1.9.4 and Go 1.8.7Russ Cox
Change-Id: I50928e7747f43858fc863b53cfb5b63e208d6932 Reviewed-on: https://team-review.git.corp.google.com/213447 Reviewed-by: Andrew Bonventre <andybons@google.com>
2018-02-07[release-branch.go1.10] go1.10rc2go1.10rc2Russ Cox
Change-Id: I393ff9e8599d20f71545ab9f4191993f5d6fa5a4 Reviewed-on: https://team-review.git.corp.google.com/213247 Reviewed-by: Andrew Bonventre <andybons@google.com>
2018-02-07[release-branch.go1.10] all: merge master into release-branch.go1.10, for ↵Russ Cox
go1.10rc2 This adds the go get security fix. * 1dcb5836 cmd/go: accept only limited compiler and linker flags in #cgo directives Change-Id: Ib2caf2039d2cefabe3afa0bb4dcc4c0dc8d664ff
2018-02-07cmd/go: accept only limited compiler and linker flags in #cgo directivesRuss Cox
Both gcc and clang accept an option -fplugin=code.so to load a plugin from the ELF shared object file code.so. Obviously that plugin can then do anything it wants during the build. This is contrary to the goal of "go get" never running untrusted code during the build. (What happens if you choose to run the result of the build is your responsibility.) Disallow this behavior by only allowing a small set of known command-line flags in #cgo CFLAGS directives (and #cgo LDFLAGS, etc). The new restrictions can be adjusted by the environment variables CGO_CFLAGS_ALLOW, CGO_CFLAGS_DISALLOW, and so on. See the documentation. In addition to excluding cgo-defined flags, we also have to make sure that when we pass file names on the command line, they don't look like flags. So we now refuse to build packages containing suspicious file names like -x.go. A wrinkle in all this is that GNU binutils uniformly accept @foo on the command line to mean "if the file foo exists, then substitute its contents for @foo in the command line". So we must also reject @x.go, flags and flag arguments beginning with @, and so on. Fixes #23672, CVE-2018-6574. Change-Id: I59e7c1355155c335a5c5ae0d2cf8fa7aa313940a Reviewed-on: https://team-review.git.corp.google.com/209949 Reviewed-by: Ian Lance Taylor <iant@google.com>
2018-02-07all: merge master into release-branch.go1.10, for go1.10rc2Russ Cox
* b2d3d6e6 cmd/link/internal/loadelf: fix logic for computing ELF flags on ARM * c07095cd cmd/cgo: revert CL 49490 "fix for function taking pointer typedef" * 23e8e197 cmd/compile: use unsigned loads for multi-element comparisons * 85bdd05c cmd/go: rebuild as needed for tests of packages that add methods * fd7331a8 text/template: revert CL 66410 "add break, continue actions in ranges" * f54f780d cmd/vet: unexported interface{} fields on %s are ok * a0222ec5 cmd/internal/obj/arm64: fix assemble add/adds/sub/subs/cmp/cmn(extended register) bug * 59523176 cmd/go: only run -race test if -race works * 4558321e doc/editors: remove feature matrix for various editors/IDEs * e6756ec1 cmd/go: ignore coverpkg match on sync/atomic in atomic coverage mode * 10d096fe cmd/go: fix import config debugging flag * f598ad58 go/internal/gccgoimporter: remove old and exp gccgo packages in test * 2a8229d9 misc/cgo/test: get uintptr, not pointer, from dlopen * 851e98f0 spec: remove need for separate Function production (cleanup) * cbe1a61e net: fix the kernel state name for TCP listen queue on FreeBSD * 6f37fee3 cmd/go: fix TestNoCache on Plan 9 * e5186895 runtime: restore RSB for sigpanic call on mips64x * 3ff41cdf runtime: suppress "unexpected return pc" any time we're in cgo * d929e40e syscall: use SYS_GETDENTS64 on linux/mips64{,le} * 43288467 test: add test for gccgo bug 23545 * 19150303 cmd/go: if unable to initialize cache, just disable it * ebe38b86 runtime: fail silently if we unwind over sigpanic into C code * 5c2be42a runtime: don't unwind past asmcgocall * 03e10bd9 os/signal: skip TestTerminalSignal if posix_openpt fails with EACCES * d30591c1 cmd/vendor/github.com/google/pprof: cherry-pick fix to cope with $HOME not being writable * bcc86d5f doc: add GOMIPS to source installation docs * 926f2787 cmd/fix: cleanup directories created during typecheck * 32a08d09 bootstrap.bash: only fetch git revision if we need it * 14f8027a cmd/vet: extra args if any formats are indexed are ok * 4072608b cmd/vet: %s is valid for an array of stringer * 1f85917f cmd/vet: **T is not Stringer if *T has a String method * 8c1f21d9 cmd/vet: disable complaint about 0 flag in print * d529aa93 doc: fix the closing tag in contribute.html * f8610bbd doc: fix two small mistakes in 1.10 release notes * 5af1e7d7 cmd/go: skip external tests on plan9/arm * 00587e89 doc: fix spelling mistake * 3ee8c3cc os: document inheritance of thread state over exec * b5b35be2 cmd/compile: don't inline functions that call recover * 651ddbdb database/sql: buffers provided to Rows.Next should not be modified by drivers * 7350297e doc: remove Sarah Adams from conduct working group contacts Change-Id: I3c04d83706cd4322252ddf732688afe5d938c1f5
2018-02-07cmd/link/internal/loadelf: fix logic for computing ELF flags on ARMMichael Hudson-Doyle
The linker contains complicated logic for figuring out which float ABI to indicate it is using on (32 bit) ARM systems: it parses a special section in host object files to look for a flag indicating use of the hard float ABI. When loadelf got split into its own package a bug was introduced: if the last host object file does not contain a float ABI related tag, the ELF header's flag was set to 0, rather than using the value from the last object file which contained an ABI tag. Fix the code to only change the value used for the ELF header if a tag was found. This fixes an extremely confusing build failure on Ubuntu's armhf builders. Change-Id: I0845d68d082d1383e4cae84ea85164cdc6bcdddb Reviewed-on: https://go-review.googlesource.com/92515 Run-TryBot: Michael Hudson-Doyle <michael.hudson@canonical.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>