}
STRV_FOREACH(s, l) {
- _cleanup_free_ char *n = NULL;
- int e;
-
- r = parse_syscall_and_errno(*s, &n, &e);
- if (r < 0)
- return r;
-
- r = seccomp_parse_syscall_filter(n,
- 0, /* errno not used */
+ r = seccomp_parse_syscall_filter(*s,
+ -1, /* errno not used */
c->syscall_log,
SECCOMP_PARSE_LOG | SECCOMP_PARSE_PERMISSIVE |
invert_flag |
p = rvalue;
for (;;) {
- _cleanup_free_ char *word = NULL, *name = NULL;
- int num;
+ _cleanup_free_ char *word = NULL;
r = extract_first_word(&p, &word, NULL, 0);
if (r == 0)
return 0;
}
- r = parse_syscall_and_errno(word, &name, &num);
- if (r < 0 || num >= 0) { /* errno code not allowed */
- log_syntax(unit, LOG_WARNING, filename, line, r, "Failed to parse syscall, ignoring: %s", word);
- continue;
- }
-
r = seccomp_parse_syscall_filter(
- name, 0, c->syscall_log,
+ word, -1, c->syscall_log,
SECCOMP_PARSE_LOG|SECCOMP_PARSE_PERMISSIVE|
(invert ? SECCOMP_PARSE_INVERT : 0)|
(c->syscall_log_allow_list ? SECCOMP_PARSE_ALLOW_LIST : 0),