Browse code

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 authored on 2016/05/25 05:39:52
Showing 10 changed files
... ...
@@ -109,7 +109,7 @@ RUN set -x \
109 109
 ENV PATH /osxcross/target/bin:$PATH
110 110
 
111 111
 # install seccomp: the version shipped in trusty is too old
112
-ENV SECCOMP_VERSION 2.3.0
112
+ENV SECCOMP_VERSION 2.3.1
113 113
 RUN set -x \
114 114
 	&& export SECCOMP_PATH="$(mktemp -d)" \
115 115
 	&& curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \
... ...
@@ -78,7 +78,7 @@ RUN cd /usr/local/lvm2 \
78 78
 # see https://git.fedorahosted.org/cgit/lvm2.git/tree/INSTALL
79 79
 
80 80
 # install seccomp: the version shipped in trusty is too old
81
-ENV SECCOMP_VERSION 2.3.0
81
+ENV SECCOMP_VERSION 2.3.1
82 82
 RUN set -x \
83 83
 	&& export SECCOMP_PATH="$(mktemp -d)" \
84 84
 	&& curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \
... ...
@@ -94,7 +94,7 @@ RUN git clone https://github.com/golang/lint.git /go/src/github.com/golang/lint
94 94
 	&& go install -v github.com/golang/lint/golint
95 95
 
96 96
 # install seccomp: the version shipped in trusty is too old
97
-ENV SECCOMP_VERSION 2.3.0
97
+ENV SECCOMP_VERSION 2.3.1
98 98
 RUN set -x \
99 99
 	&& export SECCOMP_PATH="$(mktemp -d)" \
100 100
 	&& curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \
... ...
@@ -43,7 +43,7 @@ RUN cd /usr/local/lvm2 \
43 43
 # see https://git.fedorahosted.org/cgit/lvm2.git/tree/INSTALL
44 44
 
45 45
 # install seccomp: the version shipped in jessie is too old
46
-ENV SECCOMP_VERSION v2.3.0
46
+ENV SECCOMP_VERSION v2.3.1
47 47
 RUN set -x \
48 48
     && export SECCOMP_PATH=$(mktemp -d) \
49 49
     && git clone https://github.com/seccomp/libseccomp.git "$SECCOMP_PATH" \
... ...
@@ -72,7 +72,7 @@ RUN cd /usr/local/lvm2 \
72 72
 # see https://git.fedorahosted.org/cgit/lvm2.git/tree/INSTALL
73 73
 
74 74
 # install seccomp: the version shipped in jessie is too old
75
-ENV SECCOMP_VERSION 2.3.0
75
+ENV SECCOMP_VERSION 2.3.1
76 76
 RUN set -x \
77 77
         && export SECCOMP_PATH="$(mktemp -d)" \
78 78
         && curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \
... ...
@@ -49,7 +49,7 @@ RUN apt-get update && apt-get install -y \
49 49
 	--no-install-recommends
50 50
 
51 51
 # install seccomp: the version shipped in jessie is too old
52
-ENV SECCOMP_VERSION 2.3.0
52
+ENV SECCOMP_VERSION 2.3.1
53 53
 RUN set -x \
54 54
 	&& export SECCOMP_PATH="$(mktemp -d)" \
55 55
 	&& curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \
