script_core 0.2.2 → 0.2.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop.yml +41 -45
- data/.travis.yml +2 -1
- data/Gemfile +3 -3
- data/README.md +7 -1
- data/bootstrap.sh +2 -2
- data/ext/enterprise_script_service/libseccomp/.travis.yml +24 -12
- data/ext/enterprise_script_service/libseccomp/CHANGELOG +32 -0
- data/ext/enterprise_script_service/libseccomp/CONTRIBUTING.md +37 -26
- data/ext/enterprise_script_service/libseccomp/CREDITS +11 -0
- data/ext/enterprise_script_service/libseccomp/README.md +21 -1
- data/ext/enterprise_script_service/libseccomp/configure.ac +13 -8
- data/ext/enterprise_script_service/libseccomp/doc/Makefile.am +6 -0
- data/ext/enterprise_script_service/libseccomp/doc/man/man3/seccomp_api_get.3 +12 -2
- data/ext/enterprise_script_service/libseccomp/doc/man/man3/seccomp_arch_add.3 +38 -6
- data/ext/enterprise_script_service/libseccomp/doc/man/man3/seccomp_attr_set.3 +53 -2
- data/ext/enterprise_script_service/libseccomp/doc/man/man3/seccomp_export_bpf.3 +20 -2
- data/ext/enterprise_script_service/libseccomp/doc/man/man3/seccomp_init.3 +9 -2
- data/ext/enterprise_script_service/libseccomp/doc/man/man3/seccomp_load.3 +32 -2
- data/ext/enterprise_script_service/libseccomp/doc/man/man3/seccomp_merge.3 +16 -2
- data/ext/enterprise_script_service/libseccomp/doc/man/man3/seccomp_notify_alloc.3 +113 -0
- data/ext/enterprise_script_service/libseccomp/doc/man/man3/seccomp_notify_fd.3 +1 -0
- data/ext/enterprise_script_service/libseccomp/doc/man/man3/seccomp_notify_free.3 +1 -0
- data/ext/enterprise_script_service/libseccomp/doc/man/man3/seccomp_notify_id_valid.3 +1 -0
- data/ext/enterprise_script_service/libseccomp/doc/man/man3/seccomp_notify_receive.3 +1 -0
- data/ext/enterprise_script_service/libseccomp/doc/man/man3/seccomp_notify_respond.3 +1 -0
- data/ext/enterprise_script_service/libseccomp/doc/man/man3/seccomp_rule_add.3 +64 -3
- data/ext/enterprise_script_service/libseccomp/doc/man/man3/seccomp_syscall_priority.3 +18 -3
- data/ext/enterprise_script_service/libseccomp/include/seccomp-syscalls.h +19 -0
- data/ext/enterprise_script_service/libseccomp/include/seccomp.h.in +116 -0
- data/ext/enterprise_script_service/libseccomp/src/.gitignore +2 -0
- data/ext/enterprise_script_service/libseccomp/src/Makefile.am +31 -17
- data/ext/enterprise_script_service/libseccomp/src/api.c +254 -58
- data/ext/enterprise_script_service/libseccomp/src/arch-aarch64.h +1 -9
- data/ext/enterprise_script_service/libseccomp/src/arch-arm.c +47 -2
- data/ext/enterprise_script_service/libseccomp/src/arch-arm.h +1 -9
- data/ext/enterprise_script_service/libseccomp/src/arch-gperf-generate +40 -0
- data/ext/enterprise_script_service/libseccomp/src/arch-mips.c +41 -4
- data/ext/enterprise_script_service/libseccomp/src/arch-mips.h +2 -10
- data/ext/enterprise_script_service/libseccomp/src/arch-mips64.c +41 -4
- data/ext/enterprise_script_service/libseccomp/src/arch-mips64.h +3 -11
- data/ext/enterprise_script_service/libseccomp/src/arch-mips64n32.c +41 -4
- data/ext/enterprise_script_service/libseccomp/src/arch-mips64n32.h +2 -10
- data/ext/enterprise_script_service/libseccomp/src/arch-parisc.h +1 -10
- data/ext/enterprise_script_service/libseccomp/src/arch-parisc64.c +3 -3
- data/ext/enterprise_script_service/libseccomp/src/arch-parisc64.h +29 -0
- data/ext/enterprise_script_service/libseccomp/src/arch-ppc.h +1 -9
- data/ext/enterprise_script_service/libseccomp/src/arch-ppc64.c +606 -8
- data/ext/enterprise_script_service/libseccomp/src/arch-ppc64.h +2 -10
- data/ext/enterprise_script_service/libseccomp/src/arch-riscv64.c +31 -0
- data/ext/enterprise_script_service/libseccomp/src/arch-riscv64.h +22 -0
- data/ext/enterprise_script_service/libseccomp/src/arch-s390.c +171 -12
- data/ext/enterprise_script_service/libseccomp/src/arch-s390.h +1 -17
- data/ext/enterprise_script_service/libseccomp/src/arch-s390x.c +166 -10
- data/ext/enterprise_script_service/libseccomp/src/arch-s390x.h +1 -20
- data/ext/enterprise_script_service/libseccomp/src/arch-syscall-dump.c +8 -1
- data/ext/enterprise_script_service/libseccomp/src/arch-syscall-validate +359 -143
- data/ext/enterprise_script_service/libseccomp/src/arch-x32.c +36 -2
- data/ext/enterprise_script_service/libseccomp/src/arch-x32.h +2 -10
- data/ext/enterprise_script_service/libseccomp/src/arch-x86.c +172 -10
- data/ext/enterprise_script_service/libseccomp/src/arch-x86.h +1 -14
- data/ext/enterprise_script_service/libseccomp/src/arch-x86_64.h +1 -9
- data/ext/enterprise_script_service/libseccomp/src/arch.c +11 -3
- data/ext/enterprise_script_service/libseccomp/src/arch.h +7 -0
- data/ext/enterprise_script_service/libseccomp/src/db.c +268 -57
- data/ext/enterprise_script_service/libseccomp/src/db.h +16 -2
- data/ext/enterprise_script_service/libseccomp/src/gen_bpf.c +503 -148
- data/ext/enterprise_script_service/libseccomp/src/gen_bpf.h +2 -1
- data/ext/enterprise_script_service/libseccomp/src/gen_pfc.c +165 -37
- data/ext/enterprise_script_service/libseccomp/src/python/libseccomp.pxd +37 -1
- data/ext/enterprise_script_service/libseccomp/src/python/seccomp.pyx +295 -5
- data/ext/enterprise_script_service/libseccomp/src/syscalls.c +56 -0
- data/ext/enterprise_script_service/libseccomp/src/syscalls.csv +470 -0
- data/ext/enterprise_script_service/libseccomp/src/syscalls.h +62 -0
- data/ext/enterprise_script_service/libseccomp/src/syscalls.perf.template +82 -0
- data/ext/enterprise_script_service/libseccomp/src/system.c +196 -16
- data/ext/enterprise_script_service/libseccomp/src/system.h +68 -13
- data/ext/enterprise_script_service/libseccomp/tests/.gitignore +10 -2
- data/ext/enterprise_script_service/libseccomp/tests/06-sim-actions.tests +1 -1
- data/ext/enterprise_script_service/libseccomp/tests/11-basic-basic_errors.c +5 -5
- data/ext/enterprise_script_service/libseccomp/tests/13-basic-attrs.c +35 -1
- data/ext/enterprise_script_service/libseccomp/tests/13-basic-attrs.py +10 -1
- data/ext/enterprise_script_service/libseccomp/tests/15-basic-resolver.c +4 -3
- data/ext/enterprise_script_service/libseccomp/tests/16-sim-arch_basic.c +12 -0
- data/ext/enterprise_script_service/libseccomp/tests/16-sim-arch_basic.py +1 -0
- data/ext/enterprise_script_service/libseccomp/tests/{18-sim-basic_whitelist.c → 18-sim-basic_allowlist.c} +0 -0
- data/ext/enterprise_script_service/libseccomp/tests/{18-sim-basic_whitelist.py → 18-sim-basic_allowlist.py} +0 -0
- data/ext/enterprise_script_service/libseccomp/tests/18-sim-basic_allowlist.tests +32 -0
- data/ext/enterprise_script_service/libseccomp/tests/23-sim-arch_all_le_basic.c +3 -0
- data/ext/enterprise_script_service/libseccomp/tests/23-sim-arch_all_le_basic.py +1 -0
- data/ext/enterprise_script_service/libseccomp/tests/30-sim-socket_syscalls.c +3 -0
- data/ext/enterprise_script_service/libseccomp/tests/30-sim-socket_syscalls.py +1 -0
- data/ext/enterprise_script_service/libseccomp/tests/30-sim-socket_syscalls.tests +33 -17
- data/ext/enterprise_script_service/libseccomp/tests/{34-sim-basic_blacklist.c → 34-sim-basic_denylist.c} +0 -0
- data/ext/enterprise_script_service/libseccomp/tests/{34-sim-basic_blacklist.py → 34-sim-basic_denylist.py} +0 -0
- data/ext/enterprise_script_service/libseccomp/tests/34-sim-basic_denylist.tests +32 -0
- data/ext/enterprise_script_service/libseccomp/tests/36-sim-ipc_syscalls.c +3 -0
- data/ext/enterprise_script_service/libseccomp/tests/36-sim-ipc_syscalls.py +1 -0
- data/ext/enterprise_script_service/libseccomp/tests/36-sim-ipc_syscalls.tests +25 -25
- data/ext/enterprise_script_service/libseccomp/tests/39-basic-api_level.c +24 -3
- data/ext/enterprise_script_service/libseccomp/tests/39-basic-api_level.py +16 -1
- data/ext/enterprise_script_service/libseccomp/tests/47-live-kill_process.c +3 -3
- data/ext/enterprise_script_service/libseccomp/tests/51-live-user_notification.c +112 -0
- data/ext/enterprise_script_service/libseccomp/tests/51-live-user_notification.py +60 -0
- data/ext/enterprise_script_service/libseccomp/tests/51-live-user_notification.tests +11 -0
- data/ext/enterprise_script_service/libseccomp/tests/52-basic-load.c +48 -0
- data/ext/enterprise_script_service/libseccomp/tests/52-basic-load.py +38 -0
- data/ext/enterprise_script_service/libseccomp/tests/52-basic-load.tests +11 -0
- data/ext/enterprise_script_service/libseccomp/tests/53-sim-binary_tree.c +156 -0
- data/ext/enterprise_script_service/libseccomp/tests/53-sim-binary_tree.py +95 -0
- data/ext/enterprise_script_service/libseccomp/tests/53-sim-binary_tree.tests +65 -0
- data/ext/enterprise_script_service/libseccomp/tests/54-live-binary_tree.c +128 -0
- data/ext/enterprise_script_service/libseccomp/tests/54-live-binary_tree.py +95 -0
- data/ext/enterprise_script_service/libseccomp/tests/54-live-binary_tree.tests +11 -0
- data/ext/enterprise_script_service/libseccomp/tests/55-basic-pfc_binary_tree.c +134 -0
- data/ext/enterprise_script_service/libseccomp/tests/55-basic-pfc_binary_tree.sh +46 -0
- data/ext/enterprise_script_service/libseccomp/tests/55-basic-pfc_binary_tree.tests +11 -0
- data/ext/enterprise_script_service/libseccomp/tests/56-basic-iterate_syscalls.c +90 -0
- data/ext/enterprise_script_service/libseccomp/tests/56-basic-iterate_syscalls.py +65 -0
- data/ext/enterprise_script_service/libseccomp/tests/56-basic-iterate_syscalls.tests +11 -0
- data/ext/enterprise_script_service/libseccomp/tests/57-basic-rawsysrc.c +64 -0
- data/ext/enterprise_script_service/libseccomp/tests/57-basic-rawsysrc.py +46 -0
- data/ext/enterprise_script_service/libseccomp/tests/57-basic-rawsysrc.tests +11 -0
- data/ext/enterprise_script_service/libseccomp/tests/58-live-tsync_notify.c +116 -0
- data/ext/enterprise_script_service/libseccomp/tests/58-live-tsync_notify.py +61 -0
- data/ext/enterprise_script_service/libseccomp/tests/58-live-tsync_notify.tests +11 -0
- data/ext/enterprise_script_service/libseccomp/tests/Makefile.am +34 -10
- data/ext/enterprise_script_service/libseccomp/tests/regression +10 -3
- data/ext/enterprise_script_service/libseccomp/tests/util.c +3 -3
- data/ext/enterprise_script_service/libseccomp/tools/Makefile.am +0 -3
- data/ext/enterprise_script_service/libseccomp/tools/check-syntax +1 -1
- data/ext/enterprise_script_service/libseccomp/tools/scmp_arch_detect.c +3 -0
- data/ext/enterprise_script_service/libseccomp/tools/scmp_bpf_disasm.c +4 -2
- data/ext/enterprise_script_service/libseccomp/tools/scmp_bpf_sim.c +4 -0
- data/ext/enterprise_script_service/libseccomp/tools/util.c +14 -12
- data/ext/enterprise_script_service/libseccomp/tools/util.h +7 -0
- data/ext/enterprise_script_service/mruby/.github/workflows/build.yml +106 -0
- data/ext/enterprise_script_service/mruby/.github/workflows/codeql-analysis.yml +51 -0
- data/ext/enterprise_script_service/mruby/.github/workflows/main.yml +24 -0
- data/ext/enterprise_script_service/mruby/.gitignore +3 -0
- data/ext/enterprise_script_service/mruby/.travis.yml +6 -9
- data/ext/enterprise_script_service/mruby/AUTHORS +1 -0
- data/ext/enterprise_script_service/mruby/Doxyfile +1 -1
- data/ext/enterprise_script_service/mruby/LICENSE +1 -1
- data/ext/enterprise_script_service/mruby/README.md +6 -2
- data/ext/enterprise_script_service/mruby/appveyor.yml +9 -12
- data/ext/enterprise_script_service/mruby/appveyor_config.rb +9 -0
- data/ext/enterprise_script_service/mruby/build_config.rb +6 -6
- data/ext/enterprise_script_service/mruby/doc/guides/compile.md +6 -2
- data/ext/enterprise_script_service/mruby/doc/guides/debugger.md +1 -1
- data/ext/enterprise_script_service/mruby/doc/guides/mrbconf.md +4 -8
- data/ext/enterprise_script_service/mruby/doc/limitations.md +10 -10
- data/ext/enterprise_script_service/mruby/doc/opcode.md +108 -95
- data/ext/enterprise_script_service/mruby/examples/targets/build_config_ArduinoDue.rb +2 -2
- data/ext/enterprise_script_service/mruby/examples/targets/build_config_IntelEdison.rb +2 -2
- data/ext/enterprise_script_service/mruby/examples/targets/build_config_IntelGalileo.rb +2 -2
- data/ext/enterprise_script_service/mruby/examples/targets/build_config_RX630.rb +2 -2
- data/ext/enterprise_script_service/mruby/examples/targets/build_config_chipKITMax32.rb +2 -2
- data/ext/enterprise_script_service/mruby/examples/targets/build_config_dreamcast_shelf.rb +108 -0
- data/ext/enterprise_script_service/mruby/include/mrbconf.h +10 -7
- data/ext/enterprise_script_service/mruby/include/mruby.h +24 -9
- data/ext/enterprise_script_service/mruby/include/mruby/array.h +4 -0
- data/ext/enterprise_script_service/mruby/include/mruby/boxing_nan.h +11 -2
- data/ext/enterprise_script_service/mruby/include/mruby/boxing_word.h +0 -10
- data/ext/enterprise_script_service/mruby/include/mruby/common.h +10 -0
- data/ext/enterprise_script_service/mruby/include/mruby/compile.h +11 -3
- data/ext/enterprise_script_service/mruby/include/mruby/dump.h +1 -17
- data/ext/enterprise_script_service/mruby/include/mruby/irep.h +10 -0
- data/ext/enterprise_script_service/mruby/include/mruby/istruct.h +4 -1
- data/ext/enterprise_script_service/mruby/include/mruby/khash.h +23 -5
- data/ext/enterprise_script_service/mruby/include/mruby/numeric.h +1 -0
- data/ext/enterprise_script_service/mruby/include/mruby/ops.h +3 -2
- data/ext/enterprise_script_service/mruby/include/mruby/proc.h +13 -8
- data/ext/enterprise_script_service/mruby/include/mruby/string.h +2 -1
- data/ext/enterprise_script_service/mruby/include/mruby/value.h +32 -41
- data/ext/enterprise_script_service/mruby/include/mruby/version.h +4 -4
- data/ext/enterprise_script_service/mruby/lib/mruby/build.rb +2 -30
- data/ext/enterprise_script_service/mruby/lib/mruby/build/command.rb +21 -46
- data/ext/enterprise_script_service/mruby/lib/mruby/gem.rb +9 -0
- data/ext/enterprise_script_service/mruby/lib/mruby/source.rb +3 -1
- data/ext/enterprise_script_service/mruby/mrbgems/default.gembox +7 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-array-ext/mrblib/array.rb +0 -31
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-array-ext/src/array.c +5 -8
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-array-ext/test/array.rb +0 -13
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-config/mrbgem.rake +5 -2
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/mrdb.c +0 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/mrdbconf.h +5 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mirb/tools/mirb/mirb.c +7 -3
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mrbc/tools/mrbc/mrbc.c +24 -21
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mruby/mrbgem.rake +0 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-mruby/tools/mruby/mruby.c +6 -2
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-bin-strip/tools/mruby-strip/mruby-strip.c +6 -2
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-class-ext/src/class.c +6 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/core/codegen.c +76 -48
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/core/parse.y +107 -32
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/core/y.tab.c +13153 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-compiler/mrbgem.rake +13 -15
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-complex/mrblib/complex.rb +1 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-complex/src/complex.c +1 -2
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-error/src/exception.c +3 -3
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-eval/src/eval.c +3 -214
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-eval/test/eval.rb +21 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-fiber/src/fiber.c +1 -2
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-hash-ext/src/hash-ext.c +1 -3
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-inline-struct/test/inline.c +3 -4
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/include/mruby/ext/io.h +39 -7
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/mrbgem.rake +2 -8
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/mrblib/file_constants.rb +0 -16
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/mrblib/io.rb +7 -12
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/src/file.c +77 -32
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/src/file_test.c +18 -36
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/src/io.c +324 -122
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/test/file.rb +18 -12
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/test/io.rb +32 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-io/test/mruby_io_test.c +57 -49
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-kernel-ext/src/kernel.c +6 -8
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-metaprog/src/metaprog.c +15 -17
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-metaprog/test/metaprog.rb +9 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-method/src/method.c +4 -5
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-object-ext/src/object.c +3 -12
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-objectspace/src/mruby_objectspace.c +0 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-pack/src/pack.c +113 -10
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-print/src/print.c +6 -3
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-proc-ext/src/proc.c +2 -2
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-range-ext/src/range.c +1 -3
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-rational/mrblib/rational.rb +1 -3
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-rational/src/rational.c +9 -9
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-sleep/src/mrb_sleep.c +1 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-socket/mrbgem.rake +1 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-socket/test/sockettest.c +3 -2
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-sprintf/src/sprintf.c +62 -25
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-sprintf/test/sprintf.rb +5 -23
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-string-ext/src/string.c +4 -5
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-struct/src/struct.c +5 -11
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-symbol-ext/src/symbol.c +1 -1
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-test/mrbgem.rake +1 -0
- data/ext/enterprise_script_service/mruby/mrbgems/mruby-time/src/time.c +11 -15
- data/ext/enterprise_script_service/mruby/mrblib/00class.rb +10 -0
- data/ext/enterprise_script_service/mruby/mrblib/hash.rb +3 -3
- data/ext/enterprise_script_service/mruby/src/array.c +25 -11
- data/ext/enterprise_script_service/mruby/src/backtrace.c +2 -2
- data/ext/enterprise_script_service/mruby/src/class.c +48 -32
- data/ext/enterprise_script_service/mruby/src/codedump.c +4 -0
- data/ext/enterprise_script_service/mruby/src/debug.c +8 -5
- data/ext/enterprise_script_service/mruby/src/dump.c +3 -65
- data/ext/enterprise_script_service/mruby/src/error.c +58 -7
- data/ext/enterprise_script_service/mruby/src/etc.c +13 -5
- data/ext/enterprise_script_service/mruby/src/fmt_fp.c +98 -21
- data/ext/enterprise_script_service/mruby/src/gc.c +15 -280
- data/ext/enterprise_script_service/mruby/src/hash.c +13 -21
- data/ext/enterprise_script_service/mruby/src/kernel.c +6 -9
- data/ext/enterprise_script_service/mruby/src/load.c +56 -30
- data/ext/enterprise_script_service/mruby/src/numeric.c +50 -70
- data/ext/enterprise_script_service/mruby/src/object.c +23 -5
- data/ext/enterprise_script_service/mruby/src/print.c +27 -3
- data/ext/enterprise_script_service/mruby/src/proc.c +26 -7
- data/ext/enterprise_script_service/mruby/src/range.c +4 -12
- data/ext/enterprise_script_service/mruby/src/state.c +34 -11
- data/ext/enterprise_script_service/mruby/src/string.c +93 -56
- data/ext/enterprise_script_service/mruby/src/symbol.c +13 -12
- data/ext/enterprise_script_service/mruby/src/vm.c +48 -53
- data/ext/enterprise_script_service/mruby/tasks/gitlab.rake +19 -22
- data/ext/enterprise_script_service/mruby/tasks/mrbgems.rake +1 -1
- data/ext/enterprise_script_service/mruby/tasks/toolchains/android.rake +46 -1
- data/ext/enterprise_script_service/mruby/tasks/toolchains/gcc.rake +3 -3
- data/ext/enterprise_script_service/mruby/tasks/toolchains/openwrt.rake +6 -6
- data/ext/enterprise_script_service/mruby/tasks/toolchains/visualcpp.rake +8 -8
- data/ext/enterprise_script_service/mruby/test/assert.rb +5 -4
- data/ext/enterprise_script_service/mruby/test/t/ensure.rb +8 -26
- data/ext/enterprise_script_service/mruby/test/t/exception.rb +2 -2
- data/ext/enterprise_script_service/mruby/test/t/kernel.rb +15 -24
- data/ext/enterprise_script_service/mruby/travis_config.rb +0 -14
- data/ext/enterprise_script_service/msgpack/.github/depends/boost.sh +56 -0
- data/ext/enterprise_script_service/msgpack/.github/workflows/coverage.yml +62 -0
- data/ext/enterprise_script_service/msgpack/.github/workflows/gha.yml +304 -0
- data/ext/enterprise_script_service/msgpack/CHANGELOG.md +11 -0
- data/ext/enterprise_script_service/msgpack/CMakeLists.txt +82 -39
- data/ext/enterprise_script_service/msgpack/Files.cmake +22 -12
- data/ext/enterprise_script_service/msgpack/QUICKSTART-C.md +26 -29
- data/ext/enterprise_script_service/msgpack/README.md +3 -2
- data/ext/enterprise_script_service/msgpack/appveyor.yml +6 -2
- data/ext/enterprise_script_service/msgpack/ci/build_cmake.sh +3 -1
- data/ext/enterprise_script_service/msgpack/cmake/CodeCoverage.cmake +55 -0
- data/ext/enterprise_script_service/msgpack/codecov.yml +36 -0
- data/ext/enterprise_script_service/msgpack/example/CMakeLists.txt +9 -5
- data/ext/enterprise_script_service/msgpack/example/boost/CMakeLists.txt +1 -1
- data/ext/enterprise_script_service/msgpack/example/c/CMakeLists.txt +17 -6
- data/ext/enterprise_script_service/msgpack/example/c/boundary.c +296 -0
- data/ext/enterprise_script_service/msgpack/example/c/jsonconv.c +419 -0
- data/ext/enterprise_script_service/msgpack/example/c/simple_c.c +1 -1
- data/ext/enterprise_script_service/msgpack/example/cpp03/CMakeLists.txt +3 -3
- data/ext/enterprise_script_service/msgpack/example/cpp11/CMakeLists.txt +2 -2
- data/ext/enterprise_script_service/msgpack/example/x3/CMakeLists.txt +2 -2
- data/ext/enterprise_script_service/msgpack/include/msgpack/pack.h +24 -1
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/array_ref.hpp +5 -4
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/boost/optional.hpp +4 -4
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/cpp17/vector_byte.hpp +8 -8
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/map.hpp +4 -4
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/vector.hpp +4 -4
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/vector_char.hpp +8 -8
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/vector_unsigned_char.hpp +8 -8
- data/ext/enterprise_script_service/msgpack/include/msgpack/v1/adaptor/wstring.hpp +4 -4
- data/ext/enterprise_script_service/msgpack/include/msgpack/v3/unpack.hpp +6 -6
- data/ext/enterprise_script_service/msgpack/include/msgpack/version_master.h +2 -2
- data/ext/enterprise_script_service/msgpack/include/msgpack/zbuffer.h +4 -4
- data/ext/enterprise_script_service/msgpack/make_file_list.sh +38 -11
- data/ext/enterprise_script_service/msgpack/src/vrefbuffer.c +6 -0
- data/ext/enterprise_script_service/msgpack/test/CMakeLists.txt +86 -64
- data/ext/enterprise_script_service/msgpack/test/array_ref.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/boost_fusion.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/boost_optional.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/boost_string_ref.cpp +4 -1
- data/ext/enterprise_script_service/msgpack/test/boost_string_view.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/boost_variant.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/buffer.cpp +4 -47
- data/ext/enterprise_script_service/msgpack/test/buffer_c.cpp +148 -0
- data/ext/enterprise_script_service/msgpack/test/carray.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/cases.cpp +8 -4
- data/ext/enterprise_script_service/msgpack/test/convert.cpp +8 -4
- data/ext/enterprise_script_service/msgpack/test/fixint.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/fixint_c.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/fuzz_unpack_pack_fuzzer_cpp11.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/iterator_cpp11.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/json.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/limit.cpp +8 -4
- data/ext/enterprise_script_service/msgpack/test/msgpack_basic.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/msgpack_c.cpp +159 -0
- data/ext/enterprise_script_service/msgpack/test/msgpack_container.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/msgpack_cpp11.cpp +32 -27
- data/ext/enterprise_script_service/msgpack/test/msgpack_cpp17.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/msgpack_stream.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/msgpack_tuple.cpp +4 -1
- data/ext/enterprise_script_service/msgpack/test/msgpack_vref.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/msgpack_x3_parse.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/object.cpp +4 -1
- data/ext/enterprise_script_service/msgpack/test/object_with_zone.cpp +12 -8
- data/ext/enterprise_script_service/msgpack/test/pack_unpack.cpp +30 -26
- data/ext/enterprise_script_service/msgpack/test/pack_unpack_c.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/raw.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/reference.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/reference_cpp11.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/reference_wrapper_cpp11.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/shared_ptr_cpp11.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/size_equal_only.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/streaming.cpp +8 -4
- data/ext/enterprise_script_service/msgpack/test/streaming_c.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/unique_ptr_cpp11.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/user_class.cpp +16 -12
- data/ext/enterprise_script_service/msgpack/test/version.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/visitor.cpp +4 -0
- data/ext/enterprise_script_service/msgpack/test/zone.cpp +4 -0
- data/lib/script_core/engine.rb +24 -5
- data/lib/script_core/executable.rb +4 -3
- data/lib/script_core/result.rb +1 -5
- data/lib/script_core/service_channel.rb +1 -0
- data/lib/script_core/version.rb +1 -1
- data/lib/tasks/script_core.rake +3 -1
- data/script_core.gemspec +2 -2
- data/spec/dummy/app/lib/script_engine.rb +64 -5
- metadata +68 -30
- data/ext/enterprise_script_service/libseccomp/src/arch-aarch64-syscalls.c +0 -559
- data/ext/enterprise_script_service/libseccomp/src/arch-arm-syscalls.c +0 -570
- data/ext/enterprise_script_service/libseccomp/src/arch-mips-syscalls.c +0 -562
- data/ext/enterprise_script_service/libseccomp/src/arch-mips64-syscalls.c +0 -562
- data/ext/enterprise_script_service/libseccomp/src/arch-mips64n32-syscalls.c +0 -562
- data/ext/enterprise_script_service/libseccomp/src/arch-parisc-syscalls.c +0 -542
- data/ext/enterprise_script_service/libseccomp/src/arch-ppc-syscalls.c +0 -559
- data/ext/enterprise_script_service/libseccomp/src/arch-ppc64-syscalls.c +0 -559
- data/ext/enterprise_script_service/libseccomp/src/arch-s390-syscalls.c +0 -626
- data/ext/enterprise_script_service/libseccomp/src/arch-s390x-syscalls.c +0 -626
- data/ext/enterprise_script_service/libseccomp/src/arch-x32-syscalls.c +0 -558
- data/ext/enterprise_script_service/libseccomp/src/arch-x86-syscalls.c +0 -692
- data/ext/enterprise_script_service/libseccomp/src/arch-x86_64-syscalls.c +0 -559
- data/ext/enterprise_script_service/libseccomp/tests/18-sim-basic_whitelist.tests +0 -32
- data/ext/enterprise_script_service/libseccomp/tests/34-sim-basic_blacklist.tests +0 -32
- data/ext/enterprise_script_service/msgpack/.travis.yml +0 -258
|
@@ -2,18 +2,24 @@ libseccomp: Contributors
|
|
|
2
2
|
========================================================================
|
|
3
3
|
https://github.com/seccomp/libseccomp
|
|
4
4
|
|
|
5
|
+
Alex Murray <alex.murray@canonical.com>
|
|
6
|
+
Andreas Schwab <schwab@suse.de>
|
|
5
7
|
Andrew Jones <drjones@redhat.com>
|
|
6
8
|
Andy Lutomirski <luto@amacapital.net>
|
|
7
9
|
Ashley Lai <adlai@us.ibm.com>
|
|
8
10
|
Bogdan Purcareata <bogdan.purcareata@freescale.com>
|
|
9
11
|
Brian Cain <brian.cain@gmail.com>
|
|
12
|
+
Christopher Waldon <christopher.waldon.dev@gmail.com>
|
|
13
|
+
Chris Waldon <chris.waldon@ibm.com>
|
|
10
14
|
Colin Walters <walters@verbum.org>
|
|
11
15
|
Corey Bryant <coreyb@linux.vnet.ibm.com>
|
|
12
16
|
David Drysdale <drysdale@google.com>
|
|
13
17
|
Eduardo Otubo <otubo@linux.vnet.ibm.com>
|
|
14
18
|
Eric Paris <eparis@redhat.com>
|
|
19
|
+
Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
|
15
20
|
Felix Abecassis <fabecassis@nvidia.com>
|
|
16
21
|
Felix Geyer <debfx@fobos.de>
|
|
22
|
+
Giuseppe Scrivano <gscrivan@redhat.com>
|
|
17
23
|
Heiko Carstens <heiko.carstens@de.ibm.com>
|
|
18
24
|
Helge Deller <deller@gmx.de>
|
|
19
25
|
Jake Edge <jake@lwn.net>
|
|
@@ -23,9 +29,11 @@ Jan Willeke <willeke@linux.vnet.ibm.com>
|
|
|
23
29
|
Jay Guo <guojiannan@cn.ibm.com>
|
|
24
30
|
Jiannan Guo <guojiannan1101@gmail.com>
|
|
25
31
|
Joe MacDonald <joe@deserted.net>
|
|
32
|
+
Jonah Petri <jonah@petri.us>
|
|
26
33
|
Justin Cormack <justin.cormack@docker.com>
|
|
27
34
|
Kees Cook <keescook@chromium.org>
|
|
28
35
|
Kyle R. Conway <kyle.r.conway@gmail.com>
|
|
36
|
+
Kenta Tada <Kenta.Tada@sony.com>
|
|
29
37
|
Luca Bruno <lucab@debian.org>
|
|
30
38
|
Marcin Juszkiewicz <mjuszkiewicz@redhat.com>
|
|
31
39
|
Marcus Meissner <meissner@suse.de>
|
|
@@ -34,13 +42,16 @@ Mathias Krause <minipli@googlemail.com>
|
|
|
34
42
|
Michael Forney <mforney@mforney.org>
|
|
35
43
|
Mike Frysinger <vapier@gentoo.org>
|
|
36
44
|
Mike Strosaker <strosake@linux.vnet.ibm.com>
|
|
45
|
+
Miroslav Lichvar <mlichvar@redhat.com>
|
|
37
46
|
Paul Moore <paul@paul-moore.com>
|
|
47
|
+
Rolf Eike Beer <eb@emlix.com>
|
|
38
48
|
Serge Hallyn <serge.hallyn@ubuntu.com>
|
|
39
49
|
Stéphane Graber <stgraber@ubuntu.com>
|
|
40
50
|
Stephen Coleman <omegacoleman@gmail.com>
|
|
41
51
|
Thiago Marcos P. Santos <thiago.santos@intel.com>
|
|
42
52
|
Tobias Klauser <tklauser@distanz.ch>
|
|
43
53
|
Tom Hromatka <tom.hromatka@oracle.com>
|
|
54
|
+
Tudor Brindus <me@tbrindus.ca>
|
|
44
55
|
Tycho Andersen <tycho@tycho.ws>
|
|
45
56
|
Tyler Hicks <tyhicks@canonical.com>
|
|
46
57
|
valoq <valoq@mailbox.org>
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-

