golang-1.15.git
4 years agoMerge golang-1.15 (1.15.15-4) import into refs/heads/workingbranch
Shengjing Zhu [Sat, 11 Sep 2021 10:15:41 +0000 (11:15 +0100)]
Merge golang-1.15 (1.15.15-4) import into refs/heads/workingbranch

4 years agoCVE-2021-39293
Roland Shoemaker [Wed, 18 Aug 2021 18:49:29 +0000 (11:49 -0700)]
CVE-2021-39293

Origin: backport, https://github.com/golang/go/commit/bacbc334

Gbp-Pq: Name 0007-CVE-2021-39293.patch

4 years agoskip userns test in schroot as well
Shengjing Zhu [Fri, 5 Feb 2021 13:21:45 +0000 (21:21 +0800)]
skip userns test in schroot as well

When schroot is using overlayfs, it fails to detect it as chroot.

Gbp-Pq: Name 0006-skip-userns-test-in-schroot-as-well.patch

4 years ago[PATCH] cmd/dist: increase default timeout scale for arm
Balint Reczey [Mon, 31 Aug 2020 11:14:51 +0000 (13:14 +0200)]
[PATCH] cmd/dist: increase default timeout scale for arm

Forwarded: https://github.com/golang/go/issues/43002

Most developers use (faster) amd64 machines setting the test timeouts,
but test may run on slower arm ones and also different tests may suffer
different relative slowdown on the arm CPUs.

Due to those two varying factors it is safer to allow a higher timeout
scale on arm to avoid tests timing out.

Gbp-Pq: Name 0005-cmd-dist-increase-default-timeout-scale-for-arm.patch

4 years agocmd/dist: fix build failure of misc/cgo/test on arm64
Xiangdong Ji [Wed, 5 Aug 2020 06:02:58 +0000 (06:02 +0000)]
cmd/dist: fix build failure of misc/cgo/test on arm64

Test7978 of misc/cgo/test fails in 'dist test' on arm64 if the C compiler
is of GCC-9.4 or above and its 'outline atomics' feature is enabled, since
the internal linking hasn't yet supported "__attribute__((constructor))"
and also mis-handles hidden visibility.

Two changes are made for 'misc/cgo/test' to fix the issue:
  1. passing "-tags=internal" for the internal linking PIE case.
  2. skipping Test7978 on arm64 for the internal linking cases.

This CL fixes 'dist test' failure only, user is expected to pass the option
'-mno-outline-atomics' via CGO_CFLAGS if running into the same problem when
building cgo program using internal linking.

Updates #39466
Change-Id: I2011bb051cae7c43eb0f1c78c7f4fbdb94bf78a6

Gbp-Pq: Name 0004-cmd-dist-fix-build-failure-of-misc-cgo-test-on-arm64.patch

4 years agocmd/go, cmd/cgo: pass -mfp32 and -mhard/soft-float to MIPS GCC
YunQiang Su [Tue, 9 Jun 2020 04:09:58 +0000 (04:09 +0000)]
cmd/go, cmd/cgo: pass -mfp32 and -mhard/soft-float to MIPS GCC

For mips32 currently, we are using FP32, while the gcc may be FPXX,
which may generate .MIPS.abiflags and .gnu.attributes section with
value as FPXX. So the kernel will treat the exe as FPXX, and may
choose to use FR=1 FPU mode for it.
Currently, in Go, we use 2 lwc1 to load both half of a double value
to a pair of even-odd FPR. This behavior can only work with FR=0 mode.

In FR=1 mode, all of 32 FPR are 64bit. If we lwc1 the high-half of a double
value to an odd FPR, and try to use the previous even FPR to compute, the
real high-half of even FPR will be unpredicatable.
We set -mfp32 to force the gcc generate FP32 code and section value.

More details about FP32/FPXX/FP64 are explained in:
https://web.archive.org/web/20180828210612/https://dmz-portal.mips.com/wiki/MIPS_O32_ABI_-_FR0_and_FR1_Interlinking

When GOMIPS/GOMIPS64 is set as softfloat, we should also pass
 -msoft-float to gcc.

Here we also add -mno-odd-spreg option, since Loongson's CPU cannot use
odd-number FR in FR=0 mode.

Fixes #39435

Change-Id: I54026ad416a815fe43a9261ebf6d02e5519c3930

Gbp-Pq: Name 0003-cmd-go-cmd-cgo-pass-mfp32-and-mhard-soft-float-to-MI.patch

4 years agoFix Lintian warnings about wrong interpreter path
Dr. Tobias Quathamer [Thu, 1 Aug 2019 11:50:48 +0000 (13:50 +0200)]
Fix Lintian warnings about wrong interpreter path

The command used for this change is as follows:

grep -rH "/usr/bin/env perl" * | cut -d: -f1 | xargs -n1 sed -i -e "s,/usr/bin/env perl,/usr/bin/perl,"

Gbp-Pq: Name 0002-Fix-Lintian-warnings-about-wrong-interpreter-path.patch

4 years agoDisable test for UserHomeDir.
Dr. Tobias Quathamer [Wed, 19 Dec 2018 13:25:06 +0000 (14:25 +0100)]
Disable test for UserHomeDir.

On Debian buildds, the user home dir does not exist, so this test fails.

Gbp-Pq: Name 0001-Disable-test-for-UserHomeDir.patch

4 years agogolang-1.15 (1.15.15-4) unstable; urgency=high
Shengjing Zhu [Sat, 11 Sep 2021 10:15:41 +0000 (11:15 +0100)]
golang-1.15 (1.15.15-4) unstable; urgency=high

  * Fix Build-Depends in control.in as well

[dgit import unpatched golang-1.15 1.15.15-4]

4 years agoImport golang-1.15_1.15.15-4.debian.tar.xz
Shengjing Zhu [Sat, 11 Sep 2021 10:15:41 +0000 (11:15 +0100)]
Import golang-1.15_1.15.15-4.debian.tar.xz

[dgit import tarball golang-1.15 1.15.15-4 golang-1.15_1.15.15-4.debian.tar.xz]

4 years agoMerge golang-1.15 (1.15.15-1) import into refs/heads/workingbranch
Anthony Fok [Sun, 15 Aug 2021 22:44:15 +0000 (23:44 +0100)]
Merge golang-1.15 (1.15.15-1) import into refs/heads/workingbranch

4 years agoImport golang-1.15_1.15.15.orig.tar.gz
Anthony Fok [Sun, 15 Aug 2021 22:44:15 +0000 (23:44 +0100)]
Import golang-1.15_1.15.15.orig.tar.gz

[dgit import orig golang-1.15_1.15.15.orig.tar.gz]

4 years agoskip userns test in schroot as well
Shengjing Zhu [Fri, 5 Feb 2021 13:21:45 +0000 (21:21 +0800)]
skip userns test in schroot as well

When schroot is using overlayfs, it fails to detect it as chroot.

Gbp-Pq: Name 0006-skip-userns-test-in-schroot-as-well.patch

4 years ago[PATCH] cmd/dist: increase default timeout scale for arm
Balint Reczey [Mon, 31 Aug 2020 11:14:51 +0000 (13:14 +0200)]
[PATCH] cmd/dist: increase default timeout scale for arm

Forwarded: https://github.com/golang/go/issues/43002

Most developers use (faster) amd64 machines setting the test timeouts,
but test may run on slower arm ones and also different tests may suffer
different relative slowdown on the arm CPUs.

Due to those two varying factors it is safer to allow a higher timeout
scale on arm to avoid tests timing out.

Gbp-Pq: Name 0005-cmd-dist-increase-default-timeout-scale-for-arm.patch

4 years agocmd/dist: fix build failure of misc/cgo/test on arm64
Xiangdong Ji [Wed, 5 Aug 2020 06:02:58 +0000 (06:02 +0000)]
cmd/dist: fix build failure of misc/cgo/test on arm64

Test7978 of misc/cgo/test fails in 'dist test' on arm64 if the C compiler
is of GCC-9.4 or above and its 'outline atomics' feature is enabled, since
the internal linking hasn't yet supported "__attribute__((constructor))"
and also mis-handles hidden visibility.

Two changes are made for 'misc/cgo/test' to fix the issue:
  1. passing "-tags=internal" for the internal linking PIE case.
  2. skipping Test7978 on arm64 for the internal linking cases.

This CL fixes 'dist test' failure only, user is expected to pass the option
'-mno-outline-atomics' via CGO_CFLAGS if running into the same problem when
building cgo program using internal linking.

Updates #39466
Change-Id: I2011bb051cae7c43eb0f1c78c7f4fbdb94bf78a6

Gbp-Pq: Name 0004-cmd-dist-fix-build-failure-of-misc-cgo-test-on-arm64.patch

4 years agocmd/go, cmd/cgo: pass -mfp32 and -mhard/soft-float to MIPS GCC
YunQiang Su [Tue, 9 Jun 2020 04:09:58 +0000 (04:09 +0000)]
cmd/go, cmd/cgo: pass -mfp32 and -mhard/soft-float to MIPS GCC

