Bladeren bron

Bump the seccomp versions to pull in fixes and new commits
enabling s390 and ppc64le function

Signed-off-by: Christy Perez <christy@linux.vnet.ibm.com>

Christy Perez 9 jaren geleden
bovenliggende
commit
d864a14620

+ 1 - 1
Dockerfile

@@ -109,7 +109,7 @@ RUN set -x \
 ENV PATH /osxcross/target/bin:$PATH
 ENV PATH /osxcross/target/bin:$PATH
 
 
 # install seccomp: the version shipped in trusty is too old
 # install seccomp: the version shipped in trusty is too old
-ENV SECCOMP_VERSION 2.3.0
+ENV SECCOMP_VERSION 2.3.1
 RUN set -x \
 RUN set -x \
 	&& export SECCOMP_PATH="$(mktemp -d)" \
 	&& export SECCOMP_PATH="$(mktemp -d)" \
 	&& curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \
 	&& curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \

+ 1 - 1
Dockerfile.aarch64

@@ -78,7 +78,7 @@ RUN cd /usr/local/lvm2 \
 # see https://git.fedorahosted.org/cgit/lvm2.git/tree/INSTALL
 # see https://git.fedorahosted.org/cgit/lvm2.git/tree/INSTALL
 
 
 # install seccomp: the version shipped in trusty is too old
 # install seccomp: the version shipped in trusty is too old
-ENV SECCOMP_VERSION 2.3.0
+ENV SECCOMP_VERSION 2.3.1
 RUN set -x \
 RUN set -x \
 	&& export SECCOMP_PATH="$(mktemp -d)" \
 	&& export SECCOMP_PATH="$(mktemp -d)" \
 	&& curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \
 	&& curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \

+ 1 - 1
Dockerfile.armhf

@@ -94,7 +94,7 @@ RUN git clone https://github.com/golang/lint.git /go/src/github.com/golang/lint
 	&& go install -v github.com/golang/lint/golint
 	&& go install -v github.com/golang/lint/golint
 
 
 # install seccomp: the version shipped in trusty is too old
 # install seccomp: the version shipped in trusty is too old
-ENV SECCOMP_VERSION 2.3.0
+ENV SECCOMP_VERSION 2.3.1
 RUN set -x \
 RUN set -x \
 	&& export SECCOMP_PATH="$(mktemp -d)" \
 	&& export SECCOMP_PATH="$(mktemp -d)" \
 	&& curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \
 	&& curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \

+ 1 - 1
Dockerfile.gccgo

@@ -43,7 +43,7 @@ RUN cd /usr/local/lvm2 \
 # see https://git.fedorahosted.org/cgit/lvm2.git/tree/INSTALL
 # see https://git.fedorahosted.org/cgit/lvm2.git/tree/INSTALL
 
 
 # install seccomp: the version shipped in jessie is too old
 # install seccomp: the version shipped in jessie is too old
-ENV SECCOMP_VERSION v2.3.0
+ENV SECCOMP_VERSION v2.3.1
 RUN set -x \
 RUN set -x \
     && export SECCOMP_PATH=$(mktemp -d) \
     && export SECCOMP_PATH=$(mktemp -d) \
     && git clone https://github.com/seccomp/libseccomp.git "$SECCOMP_PATH" \
     && git clone https://github.com/seccomp/libseccomp.git "$SECCOMP_PATH" \

+ 1 - 1
Dockerfile.ppc64le

@@ -72,7 +72,7 @@ RUN cd /usr/local/lvm2 \
 # see https://git.fedorahosted.org/cgit/lvm2.git/tree/INSTALL
 # see https://git.fedorahosted.org/cgit/lvm2.git/tree/INSTALL
 
 
 # install seccomp: the version shipped in jessie is too old
 # install seccomp: the version shipped in jessie is too old
-ENV SECCOMP_VERSION 2.3.0
+ENV SECCOMP_VERSION 2.3.1
 RUN set -x \
 RUN set -x \
         && export SECCOMP_PATH="$(mktemp -d)" \
         && export SECCOMP_PATH="$(mktemp -d)" \
         && curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \
         && curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \

+ 1 - 1
Dockerfile.s390x

@@ -49,7 +49,7 @@ RUN apt-get update && apt-get install -y \
 	--no-install-recommends
 	--no-install-recommends
 
 
 # install seccomp: the version shipped in jessie is too old
 # install seccomp: the version shipped in jessie is too old
-ENV SECCOMP_VERSION 2.3.0
+ENV SECCOMP_VERSION 2.3.1
 RUN set -x \
 RUN set -x \
 	&& export SECCOMP_PATH="$(mktemp -d)" \
 	&& export SECCOMP_PATH="$(mktemp -d)" \
 	&& curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \
 	&& curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \

+ 1 - 1
Dockerfile.simple