|
|
2
2
|
===============================================================================
|
|
3
3
|
https://github.com/seccomp/libseccomp
|
|
4
4
|
|
|
5
5
|
[](https://bestpractices.coreinfrastructure.org/projects/608)
|
|
6
6
|
[](https://travis-ci.org/seccomp/libseccomp)
|
|
7
7
|
[](https://coveralls.io/github/seccomp/libseccomp?branch=master)
|
|
8
|
+
[](https://lgtm.com/projects/g/seccomp/libseccomp/context:cpp)
|
|
8
9
|
|
|
9
10
|
The libseccomp library provides an easy to use, platform independent, interface
|
|
10
11
|
to the Linux Kernel's syscall filtering mechanism. The libseccomp API is
|
|
@@ -52,6 +53,7 @@ The libseccomp library currently supports the architectures listed below:
|
|
|
52
53
|
* 64-bit PowerPC little endian (ppc64le)
|
|
53
54
|
* 32-bit s390 (s390)
|
|
54
55
|
* 64-bit s390x (s390x)
|
|
56
|
+
* 64-bit RISC-V (riscv64)
|
|
55
57
|
|
|
56
58
|
## Documentation
|
|
57
59
|
|
|
@@ -63,6 +65,24 @@ CHANGELOG files.
|
|
|
63
65
|
Those who are interested in contributing to the the project are encouraged to
|
|
64
66
|
read the CONTRIBUTING in the top level directory.
|
|
65
67
|
|
|
68
|
+
## Verifying Release Tarballs
|
|
69
|
+
|
|
70
|
+
Before use you should verify the downloaded release tarballs and checksums
|
|
71
|
+
using the detached signatures supplied as part of the release; the detached
|
|
72
|
+
signature files are the "*.asc" files. If you have GnuPG installed you can
|
|
73
|
+
verify detached signatures using the following command:
|
|
74
|
+
|
|
75
|
+
# gpg --verify file.asc file
|
|
76
|
+
|
|
77
|
+
At present, only the following keys are authorized to sign official libseccomp
|
|
78
|
+
releases:
|
|
79
|
+
|
|
80
|
+
Paul Moore <paul@paul-moore.com>
|
|
81
|
+
7100 AADF AE6E 6E94 0D2E 0AD6 55E4 5A5A E8CA 7C8A
|
|
82
|
+
|
|
83
|
+
Tom Hromatka <tom.hromatka@oracle.com>
|
|
84
|
+
47A6 8FCE 37C7 D702 4FD6 5E11 356C E62C 2B52 4099
|
|
85
|
+
|
|
66
86
|
## Building and Installing the Library
|
|
67
87
|
|
|
68
88
|
If you are building the libseccomp library from an official release tarball,
|
|
@@ -19,7 +19,7 @@ dnl #
|
|
|
19
19
|
dnl ####
|
|
20
20
|
dnl libseccomp defines
|
|
21
21
|
dnl ####
|
|
22
|
-
AC_INIT([libseccomp], [2.
|
|
22
|
+
AC_INIT([libseccomp], [2.5.0])
|
|
23
23
|
|
|
24
24
|
dnl ####
|
|
25
25
|
dnl autoconf configuration
|
|
@@ -66,7 +66,7 @@ m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
|
|
|
66
66
|
dnl ####
|
|
67
67
|
dnl build flags
|
|
68
68
|
dnl ####
|
|
69
|
-
AM_CPPFLAGS="-I\${top_srcdir}/include"
|
|
69
|
+
AM_CPPFLAGS="-I\${top_srcdir}/include -I\${top_builddir}/include"
|
|
70
70
|
AM_CFLAGS="-Wall"
|
|
71
71
|
AM_LDFLAGS="-Wl,-z -Wl,relro"
|
|
72
72
|
AC_SUBST([AM_CPPFLAGS])
|
|
@@ -91,11 +91,11 @@ AC_SUBST([VERSION_MICRO])
|
|
|
91
91
|
dnl ####
|
|
92
92
|
dnl cython checks
|
|
93
93
|
dnl ####
|
|
94
|
-
|
|
95
|
-
AS_IF([test "$
|
|
96
|
-
AS_ECHO("checking cython version... $(cython -V 2>&1 | cut -d' ' -f 3)")
|
|
97
|
-
CYTHON_VER_MAJ=$(cython -V 2>&1 | cut -d' ' -f 3 | cut -d'.' -f 1);
|
|
98
|
-
CYTHON_VER_MIN=$(cython -V 2>&1 | cut -d' ' -f 3 | cut -d'.' -f 2);
|
|
94
|
+
AC_CHECK_PROGS(cython, cython3 cython, "no")
|
|
95
|
+
AS_IF([test "$cython" != no], [
|
|
96
|
+
AS_ECHO("checking cython version... $($cython -V 2>&1 | cut -d' ' -f 3)")
|
|
97
|
+
CYTHON_VER_MAJ=$($cython -V 2>&1 | cut -d' ' -f 3 | cut -d'.' -f 1);
|
|
98
|
+
CYTHON_VER_MIN=$($cython -V 2>&1 | cut -d' ' -f 3 | cut -d'.' -f 2);
|
|
99
99
|
],[
|
|
100
100
|
CYTHON_VER_MAJ=0
|
|
101
101
|
CYTHON_VER_MIN=0
|
|
@@ -112,13 +112,18 @@ AS_IF([test "$enable_python" = yes], [
|
|
|
112
112
|
AS_IF([test "$CYTHON_VER_MAJ" -eq 0 -a "$CYTHON_VER_MIN" -lt 29], [
|
|
113
113
|
AC_MSG_ERROR([python bindings require cython 0.29 or higher])
|
|
114
114
|
])
|
|
115
|
-
AM_PATH_PYTHON
|
|
115
|
+
AM_PATH_PYTHON([3])
|
|
116
116
|
])
|
|
117
117
|
AM_CONDITIONAL([ENABLE_PYTHON], [test "$enable_python" = yes])
|
|
118
118
|
AC_DEFINE_UNQUOTED([ENABLE_PYTHON],
|
|
119
119
|
[$(test "$enable_python" = yes && echo 1 || echo 0)],
|
|
120
120
|
[Python bindings build flag.])
|
|
121
121
|
|
|
122
|
+
AC_CHECK_TOOL(GPERF, gperf)
|
|
123
|
+
if test -z "$GPERF"; then
|
|
124
|
+
AC_MSG_ERROR([please install gperf])
|
|
125
|
+
fi
|
|
126
|
+
|
|
122
127
|
dnl ####
|
|
123
128
|
dnl coverity checks
|
|
124
129
|
dnl ####
|
|
@@ -38,6 +38,12 @@ dist_man3_MANS = \
|
|
|
38
38
|
man/man3/seccomp_rule_add_array.3 \
|
|
39
39
|
man/man3/seccomp_rule_add_exact.3 \
|
|
40
40
|
man/man3/seccomp_rule_add_exact_array.3 \
|
|
41
|
+
man/man3/seccomp_notify_alloc.3 \
|
|
42
|
+
man/man3/seccomp_notify_fd.3 \
|
|
43
|
+
man/man3/seccomp_notify_free.3 \
|
|
44
|
+
man/man3/seccomp_notify_id_valid.3 \
|
|
45
|
+
man/man3/seccomp_notify_receive.3 \
|
|
46
|
+
man/man3/seccomp_notify_respond.3 \
|
|
41
47
|
man/man3/seccomp_syscall_priority.3 \
|
|
42
48
|
man/man3/seccomp_syscall_resolve_name.3 \
|
|
43
49
|
man/man3/seccomp_syscall_resolve_name_arch.3 \
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
.TH "seccomp_api_get" 3 "
|
|
1
|
+
.TH "seccomp_api_get" 3 "13 June 2020" "paul@paul-moore.com" "libseccomp Documentation"
|
|
2
2
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
3
3
|
.SH NAME
|
|
4
4
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
@@ -49,7 +49,17 @@ the
|
|
|
49
49
|
syscall to load the seccomp filter into the kernel.
|
|
50
50
|
.TP
|
|
51
51
|
.B 3
|
|
52
|
-
The SCMP_FLTATR_CTL_LOG filter attribute and the SCMP_ACT_LOG action are
|
|
52
|
+
The SCMP_FLTATR_CTL_LOG filter attribute and the SCMP_ACT_LOG action are
|
|
53
|
+
supported.
|
|
54
|
+
.TP
|
|
55
|
+
.B 4
|
|
56
|
+
The SCMP_FLTATR_CTL_SSB filter attribute is supported.
|
|
57
|
+
.TP
|
|
58
|
+
.B 5
|
|
59
|
+
The SCMP_ACT_NOTIFY action and the notify APIs are supported.
|
|
60
|
+
.TP
|
|
61
|
+
.B 5
|
|
62
|
+
The simultaneous use of SCMP_FLTATR_CTL_TSYNC and the notify APIs are supported.
|
|
53
63
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
54
64
|
.SH RETURN VALUE
|
|
55
65
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
.TH "seccomp_arch_add" 3 "
|
|
1
|
+
.TH "seccomp_arch_add" 3 "15 June 2020" "paul@paul-moore.com" "libseccomp Documentation"
|
|
2
2
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
3
3
|
.SH NAME
|
|
4
4
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
@@ -14,6 +14,23 @@ seccomp_arch_add, seccomp_arch_remove, seccomp_arch_exist, seccomp_arch_native \
|
|
|
14
14
|
.B #define SCMP_ARCH_NATIVE
|
|
15
15
|
.B #define SCMP_ARCH_X86
|
|
16
16
|
.B #define SCMP_ARCH_X86_64
|
|
17
|
+
.B #define SCMP_ARCH_X32
|
|
18
|
+
.B #define SCMP_ARCH_ARM
|
|
19
|
+
.B #define SCMP_ARCH_AARCH64
|
|
20
|
+
.B #define SCMP_ARCH_MIPS
|
|
21
|
+
.B #define SCMP_ARCH_MIPS64
|
|
22
|
+
.B #define SCMP_ARCH_MIPS64N32
|
|
23
|
+
.B #define SCMP_ARCH_MIPSEL
|
|
24
|
+
.B #define SCMP_ARCH_MIPSEL64
|
|
25
|
+
.B #define SCMP_ARCH_MIPSEL64N32
|
|
26
|
+
.B #define SCMP_ARCH_PPC
|
|
27
|
+
.B #define SCMP_ARCH_PPC64
|
|
28
|
+
.B #define SCMP_ARCH_PPC64LE
|
|
29
|
+
.B #define SCMP_ARCH_S390
|
|
30
|
+
.B #define SCMP_ARCH_S390X
|
|
31
|
+
.B #define SCMP_ARCH_PARISC
|
|
32
|
+
.B #define SCMP_ARCH_PARISC64
|
|
33
|
+
.B #define SCMP_ARCH_RISCV64
|
|
17
34
|
.sp
|
|
18
35
|
.BI "uint32_t seccomp_arch_resolve_name(const char *" arch_name ");"
|
|
19
36
|
.BI "uint32_t seccomp_arch_native();"
|
|
@@ -69,13 +86,28 @@ new architecture will be added to all of the architectures in the filter.
|
|
|
69
86
|
.SH RETURN VALUE
|
|
70
87
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
71
88
|
The
|
|
72
|
-
.BR seccomp_arch_add ()
|
|
89
|
+
.BR seccomp_arch_add (),
|
|
90
|
+
.BR seccomp_arch_remove (),
|
|
73
91
|
and
|
|
74
|
-
.BR seccomp_arch_remove ()
|
|
75
|
-
functions return zero on success, negative errno values on failure. The
|
|
76
92
|
.BR seccomp_arch_exist ()
|
|
77
|
-
|
|
78
|
-
|
|
93
|
+
functions return zero on success or one of the following error codes on
|
|
94
|
+
failure:
|
|
95
|
+
.TP
|
|
96
|
+
.B -EDOM
|
|
97
|
+
Architecture specific failure.
|
|
98
|
+
.TP
|
|
99
|
+
.B -EEXIST
|
|
100
|
+
In the case of
|
|
101
|
+
.BR seccomp_arch_add ()
|
|
102
|
+
the architecture already exists and in the case of
|
|
103
|
+
.BR seccomp_arch_remove ()
|
|
104
|
+
the architecture does not exist.
|
|
105
|
+
.TP
|
|
106
|
+
.B -EINVAL
|
|
107
|
+
Invalid input, either the context or architecture token is invalid.
|
|
108
|
+
.TP
|
|
109
|
+
.B -ENOMEM
|
|
110
|
+
The library was unable to allocate enough memory.
|
|
79
111
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
80
112
|
.SH EXAMPLES
|
|
81
113
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
.TH "seccomp_attr_set" 3 "
|
|
1
|
+
.TH "seccomp_attr_set" 3 "06 June 2020" "paul@paul-moore.com" "libseccomp Documentation"
|
|
2
2
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
3
3
|
.SH NAME
|
|
4
4
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
@@ -94,10 +94,61 @@ the
|
|
|
94
94
|
action. Defaults to off (
|
|
95
95
|
.I value
|
|
96
96
|
== 0).
|
|
97
|
+
.TP
|
|
98
|
+
.B SCMP_FLTATR_CTL_SSB
|
|
99
|
+
A flag to disable Speculative Store Bypass mitigations for this filter.
|
|
100
|
+
Defaults to off (
|
|
101
|
+
.I value
|
|
102
|
+
== 0).
|
|
103
|
+
.TP
|
|
104
|
+
.B SCMP_FLTATR_CTL_OPTIMIZE
|
|
105
|
+
A flag to specify the optimization level of the seccomp filter. By default
|
|
106
|
+
libseccomp generates a set of sequential \'if\' statements for each rule in
|
|
107
|
+
the filter.
|
|
108
|
+
.BR seccomp_syscall_priority(3)
|
|
109
|
+
can be used to prioritize the order for the default cause. The binary tree
|
|
110
|
+
optimization sorts by syscall numbers and generates consistent
|
|
111
|
+
.BR O(log\ n)
|
|
112
|
+
filter traversal for every rule in the filter. The binary tree may be
|
|
113
|
+
advantageous for large filters. Note that
|
|
114
|
+
.BR seccomp_syscall_priority(3)
|
|
115
|
+
is ignored when SCMP_FLTATR_CTL_OPTIMIZE == 2.
|
|
116
|
+
.RS
|
|
117
|
+
.P
|
|
118
|
+
The different optimization levels are described below:
|
|
119
|
+
.TP
|
|
120
|
+
.B 0
|
|
121
|
+
Reserved value, not currently used.
|
|
122
|
+
.TP
|
|
123
|
+
.B 1
|
|
124
|
+
Rules sorted by priority and complexity (DEFAULT).
|
|
125
|
+
.TP
|
|
126
|
+
.B 2
|
|
127
|
+
Binary tree sorted by syscall number.
|
|
128
|
+
.RE
|
|
129
|
+
.TP
|
|
130
|
+
.B SCMP_FLTATR_API_SYSRAWRC
|
|
131
|
+
A flag to specify if libseccomp should pass system error codes back to the
|
|
132
|
+
caller instead of the default -ECANCELED. Defaults to off (
|
|
133
|
+
.I value
|
|
134
|
+
== 0).
|
|
97
135
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
98
136
|
.SH RETURN VALUE
|
|
99
137
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
100
|
-
Returns zero on success
|
|
138
|
+
Returns zero on success or one of the following error codes on
|
|
139
|
+
failure:
|
|
140
|
+
.TP
|
|
141
|
+
.B -EACCES
|
|
142
|
+
Setting the attribute with the given value is not allowed.
|
|
143
|
+
.TP
|
|
144
|
+
.B -EEXIST
|
|
145
|
+
The attribute does not exist.
|
|
146
|
+
.TP
|
|
147
|
+
.B -EINVAL
|
|
148
|
+
Invalid input, either the context or architecture token is invalid.
|
|
149
|
+
.TP
|
|
150
|
+
.B -EOPNOTSUPP
|
|
151
|
+
The library doesn't support the particular operation.
|
|
101
152
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
102
153
|
.SH EXAMPLES
|
|
103
154
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
.TH "seccomp_export_bpf" 3 "
|
|
1
|
+
.TH "seccomp_export_bpf" 3 "30 May 2020" "paul@paul-moore.com" "libseccomp Documentation"
|
|
2
2
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
3
3
|
.SH NAME
|
|
4
4
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
@@ -45,7 +45,25 @@ ordering, are not guaranteed to be the same in both the BPF and PFC formats.
|
|
|
45
45
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
46
46
|
.SH RETURN VALUE
|
|
47
47
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
48
|
-
|
|
48
|
+
Return zero on success or one of the following error codes on
|
|
49
|
+
failure:
|
|
50
|
+
.TP
|
|
51
|
+
.B -ECANCELED
|
|
52
|
+
There was a system failure beyond the control of the library.
|
|
53
|
+
.TP
|
|
54
|
+
.B -EFAULT
|
|
55
|
+
Internal libseccomp failure.
|
|
56
|
+
.TP
|
|
57
|
+
.B -EINVAL
|
|
58
|
+
Invalid input, either the context or architecture token is invalid.
|
|
59
|
+
.TP
|
|
60
|
+
.B -ENOMEM
|
|
61
|
+
The library was unable to allocate enough memory.
|
|
62
|
+
.P
|
|
63
|
+
If the \fISCMP_FLTATR_API_SYSRAWRC\fP filter attribute is non-zero then
|
|
64
|
+
additional error codes may be returned to the caller; these additional error
|
|
65
|
+
codes are the negative \fIerrno\fP values returned by the system. Unfortunately
|
|
66
|
+
libseccomp can make no guarantees about these return values.
|
|
49
67
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
50
68
|
.SH EXAMPLES
|
|
51
69
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
.TH "seccomp_init" 3 "
|
|
1
|
+
.TH "seccomp_init" 3 "30 May 2020" "paul@paul-moore.com" "libseccomp Documentation"
|
|
2
2
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
3
3
|
.SH NAME
|
|
4
4
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
@@ -98,7 +98,14 @@ The
|
|
|
98
98
|
.BR seccomp_init ()
|
|
99
99
|
function returns a filter context on success, NULL on failure. The
|
|
100
100
|
.BR seccomp_reset ()
|
|
101
|
-
function returns zero on success
|
|
101
|
+
function returns zero on success or one of the following error codes on
|
|
102
|
+
failure:
|
|
103
|
+
.TP
|
|
104
|
+
.B -EINVAL
|
|
105
|
+
Invalid input, either the context or action is invalid.
|
|
106
|
+
.TP
|
|
107
|
+
.B -ENOMEM
|
|
108
|
+
The library was unable to allocate enough memory.
|
|
102
109
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
103
110
|
.SH EXAMPLES
|
|
104
111
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
.TH "seccomp_load" 3 "
|
|
1
|
+
.TH "seccomp_load" 3 "30 May 2020" "paul@paul-moore.com" "libseccomp Documentation"
|
|
2
2
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
3
3
|
.SH NAME
|
|
4
4
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
@@ -23,10 +23,40 @@ Loads the seccomp filter provided by
|
|
|
23
23
|
.I ctx
|
|
24
24
|
into the kernel; if the function
|
|
25
25
|
succeeds the new seccomp filter will be active when the function returns.
|
|
26
|
+
.P
|
|
27
|
+
As it is possible to have multiple stacked seccomp filters for a given task
|
|
28
|
+
(defined as either a process or a thread), it is important to remember that
|
|
29
|
+
each of the filters loaded for a given task are executed when a syscall is
|
|
30
|
+
made and the "strictest" rule is the rule that is applied. In the case of
|
|
31
|
+
seccomp, "strictest" is defined as the action with the lowest value (e.g.
|
|
32
|
+
.I SCMP_ACT_KILL
|
|
33
|
+
is "stricter" than
|
|
34
|
+
.I SCMP_ACT_ALLOW
|
|
35
|
+
).
|
|
26
36
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
27
37
|
.SH RETURN VALUE
|
|
28
38
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
29
|
-
Returns zero on success
|
|
39
|
+
Returns zero on success or one of the following error codes on failure:
|
|
40
|
+
.TP
|
|
41
|
+
.B -ECANCELED
|
|
42
|
+
There was a system failure beyond the control of the library.
|
|
43
|
+
.TP
|
|
44
|
+
.B -EFAULT
|
|
45
|
+
Internal libseccomp failure.
|
|
46
|
+
.TP
|
|
47
|
+
.B -EINVAL
|
|
48
|
+
Invalid input, either the context or architecture token is invalid.
|
|
49
|
+
.TP
|
|
50
|
+
.B -ENOMEM
|
|
51
|
+
The library was unable to allocate enough memory.
|
|
52
|
+
.TP
|
|
53
|
+
.B -ESRCH
|
|
54
|
+
Unable to load the filter due to thread issues.
|
|
55
|
+
.P
|
|
56
|
+
If the \fISCMP_FLTATR_API_SYSRAWRC\fP filter attribute is non-zero then
|
|
57
|
+
additional error codes may be returned to the caller; these additional error
|
|
58
|
+
codes are the negative \fIerrno\fP values returned by the system. Unfortunately
|
|
59
|
+
libseccomp can make no guarantees about these return values.
|
|
30
60
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
31
61
|
.SH EXAMPLES
|
|
32
62
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
.TH "seccomp_merge" 3 "
|
|
1
|
+
.TH "seccomp_merge" 3 "30 May 2020" "paul@paul-moore.com" "libseccomp Documentation"
|
|
2
2
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
3
3
|
.SH NAME
|
|
4
4
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
@@ -41,7 +41,21 @@ attribute values and no overlapping architectures.
|
|
|
41
41
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
42
42
|
.SH RETURN VALUE
|
|
43
43
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
44
|
-
Returns zero on success
|
|
44
|
+
Returns zero on success or one of the following error codes on
|
|
45
|
+
failure:
|
|
46
|
+
.TP
|
|
47
|
+
.B -EDOM
|
|
48
|
+
Unable to merge the filters due to architecture issues, e.g. byte endian
|
|
49
|
+
mismatches.
|
|
50
|
+
.TP
|
|
51
|
+
.B -EEXIST
|
|
52
|
+
The architecture already exists in the filter.
|
|
53
|
+
.TP
|
|
54
|
+
.B -EINVAL
|
|
55
|
+
One of the filters is invalid.
|
|
56
|
+
.TP
|
|
57
|
+
.B -ENOMEM
|
|
58
|
+
The library was unable to allocate enough memory.
|
|
45
59
|
.\" //////////////////////////////////////////////////////////////////////////
|
|
46
60
|
.SH EXAMPLES
|
|
47
61
|
.\" //////////////////////////////////////////////////////////////////////////
|