For mips32 currently, we are using FP32, while the gcc may be FPXX,
which may generate .MIPS.abiflags and .gnu.attributes section with
value as FPXX. So the kernel will treat the exe as FPXX, and may
choose to use FR=1 FPU mode for it.
Currently, in Go, we use 2 lwc1 to load both half of a double value
to a pair of even-odd FPR. This behavior can only work with FR=0 mode.

In FR=1 mode, all of 32 FPR are 64bit. If we lwc1 the high-half of a double
value to an odd FPR, and try to use the previous even FPR to compute, the
real high-half of even FPR will be unpredicatable.
We set -mfp32 to force the gcc generate FP32 code and section value.

More details about FP32/FPXX/FP64 are explained in:
https://web.archive.org/web/20180828210612/https://dmz-portal.mips.com/wiki/MIPS_O32_ABI_-_FR0_and_FR1_Interlinking

When GOMIPS/GOMIPS64 is set as softfloat, we should also pass
 -msoft-float to gcc.

Here we also add -mno-odd-spreg option, since Loongson's CPU cannot use
odd-number FR in FR=0 mode.

Fixes #39435

Change-Id: I54026ad416a815fe43a9261ebf6d02e5519c3930

Gbp-Pq: Name 0003-cmd-go-cmd-cgo-pass-mfp32-and-mhard-soft-float-to-MI.patch

4 years agoFix Lintian warnings about wrong interpreter path
Dr. Tobias Quathamer [Thu, 1 Aug 2019 11:50:48 +0000 (13:50 +0200)]
Fix Lintian warnings about wrong interpreter path

The command used for this change is as follows:

grep -rH "/usr/bin/env perl" * | cut -d: -f1 | xargs -n1 sed -i -e "s,/usr/bin/env perl,/usr/bin/perl,"

Gbp-Pq: Name 0002-Fix-Lintian-warnings-about-wrong-interpreter-path.patch

4 years agoDisable test for UserHomeDir.
Dr. Tobias Quathamer [Wed, 19 Dec 2018 13:25:06 +0000 (14:25 +0100)]
Disable test for UserHomeDir.

On Debian buildds, the user home dir does not exist, so this test fails.

Gbp-Pq: Name 0001-Disable-test-for-UserHomeDir.patch

4 years agogolang-1.15 (1.15.15-1) unstable; urgency=medium
Anthony Fok [Sun, 15 Aug 2021 22:44:15 +0000 (23:44 +0100)]
golang-1.15 (1.15.15-1) unstable; urgency=medium

  * Team upload.
  * New upstream version 1.15.15
  * Remove security patches which were previously backported
    for 1.15.9 but are already in 1.15.15
  * Update Standards-Version to 4.5.1, no changes needed
  * Change Section from devel to golang

[dgit import unpatched golang-1.15 1.15.15-1]

4 years agoImport golang-1.15_1.15.15-1.debian.tar.xz
Anthony Fok [Sun, 15 Aug 2021 22:44:15 +0000 (23:44 +0100)]
Import golang-1.15_1.15.15-1.debian.tar.xz

[dgit import tarball golang-1.15 1.15.15-1 golang-1.15_1.15.15-1.debian.tar.xz]

4 years agoMerge golang-1.15 (1.15.9-6) import into refs/heads/workingbranch
Shengjing Zhu [Tue, 13 Jul 2021 05:55:42 +0000 (06:55 +0100)]
Merge golang-1.15 (1.15.9-6) import into refs/heads/workingbranch

4 years ago[PATCH] [release-branch.go1.15] crypto/tls: test key type when casting
Roland Shoemaker [Wed, 9 Jun 2021 18:31:27 +0000 (11:31 -0700)]
[PATCH] [release-branch.go1.15] crypto/tls: test key type when casting

When casting the certificate public key in generateClientKeyExchange,
check the type is appropriate. This prevents a panic when a server
agrees to a RSA based key exchange, but then sends an ECDSA (or
other) certificate.

Updates #47143
Fixes #47144
Fixes CVE-2021-34558

Thanks to Imre Rad for reporting this issue.

Change-Id: Iabccacca6052769a605cccefa1216a9f7b7f6aea
Reviewed-on: https://team-review.git.corp.google.com/c/golang/go-private/+/1116723
Reviewed-by: Filippo Valsorda <valsorda@google.com>
Reviewed-by: Katie Hockman <katiehockman@google.com>
Reviewed-on: https://go-review.googlesource.com/c/go/+/334030
Trust: Filippo Valsorda <filippo@golang.org>
Run-TryBot: Filippo Valsorda <filippo@golang.org>
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
Gbp-Pq: Name 0013-CVE-2021-34558.patch

4 years ago[PATCH] [release-branch.go1.15] math/big: check for excessive exponents in Rat.SetString
Robert Griesemer [Sun, 2 May 2021 18:27:03 +0000 (11:27 -0700)]
[PATCH] [release-branch.go1.15] math/big: check for excessive exponents in Rat.SetString

Found by OSS-Fuzz https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=33284

Thanks to Emmanuel Odeke for reporting this issue.

Updates #45910
Fixes #46305
Fixes CVE-2021-33198

Change-Id: I61e7b04dbd80343420b57eede439e361c0f7b79c
Reviewed-on: https://go-review.googlesource.com/c/go/+/316149
Trust: Robert Griesemer <gri@golang.org>
Trust: Katie Hockman <katie@golang.org>
Run-TryBot: Robert Griesemer <gri@golang.org>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Katie Hockman <katie@golang.org>
Reviewed-by: Emmanuel Odeke <emmanuel@orijtech.com>
(cherry picked from commit 6c591f79b0b5327549bd4e94970f7a279efb4ab0)
Reviewed-on: https://go-review.googlesource.com/c/go/+/321831
Run-TryBot: Katie Hockman <katie@golang.org>
Reviewed-by: Roland Shoemaker <roland@golang.org>
Gbp-Pq: Name 0012-CVE-2021-33198.patch

4 years ago[PATCH] [release-branch.go1.15] net/http/httputil: always remove hop-by-hop headers
Filippo Valsorda [Fri, 21 May 2021 18:02:30 +0000 (14:02 -0400)]
[PATCH] [release-branch.go1.15] net/http/httputil: always remove hop-by-hop headers

Previously, we'd fail to remove the Connection header from a request
like this:

    Connection:
    Connection: x-header

Updates #46313
Fixes #46314
Fixes CVE-2021-33197

Change-Id: Ie3009e926ceecfa86dfa6bcc6fe14ff01086be7d
Reviewed-on: https://go-review.googlesource.com/c/go/+/321929
Run-TryBot: Filippo Valsorda <filippo@golang.org>
Reviewed-by: Katie Hockman <katie@golang.org>
Trust: Katie Hockman <katie@golang.org>
Trust: Filippo Valsorda <filippo@golang.org>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-on: https://go-review.googlesource.com/c/go/+/323091
Run-TryBot: Katie Hockman <katie@golang.org>

Gbp-Pq: Name 0011-CVE-2021-33197.patch

4 years ago[PATCH] [release-branch.go1.15] net: don't rely on system hosts in TestCVE202133195
Roland Shoemaker [Wed, 2 Jun 2021 16:20:22 +0000 (09:20 -0700)]
[PATCH] [release-branch.go1.15] net: don't rely on system hosts in TestCVE202133195

Also don't unnecessarily deref the error return.

Updates #46504
Fixes #46531

Change-Id: I22d14ac76776f8988fa0774bdcb5fcd801ce0185
Reviewed-on: https://go-review.googlesource.com/c/go/+/324190
Trust: David Chase <drchase@google.com>
Trust: Damien Neil <dneil@google.com>
Run-TryBot: David Chase <drchase@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Damien Neil <dneil@google.com>
(cherry picked from commit dd7ba3ba2c860c40be6d70b63d4a678449cae80f)
Reviewed-on: https://go-review.googlesource.com/c/go/+/324333
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Gbp-Pq: Name 0010-CVE-2021-33195-2.patch

4 years ago[PATCH] [release-branch.go1.15] net: verify results from Lookup* are valid domain...
Roland Shoemaker [Thu, 27 May 2021 17:40:06 +0000 (10:40 -0700)]
[PATCH] [release-branch.go1.15] net: verify results from Lookup* are valid domain names

For the methods LookupCNAME, LookupSRV, LookupMX, LookupNS, and
LookupAddr check that the returned domain names are in fact valid DNS
names using the existing isDomainName function.

Thanks to Philipp Jeitner and Haya Shulman from Fraunhofer SIT for
reporting this issue.

Updates #46241
Fixes #46356
Fixes CVE-2021-33195

