rebase to 1.6.1

Resolves: bz1324344 - CVE-2016-3959
Resolves: bz1324951 - prelink is gone, /etc/prelink.conf.d/* is no longer used
Resolves: bz1326366 - wrong epoll_event struct for ppc64le/ppc64
This commit is contained in:
Jakub Čajka 2016-04-13 14:44:04 +02:00
parent 263126ff1b
commit b2c2028475
5 changed files with 221 additions and 15 deletions

1
.gitignore vendored
View File

@ -29,3 +29,4 @@
/go1.5.3.src.tar.gz /go1.5.3.src.tar.gz
/go1.6rc1.src.tar.gz /go1.6rc1.src.tar.gz
/go1.6.src.tar.gz /go1.6.src.tar.gz
/go1.6.1.src.tar.gz

View File

@ -0,0 +1,206 @@
diff -up go/src/syscall/types_linux.go.than go/src/syscall/types_linux.go
--- go/src/syscall/types_linux.go.than 2016-04-12 09:49:46.699333091 -0400
+++ go/src/syscall/types_linux.go 2016-04-12 09:50:18.859856525 -0400
@@ -105,6 +105,9 @@ struct my_epoll_event {
// alignment requirements of EABI
int32_t padFd;
#endif
+#ifdef __powerpc64__
+ int32_t _padFd;
+#endif
int32_t fd;
int32_t pad;
};
diff -up go/src/syscall/ztypes_linux_ppc64.go.than go/src/syscall/ztypes_linux_ppc64.go
--- go/src/syscall/ztypes_linux_ppc64.go.than 2016-04-12 09:50:27.499997298 -0400
+++ go/src/syscall/ztypes_linux_ppc64.go 2016-04-12 09:54:27.593909191 -0400
@@ -113,9 +113,9 @@ type Stat_t struct {
Atim Timespec
Mtim Timespec
Ctim Timespec
- X__unused4 uint64
- X__unused5 uint64
- X__unused6 uint64
+ _ uint64
+ _ uint64
+ _ uint64
}
type Statfs_t struct {
@@ -143,7 +143,7 @@ type Dirent struct {
}
type Fsid struct {
- X__val [2]int32
+ _ [2]int32
}
type Flock_t struct {
@@ -247,7 +247,6 @@ type Cmsghdr struct {
Len uint64
Level int32
Type int32
- X__cmsg_data [0]uint8
}
type Inet4Pktinfo struct {
@@ -361,7 +360,7 @@ const (
IFLA_LINKINFO = 0x12
IFLA_NET_NS_PID = 0x13
IFLA_IFALIAS = 0x14
- IFLA_MAX = 0x22
+ IFLA_MAX = 0x25
RT_SCOPE_UNIVERSE = 0x0
RT_SCOPE_SITE = 0xc8
RT_SCOPE_LINK = 0xfd
@@ -454,7 +453,7 @@ type RtAttr struct {
type IfInfomsg struct {
Family uint8
- X__ifi_pad uint8
+ _ uint8
Type uint16
Index int32
Flags uint32
@@ -511,7 +510,6 @@ type InotifyEvent struct {
Mask uint32
Cookie uint32
Len uint32
- Name [0]uint8
}
const SizeofInotifyEvent = 0x10
@@ -532,6 +530,15 @@ type PtraceRegs struct {
Result uint64
}
+type ptracePsw struct {
+}
+
+type ptraceFpregs struct {
+}
+
+type ptracePer struct {
+}
+
type FdSet struct {
Bits [16]int64
}
@@ -551,7 +558,7 @@ type Sysinfo_t struct {
Totalhigh uint64
Freehigh uint64
Unit uint32
- X_f [0]uint8
+ _ [0]uint8
Pad_cgo_1 [4]byte
}
@@ -575,6 +582,7 @@ type Ustat_t struct {
type EpollEvent struct {
Events uint32
+ _ int32
Fd int32
Pad int32
}
diff -up go/src/syscall/ztypes_linux_ppc64le.go.than go/src/syscall/ztypes_linux_ppc64le.go
--- go/src/syscall/ztypes_linux_ppc64le.go.than 2016-04-12 09:54:37.134064629 -0400
+++ go/src/syscall/ztypes_linux_ppc64le.go 2016-04-12 09:58:11.097550772 -0400
@@ -105,7 +105,7 @@ type Stat_t struct {
Mode uint32
Uid uint32
Gid uint32
- X__pad2 int32
+ _ int32
Rdev uint64
Size int64
Blksize int64
@@ -113,9 +113,9 @@ type Stat_t struct {
Atim Timespec
Mtim Timespec
Ctim Timespec
- X__glibc_reserved4 uint64
- X__glibc_reserved5 uint64
- X__glibc_reserved6 uint64
+ _ uint64
+ _ uint64
+ _ uint64
}
type Statfs_t struct {
@@ -143,7 +143,7 @@ type Dirent struct {
}
type Fsid struct {
- X__val [2]int32
+ _ [2]int32
}
type Flock_t struct {
@@ -247,7 +247,6 @@ type Cmsghdr struct {
Len uint64
Level int32
Type int32
- X__cmsg_data [0]uint8
}
type Inet4Pktinfo struct {
@@ -361,7 +360,7 @@ const (
IFLA_LINKINFO = 0x12
IFLA_NET_NS_PID = 0x13
IFLA_IFALIAS = 0x14
- IFLA_MAX = 0x22
+ IFLA_MAX = 0x23
RT_SCOPE_UNIVERSE = 0x0
RT_SCOPE_SITE = 0xc8
RT_SCOPE_LINK = 0xfd
@@ -454,7 +453,7 @@ type RtAttr struct {
type IfInfomsg struct {
Family uint8
- X__ifi_pad uint8
+ _ uint8
Type uint16
Index int32
Flags uint32
@@ -511,7 +510,6 @@ type InotifyEvent struct {
Mask uint32
Cookie uint32
Len uint32
- Name [0]uint8
}
const SizeofInotifyEvent = 0x10
@@ -532,6 +530,15 @@ type PtraceRegs struct {
Result uint64
}
+type ptracePsw struct {
+}
+
+type ptraceFpregs struct {
+}
+
+type ptracePer struct {
+}
+
type FdSet struct {
Bits [16]int64
}
@@ -551,7 +558,7 @@ type Sysinfo_t struct {
Totalhigh uint64
Freehigh uint64
Unit uint32
- X_f [0]uint8
+ _ [0]uint8
Pad_cgo_1 [4]byte
}
@@ -575,6 +582,7 @@ type Ustat_t struct {
type EpollEvent struct {
Events uint32
+ _ int32
Fd int32
Pad int32
}

View File

@ -1,3 +0,0 @@
# there are ELF files in src which are testdata and shouldn't be modified
-b /usr/lib/golang/src
-b /usr/lib64/golang/src

View File

@ -82,10 +82,10 @@
%endif %endif
%global go_api 1.6 %global go_api 1.6
%global go_version 1.6 %global go_version 1.6.1
Name: golang Name: golang
Version: 1.6 Version: 1.6.1
Release: 1%{?dist} Release: 1%{?dist}
Summary: The Go Programming Language Summary: The Go Programming Language
# source tree includes several copies of Mark.Twain-Tom.Sawyer.txt under Public Domain # source tree includes several copies of Mark.Twain-Tom.Sawyer.txt under Public Domain
@ -121,6 +121,10 @@ Patch1: golang-1.2-remove-ECC-p224.patch
# https://github.com/golang/go/issues/14384 # https://github.com/golang/go/issues/14384
Patch100: mmap-cgo-stackalign.patch Patch100: mmap-cgo-stackalign.patch
# Resolves RHBZ 1326366
# https://github.com/golang/go/issues/15135
Patch101: golang-1.6-epoll-power64.patch
# use the arch dependent path in the bootstrap # use the arch dependent path in the bootstrap
Patch212: golang-1.5-bootstrap-binary-path.patch Patch212: golang-1.5-bootstrap-binary-path.patch
@ -146,7 +150,6 @@ Obsoletes: emacs-%{name} < 1.4
ExclusiveArch: %{golang_arches} ExclusiveArch: %{golang_arches}
Source100: golang-gdbinit Source100: golang-gdbinit
Source101: golang-prelink.conf
%description %description
%{summary}. %{summary}.
@ -248,6 +251,7 @@ Summary: Golang shared object libraries
%patch1 -p1 %patch1 -p1
%patch100 -p1 %patch100 -p1
%patch101 -p1 -b .epoll
# use the arch dependent path in the bootstrap # use the arch dependent path in the bootstrap
%patch212 -p1 %patch212 -p1
@ -377,11 +381,6 @@ ln -sf /etc/alternatives/gofmt $RPM_BUILD_ROOT%{_bindir}/gofmt
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/gdbinit.d mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/gdbinit.d
cp -av %{SOURCE100} $RPM_BUILD_ROOT%{_sysconfdir}/gdbinit.d/golang.gdb cp -av %{SOURCE100} $RPM_BUILD_ROOT%{_sysconfdir}/gdbinit.d/golang.gdb
# prelink blacklist
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/prelink.conf.d
cp -av %{SOURCE101} $RPM_BUILD_ROOT%{_sysconfdir}/prelink.conf.d/golang.conf
%check %check
export GOROOT=$(pwd -P) export GOROOT=$(pwd -P)
export PATH="$GOROOT"/bin:"$PATH" export PATH="$GOROOT"/bin:"$PATH"
@ -449,9 +448,6 @@ fi
# gdbinit (for gdb debugging) # gdbinit (for gdb debugging)
%{_sysconfdir}/gdbinit.d %{_sysconfdir}/gdbinit.d
# prelink blacklist
%{_sysconfdir}/prelink.conf.d
%files -f go-src.list src %files -f go-src.list src
%files -f go-docs.list docs %files -f go-docs.list docs
@ -469,6 +465,12 @@ fi
%endif %endif
%changelog %changelog
* Wed Apr 13 2016 Jakub Čajka <jcajka@redhat.com> - 1.6.1-1
- rebase to 1.6.1
- Resolves: bz1324344 - CVE-2016-3959
- Resolves: bz1324951 - prelink is gone, /etc/prelink.conf.d/* is no longer used
- Resolves: bz1326366 - wrong epoll_event struct for ppc64le/ppc64
* Mon Feb 22 2016 Jakub Čajka <jcajka@redhat.com> - 1.6-1 * Mon Feb 22 2016 Jakub Čajka <jcajka@redhat.com> - 1.6-1
- Resolves: bz1304701 - rebase to go1.6 release - Resolves: bz1304701 - rebase to go1.6 release
- Resolves: bz1304591 - fix possible stack miss-alignment in callCgoMmap - Resolves: bz1304591 - fix possible stack miss-alignment in callCgoMmap

View File

@ -1 +1 @@
e67833ea37fbc002fbe38efe6c1bcd98 go1.6.src.tar.gz 29e1b0369825a56d79f6bd4eb29b0864 go1.6.1.src.tar.gz