Browse code

Reuse profiles/seccomp package

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>

Tonis Tiigi authored on 2016/03/20 06:07:17
Showing 3 changed files
1 1
deleted file mode 100644
... ...
@@ -1,1600 +0,0 @@
1
-// +build linux,seccomp
2
-
3
-package daemon
4
-
5
-import (
6
-	"syscall"
7
-
8
-	"github.com/opencontainers/specs/specs-go"
9
-	libseccomp "github.com/seccomp/libseccomp-golang"
10
-)
11
-
12
-func arches() []specs.Arch {
13
-	var native, err = libseccomp.GetNativeArch()
14
-	if err != nil {
15
-		return []specs.Arch{}
16
-	}
17
-	var a = native.String()
18
-	switch a {
19
-	case "amd64":
20
-		return []specs.Arch{specs.ArchX86_64, specs.ArchX86, specs.ArchX32}
21
-	case "arm64":
22
-		return []specs.Arch{specs.ArchAARCH64, specs.ArchARM}
23
-	case "mips64":
24
-		return []specs.Arch{specs.ArchMIPS, specs.ArchMIPS64, specs.ArchMIPS64N32}
25
-	case "mips64n32":
26
-		return []specs.Arch{specs.ArchMIPS, specs.ArchMIPS64, specs.ArchMIPS64N32}
27
-	case "mipsel64":
28
-		return []specs.Arch{specs.ArchMIPSEL, specs.ArchMIPSEL64, specs.ArchMIPSEL64N32}
29
-	case "mipsel64n32":
30
-		return []specs.Arch{specs.ArchMIPSEL, specs.ArchMIPSEL64, specs.ArchMIPSEL64N32}
31
-	default:
32
-		return []specs.Arch{}
33
-	}
34
-}
35
-
36
-var defaultSeccompProfile = specs.Seccomp{
37
-	DefaultAction: specs.ActErrno,
38
-	Architectures: arches(),
39
-	Syscalls: []specs.Syscall{
40
-		{
41
-			Name:   "accept",
42
-			Action: specs.ActAllow,
43
-			Args:   []specs.Arg{},
44
-		},
45
-		{
46
-			Name:   "accept4",
47
-			Action: specs.ActAllow,
48
-			Args:   []specs.Arg{},
49
-		},
50
-		{
51
-			Name:   "access",
52
-			Action: specs.ActAllow,
53
-			Args:   []specs.Arg{},
54
-		},
55
-		{
56
-			Name:   "alarm",
57
-			Action: specs.ActAllow,
58
-			Args:   []specs.Arg{},
59
-		},
60
-		{
61
-			Name:   "arch_prctl",
62
-			Action: specs.ActAllow,
63
-			Args:   []specs.Arg{},
64
-		},
65
-		{
66
-			Name:   "bind",
67
-			Action: specs.ActAllow,
68
-			Args:   []specs.Arg{},
69
-		},
70
-		{
71
-			Name:   "brk",
72
-			Action: specs.ActAllow,
73
-			Args:   []specs.Arg{},
74
-		},
75
-		{
76
-			Name:   "capget",
77
-			Action: specs.ActAllow,
78
-			Args:   []specs.Arg{},
79
-		},
80
-		{
81
-			Name:   "capset",
82
-			Action: specs.ActAllow,
83
-			Args:   []specs.Arg{},
84
-		},
85
-		{
86
-			Name:   "chdir",
87
-			Action: specs.ActAllow,
88
-			Args:   []specs.Arg{},
89
-		},
90
-		{
91
-			Name:   "chmod",
92
-			Action: specs.ActAllow,
93
-			Args:   []specs.Arg{},
94
-		},
95
-		{
96
-			Name:   "chown",
97
-			Action: specs.ActAllow,
98
-			Args:   []specs.Arg{},
99
-		},
100
-		{
101
-			Name:   "chown32",
102
-			Action: specs.ActAllow,
103
-			Args:   []specs.Arg{},
104
-		},
105
-		{
106
-			Name:   "chroot",
107
-			Action: specs.ActAllow,
108
-			Args:   []specs.Arg{},
109
-		},
110
-		{
111
-			Name:   "clock_getres",
112
-			Action: specs.ActAllow,
113
-			Args:   []specs.Arg{},
114
-		},
115
-		{
116
-			Name:   "clock_gettime",
117
-			Action: specs.ActAllow,
118
-			Args:   []specs.Arg{},
119
-		},
120
-		{
121
-			Name:   "clock_nanosleep",
122
-			Action: specs.ActAllow,
123
-			Args:   []specs.Arg{},
124
-		},
125
-		{
126
-			Name:   "clone",
127
-			Action: specs.ActAllow,
128
-			Args: []specs.Arg{
129
-				{
130
-					Index:    0,
131
-					Value:    syscall.CLONE_NEWNS | syscall.CLONE_NEWUTS | syscall.CLONE_NEWIPC | syscall.CLONE_NEWUSER | syscall.CLONE_NEWPID | syscall.CLONE_NEWNET,
132
-					ValueTwo: 0,
133
-					Op:       specs.OpMaskedEqual,
134
-				},
135
-			},
136
-		},
137
-		{
138
-			Name:   "close",
139
-			Action: specs.ActAllow,
140
-			Args:   []specs.Arg{},
141
-		},
142
-		{
143
-			Name:   "connect",
144
-			Action: specs.ActAllow,
145
-			Args:   []specs.Arg{},
146
-		},
147
-		{
148
-			Name:   "creat",
149
-			Action: specs.ActAllow,
150
-			Args:   []specs.Arg{},
151
-		},
152
-		{
153
-			Name:   "dup",
154
-			Action: specs.ActAllow,
155
-			Args:   []specs.Arg{},
156
-		},
157
-		{
158
-			Name:   "dup2",
159
-			Action: specs.ActAllow,
160
-			Args:   []specs.Arg{},
161
-		},
162
-		{
163
-			Name:   "dup3",
164
-			Action: specs.ActAllow,
165
-			Args:   []specs.Arg{},
166
-		},
167
-		{
168
-			Name:   "epoll_create",
169
-			Action: specs.ActAllow,
170
-			Args:   []specs.Arg{},
171
-		},
172
-		{
173
-			Name:   "epoll_create1",
174
-			Action: specs.ActAllow,
175
-			Args:   []specs.Arg{},
176
-		},
177
-		{
178
-			Name:   "epoll_ctl",
179
-			Action: specs.ActAllow,
180
-			Args:   []specs.Arg{},
181
-		},
182
-		{
183
-			Name:   "epoll_ctl_old",
184
-			Action: specs.ActAllow,
185
-			Args:   []specs.Arg{},
186
-		},
187
-		{
188
-			Name:   "epoll_pwait",
189
-			Action: specs.ActAllow,
190
-			Args:   []specs.Arg{},
191
-		},
192
-		{
193
-			Name:   "epoll_wait",
194
-			Action: specs.ActAllow,
195
-			Args:   []specs.Arg{},
196
-		},
197
-		{
198
-			Name:   "epoll_wait_old",
199
-			Action: specs.ActAllow,
200
-			Args:   []specs.Arg{},
201
-		},
202
-		{
203
-			Name:   "eventfd",
204
-			Action: specs.ActAllow,
205
-			Args:   []specs.Arg{},
206
-		},
207
-		{
208
-			Name:   "eventfd2",
209
-			Action: specs.ActAllow,
210
-			Args:   []specs.Arg{},
211
-		},
212
-		{
213
-			Name:   "execve",
214
-			Action: specs.ActAllow,
215
-			Args:   []specs.Arg{},
216
-		},
217
-		{
218
-			Name:   "execveat",
219
-			Action: specs.ActAllow,
220
-			Args:   []specs.Arg{},
221
-		},
222
-		{
223
-			Name:   "exit",
224
-			Action: specs.ActAllow,
225
-			Args:   []specs.Arg{},
226
-		},
227
-		{
228
-			Name:   "exit_group",
229
-			Action: specs.ActAllow,
230
-			Args:   []specs.Arg{},
231
-		},
232
-		{
233
-			Name:   "faccessat",
234
-			Action: specs.ActAllow,
235
-			Args:   []specs.Arg{},
236
-		},
237
-		{
238
-			Name:   "fadvise64",
239
-			Action: specs.ActAllow,
240
-			Args:   []specs.Arg{},
241
-		},
242
-		{
243
-			Name:   "fadvise64_64",
244
-			Action: specs.ActAllow,
245
-			Args:   []specs.Arg{},
246
-		},
247
-		{
248
-			Name:   "fallocate",
249
-			Action: specs.ActAllow,
250
-			Args:   []specs.Arg{},
251
-		},
252
-		{
253
-			Name:   "fanotify_init",
254
-			Action: specs.ActAllow,
255
-			Args:   []specs.Arg{},
256
-		},
257
-		{
258
-			Name:   "fanotify_mark",
259
-			Action: specs.ActAllow,
260
-			Args:   []specs.Arg{},
261
-		},
262
-		{
263
-			Name:   "fchdir",
264
-			Action: specs.ActAllow,
265
-			Args:   []specs.Arg{},
266
-		},
267
-		{
268
-			Name:   "fchmod",
269
-			Action: specs.ActAllow,
270
-			Args:   []specs.Arg{},
271
-		},
272
-		{
273
-			Name:   "fchmodat",
274
-			Action: specs.ActAllow,
275
-			Args:   []specs.Arg{},
276
-		},
277
-		{
278
-			Name:   "fchown",
279
-			Action: specs.ActAllow,
280
-			Args:   []specs.Arg{},
281
-		},
282
-		{
283
-			Name:   "fchown32",
284
-			Action: specs.ActAllow,
285
-			Args:   []specs.Arg{},
286
-		},
287
-		{
288
-			Name:   "fchownat",
289
-			Action: specs.ActAllow,
290
-			Args:   []specs.Arg{},
291
-		},
292
-		{
293
-			Name:   "fcntl",
294
-			Action: specs.ActAllow,
295
-			Args:   []specs.Arg{},
296
-		},
297
-		{
298
-			Name:   "fcntl64",
299
-			Action: specs.ActAllow,
300
-			Args:   []specs.Arg{},
301
-		},
302
-		{
303
-			Name:   "fdatasync",
304
-			Action: specs.ActAllow,
305
-			Args:   []specs.Arg{},
306
-		},
307
-		{
308
-			Name:   "fgetxattr",
309
-			Action: specs.ActAllow,
310
-			Args:   []specs.Arg{},
311
-		},
312
-		{
313
-			Name:   "flistxattr",
314
-			Action: specs.ActAllow,
315
-			Args:   []specs.Arg{},
316
-		},
317
-		{
318
-			Name:   "flock",
319
-			Action: specs.ActAllow,
320
-			Args:   []specs.Arg{},
321
-		},
322
-		{
323
-			Name:   "fork",
324
-			Action: specs.ActAllow,
325
-			Args:   []specs.Arg{},
326
-		},
327
-		{
328
-			Name:   "fremovexattr",
329
-			Action: specs.ActAllow,
330
-			Args:   []specs.Arg{},
331
-		},
332
-		{
333
-			Name:   "fsetxattr",
334
-			Action: specs.ActAllow,
335
-			Args:   []specs.Arg{},
336
-		},
337
-		{
338
-			Name:   "fstat",
339
-			Action: specs.ActAllow,
340
-			Args:   []specs.Arg{},
341
-		},
342
-		{
343
-			Name:   "fstat64",
344
-			Action: specs.ActAllow,
345
-			Args:   []specs.Arg{},
346
-		},
347
-		{
348
-			Name:   "fstatat64",
349
-			Action: specs.ActAllow,
350
-			Args:   []specs.Arg{},
351
-		},
352
-		{
353
-			Name:   "fstatfs",
354
-			Action: specs.ActAllow,
355
-			Args:   []specs.Arg{},
356
-		},
357
-		{
358
-			Name:   "fstatfs64",
359
-			Action: specs.ActAllow,
360
-			Args:   []specs.Arg{},
361
-		},
362
-		{
363
-			Name:   "fsync",
364
-			Action: specs.ActAllow,
365
-			Args:   []specs.Arg{},
366
-		},
367
-		{
368
-			Name:   "ftruncate",
369
-			Action: specs.ActAllow,
370
-			Args:   []specs.Arg{},
371
-		},
372
-		{
373
-			Name:   "ftruncate64",
374
-			Action: specs.ActAllow,
375
-			Args:   []specs.Arg{},
376
-		},
377
-		{
378
-			Name:   "futex",
379
-			Action: specs.ActAllow,
380
-			Args:   []specs.Arg{},
381
-		},
382
-		{
383
-			Name:   "futimesat",
384
-			Action: specs.ActAllow,
385
-			Args:   []specs.Arg{},
386
-		},
387
-		{
388
-			Name:   "getcpu",
389
-			Action: specs.ActAllow,
390
-			Args:   []specs.Arg{},
391
-		},
392
-		{
393
-			Name:   "getcwd",
394
-			Action: specs.ActAllow,
395
-			Args:   []specs.Arg{},
396
-		},
397
-		{
398
-			Name:   "getdents",
399
-			Action: specs.ActAllow,
400
-			Args:   []specs.Arg{},
401
-		},
402
-		{
403
-			Name:   "getdents64",
404
-			Action: specs.ActAllow,
405
-			Args:   []specs.Arg{},
406
-		},
407
-		{
408
-			Name:   "getegid",
409
-			Action: specs.ActAllow,
410
-			Args:   []specs.Arg{},
411
-		},
412
-		{
413
-			Name:   "getegid32",
414
-			Action: specs.ActAllow,
415
-			Args:   []specs.Arg{},
416
-		},
417
-		{
418
-			Name:   "geteuid",
419
-			Action: specs.ActAllow,
420
-			Args:   []specs.Arg{},
421
-		},
422
-		{
423
-			Name:   "geteuid32",
424
-			Action: specs.ActAllow,
425
-			Args:   []specs.Arg{},
426
-		},
427
-		{
428
-			Name:   "getgid",
429
-			Action: specs.ActAllow,
430
-			Args:   []specs.Arg{},
431
-		},
432
-		{
433
-			Name:   "getgid32",
434
-			Action: specs.ActAllow,
435
-			Args:   []specs.Arg{},
436
-		},
437
-		{
438
-			Name:   "getgroups",
439
-			Action: specs.ActAllow,
440
-			Args:   []specs.Arg{},
441
-		},
442
-		{
443
-			Name:   "getgroups32",
444
-			Action: specs.ActAllow,
445
-			Args:   []specs.Arg{},
446
-		},
447
-		{
448
-			Name:   "getitimer",
449
-			Action: specs.ActAllow,
450
-			Args:   []specs.Arg{},
451
-		},
452
-		{
453
-			Name:   "getpeername",
454
-			Action: specs.ActAllow,
455
-			Args:   []specs.Arg{},
456
-		},
457
-		{
458
-			Name:   "getpgid",
459
-			Action: specs.ActAllow,
460
-			Args:   []specs.Arg{},
461
-		},
462
-		{
463
-			Name:   "getpgrp",
464
-			Action: specs.ActAllow,
465
-			Args:   []specs.Arg{},
466
-		},
467
-		{
468
-			Name:   "getpid",
469
-			Action: specs.ActAllow,
470
-			Args:   []specs.Arg{},
471
-		},
472
-		{
473
-			Name:   "getppid",
474
-			Action: specs.ActAllow,
475
-			Args:   []specs.Arg{},
476
-		},
477
-		{
478
-			Name:   "getpriority",
479
-			Action: specs.ActAllow,
480
-			Args:   []specs.Arg{},
481
-		},
482
-		{
483
-			Name:   "getrandom",
484
-			Action: specs.ActAllow,
485
-			Args:   []specs.Arg{},
486
-		},
487
-		{
488
-			Name:   "getresgid",
489
-			Action: specs.ActAllow,
490
-			Args:   []specs.Arg{},
491
-		},
492
-		{
493
-			Name:   "getresgid32",
494
-			Action: specs.ActAllow,
495
-			Args:   []specs.Arg{},
496
-		},
497
-		{
498
-			Name:   "getresuid",
499
-			Action: specs.ActAllow,
500
-			Args:   []specs.Arg{},
501
-		},
502
-		{
503
-			Name:   "getresuid32",
504
-			Action: specs.ActAllow,
505
-			Args:   []specs.Arg{},
506
-		},
507
-		{
508
-			Name:   "getrlimit",
509
-			Action: specs.ActAllow,
510
-			Args:   []specs.Arg{},
511
-		},
512
-		{
513
-			Name:   "get_robust_list",
514
-			Action: specs.ActAllow,
515
-			Args:   []specs.Arg{},
516
-		},
517
-		{
518
-			Name:   "getrusage",
519
-			Action: specs.ActAllow,
520
-			Args:   []specs.Arg{},
521
-		},
522
-		{
523
-			Name:   "getsid",
524
-			Action: specs.ActAllow,
525
-			Args:   []specs.Arg{},
526
-		},
527
-		{
528
-			Name:   "getsockname",
529
-			Action: specs.ActAllow,
530
-			Args:   []specs.Arg{},
531
-		},
532
-		{
533
-			Name:   "getsockopt",
534
-			Action: specs.ActAllow,
535
-			Args:   []specs.Arg{},
536
-		},
537
-		{
538
-			Name:   "get_thread_area",
539
-			Action: specs.ActAllow,
540
-			Args:   []specs.Arg{},
541
-		},
542
-		{
543
-			Name:   "gettid",
544
-			Action: specs.ActAllow,
545
-			Args:   []specs.Arg{},
546
-		},
547
-		{
548
-			Name:   "gettimeofday",
549
-			Action: specs.ActAllow,
550
-			Args:   []specs.Arg{},
551
-		},
552
-		{
553
-			Name:   "getuid",
554
-			Action: specs.ActAllow,
555
-			Args:   []specs.Arg{},
556
-		},
557
-		{
558
-			Name:   "getuid32",
559
-			Action: specs.ActAllow,
560
-			Args:   []specs.Arg{},
561
-		},
562
-		{
563
-			Name:   "getxattr",
564
-			Action: specs.ActAllow,
565
-			Args:   []specs.Arg{},
566
-		},
567
-		{
568
-			Name:   "inotify_add_watch",
569
-			Action: specs.ActAllow,
570
-			Args:   []specs.Arg{},
571
-		},
572
-		{
573
-			Name:   "inotify_init",
574
-			Action: specs.ActAllow,
575
-			Args:   []specs.Arg{},
576
-		},
577
-		{
578
-			Name:   "inotify_init1",
579
-			Action: specs.ActAllow,
580
-			Args:   []specs.Arg{},
581
-		},
582
-		{
583
-			Name:   "inotify_rm_watch",
584
-			Action: specs.ActAllow,
585
-			Args:   []specs.Arg{},
586
-		},
587
-		{
588
-			Name:   "io_cancel",
589
-			Action: specs.ActAllow,
590
-			Args:   []specs.Arg{},
591
-		},
592
-		{
593
-			Name:   "ioctl",
594
-			Action: specs.ActAllow,
595
-			Args:   []specs.Arg{},
596
-		},
597
-		{
598
-			Name:   "io_destroy",
599
-			Action: specs.ActAllow,
600
-			Args:   []specs.Arg{},
601
-		},
602
-		{
603
-			Name:   "io_getevents",
604
-			Action: specs.ActAllow,
605
-			Args:   []specs.Arg{},
606
-		},
607
-		{
608
-			Name:   "ioprio_get",
609
-			Action: specs.ActAllow,
610
-			Args:   []specs.Arg{},
611
-		},
612
-		{
613
-			Name:   "ioprio_set",
614
-			Action: specs.ActAllow,
615
-			Args:   []specs.Arg{},
616
-		},
617
-		{
618
-			Name:   "io_setup",
619
-			Action: specs.ActAllow,
620
-			Args:   []specs.Arg{},
621
-		},
622
-		{
623
-			Name:   "io_submit",
624
-			Action: specs.ActAllow,
625
-			Args:   []specs.Arg{},
626
-		},
627
-		{
628
-			Name:   "kill",
629
-			Action: specs.ActAllow,
630
-			Args:   []specs.Arg{},
631
-		},
632
-		{
633
-			Name:   "lchown",
634
-			Action: specs.ActAllow,
635
-			Args:   []specs.Arg{},
636
-		},
637
-		{
638
-			Name:   "lchown32",
639
-			Action: specs.ActAllow,
640
-			Args:   []specs.Arg{},
641
-		},
642
-		{
643
-			Name:   "lgetxattr",
644
-			Action: specs.ActAllow,
645
-			Args:   []specs.Arg{},
646
-		},
647
-		{
648
-			Name:   "link",
649
-			Action: specs.ActAllow,
650
-			Args:   []specs.Arg{},
651
-		},
652
-		{
653
-			Name:   "linkat",
654
-			Action: specs.ActAllow,
655
-			Args:   []specs.Arg{},
656
-		},
657
-		{
658
-			Name:   "listen",
659
-			Action: specs.ActAllow,
660
-			Args:   []specs.Arg{},
661
-		},
662
-		{
663
-			Name:   "listxattr",
664
-			Action: specs.ActAllow,
665
-			Args:   []specs.Arg{},
666
-		},
667
-		{
668
-			Name:   "llistxattr",
669
-			Action: specs.ActAllow,
670
-			Args:   []specs.Arg{},
671
-		},
672
-		{
673
-			Name:   "_llseek",
674
-			Action: specs.ActAllow,
675
-			Args:   []specs.Arg{},
676
-		},
677
-		{
678
-			Name:   "lremovexattr",
679
-			Action: specs.ActAllow,
680
-			Args:   []specs.Arg{},
681
-		},
682
-		{
683
-			Name:   "lseek",
684
-			Action: specs.ActAllow,
685
-			Args:   []specs.Arg{},
686
-		},
687
-		{
688
-			Name:   "lsetxattr",
689
-			Action: specs.ActAllow,
690
-			Args:   []specs.Arg{},
691
-		},
692
-		{
693
-			Name:   "lstat",
694
-			Action: specs.ActAllow,
695
-			Args:   []specs.Arg{},
696
-		},
697
-		{
698
-			Name:   "lstat64",
699
-			Action: specs.ActAllow,
700
-			Args:   []specs.Arg{},
701
-		},
702
-		{
703
-			Name:   "madvise",
704
-			Action: specs.ActAllow,
705
-			Args:   []specs.Arg{},
706
-		},
707
-		{
708
-			Name:   "memfd_create",
709
-			Action: specs.ActAllow,
710
-			Args:   []specs.Arg{},
711
-		},
712
-		{
713
-			Name:   "mincore",
714
-			Action: specs.ActAllow,
715
-			Args:   []specs.Arg{},
716
-		},
717
-		{
718
-			Name:   "mkdir",
719
-			Action: specs.ActAllow,
720
-			Args:   []specs.Arg{},
721
-		},
722
-		{
723
-			Name:   "mkdirat",
724
-			Action: specs.ActAllow,
725
-			Args:   []specs.Arg{},
726
-		},
727
-		{
728
-			Name:   "mknod",
729
-			Action: specs.ActAllow,
730
-			Args:   []specs.Arg{},
731
-		},
732
-		{
733
-			Name:   "mknodat",
734
-			Action: specs.ActAllow,
735
-			Args:   []specs.Arg{},
736
-		},
737
-		{
738
-			Name:   "mlock",
739
-			Action: specs.ActAllow,
740
-			Args:   []specs.Arg{},
741
-		},
742
-		{
743
-			Name:   "mlockall",
744
-			Action: specs.ActAllow,
745
-			Args:   []specs.Arg{},
746
-		},
747
-		{
748
-			Name:   "mmap",
749
-			Action: specs.ActAllow,
750
-			Args:   []specs.Arg{},
751
-		},
752
-		{
753
-			Name:   "mmap2",
754
-			Action: specs.ActAllow,
755
-			Args:   []specs.Arg{},
756
-		},
757
-		{
758
-			Name:   "mprotect",
759
-			Action: specs.ActAllow,
760
-			Args:   []specs.Arg{},
761
-		},
762
-		{
763
-			Name:   "mq_getsetattr",
764
-			Action: specs.ActAllow,
765
-			Args:   []specs.Arg{},
766
-		},
767
-		{
768
-			Name:   "mq_notify",
769
-			Action: specs.ActAllow,
770
-			Args:   []specs.Arg{},
771
-		},
772
-		{
773
-			Name:   "mq_open",
774
-			Action: specs.ActAllow,
775
-			Args:   []specs.Arg{},
776
-		},
777
-		{
778
-			Name:   "mq_timedreceive",
779
-			Action: specs.ActAllow,
780
-			Args:   []specs.Arg{},
781
-		},
782
-		{
783
-			Name:   "mq_timedsend",
784
-			Action: specs.ActAllow,
785
-			Args:   []specs.Arg{},
786
-		},
787
-		{
788
-			Name:   "mq_unlink",
789
-			Action: specs.ActAllow,
790
-			Args:   []specs.Arg{},
791
-		},
792
-		{
793
-			Name:   "mremap",
794
-			Action: specs.ActAllow,
795
-			Args:   []specs.Arg{},
796
-		},
797
-		{
798
-			Name:   "msgctl",
799
-			Action: specs.ActAllow,
800
-			Args:   []specs.Arg{},
801
-		},
802
-		{
803
-			Name:   "msgget",
804
-			Action: specs.ActAllow,
805
-			Args:   []specs.Arg{},
806
-		},
807
-		{
808
-			Name:   "msgrcv",
809
-			Action: specs.ActAllow,
810
-			Args:   []specs.Arg{},
811
-		},
812
-		{
813
-			Name:   "msgsnd",
814
-			Action: specs.ActAllow,
815
-			Args:   []specs.Arg{},
816
-		},
817
-		{
818
-			Name:   "msync",
819
-			Action: specs.ActAllow,
820
-			Args:   []specs.Arg{},
821
-		},
822
-		{
823
-			Name:   "munlock",
824
-			Action: specs.ActAllow,
825
-			Args:   []specs.Arg{},
826
-		},
827
-		{
828
-			Name:   "munlockall",
829
-			Action: specs.ActAllow,
830
-			Args:   []specs.Arg{},
831
-		},
832
-		{
833
-			Name:   "munmap",
834
-			Action: specs.ActAllow,
835
-			Args:   []specs.Arg{},
836
-		},
837
-		{
838
-			Name:   "nanosleep",
839
-			Action: specs.ActAllow,
840
-			Args:   []specs.Arg{},
841
-		},
842
-		{
843
-			Name:   "newfstatat",
844
-			Action: specs.ActAllow,
845
-			Args:   []specs.Arg{},
846
-		},
847
-		{
848
-			Name:   "_newselect",
849
-			Action: specs.ActAllow,
850
-			Args:   []specs.Arg{},
851
-		},
852
-		{
853
-			Name:   "open",
854
-			Action: specs.ActAllow,
855
-			Args:   []specs.Arg{},
856
-		},
857
-		{
858
-			Name:   "openat",
859
-			Action: specs.ActAllow,
860
-			Args:   []specs.Arg{},
861
-		},
862
-		{
863
-			Name:   "pause",
864
-			Action: specs.ActAllow,
865
-			Args:   []specs.Arg{},
866
-		},
867
-		{
868
-			Name:   "pipe",
869
-			Action: specs.ActAllow,
870
-			Args:   []specs.Arg{},
871
-		},
872
-		{
873
-			Name:   "pipe2",
874
-			Action: specs.ActAllow,
875
-			Args:   []specs.Arg{},
876
-		},
877
-		{
878
-			Name:   "poll",
879
-			Action: specs.ActAllow,
880
-			Args:   []specs.Arg{},
881
-		},
882
-		{
883
-			Name:   "ppoll",
884
-			Action: specs.ActAllow,
885
-			Args:   []specs.Arg{},
886
-		},
887
-		{
888
-			Name:   "prctl",
889
-			Action: specs.ActAllow,
890
-			Args:   []specs.Arg{},
891
-		},
892
-		{
893
-			Name:   "pread64",
894
-			Action: specs.ActAllow,
895
-			Args:   []specs.Arg{},
896
-		},
897
-		{
898
-			Name:   "preadv",
899
-			Action: specs.ActAllow,
900
-			Args:   []specs.Arg{},
901
-		},
902
-		{
903
-			Name:   "prlimit64",
904
-			Action: specs.ActAllow,
905
-			Args:   []specs.Arg{},
906
-		},
907
-		{
908
-			Name:   "pselect6",
909
-			Action: specs.ActAllow,
910
-			Args:   []specs.Arg{},
911
-		},
912
-		{
913
-			Name:   "pwrite64",
914
-			Action: specs.ActAllow,
915
-			Args:   []specs.Arg{},
916
-		},
917
-		{
918
-			Name:   "pwritev",
919
-			Action: specs.ActAllow,
920
-			Args:   []specs.Arg{},
921
-		},
922
-		{
923
-			Name:   "read",
924
-			Action: specs.ActAllow,
925
-			Args:   []specs.Arg{},
926
-		},
927
-		{
928
-			Name:   "readahead",
929
-			Action: specs.ActAllow,
930
-			Args:   []specs.Arg{},
931
-		},
932
-		{
933
-			Name:   "readlink",
934
-			Action: specs.ActAllow,
935
-			Args:   []specs.Arg{},
936
-		},
937
-		{
938
-			Name:   "readlinkat",
939
-			Action: specs.ActAllow,
940
-			Args:   []specs.Arg{},
941
-		},
942
-		{
943
-			Name:   "readv",
944
-			Action: specs.ActAllow,
945
-			Args:   []specs.Arg{},
946
-		},
947
-		{
948
-			Name:   "recv",
949
-			Action: specs.ActAllow,
950
-			Args:   []specs.Arg{},
951
-		},
952
-		{
953
-			Name:   "recvfrom",
954
-			Action: specs.ActAllow,
955
-			Args:   []specs.Arg{},
956
-		},
957
-		{
958
-			Name:   "recvmmsg",
959
-			Action: specs.ActAllow,
960
-			Args:   []specs.Arg{},
961
-		},
962
-		{
963
-			Name:   "recvmsg",
964
-			Action: specs.ActAllow,
965
-			Args:   []specs.Arg{},
966
-		},
967
-		{
968
-			Name:   "remap_file_pages",
969
-			Action: specs.ActAllow,
970
-			Args:   []specs.Arg{},
971
-		},
972
-		{
973
-			Name:   "removexattr",
974
-			Action: specs.ActAllow,
975
-			Args:   []specs.Arg{},
976
-		},
977
-		{
978
-			Name:   "rename",
979
-			Action: specs.ActAllow,
980
-			Args:   []specs.Arg{},
981
-		},
982
-		{
983
-			Name:   "renameat",
984
-			Action: specs.ActAllow,
985
-			Args:   []specs.Arg{},
986
-		},
987
-		{
988
-			Name:   "renameat2",
989
-			Action: specs.ActAllow,
990
-			Args:   []specs.Arg{},
991
-		},
992
-		{
993
-			Name:   "rmdir",
994
-			Action: specs.ActAllow,
995
-			Args:   []specs.Arg{},
996
-		},
997
-		{
998
-			Name:   "rt_sigaction",
999
-			Action: specs.ActAllow,
1000
-			Args:   []specs.Arg{},
1001
-		},
1002
-		{
1003
-			Name:   "rt_sigpending",
1004
-			Action: specs.ActAllow,
1005
-			Args:   []specs.Arg{},
1006
-		},
1007
-		{
1008
-			Name:   "rt_sigprocmask",
1009
-			Action: specs.ActAllow,
1010
-			Args:   []specs.Arg{},
1011
-		},
1012
-		{
1013
-			Name:   "rt_sigqueueinfo",
1014
-			Action: specs.ActAllow,
1015
-			Args:   []specs.Arg{},
1016
-		},
1017
-		{
1018
-			Name:   "rt_sigreturn",
1019
-			Action: specs.ActAllow,
1020
-			Args:   []specs.Arg{},
1021
-		},
1022
-		{
1023
-			Name:   "rt_sigsuspend",
1024
-			Action: specs.ActAllow,
1025
-			Args:   []specs.Arg{},
1026
-		},
1027
-		{
1028
-			Name:   "rt_sigtimedwait",
1029
-			Action: specs.ActAllow,
1030
-			Args:   []specs.Arg{},
1031
-		},
1032
-		{
1033
-			Name:   "rt_tgsigqueueinfo",
1034
-			Action: specs.ActAllow,
1035
-			Args:   []specs.Arg{},
1036
-		},
1037
-		{
1038
-			Name:   "sched_getaffinity",
1039
-			Action: specs.ActAllow,
1040
-			Args:   []specs.Arg{},
1041
-		},
1042
-		{
1043
-			Name:   "sched_getattr",
1044
-			Action: specs.ActAllow,
1045
-			Args:   []specs.Arg{},
1046
-		},
1047
-		{
1048
-			Name:   "sched_getparam",
1049
-			Action: specs.ActAllow,
1050
-			Args:   []specs.Arg{},
1051
-		},
1052
-		{
1053
-			Name:   "sched_get_priority_max",
1054
-			Action: specs.ActAllow,
1055
-			Args:   []specs.Arg{},
1056
-		},
1057
-		{
1058
-			Name:   "sched_get_priority_min",
1059
-			Action: specs.ActAllow,
1060
-			Args:   []specs.Arg{},
1061
-		},
1062
-		{
1063
-			Name:   "sched_getscheduler",
1064
-			Action: specs.ActAllow,
1065
-			Args:   []specs.Arg{},
1066
-		},
1067
-		{
1068
-			Name:   "sched_rr_get_interval",
1069
-			Action: specs.ActAllow,
1070
-			Args:   []specs.Arg{},
1071
-		},
1072
-		{
1073
-			Name:   "sched_setaffinity",
1074
-			Action: specs.ActAllow,
1075
-			Args:   []specs.Arg{},
1076
-		},
1077
-		{
1078
-			Name:   "sched_setattr",
1079
-			Action: specs.ActAllow,
1080
-			Args:   []specs.Arg{},
1081
-		},
1082
-		{
1083
-			Name:   "sched_setparam",
1084
-			Action: specs.ActAllow,
1085
-			Args:   []specs.Arg{},
1086
-		},
1087
-		{
1088
-			Name:   "sched_setscheduler",
1089
-			Action: specs.ActAllow,
1090
-			Args:   []specs.Arg{},
1091
-		},
1092
-		{
1093
-			Name:   "sched_yield",
1094
-			Action: specs.ActAllow,
1095
-			Args:   []specs.Arg{},
1096
-		},
1097
-		{
1098
-			Name:   "seccomp",
1099
-			Action: specs.ActAllow,
1100
-			Args:   []specs.Arg{},
1101
-		},
1102
-		{
1103
-			Name:   "select",
1104
-			Action: specs.ActAllow,
1105
-			Args:   []specs.Arg{},
1106
-		},
1107
-		{
1108
-			Name:   "semctl",
1109
-			Action: specs.ActAllow,
1110
-			Args:   []specs.Arg{},
1111
-		},
1112
-		{
1113
-			Name:   "semget",
1114
-			Action: specs.ActAllow,
1115
-			Args:   []specs.Arg{},
1116
-		},
1117
-		{
1118
-			Name:   "semop",
1119
-			Action: specs.ActAllow,
1120
-			Args:   []specs.Arg{},
1121
-		},
1122
-		{
1123
-			Name:   "semtimedop",
1124
-			Action: specs.ActAllow,
1125
-			Args:   []specs.Arg{},
1126
-		},
1127
-		{
1128
-			Name:   "send",
1129
-			Action: specs.ActAllow,
1130
-			Args:   []specs.Arg{},
1131
-		},
1132
-		{
1133
-			Name:   "sendfile",
1134
-			Action: specs.ActAllow,
1135
-			Args:   []specs.Arg{},
1136
-		},
1137
-		{
1138
-			Name:   "sendfile64",
1139
-			Action: specs.ActAllow,
1140
-			Args:   []specs.Arg{},
1141
-		},
1142
-		{
1143
-			Name:   "sendmmsg",
1144
-			Action: specs.ActAllow,
1145
-			Args:   []specs.Arg{},
1146
-		},
1147
-		{
1148
-			Name:   "sendmsg",
1149
-			Action: specs.ActAllow,
1150
-			Args:   []specs.Arg{},
1151
-		},
1152
-		{
1153
-			Name:   "sendto",
1154
-			Action: specs.ActAllow,
1155
-			Args:   []specs.Arg{},
1156
-		},
1157
-		{
1158
-			Name:   "setdomainname",
1159
-			Action: specs.ActAllow,
1160
-			Args:   []specs.Arg{},
1161
-		},
1162
-		{
1163
-			Name:   "setfsgid",
1164
-			Action: specs.ActAllow,
1165
-			Args:   []specs.Arg{},
1166
-		},
1167
-		{
1168
-			Name:   "setfsgid32",
1169
-			Action: specs.ActAllow,
1170
-			Args:   []specs.Arg{},
1171
-		},
1172
-		{
1173
-			Name:   "setfsuid",
1174
-			Action: specs.ActAllow,
1175
-			Args:   []specs.Arg{},
1176
-		},
1177
-		{
1178
-			Name:   "setfsuid32",
1179
-			Action: specs.ActAllow,
1180
-			Args:   []specs.Arg{},
1181
-		},
1182
-		{
1183
-			Name:   "setgid",
1184
-			Action: specs.ActAllow,
1185
-			Args:   []specs.Arg{},
1186
-		},
1187
-		{
1188
-			Name:   "setgid32",
1189
-			Action: specs.ActAllow,
1190
-			Args:   []specs.Arg{},
1191
-		},
1192
-		{
1193
-			Name:   "setgroups",
1194
-			Action: specs.ActAllow,
1195
-			Args:   []specs.Arg{},
1196
-		},
1197
-		{
1198
-			Name:   "setgroups32",
1199
-			Action: specs.ActAllow,
1200
-			Args:   []specs.Arg{},
1201
-		},
1202
-		{
1203
-			Name:   "sethostname",
1204
-			Action: specs.ActAllow,
1205
-			Args:   []specs.Arg{},
1206
-		},
1207
-		{
1208
-			Name:   "setitimer",
1209
-			Action: specs.ActAllow,
1210
-			Args:   []specs.Arg{},
1211
-		},
1212
-		{
1213
-			Name:   "setpgid",
1214
-			Action: specs.ActAllow,
1215
-			Args:   []specs.Arg{},
1216
-		},
1217
-		{
1218
-			Name:   "setpriority",
1219
-			Action: specs.ActAllow,
1220
-			Args:   []specs.Arg{},
1221
-		},
1222
-		{
1223
-			Name:   "setregid",
1224
-			Action: specs.ActAllow,
1225
-			Args:   []specs.Arg{},
1226
-		},
1227
-		{
1228
-			Name:   "setregid32",
1229
-			Action: specs.ActAllow,
1230
-			Args:   []specs.Arg{},
1231
-		},
1232
-		{
1233
-			Name:   "setresgid",
1234
-			Action: specs.ActAllow,
1235
-			Args:   []specs.Arg{},
1236
-		},
1237
-		{
1238
-			Name:   "setresgid32",
1239
-			Action: specs.ActAllow,
1240
-			Args:   []specs.Arg{},
1241
-		},
1242
-		{
1243
-			Name:   "setresuid",
1244
-			Action: specs.ActAllow,
1245
-			Args:   []specs.Arg{},
1246
-		},
1247
-		{
1248
-			Name:   "setresuid32",
1249
-			Action: specs.ActAllow,
1250
-			Args:   []specs.Arg{},
1251
-		},
1252
-		{
1253
-			Name:   "setreuid",
1254
-			Action: specs.ActAllow,
1255
-			Args:   []specs.Arg{},
1256
-		},
1257
-		{
1258
-			Name:   "setreuid32",
1259
-			Action: specs.ActAllow,
1260
-			Args:   []specs.Arg{},
1261
-		},
1262
-		{
1263
-			Name:   "setrlimit",
1264
-			Action: specs.ActAllow,
1265
-			Args:   []specs.Arg{},
1266
-		},
1267
-		{
1268
-			Name:   "set_robust_list",
1269
-			Action: specs.ActAllow,
1270
-			Args:   []specs.Arg{},
1271
-		},
1272
-		{
1273
-			Name:   "setsid",
1274
-			Action: specs.ActAllow,
1275
-			Args:   []specs.Arg{},
1276
-		},
1277
-		{
1278
-			Name:   "setsockopt",
1279
-			Action: specs.ActAllow,
1280
-			Args:   []specs.Arg{},
1281
-		},
1282
-		{
1283
-			Name:   "set_thread_area",
1284
-			Action: specs.ActAllow,
1285
-			Args:   []specs.Arg{},
1286
-		},
1287
-		{
1288
-			Name:   "set_tid_address",
1289
-			Action: specs.ActAllow,
1290
-			Args:   []specs.Arg{},
1291
-		},
1292
-		{
1293
-			Name:   "setuid",
1294
-			Action: specs.ActAllow,
1295
-			Args:   []specs.Arg{},
1296
-		},
1297
-		{
1298
-			Name:   "setuid32",
1299
-			Action: specs.ActAllow,
1300
-			Args:   []specs.Arg{},
1301
-		},
1302
-		{
1303
-			Name:   "setxattr",
1304
-			Action: specs.ActAllow,
1305
-			Args:   []specs.Arg{},
1306
-		},
1307
-		{
1308
-			Name:   "shmat",
1309
-			Action: specs.ActAllow,
1310
-			Args:   []specs.Arg{},
1311
-		},
1312
-		{
1313
-			Name:   "shmctl",
1314
-			Action: specs.ActAllow,
1315
-			Args:   []specs.Arg{},
1316
-		},
1317
-		{
1318
-			Name:   "shmdt",
1319
-			Action: specs.ActAllow,
1320
-			Args:   []specs.Arg{},
1321
-		},
1322
-		{
1323
-			Name:   "shmget",
1324
-			Action: specs.ActAllow,
1325
-			Args:   []specs.Arg{},
1326
-		},
1327
-		{
1328
-			Name:   "shutdown",
1329
-			Action: specs.ActAllow,
1330
-			Args:   []specs.Arg{},
1331
-		},
1332
-		{
1333
-			Name:   "sigaltstack",
1334
-			Action: specs.ActAllow,
1335
-			Args:   []specs.Arg{},
1336
-		},
1337
-		{
1338
-			Name:   "signalfd",
1339
-			Action: specs.ActAllow,
1340
-			Args:   []specs.Arg{},
1341
-		},
1342
-		{
1343
-			Name:   "signalfd4",
1344
-			Action: specs.ActAllow,
1345
-			Args:   []specs.Arg{},
1346
-		},
1347
-		{
1348
-			Name:   "sigreturn",
1349
-			Action: specs.ActAllow,
1350
-			Args:   []specs.Arg{},
1351
-		},
1352
-		{
1353
-			Name:   "socket",
1354
-			Action: specs.ActAllow,
1355
-			Args:   []specs.Arg{},
1356
-		},
1357
-		{
1358
-			Name:   "socketpair",
1359
-			Action: specs.ActAllow,
1360
-			Args:   []specs.Arg{},
1361
-		},
1362
-		{
1363
-			Name:   "splice",
1364
-			Action: specs.ActAllow,
1365
-			Args:   []specs.Arg{},
1366
-		},
1367
-		{
1368
-			Name:   "stat",
1369
-			Action: specs.ActAllow,
1370
-			Args:   []specs.Arg{},
1371
-		},
1372
-		{
1373
-			Name:   "stat64",
1374
-			Action: specs.ActAllow,
1375
-			Args:   []specs.Arg{},
1376
-		},
1377
-		{
1378
-			Name:   "statfs",
1379
-			Action: specs.ActAllow,
1380
-			Args:   []specs.Arg{},
1381
-		},
1382
-		{
1383
-			Name:   "statfs64",
1384
-			Action: specs.ActAllow,
1385
-			Args:   []specs.Arg{},
1386
-		},
1387
-		{
1388
-			Name:   "symlink",
1389
-			Action: specs.ActAllow,
1390
-			Args:   []specs.Arg{},
1391
-		},
1392
-		{
1393
-			Name:   "symlinkat",
1394
-			Action: specs.ActAllow,
1395
-			Args:   []specs.Arg{},
1396
-		},
1397
-		{
1398
-			Name:   "sync",
1399
-			Action: specs.ActAllow,
1400
-			Args:   []specs.Arg{},
1401
-		},
1402
-		{
1403
-			Name:   "sync_file_range",
1404
-			Action: specs.ActAllow,
1405
-			Args:   []specs.Arg{},
1406
-		},
1407
-		{
1408
-			Name:   "syncfs",
1409
-			Action: specs.ActAllow,
1410
-			Args:   []specs.Arg{},
1411
-		},
1412
-		{
1413
-			Name:   "sysinfo",
1414
-			Action: specs.ActAllow,
1415
-			Args:   []specs.Arg{},
1416
-		},
1417
-		{
1418
-			Name:   "syslog",
1419
-			Action: specs.ActAllow,
1420
-			Args:   []specs.Arg{},
1421
-		},
1422
-		{
1423
-			Name:   "tee",
1424
-			Action: specs.ActAllow,
1425
-			Args:   []specs.Arg{},
1426
-		},
1427
-		{
1428
-			Name:   "tgkill",
1429
-			Action: specs.ActAllow,
1430
-			Args:   []specs.Arg{},
1431
-		},
1432
-		{
1433
-			Name:   "time",
1434
-			Action: specs.ActAllow,
1435
-			Args:   []specs.Arg{},
1436
-		},
1437
-		{
1438
-			Name:   "timer_create",
1439
-			Action: specs.ActAllow,
1440
-			Args:   []specs.Arg{},
1441
-		},
1442
-		{
1443
-			Name:   "timer_delete",
1444
-			Action: specs.ActAllow,
1445
-			Args:   []specs.Arg{},
1446
-		},
1447
-		{
1448
-			Name:   "timerfd_create",
1449
-			Action: specs.ActAllow,
1450
-			Args:   []specs.Arg{},
1451
-		},
1452
-		{
1453
-			Name:   "timerfd_gettime",
1454
-			Action: specs.ActAllow,
1455
-			Args:   []specs.Arg{},
1456
-		},
1457
-		{
1458
-			Name:   "timerfd_settime",
1459
-			Action: specs.ActAllow,
1460
-			Args:   []specs.Arg{},
1461
-		},
1462
-		{
1463
-			Name:   "timer_getoverrun",
1464
-			Action: specs.ActAllow,
1465
-			Args:   []specs.Arg{},
1466
-		},
1467
-		{
1468
-			Name:   "timer_gettime",
1469
-			Action: specs.ActAllow,
1470
-			Args:   []specs.Arg{},
1471
-		},
1472
-		{
1473
-			Name:   "timer_settime",
1474
-			Action: specs.ActAllow,
1475
-			Args:   []specs.Arg{},
1476
-		},
1477
-		{
1478
-			Name:   "times",
1479
-			Action: specs.ActAllow,
1480
-			Args:   []specs.Arg{},
1481
-		},
1482
-		{
1483
-			Name:   "tkill",
1484
-			Action: specs.ActAllow,
1485
-			Args:   []specs.Arg{},
1486
-		},
1487
-		{
1488
-			Name:   "truncate",
1489
-			Action: specs.ActAllow,
1490
-			Args:   []specs.Arg{},
1491
-		},
1492
-		{
1493
-			Name:   "truncate64",
1494
-			Action: specs.ActAllow,
1495
-			Args:   []specs.Arg{},
1496
-		},
1497
-		{
1498
-			Name:   "ugetrlimit",
1499
-			Action: specs.ActAllow,
1500
-			Args:   []specs.Arg{},
1501
-		},
1502
-		{
1503
-			Name:   "umask",
1504
-			Action: specs.ActAllow,
1505
-			Args:   []specs.Arg{},
1506
-		},
1507
-		{
1508
-			Name:   "uname",
1509
-			Action: specs.ActAllow,
1510
-			Args:   []specs.Arg{},
1511
-		},
1512
-		{
1513
-			Name:   "unlink",
1514
-			Action: specs.ActAllow,
1515
-			Args:   []specs.Arg{},
1516
-		},
1517
-		{
1518
-			Name:   "unlinkat",
1519
-			Action: specs.ActAllow,
1520
-			Args:   []specs.Arg{},
1521
-		},
1522
-		{
1523
-			Name:   "utime",
1524
-			Action: specs.ActAllow,
1525
-			Args:   []specs.Arg{},
1526
-		},
1527
-		{
1528
-			Name:   "utimensat",
1529
-			Action: specs.ActAllow,
1530
-			Args:   []specs.Arg{},
1531
-		},
1532
-		{
1533
-			Name:   "utimes",
1534
-			Action: specs.ActAllow,
1535
-			Args:   []specs.Arg{},
1536
-		},
1537
-		{
1538
-			Name:   "vfork",
1539
-			Action: specs.ActAllow,
1540
-			Args:   []specs.Arg{},
1541
-		},
1542
-		{
1543
-			Name:   "vhangup",
1544
-			Action: specs.ActAllow,
1545
-			Args:   []specs.Arg{},
1546
-		},
1547
-		{
1548
-			Name:   "vmsplice",
1549
-			Action: specs.ActAllow,
1550
-			Args:   []specs.Arg{},
1551
-		},
1552
-		{
1553
-			Name:   "wait4",
1554
-			Action: specs.ActAllow,
1555
-			Args:   []specs.Arg{},
1556
-		},
1557
-		{
1558
-			Name:   "waitid",
1559
-			Action: specs.ActAllow,
1560
-			Args:   []specs.Arg{},
1561
-		},
1562
-		{
1563
-			Name:   "waitpid",
1564
-			Action: specs.ActAllow,
1565
-			Args:   []specs.Arg{},
1566
-		},
1567
-		{
1568
-			Name:   "write",
1569
-			Action: specs.ActAllow,
1570
-			Args:   []specs.Arg{},
1571
-		},
1572
-		{
1573
-			Name:   "writev",
1574
-			Action: specs.ActAllow,
1575
-			Args:   []specs.Arg{},
1576
-		},
1577
-		// i386 specific syscalls
1578
-		{
1579
-			Name:   "modify_ldt",
1580
-			Action: specs.ActAllow,
1581
-			Args:   []specs.Arg{},
1582
-		},
1583
-		// arm specific syscalls
1584
-		{
1585
-			Name:   "breakpoint",
1586
-			Action: specs.ActAllow,
1587
-			Args:   []specs.Arg{},
1588
-		},
1589
-		{
1590
-			Name:   "cacheflush",
1591
-			Action: specs.ActAllow,
1592
-			Args:   []specs.Arg{},
1593
-		},
1594
-		{
1595
-			Name:   "set_tls",
1596
-			Action: specs.ActAllow,
1597
-			Args:   []specs.Arg{},
1598
-		},
1599
-	},
1600
-}
... ...
@@ -3,17 +3,16 @@
3 3
 package daemon