Change-Id: I47a4f58c031cb752f732e88bbdae7f819f0af4f3
Reviewed-on: https://go-review.googlesource.com/c/go/+/323131
Trust: Roland Shoemaker <roland@golang.org>
Run-TryBot: Roland Shoemaker <roland@golang.org>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Filippo Valsorda <filippo@golang.org>
Reviewed-by: Katie Hockman <katie@golang.org>
(cherry picked from commit cdcd02842da7c004efd023881e3719105209c908)
Reviewed-on: https://go-review.googlesource.com/c/go/+/323269

Gbp-Pq: Name 0009-CVE-2021-33195-1.patch

4 years agoarchive/zip: only preallocate File slice if reasonably sized
Roland Shoemaker [Tue, 11 May 2021 18:31:31 +0000 (11:31 -0700)]
archive/zip: only preallocate File slice if reasonably sized

Since the number of files in the EOCD record isn't validated, it isn't
safe to preallocate Reader.Files using that field. A malformed archive
can indicate it contains up to 1 << 128 - 1 files. We can still safely
preallocate the slice by checking if the specified number of files in
the archive is reasonable, given the size of the archive.

Thanks to the OSS-Fuzz project for discovering this issue and to
Emmanuel Odeke for reporting it.

Updates #46242
Fixes #46396
Fixes CVE-2021-33196

Change-Id: I3c76d8eec178468b380d87fdb4a3f2cb06f0ee76
Reviewed-on: https://go-review.googlesource.com/c/go/+/318909
Trust: Roland Shoemaker <roland@golang.org>
Trust: Katie Hockman <katie@golang.org>
Trust: Joe Tsai <thebrokentoaster@gmail.com>
Run-TryBot: Roland Shoemaker <roland@golang.org>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Katie Hockman <katie@golang.org>
Reviewed-by: Joe Tsai <thebrokentoaster@gmail.com>
(cherry picked from commit 74242baa4136c7a9132a8ccd9881354442788c8c)
Reviewed-on: https://go-review.googlesource.com/c/go/+/322949
Reviewed-by: Filippo Valsorda <filippo@golang.org>
Origin: backport, https://github.com/golang/go/commit/c92adf420a3d9a5510f9aea382d826f0c9216a10

Gbp-Pq: Name 0008-CVE-2021-33196.patch

4 years ago[PATCH] [release-branch.go1.15] std: update golang.org/x/net to 20210428183841-261fb5...
Katie Hockman [Wed, 28 Apr 2021 18:47:48 +0000 (14:47 -0400)]
[PATCH] [release-branch.go1.15] std: update golang.org/x/net to 20210428183841-261fb518b1ed

Steps:
  go get -d golang.org/x/net@release-branch.go1.15
  go mod tidy
  go mod vendor

This http2 bundle does not need to be updated.

Fixes #45711

Change-Id: I085ca592dfc8d5d9c328a7979142e88e7130a813
Reviewed-on: https://go-review.googlesource.com/c/go/+/314790
Trust: Katie Hockman <katie@golang.org>
Run-TryBot: Katie Hockman <katie@golang.org>
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
Gbp-Pq: Name 0007-CVE-2021-31525.patch

4 years agoskip userns test in schroot as well
Shengjing Zhu [Fri, 5 Feb 2021 13:21:45 +0000 (21:21 +0800)]
skip userns test in schroot as well

When schroot is using overlayfs, it fails to detect it as chroot.

Gbp-Pq: Name 0006-skip-userns-test-in-schroot-as-well.patch

4 years ago[PATCH] cmd/dist: increase default timeout scale for arm
Balint Reczey [Mon, 31 Aug 2020 11:14:51 +0000 (13:14 +0200)]
[PATCH] cmd/dist: increase default timeout scale for arm

Forwarded: https://github.com/golang/go/issues/43002

Most developers use (faster) amd64 machines setting the test timeouts,
but test may run on slower arm ones and also different tests may suffer
different relative slowdown on the arm CPUs.

Due to those two varying factors it is safer to allow a higher timeout
scale on arm to avoid tests timing out.

Gbp-Pq: Name 0005-cmd-dist-increase-default-timeout-scale-for-arm.patch

4 years agocmd/dist: fix build failure of misc/cgo/test on arm64
Xiangdong Ji [Wed, 5 Aug 2020 06:02:58 +0000 (06:02 +0000)]
cmd/dist: fix build failure of misc/cgo/test on arm64

Test7978 of misc/cgo/test fails in 'dist test' on arm64 if the C compiler
is of GCC-9.4 or above and its 'outline atomics' feature is enabled, since
the internal linking hasn't yet supported "__attribute__((constructor))"
and also mis-handles hidden visibility.

Two changes are made for 'misc/cgo/test' to fix the issue:
  1. passing "-tags=internal" for the internal linking PIE case.
  2. skipping Test7978 on arm64 for the internal linking cases.

This CL fixes 'dist test' failure only, user is expected to pass the option
'-mno-outline-atomics' via CGO_CFLAGS if running into the same problem when
building cgo program using internal linking.

Updates #39466
Change-Id: I2011bb051cae7c43eb0f1c78c7f4fbdb94bf78a6

Gbp-Pq: Name 0004-cmd-dist-fix-build-failure-of-misc-cgo-test-on-arm64.patch

4 years agocmd/go, cmd/cgo: pass -mfp32 and -mhard/soft-float to MIPS GCC
YunQiang Su [Tue, 9 Jun 2020 04:09:58 +0000 (04:09 +0000)]
cmd/go, cmd/cgo: pass -mfp32 and -mhard/soft-float to MIPS GCC

For mips32 currently, we are using FP32, while the gcc may be FPXX,
which may generate .MIPS.abiflags and .gnu.attributes section with
value as FPXX. So the kernel will treat the exe as FPXX, and may
choose to use FR=1 FPU mode for it.
Currently, in Go, we use 2 lwc1 to load both half of a double value
to a pair of even-odd FPR. This behavior can only work with FR=0 mode.

In FR=1 mode, all of 32 FPR are 64bit. If we lwc1 the high-half of a double
value to an odd FPR, and try to use the previous even FPR to compute, the
real high-half of even FPR will be unpredicatable.
We set -mfp32 to force the gcc generate FP32 code and section value.

More details about FP32/FPXX/FP64 are explained in:
https://web.archive.org/web/20180828210612/https://dmz-portal.mips.com/wiki/MIPS_O32_ABI_-_FR0_and_FR1_Interlinking

When GOMIPS/GOMIPS64 is set as softfloat, we should also pass
 -msoft-float to gcc.

Here we also add -mno-odd-spreg option, since Loongson's CPU cannot use
odd-number FR in FR=0 mode.

Fixes #39435

Change-Id: I54026ad416a815fe43a9261ebf6d02e5519c3930

Gbp-Pq: Name 0003-cmd-go-cmd-cgo-pass-mfp32-and-mhard-soft-float-to-MI.patch

4 years agoFix Lintian warnings about wrong interpreter path
Dr. Tobias Quathamer [Thu, 1 Aug 2019 11:50:48 +0000 (13:50 +0200)]
Fix Lintian warnings about wrong interpreter path

The command used for this change is as follows:

grep -rH "/usr/bin/env perl" * | cut -d: -f1 | xargs -n1 sed -i -e "s,/usr/bin/env perl,/usr/bin/perl,"

Gbp-Pq: Name 0002-Fix-Lintian-warnings-about-wrong-interpreter-path.patch

4 years agoDisable test for UserHomeDir.
Dr. Tobias Quathamer [Wed, 19 Dec 2018 13:25:06 +0000 (14:25 +0100)]
Disable test for UserHomeDir.

On Debian buildds, the user home dir does not exist, so this test fails.

Gbp-Pq: Name 0001-Disable-test-for-UserHomeDir.patch

4 years agogolang-1.15 (1.15.9-6) unstable; urgency=medium
Shengjing Zhu [Tue, 13 Jul 2021 05:55:42 +0000 (06:55 +0100)]
golang-1.15 (1.15.9-6) unstable; urgency=medium

  * Team upload.
  * Backport patche for CVE-2021-34558
    crypto/tls: clients can panic when provided a certificate of the wrong type
    for the negotiated parameters

[dgit import unpatched golang-1.15 1.15.9-6]

4 years agoImport golang-1.15_1.15.9-6.debian.tar.xz
Shengjing Zhu [Tue, 13 Jul 2021 05:55:42 +0000 (06:55 +0100)]
Import golang-1.15_1.15.9-6.debian.tar.xz

[dgit import tarball golang-1.15 1.15.9-6 golang-1.15_1.15.9-6.debian.tar.xz]

4 years agoMerge golang-1.15 (1.15.9-5) import into refs/heads/workingbranch
Shengjing Zhu [Sat, 5 Jun 2021 11:36:34 +0000 (12:36 +0100)]
Merge golang-1.15 (1.15.9-5) import into refs/heads/workingbranch

4 years ago[PATCH] [release-branch.go1.15] math/big: check for excessive exponents in Rat.SetString
Robert Griesemer [Sun, 2 May 2021 18:27:03 +0000 (11:27 -0700)]
[PATCH] [release-branch.go1.15] math/big: check for excessive exponents in Rat.SetString

