diff options
author | Philipp Stephani <phst@google.com> | 2020-12-14 21:25:11 +0100 |
---|---|---|
committer | Philipp Stephani <phst@google.com> | 2021-04-10 18:47:26 +0200 |
commit | be8328acf9aa464f848e682e63e417a18529af9e (patch) | |
tree | b7f8191920af5e326b2a2feac9ddbeb8551fadba /lisp/startup.el | |
parent | 53dfd85a7f971875e716a55f010ee508bce89eed (diff) | |
download | emacs-be8328acf9aa464f848e682e63e417a18529af9e.tar.gz emacs-be8328acf9aa464f848e682e63e417a18529af9e.tar.bz2 emacs-be8328acf9aa464f848e682e63e417a18529af9e.zip |
Add support for --seccomp command-line option.
When passing this option on GNU/Linux, Emacs installs a Secure
Computing kernel system call filter. See Bug#45198.
* configure.ac: Check for seccomp header.
* src/emacs.c (usage_message): Document --seccomp option.
(emacs_seccomp): New wrapper for 'seccomp' syscall.
(load_seccomp, maybe_load_seccomp): New helper functions.
(main): Potentially load seccomp filters during startup.
(standard_args): Add --seccomp option.
* lisp/startup.el (command-line): Detect and ignore --seccomp option.
* test/src/emacs-tests.el (emacs-tests/seccomp/absent-file)
(emacs-tests/seccomp/empty-file)
(emacs-tests/seccomp/file-too-large)
(emacs-tests/seccomp/invalid-file-size): New unit tests.
(emacs-tests--with-temp-file): New helper macro.
* etc/NEWS: Document new --seccomp option.
Diffstat (limited to 'lisp/startup.el')
-rw-r--r-- | lisp/startup.el | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lisp/startup.el b/lisp/startup.el index b173d619733..4d4c65e6c41 100644 --- a/lisp/startup.el +++ b/lisp/startup.el @@ -1097,7 +1097,7 @@ please check its value") ("--no-x-resources") ("--debug-init") ("--user") ("--iconic") ("--icon-type") ("--quick") ("--no-blinking-cursor") ("--basic-display") - ("--dump-file") ("--temacs"))) + ("--dump-file") ("--temacs") ("--seccomp"))) (argi (pop args)) (orig-argi argi) argval) @@ -1149,7 +1149,8 @@ please check its value") (push '(visibility . icon) initial-frame-alist)) ((member argi '("-nbc" "-no-blinking-cursor")) (setq no-blinking-cursor t)) - ((member argi '("-dump-file" "-temacs")) ; Handled in C + ((member argi '("-dump-file" "-temacs" "-seccomp")) + ;; Handled in C (or argval (pop args)) (setq argval nil)) ;; Push the popped arg back on the list of arguments. |