4 4
 
5 5
 import (
6
-	"encoding/json"
7 6
 	"fmt"
8 7
 
9 8
 	"github.com/Sirupsen/logrus"
10 9
 	"github.com/docker/docker/container"
11
-	"github.com/docker/engine-api/types"
10
+	"github.com/docker/docker/profiles/seccomp"
12 11
 	"github.com/opencontainers/specs/specs-go"
13 12
 )
14 13
 
15 14
 func setSeccomp(daemon *Daemon, rs *specs.Spec, c *container.Container) error {
16
-	var seccomp *specs.Seccomp
15
+	var profile *specs.Seccomp
17 16
 	var err error
18 17
 
19 18
 	if c.HostConfig.Privileged {
... ...
@@ -31,70 +30,17 @@ func setSeccomp(daemon *Daemon, rs *specs.Spec, c *container.Container) error {
31 31
 		return nil
32 32
 	}
33 33
 	if c.SeccompProfile != "" {
34
-		seccomp, err = loadSeccompProfile(c.SeccompProfile)
34
+		profile, err = seccomp.LoadProfile(c.SeccompProfile)
35 35
 		if err != nil {
36 36
 			return err
37 37
 		}
38 38
 	} else {
39
-		seccomp = &defaultSeccompProfile
40
-	}
41
-
42
-	rs.Linux.Seccomp = seccomp
43
-	return nil
44
-}
45
-
46
-func loadSeccompProfile(body string) (*specs.Seccomp, error) {
47
-	var config types.Seccomp
48
-	if err := json.Unmarshal([]byte(body), &config); err != nil {
49
-		return nil, fmt.Errorf("Decoding seccomp profile failed: %v", err)
50
-	}
51
-
52
-	return setupSeccomp(&config)
53
-}
54
-
55
-func setupSeccomp(config *types.Seccomp) (newConfig *specs.Seccomp, err error) {
56
-	if config == nil {
57
-		return nil, nil
58
-	}
59
-
60
-	// No default action specified, no syscalls listed, assume seccomp disabled
61
-	if config.DefaultAction == "" && len(config.Syscalls) == 0 {
62
-		return nil, nil
63
-	}
64
-
65
-	newConfig = &specs.Seccomp{}
66
-
67
-	// if config.Architectures == 0 then libseccomp will figure out the architecture to use
68
-	if len(config.Architectures) > 0 {
69
-		// newConfig.Architectures = []string{}
70
-		for _, arch := range config.Architectures {
71
-			newConfig.Architectures = append(newConfig.Architectures, specs.Arch(arch))
72
-		}
73
-	}
74
-
75
-	newConfig.DefaultAction = specs.Action(config.DefaultAction)
76
-
77
-	// Loop through all syscall blocks and convert them to libcontainer format
78
-	for _, call := range config.Syscalls {
79
-		newCall := specs.Syscall{
80
-			Name:   call.Name,
81
-			Action: specs.Action(call.Action),
82
-		}
83
-
84
-		// Loop through all the arguments of the syscall and convert them
85
-		for _, arg := range call.Args {
86
-			newArg := specs.Arg{
87
-				Index:    arg.Index,
88
-				Value:    arg.Value,
89
-				ValueTwo: arg.ValueTwo,
90
-				Op:       specs.Operator(arg.Op),
91
-			}
92
-
93
-			newCall.Args = append(newCall.Args, newArg)
39
+		profile, err = seccomp.GetDefaultProfile()
40
+		if err != nil {
41
+			return err
94 42
 		}
95
-
96
-		newConfig.Syscalls = append(newConfig.Syscalls, newCall)
97 43
 	}
98 44
 
99
-	return newConfig, nil
45
+	rs.Linux.Seccomp = profile
46
+	return nil
100 47
 }
... ...
@@ -7,19 +7,18 @@ import (
7 7
 	"fmt"
8 8
 
9 9
 	"github.com/docker/engine-api/types"
10
-	"github.com/opencontainers/runc/libcontainer/configs"
11
-	"github.com/opencontainers/runc/libcontainer/seccomp"
10
+	"github.com/opencontainers/specs/specs-go"
12 11
 )
13 12
 
14 13
 //go:generate go run -tags 'seccomp' generate.go
15 14
 
16 15
 // GetDefaultProfile returns the default seccomp profile.
17
-func GetDefaultProfile() (*configs.Seccomp, error) {
16
+func GetDefaultProfile() (*specs.Seccomp, error) {
18 17
 	return setupSeccomp(DefaultProfile)
19 18
 }
20 19
 
21 20
 // LoadProfile takes a file path and decodes the seccomp profile.
22
-func LoadProfile(body string) (*configs.Seccomp, error) {
21
+func LoadProfile(body string) (*specs.Seccomp, error) {
23 22
 	var config types.Seccomp
24 23
 	if err := json.Unmarshal([]byte(body), &config); err != nil {
25 24
 		return nil, fmt.Errorf("Decoding seccomp profile failed: %v", err)
... ...
@@ -28,7 +27,7 @@ func LoadProfile(body string) (*configs.Seccomp, error) {
28 28
 	return setupSeccomp(&config)
29 29
 }
30 30
 
31
-func setupSeccomp(config *types.Seccomp) (newConfig *configs.Seccomp, err error) {
31
+func setupSeccomp(config *types.Seccomp) (newConfig *specs.Seccomp, err error) {
32 32
 	if config == nil {
33 33
 		return nil, nil
34 34
 	}
... ...
@@ -38,58 +37,37 @@ func setupSeccomp(config *types.Seccomp) (newConfig *configs.Seccomp, err error)
38 38
 		return nil, nil
39 39
 	}
40 40
 
41
-	newConfig = new(configs.Seccomp)
42
-	newConfig.Syscalls = []*configs.Syscall{}
41
+	newConfig = &specs.Seccomp{}
43 42
 
44 43
 	// if config.Architectures == 0 then libseccomp will figure out the architecture to use
45 44
 	if len(config.Architectures) > 0 {
46
-		newConfig.Architectures = []string{}
47 45
 		for _, arch := range config.Architectures {
48
-			newArch, err := seccomp.ConvertStringToArch(string(arch))
49
-			if err != nil {
50
-				return nil, err
51
-			}
52
-			newConfig.Architectures = append(newConfig.Architectures, newArch)
46
+			newConfig.Architectures = append(newConfig.Architectures, specs.Arch(arch))
53 47
 		}
54 48
 	}
55 49
 
56
-	// Convert default action from string representation
57
-	newConfig.DefaultAction, err = seccomp.ConvertStringToAction(string(config.DefaultAction))
58
-	if err != nil {
59
-		return nil, err
60
-	}
50
+	newConfig.DefaultAction = specs.Action(config.DefaultAction)
61 51
 
62 52
 	// Loop through all syscall blocks and convert them to libcontainer format
63 53
 	for _, call := range config.Syscalls {
64
-		newAction, err := seccomp.ConvertStringToAction(string(call.Action))
65
-		if err != nil {
66
-			return nil, err
67
-		}
68
-
69
-		newCall := configs.Syscall{
54
+		newCall := specs.Syscall{
70 55
 			Name:   call.Name,
71
-			Action: newAction,
72
-			Args:   []*configs.Arg{},
56
+			Action: specs.Action(call.Action),
73 57
 		}
74 58
 
75 59
 		// Loop through all the arguments of the syscall and convert them
76 60
 		for _, arg := range call.Args {
77
-			newOp, err := seccomp.ConvertStringToOperator(string(arg.Op))
78
-			if err != nil {
79
-				return nil, err
80
-			}
81
-
82
-			newArg := configs.Arg{
61
+			newArg := specs.Arg{
83 62
 				Index:    arg.Index,
84 63
 				Value:    arg.Value,
85 64
 				ValueTwo: arg.ValueTwo,
86
-				Op:       newOp,
65
+				Op:       specs.Operator(arg.Op),
87 66
 			}
88 67
 
89
-			newCall.Args = append(newCall.Args, &newArg)
68
+			newCall.Args = append(newCall.Args, newArg)
90 69
 		}
91 70
 
92
-		newConfig.Syscalls = append(newConfig.Syscalls, &newCall)
71
+		newConfig.Syscalls = append(newConfig.Syscalls, newCall)
93 72
 	}
94 73
 
95 74
 	return newConfig, nil