Found by OSS-Fuzz https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=33284

Thanks to Emmanuel Odeke for reporting this issue.

Updates #45910
Fixes #46305
Fixes CVE-2021-33198

Change-Id: I61e7b04dbd80343420b57eede439e361c0f7b79c
Reviewed-on: https://go-review.googlesource.com/c/go/+/316149
Trust: Robert Griesemer <gri@golang.org>
Trust: Katie Hockman <katie@golang.org>
Run-TryBot: Robert Griesemer <gri@golang.org>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Katie Hockman <katie@golang.org>
Reviewed-by: Emmanuel Odeke <emmanuel@orijtech.com>
(cherry picked from commit 6c591f79b0b5327549bd4e94970f7a279efb4ab0)
Reviewed-on: https://go-review.googlesource.com/c/go/+/321831
Run-TryBot: Katie Hockman <katie@golang.org>
Reviewed-by: Roland Shoemaker <roland@golang.org>
Gbp-Pq: Name 0012-CVE-2021-33198.patch

4 years ago[PATCH] [release-branch.go1.15] net/http/httputil: always remove hop-by-hop headers
Filippo Valsorda [Fri, 21 May 2021 18:02:30 +0000 (14:02 -0400)]
[PATCH] [release-branch.go1.15] net/http/httputil: always remove hop-by-hop headers

Previously, we'd fail to remove the Connection header from a request
like this:

    Connection:
    Connection: x-header

Updates #46313
Fixes #46314
Fixes CVE-2021-33197

Change-Id: Ie3009e926ceecfa86dfa6bcc6fe14ff01086be7d
Reviewed-on: https://go-review.googlesource.com/c/go/+/321929
Run-TryBot: Filippo Valsorda <filippo@golang.org>
Reviewed-by: Katie Hockman <katie@golang.org>
Trust: Katie Hockman <katie@golang.org>
Trust: Filippo Valsorda <filippo@golang.org>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-on: https://go-review.googlesource.com/c/go/+/323091
Run-TryBot: Katie Hockman <katie@golang.org>

Gbp-Pq: Name 0011-CVE-2021-33197.patch

4 years ago[PATCH] [release-branch.go1.15] net: don't rely on system hosts in TestCVE202133195
Roland Shoemaker [Wed, 2 Jun 2021 16:20:22 +0000 (09:20 -0700)]
[PATCH] [release-branch.go1.15] net: don't rely on system hosts in TestCVE202133195

Also don't unnecessarily deref the error return.

Updates #46504
Fixes #46531

Change-Id: I22d14ac76776f8988fa0774bdcb5fcd801ce0185
Reviewed-on: https://go-review.googlesource.com/c/go/+/324190
Trust: David Chase <drchase@google.com>
Trust: Damien Neil <dneil@google.com>
Run-TryBot: David Chase <drchase@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Damien Neil <dneil@google.com>
(cherry picked from commit dd7ba3ba2c860c40be6d70b63d4a678449cae80f)
Reviewed-on: https://go-review.googlesource.com/c/go/+/324333
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Gbp-Pq: Name 0010-CVE-2021-33195-2.patch

4 years ago[PATCH] [release-branch.go1.15] net: verify results from Lookup* are valid domain...
Roland Shoemaker [Thu, 27 May 2021 17:40:06 +0000 (10:40 -0700)]
[PATCH] [release-branch.go1.15] net: verify results from Lookup* are valid domain names

For the methods LookupCNAME, LookupSRV, LookupMX, LookupNS, and
LookupAddr check that the returned domain names are in fact valid DNS
names using the existing isDomainName function.

Thanks to Philipp Jeitner and Haya Shulman from Fraunhofer SIT for
reporting this issue.

Updates #46241
Fixes #46356
Fixes CVE-2021-33195

Change-Id: I47a4f58c031cb752f732e88bbdae7f819f0af4f3
Reviewed-on: https://go-review.googlesource.com/c/go/+/323131
Trust: Roland Shoemaker <roland@golang.org>
Run-TryBot: Roland Shoemaker <roland@golang.org>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Filippo Valsorda <filippo@golang.org>
Reviewed-by: Katie Hockman <katie@golang.org>
(cherry picked from commit cdcd02842da7c004efd023881e3719105209c908)
Reviewed-on: https://go-review.googlesource.com/c/go/+/323269

Gbp-Pq: Name 0009-CVE-2021-33195-1.patch

4 years agoarchive/zip: only preallocate File slice if reasonably sized
Roland Shoemaker [Tue, 11 May 2021 18:31:31 +0000 (11:31 -0700)]
archive/zip: only preallocate File slice if reasonably sized

Since the number of files in the EOCD record isn't validated, it isn't
safe to preallocate Reader.Files using that field. A malformed archive
can indicate it contains up to 1 << 128 - 1 files. We can still safely
preallocate the slice by checking if the specified number of files in
the archive is reasonable, given the size of the archive.

Thanks to the OSS-Fuzz project for discovering this issue and to
Emmanuel Odeke for reporting it.

Updates #46242
Fixes #46396
Fixes CVE-2021-33196

Change-Id: I3c76d8eec178468b380d87fdb4a3f2cb06f0ee76
Reviewed-on: https://go-review.googlesource.com/c/go/+/318909
Trust: Roland Shoemaker <roland@golang.org>
Trust: Katie Hockman <katie@golang.org>
Trust: Joe Tsai <thebrokentoaster@gmail.com>
Run-TryBot: Roland Shoemaker <roland@golang.org>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Katie Hockman <katie@golang.org>
Reviewed-by: Joe Tsai <thebrokentoaster@gmail.com>
(cherry picked from commit 74242baa4136c7a9132a8ccd9881354442788c8c)
Reviewed-on: https://go-review.googlesource.com/c/go/+/322949
Reviewed-by: Filippo Valsorda <filippo@golang.org>
Origin: backport, https://github.com/golang/go/commit/c92adf420a3d9a5510f9aea382d826f0c9216a10

Gbp-Pq: Name 0008-CVE-2021-33196.patch

4 years ago[PATCH] [release-branch.go1.15] std: update golang.org/x/net to 20210428183841-261fb5...
Katie Hockman [Wed, 28 Apr 2021 18:47:48 +0000 (14:47 -0400)]
[PATCH] [release-branch.go1.15] std: update golang.org/x/net to 20210428183841-261fb518b1ed

Steps:
  go get -d golang.org/x/net@release-branch.go1.15
  go mod tidy
  go mod vendor

This http2 bundle does not need to be updated.

Fixes #45711

Change-Id: I085ca592dfc8d5d9c328a7979142e88e7130a813
Reviewed-on: https://go-review.googlesource.com/c/go/+/314790
Trust: Katie Hockman <katie@golang.org>
Run-TryBot: Katie Hockman <katie@golang.org>
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
Gbp-Pq: Name 0007-CVE-2021-31525.patch

4 years agoskip userns test in schroot as well
Shengjing Zhu [Fri, 5 Feb 2021 13:21:45 +0000 (21:21 +0800)]
skip userns test in schroot as well

When schroot is using overlayfs, it fails to detect it as chroot.

Gbp-Pq: Name 0006-skip-userns-test-in-schroot-as-well.patch

4 years ago[PATCH] cmd/dist: increase default timeout scale for arm
Balint Reczey [Mon, 31 Aug 2020 11:14:51 +0000 (13:14 +0200)]
[PATCH] cmd/dist: increase default timeout scale for arm

Forwarded: https://github.com/golang/go/issues/43002

Most developers use (faster) amd64 machines setting the test timeouts,
but test may run on slower arm ones and also different tests may suffer
different relative slowdown on the arm CPUs.

Due to those two varying factors it is safer to allow a higher timeout
scale on arm to avoid tests timing out.

Gbp-Pq: Name 0005-cmd-dist-increase-default-timeout-scale-for-arm.patch

4 years agocmd/dist: fix build failure of misc/cgo/test on arm64
Xiangdong Ji [Wed, 5 Aug 2020 06:02:58 +0000 (06:02 +0000)]
cmd/dist: fix build failure of misc/cgo/test on arm64

Test7978 of misc/cgo/test fails in 'dist test' on arm64 if the C compiler
is of GCC-9.4 or above and its 'outline atomics' feature is enabled, since
the internal linking hasn't yet supported "__attribute__((constructor))"
and also mis-handles hidden visibility.

Two changes are made for 'misc/cgo/test' to fix the issue:
  1. passing "-tags=internal" for the internal linking PIE case.
  2. skipping Test7978 on arm64 for the internal linking cases.

This CL fixes 'dist test' failure only, user is expected to pass the option
'-mno-outline-atomics' via CGO_CFLAGS if running into the same problem when
building cgo program using internal linking.

Updates #39466
Change-Id: I2011bb051cae7c43eb0f1c78c7f4fbdb94bf78a6

Gbp-Pq: Name 0004-cmd-dist-fix-build-failure-of-misc-cgo-test-on-arm64.patch