... ...
@@ -31,7 +31,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
31 31
 	&& rm -rf /var/lib/apt/lists/*
32 32
 
33 33
 # install seccomp: the version shipped in trusty is too old
34
-ENV SECCOMP_VERSION 2.3.0
34
+ENV SECCOMP_VERSION 2.3.1
35 35
 RUN set -x \
36 36
 	&& export SECCOMP_PATH="$(mktemp -d)" \
37 37
 	&& curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \
... ...
@@ -104,7 +104,7 @@ clone git github.com/agl/ed25519 d2b94fd789ea21d12fac1a4443dd3a3f79cda72c
104 104
 
105 105
 clone git github.com/opencontainers/runc d49ece5a83da3dcb820121d6850e2b61bd0a5fbe # libcontainer
106 106
 clone git github.com/opencontainers/specs f955d90e70a98ddfb886bd930ffd076da9b67998 # specs
107
-clone git github.com/seccomp/libseccomp-golang 1b506fc7c24eec5a3693cdcbed40d9c226cfc6a1
107
+clone git github.com/seccomp/libseccomp-golang 60c9953736798c4a04e90d0f3da2f933d44fd4c4
108 108
 # libcontainer deps (see src/github.com/opencontainers/runc/Godeps/Godeps.json)
109 109
 clone git github.com/coreos/go-systemd v4
110 110
 clone git github.com/godbus/dbus v4.0.0
... ...
@@ -3,7 +3,7 @@
3 3
 // Public API specification for libseccomp Go bindings
4 4
 // Contains public API for the bindings
5 5
 
6
-// Package seccomp rovides bindings for libseccomp, a library wrapping the Linux
6
+// Package seccomp provides bindings for libseccomp, a library wrapping the Linux
7 7
 // seccomp syscall. Seccomp enables an application to restrict system call use
8 8
 // for itself and its children.
9 9
 package seccomp
... ...
@@ -20,7 +20,7 @@ import (
20 20
 
21 21
 // C wrapping code
22 22
 
23
-// #cgo LDFLAGS: -lseccomp
23
+// #cgo pkg-config: libseccomp
24 24
 // #include <stdlib.h>
25 25
 // #include <seccomp.h>
26 26
 import "C"
... ...
@@ -85,6 +85,16 @@ const (
85 85
 	// ArchMIPSEL64N32 represents 64-bit MIPS syscalls (little endian,
86 86
 	// 32-bit pointers)
87 87
 	ArchMIPSEL64N32 ScmpArch = iota
88
+	// ArchPPC represents 32-bit POWERPC syscalls
89
+	ArchPPC ScmpArch = iota
90
+	// ArchPPC64 represents 64-bit POWER syscalls (big endian)
91
+	ArchPPC64 ScmpArch = iota
92
+	// ArchPPC64LE represents 64-bit POWER syscalls (little endian)
93
+	ArchPPC64LE ScmpArch = iota
94
+	// ArchS390 represents 31-bit System z/390 syscalls
95
+	ArchS390 ScmpArch = iota
96
+	// ArchS390X represents 64-bit System z/390 syscalls
97
+	ArchS390X ScmpArch = iota
88 98
 )
89 99
 
90 100
 const (
... ...
@@ -164,6 +174,16 @@ func GetArchFromString(arch string) (ScmpArch, error) {
164 164
 		return ArchMIPSEL64, nil
165 165
 	case "mipsel64n32":
166 166
 		return ArchMIPSEL64N32, nil
167
+	case "ppc":
168
+		return ArchPPC, nil
169
+	case "ppc64":
170
+		return ArchPPC64, nil
171
+	case "ppc64le":
172
+		return ArchPPC64LE, nil
173
+	case "s390":
174
+		return ArchS390, nil
175
+	case "s390x":
176
+		return ArchS390X, nil
167 177
 	default:
168 178
 		return ArchInvalid, fmt.Errorf("cannot convert unrecognized string %s", arch)
169 179
 	}
... ...
@@ -194,6 +214,16 @@ func (a ScmpArch) String() string {
194 194
 		return "mipsel64"
195 195
 	case ArchMIPSEL64N32:
196 196
 		return "mipsel64n32"
197
+	case ArchPPC:
198
+		return "ppc"
199
+	case ArchPPC64:
200
+		return "ppc64"
201
+	case ArchPPC64LE:
202
+		return "ppc64le"
203
+	case ArchS390:
204
+		return "s390"
205
+	case ArchS390X:
206
+		return "s390x"
197 207
 	case ArchNative:
198 208
 		return "native"
199 209
 	case ArchInvalid:
... ...
@@ -15,7 +15,7 @@ import (
15 15
 // Get the seccomp header in scope
16 16
 // Need stdlib.h for free() on cstrings
17 17
 
18
-// #cgo LDFLAGS: -lseccomp
18
+// #cgo pkg-config: libseccomp
19 19
 /*
20 20
 #include <stdlib.h>
21 21
 #include <seccomp.h>