]> Cypherpunks repositories - gostls13.git/commit
[release-branch.go1.19] cmd/go,cmd/cgo: in _cgo_flags use one line per flag
authorIan Lance Taylor <iant@golang.org>
Thu, 4 May 2023 21:06:39 +0000 (14:06 -0700)
committerGopher Robot <gobot@golang.org>
Tue, 6 Jun 2023 17:11:10 +0000 (17:11 +0000)
commit44e0fb13e783a44463e95926a674fd580daa3a55
tree35a2e8a1b5d839972b7eb34dfd169ab2d6e28e46
parenta7b1cd452ddc69a6606c2f35ac5786dc892e62cb
[release-branch.go1.19] cmd/go,cmd/cgo: in _cgo_flags use one line per flag

The flags that we recorded in _cgo_flags did not use any quoting,
so a flag containing embedded spaces was mishandled.
Change the _cgo_flags format to put each flag on a separate line.
That is a simple format that does not require any quoting.

As far as I can tell only cmd/go uses _cgo_flags, and it is only
used for gccgo. If this patch doesn't cause any trouble, then
in the next release we can change to only using _cgo_flags for gccgo.

Thanks to Juho Nurminen of Mattermost for reporting this issue.

Updates #60306
Fixes #60513
Fixes CVE-2023-29405

Change-Id: Id738a737ecae47babb34c4b4fc4d65336cf0c0f3
Reviewed-on: https://team-review.git.corp.google.com/c/golang/go-private/+/1875094
Reviewed-by: Damien Neil <dneil@google.com>
Reviewed-by: Roland Shoemaker <bracewell@google.com>
(cherry picked from commit bcdfcadd5612212089d958bc352a6f6c90742dcc)
Reviewed-on: https://team-review.git.corp.google.com/c/golang/go-private/+/1902227
Run-TryBot: Roland Shoemaker <bracewell@google.com>
Reviewed-on: https://team-review.git.corp.google.com/c/golang/go-private/+/1904341
Reviewed-by: Michael Knyszek <mknyszek@google.com>
Reviewed-on: https://go-review.googlesource.com/c/go/+/501216
Auto-Submit: Michael Knyszek <mknyszek@google.com>
Run-TryBot: David Chase <drchase@google.com>
TryBot-Bypass: David Chase <drchase@google.com>
src/cmd/cgo/out.go
src/cmd/go/internal/work/gccgo.go
src/cmd/go/testdata/script/gccgo_link_ldflags.txt [new file with mode: 0644]