4 years agocmd/go, cmd/cgo: pass -mfp32 and -mhard/soft-float to MIPS GCC
YunQiang Su [Tue, 9 Jun 2020 04:09:58 +0000 (04:09 +0000)]
cmd/go, cmd/cgo: pass -mfp32 and -mhard/soft-float to MIPS GCC

For mips32 currently, we are using FP32, while the gcc may be FPXX,
which may generate .MIPS.abiflags and .gnu.attributes section with
value as FPXX. So the kernel will treat the exe as FPXX, and may
choose to use FR=1 FPU mode for it.
Currently, in Go, we use 2 lwc1 to load both half of a double value
to a pair of even-odd FPR. This behavior can only work with FR=0 mode.

In FR=1 mode, all of 32 FPR are 64bit. If we lwc1 the high-half of a double
value to an odd FPR, and try to use the previous even FPR to compute, the
real high-half of even FPR will be unpredicatable.
We set -mfp32 to force the gcc generate FP32 code and section value.

More details about FP32/FPXX/FP64 are explained in:
https://web.archive.org/web/20180828210612/https://dmz-portal.mips.com/wiki/MIPS_O32_ABI_-_FR0_and_FR1_Interlinking

When GOMIPS/GOMIPS64 is set as softfloat, we should also pass
 -msoft-float to gcc.

Here we also add -mno-odd-spreg option, since Loongson's CPU cannot use
odd-number FR in FR=0 mode.

Fixes #39435

Change-Id: I54026ad416a815fe43a9261ebf6d02e5519c3930

Gbp-Pq: Name 0003-cmd-go-cmd-cgo-pass-mfp32-and-mhard-soft-float-to-MI.patch

4 years agoFix Lintian warnings about wrong interpreter path
Dr. Tobias Quathamer [Thu, 1 Aug 2019 11:50:48 +0000 (13:50 +0200)]
Fix Lintian warnings about wrong interpreter path

The command used for this change is as follows:

grep -rH "/usr/bin/env perl" * | cut -d: -f1 | xargs -n1 sed -i -e "s,/usr/bin/env perl,/usr/bin/perl,"

Gbp-Pq: Name 0002-Fix-Lintian-warnings-about-wrong-interpreter-path.patch

4 years agoDisable test for UserHomeDir.
Dr. Tobias Quathamer [Wed, 19 Dec 2018 13:25:06 +0000 (14:25 +0100)]
Disable test for UserHomeDir.

On Debian buildds, the user home dir does not exist, so this test fails.

Gbp-Pq: Name 0001-Disable-test-for-UserHomeDir.patch

4 years agogolang-1.15 (1.15.9-5) unstable; urgency=medium
Shengjing Zhu [Sat, 5 Jun 2021 11:36:34 +0000 (12:36 +0100)]
golang-1.15 (1.15.9-5) unstable; urgency=medium

  * Team upload.
  * Backport patches for CVE-2021-33195 CVE-2021-33197 CVE-2021-33198
    + CVE-2021-33195: net: Lookup functions may return invalid host names
    + CVE-2021-33197: net/http/httputil: ReverseProxy forwards Connection
      headers if first one is empty
    + CVE-2021-33198: math/big: (*Rat).SetString with "1.770p02041010010011001001"
      crashes with "makeslice: len out of range"

[dgit import unpatched golang-1.15 1.15.9-5]

4 years agoImport golang-1.15_1.15.9-5.debian.tar.xz
Shengjing Zhu [Sat, 5 Jun 2021 11:36:34 +0000 (12:36 +0100)]
Import golang-1.15_1.15.9-5.debian.tar.xz

[dgit import tarball golang-1.15 1.15.9-5 golang-1.15_1.15.9-5.debian.tar.xz]

4 years agoMerge golang-1.15 (1.15.9-3) import into refs/heads/workingbranch
Shengjing Zhu [Sat, 8 May 2021 06:22:26 +0000 (07:22 +0100)]
Merge golang-1.15 (1.15.9-3) import into refs/heads/workingbranch

4 years ago[PATCH] [release-branch.go1.15] std: update golang.org/x/net to 20210428183841-261fb5...
Katie Hockman [Wed, 28 Apr 2021 18:47:48 +0000 (14:47 -0400)]
[PATCH] [release-branch.go1.15] std: update golang.org/x/net to 20210428183841-261fb518b1ed

Steps:
  go get -d golang.org/x/net@release-branch.go1.15
  go mod tidy
  go mod vendor

This http2 bundle does not need to be updated.

Fixes #45711

Change-Id: I085ca592dfc8d5d9c328a7979142e88e7130a813
Reviewed-on: https://go-review.googlesource.com/c/go/+/314790
Trust: Katie Hockman <katie@golang.org>
Run-TryBot: Katie Hockman <katie@golang.org>
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
Gbp-Pq: Name 0007-CVE-2021-31525.patch

4 years agoskip userns test in schroot as well
Shengjing Zhu [Fri, 5 Feb 2021 13:21:45 +0000 (21:21 +0800)]
skip userns test in schroot as well

When schroot is using overlayfs, it fails to detect it as chroot.

Gbp-Pq: Name 0006-skip-userns-test-in-schroot-as-well.patch

4 years ago[PATCH] cmd/dist: increase default timeout scale for arm
Balint Reczey [Mon, 31 Aug 2020 11:14:51 +0000 (13:14 +0200)]
[PATCH] cmd/dist: increase default timeout scale for arm

Forwarded: https://github.com/golang/go/issues/43002

Most developers use (faster) amd64 machines setting the test timeouts,
but test may run on slower arm ones and also different tests may suffer
different relative slowdown on the arm CPUs.

Due to those two varying factors it is safer to allow a higher timeout
scale on arm to avoid tests timing out.

Gbp-Pq: Name 0005-cmd-dist-increase-default-timeout-scale-for-arm.patch

4 years agocmd/dist: fix build failure of misc/cgo/test on arm64
Xiangdong Ji [Wed, 5 Aug 2020 06:02:58 +0000 (06:02 +0000)]
cmd/dist: fix build failure of misc/cgo/test on arm64

Test7978 of misc/cgo/test fails in 'dist test' on arm64 if the C compiler
is of GCC-9.4 or above and its 'outline atomics' feature is enabled, since
the internal linking hasn't yet supported "__attribute__((constructor))"
and also mis-handles hidden visibility.

Two changes are made for 'misc/cgo/test' to fix the issue:
  1. passing "-tags=internal" for the internal linking PIE case.
  2. skipping Test7978 on arm64 for the internal linking cases.

This CL fixes 'dist test' failure only, user is expected to pass the option
'-mno-outline-atomics' via CGO_CFLAGS if running into the same problem when
building cgo program using internal linking.

Updates #39466
Change-Id: I2011bb051cae7c43eb0f1c78c7f4fbdb94bf78a6

Gbp-Pq: Name 0004-cmd-dist-fix-build-failure-of-misc-cgo-test-on-arm64.patch

4 years agocmd/go, cmd/cgo: pass -mfp32 and -mhard/soft-float to MIPS GCC
YunQiang Su [Tue, 9 Jun 2020 04:09:58 +0000 (04:09 +0000)]
cmd/go, cmd/cgo: pass -mfp32 and -mhard/soft-float to MIPS GCC

For mips32 currently, we are using FP32, while the gcc may be FPXX,
which may generate .MIPS.abiflags and .gnu.attributes section with
value as FPXX. So the kernel will treat the exe as FPXX, and may
choose to use FR=1 FPU mode for it.
Currently, in Go, we use 2 lwc1 to load both half of a double value
to a pair of even-odd FPR. This behavior can only work with FR=0 mode.

In FR=1 mode, all of 32 FPR are 64bit. If we lwc1 the high-half of a double
value to an odd FPR, and try to use the previous even FPR to compute, the
real high-half of even FPR will be unpredicatable.
We set -mfp32 to force the gcc generate FP32 code and section value.

More details about FP32/FPXX/FP64 are explained in:
https://web.archive.org/web/20180828210612/https://dmz-portal.mips.com/wiki/MIPS_O32_ABI_-_FR0_and_FR1_Interlinking

When GOMIPS/GOMIPS64 is set as softfloat, we should also pass
 -msoft-float to gcc.

Here we also add -mno-odd-spreg option, since Loongson's CPU cannot use
odd-number FR in FR=0 mode.

Fixes #39435

Change-Id: I54026ad416a815fe43a9261ebf6d02e5519c3930

Gbp-Pq: Name 0003-cmd-go-cmd-cgo-pass-mfp32-and-mhard-soft-float-to-MI.patch

4 years agoFix Lintian warnings about wrong interpreter path
Dr. Tobias Quathamer [Thu, 1 Aug 2019 11:50:48 +0000 (13:50 +0200)]
Fix Lintian warnings about wrong interpreter path

The command used for this change is as follows:

grep -rH "/usr/bin/env perl" * | cut -d: -f1 | xargs -n1 sed -i -e "s,/usr/bin/env perl,/usr/bin/perl,"

