diff options
author | Omar Polo <op@omarpolo.com> | 2021-09-19 17:08:12 +0000 |
---|---|---|
committer | Omar Polo <op@omarpolo.com> | 2021-09-19 17:08:12 +0000 |
commit | 4c31de2915cd2ef3e7d5463bde48cf9064c89d20 (patch) | |
tree | 701943cf2c8e610445c2de8d760391ccb5159923 /have | |
parent | fba809b5c775fd4d3c28a012259ee3b1908d4e40 (diff) |
add configure check and shim for landlock
First move towards landlock support (#3). The shim is needed until
libc provides the proper wrappers for the landlock APIs; I hope it
doesn't take too long, but landlock was merged back in May and are
still missing.
Diffstat (limited to 'have')
-rw-r--r-- | have/landlock.c | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/have/landlock.c b/have/landlock.c new file mode 100644 index 0000000..8be29bd --- /dev/null +++ b/have/landlock.c @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2021 Omar Polo <op@omarpolo.com> + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +#include "../landlock_shim.h" + +int +main(void) +{ + int rfd; + struct landlock_ruleset_attr rsattr = { + .handled_access_fs = LANDLOCK_ACCESS_FS_READ_FILE | + LANDLOCK_ACCESS_FS_READ_DIR + }; + + rfd = landlock_create_ruleset(&rsattr, sizeof(rsattr), 0); + return rfd == -1; +} |