@@ -31,7 +31,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
 	&& rm -rf /var/lib/apt/lists/*
 	&& rm -rf /var/lib/apt/lists/*
 
 
 # install seccomp: the version shipped in trusty is too old
 # install seccomp: the version shipped in trusty is too old
-ENV SECCOMP_VERSION 2.3.0
+ENV SECCOMP_VERSION 2.3.1
 RUN set -x \
 RUN set -x \
 	&& export SECCOMP_PATH="$(mktemp -d)" \
 	&& export SECCOMP_PATH="$(mktemp -d)" \
 	&& curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \
 	&& curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \

+ 1 - 1
hack/vendor.sh

@@ -104,7 +104,7 @@ clone git github.com/agl/ed25519 d2b94fd789ea21d12fac1a4443dd3a3f79cda72c
 
 
 clone git github.com/opencontainers/runc d49ece5a83da3dcb820121d6850e2b61bd0a5fbe # libcontainer
 clone git github.com/opencontainers/runc d49ece5a83da3dcb820121d6850e2b61bd0a5fbe # libcontainer
 clone git github.com/opencontainers/specs f955d90e70a98ddfb886bd930ffd076da9b67998 # specs
 clone git github.com/opencontainers/specs f955d90e70a98ddfb886bd930ffd076da9b67998 # specs
-clone git github.com/seccomp/libseccomp-golang 1b506fc7c24eec5a3693cdcbed40d9c226cfc6a1
+clone git github.com/seccomp/libseccomp-golang 60c9953736798c4a04e90d0f3da2f933d44fd4c4
 # libcontainer deps (see src/github.com/opencontainers/runc/Godeps/Godeps.json)
 # libcontainer deps (see src/github.com/opencontainers/runc/Godeps/Godeps.json)
 clone git github.com/coreos/go-systemd v4
 clone git github.com/coreos/go-systemd v4
 clone git github.com/godbus/dbus v4.0.0
 clone git github.com/godbus/dbus v4.0.0

+ 32 - 2
vendor/src/github.com/seccomp/libseccomp-golang/seccomp.go

@@ -3,7 +3,7 @@
 // Public API specification for libseccomp Go bindings
 // Public API specification for libseccomp Go bindings
 // Contains public API for the bindings
 // Contains public API for the bindings
 
 
-// Package seccomp rovides bindings for libseccomp, a library wrapping the Linux
+// Package seccomp provides bindings for libseccomp, a library wrapping the Linux
 // seccomp syscall. Seccomp enables an application to restrict system call use
 // seccomp syscall. Seccomp enables an application to restrict system call use
 // for itself and its children.
 // for itself and its children.
 package seccomp
 package seccomp
@@ -20,7 +20,7 @@ import (
 
 
 // C wrapping code
 // C wrapping code
 
 
-// #cgo LDFLAGS: -lseccomp
+// #cgo pkg-config: libseccomp
 // #include <stdlib.h>
 // #include <stdlib.h>
 // #include <seccomp.h>
 // #include <seccomp.h>
 import "C"
 import "C"
@@ -85,6 +85,16 @@ const (
 	// ArchMIPSEL64N32 represents 64-bit MIPS syscalls (little endian,
 	// ArchMIPSEL64N32 represents 64-bit MIPS syscalls (little endian,
 	// 32-bit pointers)
 	// 32-bit pointers)
 	ArchMIPSEL64N32 ScmpArch = iota
 	ArchMIPSEL64N32 ScmpArch = iota
+	// ArchPPC represents 32-bit POWERPC syscalls
+	ArchPPC ScmpArch = iota
+	// ArchPPC64 represents 64-bit POWER syscalls (big endian)
+	ArchPPC64 ScmpArch = iota
+	// ArchPPC64LE represents 64-bit POWER syscalls (little endian)
+	ArchPPC64LE ScmpArch = iota
+	// ArchS390 represents 31-bit System z/390 syscalls
+	ArchS390 ScmpArch = iota
+	// ArchS390X represents 64-bit System z/390 syscalls
+	ArchS390X ScmpArch = iota
 )
 )
 
 
 const (
 const (
@@ -164,6 +174,16 @@ func GetArchFromString(arch string) (ScmpArch, error) {
 		return ArchMIPSEL64, nil
 		return ArchMIPSEL64, nil
 	case "mipsel64n32":
 	case "mipsel64n32":
 		return ArchMIPSEL64N32, nil
 		return ArchMIPSEL64N32, nil
+	case "ppc":
+		return ArchPPC, nil
+	case "ppc64":
+		return ArchPPC64, nil
+	case "ppc64le":
+		return ArchPPC64LE, nil
+	case "s390":
+		return ArchS390, nil
+	case "s390x":
+		return ArchS390X, nil
 	default:
 	default:
 		return ArchInvalid, fmt.Errorf("cannot convert unrecognized string %s", arch)
 		return ArchInvalid, fmt.Errorf("cannot convert unrecognized string %s", arch)
 	}
 	}
@@ -194,6 +214,16 @@ func (a ScmpArch) String() string {
 		return "mipsel64"
 		return "mipsel64"
 	case ArchMIPSEL64N32:
 	case ArchMIPSEL64N32:
 		return "mipsel64n32"
 		return "mipsel64n32"
+	case ArchPPC:
+		return "ppc"
+	case ArchPPC64:
+		return "ppc64"
+	case ArchPPC64LE:
+		return "ppc64le"
+	case ArchS390:
+		return "s390"
+	case ArchS390X:
+		return "s390x"
 	case ArchNative:
 	case ArchNative:
 		return "native"
 		return "native"
 	case ArchInvalid:
 	case ArchInvalid:

+ 1 - 1
vendor/src/github.com/seccomp/libseccomp-golang/seccomp_internal.go

@@ -15,7 +15,7 @@ import (
 // Get the seccomp header in scope
 // Get the seccomp header in scope
 // Need stdlib.h for free() on cstrings
 // Need stdlib.h for free() on cstrings
 
 
-// #cgo LDFLAGS: -lseccomp
+// #cgo pkg-config: libseccomp
 /*
 /*
 #include <stdlib.h>
 #include <stdlib.h>
 #include <seccomp.h>
 #include <seccomp.h>