Gbp-Pq: Name 0002-Fix-Lintian-warnings-about-wrong-interpreter-path.patch

4 years agoDisable test for UserHomeDir.
Dr. Tobias Quathamer [Wed, 19 Dec 2018 13:25:06 +0000 (14:25 +0100)]
Disable test for UserHomeDir.

On Debian buildds, the user home dir does not exist, so this test fails.

Gbp-Pq: Name 0001-Disable-test-for-UserHomeDir.patch

4 years agogolang-1.15 (1.15.9-3) unstable; urgency=medium
Shengjing Zhu [Sat, 8 May 2021 06:22:26 +0000 (07:22 +0100)]
golang-1.15 (1.15.9-3) unstable; urgency=medium

  * Fix failed TestDependencyVersionsConsistent test.
    When dpkg-source unpack tarball, it produces .pc dir in source dir.
    The last patch 0007-CVE-2021-31525.patch causes
    go.mod/go.sum/modules.txt files in .pc dir with old content.
    Then TestDependencyVersionsConsistent picks these old content in .pc
    dir, results error:
    --- FAIL: TestDependencyVersionsConsistent (0.00s)
        moddeps_test.go:217: Modules within GOROOT require different versions of golang.org/x/net.
        moddeps_test.go:229: std requires v0.0.0-20201008223702-a5fa9d4b7c91
        moddeps_test.go:229: std requires v0.0.0-20210428183841-261fb518b1ed

[dgit import unpatched golang-1.15 1.15.9-3]

4 years agoImport golang-1.15_1.15.9-3.debian.tar.xz
Shengjing Zhu [Sat, 8 May 2021 06:22:26 +0000 (07:22 +0100)]
Import golang-1.15_1.15.9-3.debian.tar.xz

[dgit import tarball golang-1.15 1.15.9-3 golang-1.15_1.15.9-3.debian.tar.xz]

4 years agoImport golang-1.15_1.15.9.orig.tar.gz
Shengjing Zhu [Thu, 11 Mar 2021 15:43:18 +0000 (15:43 +0000)]
Import golang-1.15_1.15.9.orig.tar.gz

[dgit import orig golang-1.15_1.15.9.orig.tar.gz]

4 years agoMerge golang-1.15 (1.15.9-1) import into refs/heads/workingbranch
Shengjing Zhu [Thu, 11 Mar 2021 15:43:18 +0000 (15:43 +0000)]
Merge golang-1.15 (1.15.9-1) import into refs/heads/workingbranch

4 years agoskip userns test in schroot as well
Shengjing Zhu [Fri, 5 Feb 2021 13:21:45 +0000 (21:21 +0800)]
skip userns test in schroot as well

When schroot is using overlayfs, it fails to detect it as chroot.

Gbp-Pq: Name 0006-skip-userns-test-in-schroot-as-well.patch

4 years ago[PATCH] cmd/dist: increase default timeout scale for arm
Balint Reczey [Mon, 31 Aug 2020 11:14:51 +0000 (13:14 +0200)]
[PATCH] cmd/dist: increase default timeout scale for arm

Forwarded: https://github.com/golang/go/issues/43002

Most developers use (faster) amd64 machines setting the test timeouts,
but test may run on slower arm ones and also different tests may suffer
different relative slowdown on the arm CPUs.

Due to those two varying factors it is safer to allow a higher timeout
scale on arm to avoid tests timing out.

Gbp-Pq: Name 0005-cmd-dist-increase-default-timeout-scale-for-arm.patch

4 years agocmd/dist: fix build failure of misc/cgo/test on arm64
Xiangdong Ji [Wed, 5 Aug 2020 06:02:58 +0000 (06:02 +0000)]
cmd/dist: fix build failure of misc/cgo/test on arm64

Test7978 of misc/cgo/test fails in 'dist test' on arm64 if the C compiler
is of GCC-9.4 or above and its 'outline atomics' feature is enabled, since
the internal linking hasn't yet supported "__attribute__((constructor))"
and also mis-handles hidden visibility.

Two changes are made for 'misc/cgo/test' to fix the issue:
  1. passing "-tags=internal" for the internal linking PIE case.
  2. skipping Test7978 on arm64 for the internal linking cases.

This CL fixes 'dist test' failure only, user is expected to pass the option
'-mno-outline-atomics' via CGO_CFLAGS if running into the same problem when
building cgo program using internal linking.

Updates #39466
Change-Id: I2011bb051cae7c43eb0f1c78c7f4fbdb94bf78a6

Gbp-Pq: Name 0004-cmd-dist-fix-build-failure-of-misc-cgo-test-on-arm64.patch

4 years agocmd/go, cmd/cgo: pass -mfp32 and -mhard/soft-float to MIPS GCC
YunQiang Su [Tue, 9 Jun 2020 04:09:58 +0000 (04:09 +0000)]
cmd/go, cmd/cgo: pass -mfp32 and -mhard/soft-float to MIPS GCC

For mips32 currently, we are using FP32, while the gcc may be FPXX,
which may generate .MIPS.abiflags and .gnu.attributes section with
value as FPXX. So the kernel will treat the exe as FPXX, and may
choose to use FR=1 FPU mode for it.
Currently, in Go, we use 2 lwc1 to load both half of a double value
to a pair of even-odd FPR. This behavior can only work with FR=0 mode.

In FR=1 mode, all of 32 FPR are 64bit. If we lwc1 the high-half of a double
value to an odd FPR, and try to use the previous even FPR to compute, the
real high-half of even FPR will be unpredicatable.
We set -mfp32 to force the gcc generate FP32 code and section value.

More details about FP32/FPXX/FP64 are explained in:
https://web.archive.org/web/20180828210612/https://dmz-portal.mips.com/wiki/MIPS_O32_ABI_-_FR0_and_FR1_Interlinking

When GOMIPS/GOMIPS64 is set as softfloat, we should also pass
 -msoft-float to gcc.

Here we also add -mno-odd-spreg option, since Loongson's CPU cannot use
odd-number FR in FR=0 mode.

Fixes #39435

Change-Id: I54026ad416a815fe43a9261ebf6d02e5519c3930

Gbp-Pq: Name 0003-cmd-go-cmd-cgo-pass-mfp32-and-mhard-soft-float-to-MI.patch

4 years agoFix Lintian warnings about wrong interpreter path
Dr. Tobias Quathamer [Thu, 1 Aug 2019 11:50:48 +0000 (13:50 +0200)]
Fix Lintian warnings about wrong interpreter path

The command used for this change is as follows:

grep -rH "/usr/bin/env perl" * | cut -d: -f1 | xargs -n1 sed -i -e "s,/usr/bin/env perl,/usr/bin/perl,"

Gbp-Pq: Name 0002-Fix-Lintian-warnings-about-wrong-interpreter-path.patch

4 years agoDisable test for UserHomeDir.
Dr. Tobias Quathamer [Wed, 19 Dec 2018 13:25:06 +0000 (14:25 +0100)]
Disable test for UserHomeDir.

On Debian buildds, the user home dir does not exist, so this test fails.

Gbp-Pq: Name 0001-Disable-test-for-UserHomeDir.patch

4 years agogolang-1.15 (1.15.9-1) unstable; urgency=medium
Shengjing Zhu [Thu, 11 Mar 2021 15:43:18 +0000 (15:43 +0000)]
golang-1.15 (1.15.9-1) unstable; urgency=medium

  * Team upload.
  * New upstream version 1.15.9
    + encoding/xml: infinite loop when using `xml.NewTokenDecoder` with a
      custom `TokenReader`. CVE-2021-27918

[dgit import unpatched golang-1.15 1.15.9-1]

4 years agoImport golang-1.15_1.15.9-1.debian.tar.xz
Shengjing Zhu [Thu, 11 Mar 2021 15:43:18 +0000 (15:43 +0000)]
Import golang-1.15_1.15.9-1.debian.tar.xz

[dgit import tarball golang-1.15 1.15.9-1 golang-1.15_1.15.9-1.debian.tar.xz]

4 years agoMerge golang-1.15 (1.15.8-4) import into refs/heads/workingbranch
Shengjing Zhu [Mon, 15 Feb 2021 15:19:39 +0000 (15:19 +0000)]
Merge golang-1.15 (1.15.8-4) import into refs/heads/workingbranch

4 years agoskip userns test in schroot as well
Shengjing Zhu [Fri, 5 Feb 2021 13:21:45 +0000 (21:21 +0800)]
skip userns test in schroot as well

When schroot is using overlayfs, it fails to detect it as chroot.

Gbp-Pq: Name 0006-skip-userns-test-in-schroot-as-well.patch

4 years ago[PATCH] cmd/dist: increase default timeout scale for arm
Balint Reczey [Mon, 31 Aug 2020 11:14:51 +0000 (13:14 +0200)]
[PATCH] cmd/dist: increase default timeout scale for arm

Forwarded: https://github.com/golang/go/issues/43002

