Happy Thanksgiving Holidays,
Today, I am happy to welcome Simon Sweetman (Chubler_XL) to the Moderation Team to help provide us some important coverage from (Down Under) Australia.
Simon is a Senior Analyst Programmer/Developer at Cedar Creek Company in Brisbane, Australia and his LinkedIn... (7 Replies)
Dear All,
I am very pleased to announce that Dave Munro (gull04) is joining the Moderation Team, after being a very valuable member of UNIX.com for 15+ years.
Dave is an IT Consultant with 30 years of experience this year, has worked in many of the industry vertical market segments and has... (6 Replies)
seccomp_syscall_resolve_name(3) libseccomp Documentation seccomp_syscall_resolve_name(3)NAME
seccomp_syscall_resolve_name - Resolve a syscall name
SYNOPSIS
#include <seccomp.h>
int seccomp_syscall_resolve_name(const char *name);
int seccomp_syscall_resolve_name_arch(uint32_t arch_token,
const char *name);
char *seccomp_syscall_resolve_num_arch(uint32_t arch_token, int num);
Link with -lseccomp.
DESCRIPTION
The seccomp_syscall_resolve_name() and seccomp_syscall_resolve_name_arch() functions resolve the commonly used syscall name to the syscall
number used by the kernel and the rest of the libseccomp API. The seccomp_syscall_resolve_num_arch() function resolves the syscall number
used by the kernel to the commonly used syscall name.
The caller is responsible for freeing the returned string from seccomp_syscall_resolve_num_arch().
RETURN VALUE
In the case of seccomp_syscall_resolve_name() and seccomp_syscall_resolve_name_arch() the associated syscall number is returned, with the
negative pseudo syscall number being returned in cases where the given syscall does not exist for the architeture. The value
__NR_SCMP_ERROR is returned in case of error. In all cases, the return value is suitable for use in any libseccomp API function which
requires the syscall number, examples include seccomp_rule_add() and seccomp_rule_add_exact().
In the case of seccomp_syscall_resolve_num_arch() the associated syscall name is returned and it remains the callers responsibility to free
the returned string via free(3).
EXAMPLES
#include <seccomp.h>
int main(int argc, char *argv[])
{
int rc = -1;
scmp_filter_ctx ctx;
ctx = seccomp_init(SCMP_ACT_KILL);
if (ctx == NULL)
goto out;
/* ... */
rc = seccomp_rule_add(ctx, SCMP_ACT_ALLOW,
seccomp_syscall_resolve_name("open"), 0);
if (rc < 0)
goto out;
/* ... */
rc = seccomp_load(ctx);
if (rc < 0)
goto out;
/* ... */
out:
seccomp_release(ctx);
return -rc;
}
NOTES
While the seccomp filter can be generated independent of the kernel, kernel support is required to load and enforce the seccomp filter gen-
erated by libseccomp.
The libseccomp project site, with more information and the source code repository, can be found at http://libseccomp.sf.net. This library
is currently under development, please report any bugs at the project site or directly to the author.
AUTHOR
Paul Moore <paul@paul-moore.com>
SEE ALSO seccomp_rule_add(3), seccomp_rule_add_exact(3)paul@paul-moore.com 7 January 2013 seccomp_syscall_resolve_name(3)