Most developers use (faster) amd64 machines setting the test timeouts,
but test may run on slower arm ones and also different tests may suffer
different relative slowdown on the arm CPUs.

Due to those two varying factors it is safer to allow a higher timeout
scale on arm to avoid tests timing out.

Gbp-Pq: Name 0005-cmd-dist-increase-default-timeout-scale-for-arm.patch

4 years agocmd/dist: fix build failure of misc/cgo/test on arm64
Xiangdong Ji [Wed, 5 Aug 2020 06:02:58 +0000 (06:02 +0000)]
cmd/dist: fix build failure of misc/cgo/test on arm64

Test7978 of misc/cgo/test fails in 'dist test' on arm64 if the C compiler
is of GCC-9.4 or above and its 'outline atomics' feature is enabled, since
the internal linking hasn't yet supported "__attribute__((constructor))"
and also mis-handles hidden visibility.

Two changes are made for 'misc/cgo/test' to fix the issue:
  1. passing "-tags=internal" for the internal linking PIE case.
  2. skipping Test7978 on arm64 for the internal linking cases.

This CL fixes 'dist test' failure only, user is expected to pass the option
'-mno-outline-atomics' via CGO_CFLAGS if running into the same problem when
building cgo program using internal linking.

Updates #39466
Change-Id: I2011bb051cae7c43eb0f1c78c7f4fbdb94bf78a6

Gbp-Pq: Name 0004-cmd-dist-fix-build-failure-of-misc-cgo-test-on-arm64.patch

4 years agocmd/go, cmd/cgo: pass -mfp32 and -mhard/soft-float to MIPS GCC
YunQiang Su [Tue, 9 Jun 2020 04:09:58 +0000 (04:09 +0000)]
cmd/go, cmd/cgo: pass -mfp32 and -mhard/soft-float to MIPS GCC

For mips32 currently, we are using FP32, while the gcc may be FPXX,
which may generate .MIPS.abiflags and .gnu.attributes section with
value as FPXX. So the kernel will treat the exe as FPXX, and may
choose to use FR=1 FPU mode for it.
Currently, in Go, we use 2 lwc1 to load both half of a double value
to a pair of even-odd FPR. This behavior can only work with FR=0 mode.

In FR=1 mode, all of 32 FPR are 64bit. If we lwc1 the high-half of a double
value to an odd FPR, and try to use the previous even FPR to compute, the
real high-half of even FPR will be unpredicatable.
We set -mfp32 to force the gcc generate FP32 code and section value.

More details about FP32/FPXX/FP64 are explained in:
https://web.archive.org/web/20180828210612/https://dmz-portal.mips.com/wiki/MIPS_O32_ABI_-_FR0_and_FR1_Interlinking

When GOMIPS/GOMIPS64 is set as softfloat, we should also pass
 -msoft-float to gcc.

Here we also add -mno-odd-spreg option, since Loongson's CPU cannot use
odd-number FR in FR=0 mode.

Fixes #39435

Change-Id: I54026ad416a815fe43a9261ebf6d02e5519c3930

Gbp-Pq: Name 0003-cmd-go-cmd-cgo-pass-mfp32-and-mhard-soft-float-to-MI.patch

4 years agoFix Lintian warnings about wrong interpreter path
Dr. Tobias Quathamer [Thu, 1 Aug 2019 11:50:48 +0000 (13:50 +0200)]
Fix Lintian warnings about wrong interpreter path

The command used for this change is as follows:

grep -rH "/usr/bin/env perl" * | cut -d: -f1 | xargs -n1 sed -i -e "s,/usr/bin/env perl,/usr/bin/perl,"

Gbp-Pq: Name 0002-Fix-Lintian-warnings-about-wrong-interpreter-path.patch

4 years agoDisable test for UserHomeDir.
Dr. Tobias Quathamer [Wed, 19 Dec 2018 13:25:06 +0000 (14:25 +0100)]
Disable test for UserHomeDir.

On Debian buildds, the user home dir does not exist, so this test fails.

Gbp-Pq: Name 0001-Disable-test-for-UserHomeDir.patch

4 years agogolang-1.15 (1.15.8-4) unstable; urgency=medium
Shengjing Zhu [Mon, 15 Feb 2021 15:19:39 +0000 (15:19 +0000)]
golang-1.15 (1.15.8-4) unstable; urgency=medium

  * Team upload.
  * Revert "0007-cmd-link-check-CGO_CFLAGS-for-non-g-I-O-options-befo.patch"
    This patch causes:
    1. unexpected error message, which makes some packages FTBFS
       loadinternal: cannot find runtime/cgo
Closes: #982701, #982714, #982720, #982724, #982734
    2. unable to build package on riscv64
       external linking not supported for linux/riscv64

[dgit import unpatched golang-1.15 1.15.8-4]

4 years agoImport golang-1.15_1.15.8-4.debian.tar.xz
Shengjing Zhu [Mon, 15 Feb 2021 15:19:39 +0000 (15:19 +0000)]
Import golang-1.15_1.15.8-4.debian.tar.xz

[dgit import tarball golang-1.15 1.15.8-4 golang-1.15_1.15.8-4.debian.tar.xz]

4 years agoMerge golang-1.15 (1.15.8-3) import into refs/heads/workingbranch
Michael Hudson-Doyle [Tue, 9 Feb 2021 23:58:55 +0000 (23:58 +0000)]
Merge golang-1.15 (1.15.8-3) import into refs/heads/workingbranch

4 years ago[PATCH] cmd/link: check CGO_CFLAGS for non -g/-I/-O options before internal linking
Michael Hudson-Doyle [Tue, 5 Jan 2021 23:18:24 +0000 (12:18 +1300)]
[PATCH] cmd/link: check CGO_CFLAGS for non -g/-I/-O options before internal linking

On Debian and Ubuntu we are investigating enabling link-time
optimization by default, which means the default CFLAGS will contain
arguments that cause gcc to generate object files
cmd/link/internal/loadelf cannot process. Rather than failing in this
situation, scan CGO_CFLAGS in mustLinkExternal and do not link
internally if there is a flag that does not start with -g, -I, or -O.

CFLAGS can also be injected via #cgo CFLAGS: directives but as use of
any non-standard library cgo modules disables internal linking anyway,
we don't have to worry about that here.

Fixes #43505

Change-Id: Ib083f6daf22617e2e5df67e95d3bc178942328cd

Gbp-Pq: Name 0007-cmd-link-check-CGO_CFLAGS-for-non-g-I-O-options-befo.patch

4 years agoskip userns test in schroot as well
Shengjing Zhu [Fri, 5 Feb 2021 13:21:45 +0000 (21:21 +0800)]
skip userns test in schroot as well

When schroot is using overlayfs, it fails to detect it as chroot.

Gbp-Pq: Name 0006-skip-userns-test-in-schroot-as-well.patch

4 years ago[PATCH] cmd/dist: increase default timeout scale for arm
Balint Reczey [Mon, 31 Aug 2020 11:14:51 +0000 (13:14 +0200)]
[PATCH] cmd/dist: increase default timeout scale for arm

Forwarded: https://github.com/golang/go/issues/43002

Most developers use (faster) amd64 machines setting the test timeouts,
but test may run on slower arm ones and also different tests may suffer
different relative slowdown on the arm CPUs.

Due to those two varying factors it is safer to allow a higher timeout
scale on arm to avoid tests timing out.

Gbp-Pq: Name 0005-cmd-dist-increase-default-timeout-scale-for-arm.patch

4 years agocmd/dist: fix build failure of misc/cgo/test on arm64
Xiangdong Ji [Wed, 5 Aug 2020 06:02:58 +0000 (06:02 +0000)]
cmd/dist: fix build failure of misc/cgo/test on arm64

Test7978 of misc/cgo/test fails in 'dist test' on arm64 if the C compiler
is of GCC-9.4 or above and its 'outline atomics' feature is enabled, since
the internal linking hasn't yet supported "__attribute__((constructor))"
and also mis-handles hidden visibility.

Two changes are made for 'misc/cgo/test' to fix the issue:
  1. passing "-tags=internal" for the internal linking PIE case.
  2. skipping Test7978 on arm64 for the internal linking cases.

This CL fixes 'dist test' failure only, user is expected to pass the option
'-mno-outline-atomics' via CGO_CFLAGS if running into the same problem when
building cgo program using internal linking.

Updates #39466
Change-Id: I2011bb051cae7c43eb0f1c78c7f4fbdb94bf78a6

Gbp-Pq: Name 0004-cmd-dist-fix-build-failure-of-misc-cgo-test-on-arm64.patch

4 years agocmd/go, cmd/cgo: pass -mfp32 and -mhard/soft-float to MIPS GCC
YunQiang Su [Tue, 9 Jun 2020 04:09:58 +0000 (04:09 +0000)]
cmd/go, cmd/cgo: pass -mfp32 and -mhard/soft-float to MIPS GCC

For mips32 currently, we are using FP32, while the gcc may be FPXX,
which may generate .MIPS.abiflags and .gnu.attributes section with
value as FPXX. So the kernel will treat the exe as FPXX, and may
choose to use FR=1 FPU mode for it.
Currently, in Go, we use 2 lwc1 to load both half of a double value
to a pair of even-odd FPR. This behavior can only work with FR=0 mode.

In FR=1 mode, all of 32 FPR are 64bit. If we lwc1 the high-half of a double
value to an odd FPR, and try to use the previous even FPR to compute, the
real high-half of even FPR will be unpredicatable.
We set -mfp32 to force the gcc generate FP32 code and section value.

More details about FP32/FPXX/FP64 are explained in:
https://web.archive.org/web/20180828210612/https://dmz-portal.mips.com/wiki/MIPS_O32_ABI_-_FR0_and_FR1_Interlinking

When GOMIPS/GOMIPS64 is set as softfloat, we should also pass
 -msoft-float to gcc.

Here we also add -mno-odd-spreg option, since Loongson's CPU cannot use
odd-number FR in FR=0 mode.

Fixes #39435

Change-Id: I54026ad416a815fe43a9261ebf6d02e5519c3930

Gbp-Pq: Name 0003-cmd-go-cmd-cgo-pass-mfp32-and-mhard-soft-float-to-MI.patch

4 years agoFix Lintian warnings about wrong interpreter path
Dr. Tobias Quathamer [Thu, 1 Aug 2019 11:50:48 +0000 (13:50 +0200)]
Fix Lintian warnings about wrong interpreter path

The command used for this change is as follows:

grep -rH "/usr/bin/env perl" * | cut -d: -f1 | xargs -n1 sed -i -e "s,/usr/bin/env perl,/usr/bin/perl,"

Gbp-Pq: Name 0002-Fix-Lintian-warnings-about-wrong-interpreter-path.patch

4 years agoDisable test for UserHomeDir.
Dr. Tobias Quathamer [Wed, 19 Dec 2018 13:25:06 +0000 (14:25 +0100)]
Disable test for UserHomeDir.

On Debian buildds, the user home dir does not exist, so this test fails.

Gbp-Pq: Name 0001-Disable-test-for-UserHomeDir.patch

4 years agogolang-1.15 (1.15.8-3) unstable; urgency=high
Michael Hudson-Doyle [Tue, 9 Feb 2021 23:58:55 +0000 (23:58 +0000)]
golang-1.15 (1.15.8-3) unstable; urgency=high

  * Re-upload with urgency=high due to impending freeze.

[dgit import unpatched golang-1.15 1.15.8-3]

4 years agoImport golang-1.15_1.15.8-3.debian.tar.xz
Michael Hudson-Doyle [Tue, 9 Feb 2021 23:58:55 +0000 (23:58 +0000)]
Import golang-1.15_1.15.8-3.debian.tar.xz

[dgit import tarball golang-1.15 1.15.8-3 golang-1.15_1.15.8-3.debian.tar.xz]

4 years agoImport golang-1.15_1.15.8.orig.tar.gz
Shengjing Zhu [Fri, 5 Feb 2021 12:51:44 +0000 (12:51 +0000)]
Import golang-1.15_1.15.8.orig.tar.gz

[dgit import orig golang-1.15_1.15.8.orig.tar.gz]

4 years agoMerge golang-1.15 (1.15.7-1) import into refs/heads/workingbranch
Shengjing Zhu [Fri, 22 Jan 2021 17:59:14 +0000 (17:59 +0000)]
Merge golang-1.15 (1.15.7-1) import into refs/heads/workingbranch

4 years ago[PATCH] cmd/dist: increase default timeout scale for arm
Balint Reczey [Mon, 31 Aug 2020 11:14:51 +0000 (13:14 +0200)]
[PATCH] cmd/dist: increase default timeout scale for arm

Forwarded: https://github.com/golang/go/issues/43002

Most developers use (faster) amd64 machines setting the test timeouts,
but test may run on slower arm ones and also different tests may suffer
different relative slowdown on the arm CPUs.

Due to those two varying factors it is safer to allow a higher timeout
scale on arm to avoid tests timing out.

Gbp-Pq: Name 0006-cmd-dist-increase-default-timeout-scale-for-arm.patch

4 years agocmd/dist: fix build failure of misc/cgo/test on arm64
Xiangdong Ji [Wed, 5 Aug 2020 06:02:58 +0000 (06:02 +0000)]
cmd/dist: fix build failure of misc/cgo/test on arm64

Test7978 of misc/cgo/test fails in 'dist test' on arm64 if the C compiler
is of GCC-9.4 or above and its 'outline atomics' feature is enabled, since
the internal linking hasn't yet supported "__attribute__((constructor))"
and also mis-handles hidden visibility.

Two changes are made for 'misc/cgo/test' to fix the issue:
  1. passing "-tags=internal" for the internal linking PIE case.
  2. skipping Test7978 on arm64 for the internal linking cases.

This CL fixes 'dist test' failure only, user is expected to pass the option
'-mno-outline-atomics' via CGO_CFLAGS if running into the same problem when
building cgo program using internal linking.

Updates #39466
Change-Id: I2011bb051cae7c43eb0f1c78c7f4fbdb94bf78a6

Gbp-Pq: Name 0004-cmd-dist-fix-build-failure-of-misc-cgo-test-on-arm64.patch

4 years agocmd/go, cmd/cgo: pass -mfp32 and -mhard/soft-float to MIPS GCC
YunQiang Su [Tue, 9 Jun 2020 04:09:58 +0000 (04:09 +0000)]
cmd/go, cmd/cgo: pass -mfp32 and -mhard/soft-float to MIPS GCC

For mips32 currently, we are using FP32, while the gcc may be FPXX,
which may generate .MIPS.abiflags and .gnu.attributes section with
value as FPXX. So the kernel will treat the exe as FPXX, and may
choose to use FR=1 FPU mode for it.
Currently, in Go, we use 2 lwc1 to load both half of a double value
to a pair of even-odd FPR. This behavior can only work with FR=0 mode.

In FR=1 mode, all of 32 FPR are 64bit. If we lwc1 the high-half of a double
value to an odd FPR, and try to use the previous even FPR to compute, the
real high-half of even FPR will be unpredicatable.
We set -mfp32 to force the gcc generate FP32 code and section value.

More details about FP32/FPXX/FP64 are explained in:
https://web.archive.org/web/20180828210612/https://dmz-portal.mips.com/wiki/MIPS_O32_ABI_-_FR0_and_FR1_Interlinking

When GOMIPS/GOMIPS64 is set as softfloat, we should also pass
 -msoft-float to gcc.

Here we also add -mno-odd-spreg option, since Loongson's CPU cannot use
odd-number FR in FR=0 mode.

Fixes #39435

Change-Id: I54026ad416a815fe43a9261ebf6d02e5519c3930

Gbp-Pq: Name 0003-cmd-go-cmd-cgo-pass-mfp32-and-mhard-soft-float-to-MI.patch

4 years agoFix Lintian warnings about wrong interpreter path
Dr. Tobias Quathamer [Thu, 1 Aug 2019 11:50:48 +0000 (13:50 +0200)]
Fix Lintian warnings about wrong interpreter path

The command used for this change is as follows:

grep -rH "/usr/bin/env perl" * | cut -d: -f1 | xargs -n1 sed -i -e "s,/usr/bin/env perl,/usr/bin/perl,"

Gbp-Pq: Name 0002-Fix-Lintian-warnings-about-wrong-interpreter-path.patch

4 years agoDisable test for UserHomeDir.
Dr. Tobias Quathamer [Wed, 19 Dec 2018 13:25:06 +0000 (14:25 +0100)]
Disable test for UserHomeDir.

On Debian buildds, the user home dir does not exist, so this test fails.

Gbp-Pq: Name 0001-Disable-test-for-UserHomeDir.patch

4 years agogolang-1.15 (1.15.7-1) unstable; urgency=medium
Shengjing Zhu [Fri, 22 Jan 2021 17:59:14 +0000 (17:59 +0000)]
golang-1.15 (1.15.7-1) unstable; urgency=medium

  * Team upload.
  * New upstream version 1.15.7
    + crypto/elliptic: incorrect operations on the P-224 curve
      CVE-2021-3114

[dgit import unpatched golang-1.15 1.15.7-1]

4 years agoImport golang-1.15_1.15.7.orig.tar.gz
Shengjing Zhu [Fri, 22 Jan 2021 17:59:14 +0000 (17:59 +0000)]
Import golang-1.15_1.15.7.orig.tar.gz

[dgit import orig golang-1.15_1.15.7.orig.tar.gz]

4 years agoImport golang-1.15_1.15.7-1.debian.tar.xz
Shengjing Zhu [Fri, 22 Jan 2021 17:59:14 +0000 (17:59 +0000)]
Import golang-1.15_1.15.7-1.debian.tar.xz

[dgit import tarball golang-1.15 1.15.7-1 golang-1.15_1.15.7-1.debian.tar.xz]