diff options
| author | Douglas Bagnall <douglas.bagnall@catalyst.net.nz> | 2023-07-18 08:56:40 +1200 |
|---|---|---|
| committer | Andrew Bartlett <abartlet@samba.org> | 2023-07-19 03:31:30 +0000 |
| commit | 9ea606dad1147734c1877dd054dc769c4df4e005 (patch) | |
| tree | 6896b6d9d6d3c5d6f68e4c5094b8e3a147318084 /lib | |
| parent | 89b02bad3e2db7a9a3aceed7122c1d680cef728d (diff) | |
| download | samba-9ea606dad1147734c1877dd054dc769c4df4e005.tar.gz samba-9ea606dad1147734c1877dd054dc769c4df4e005.tar.bz2 samba-9ea606dad1147734c1877dd054dc769c4df4e005.zip | |
lib/fuzzing: adapt fuzz_sddl_access_check for AD variant
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/fuzzing/fuzz_sddl_access_check.c | 19 | ||||
| -rw-r--r-- | lib/fuzzing/wscript_build | 6 |
2 files changed, 25 insertions, 0 deletions
diff --git a/lib/fuzzing/fuzz_sddl_access_check.c b/lib/fuzzing/fuzz_sddl_access_check.c index d4247272e4d..e6231d7da5f 100644 --- a/lib/fuzzing/fuzz_sddl_access_check.c +++ b/lib/fuzzing/fuzz_sddl_access_check.c @@ -118,7 +118,26 @@ int LLVMFuzzerTestOneInput(uint8_t *input, size_t len) if (sd == NULL) { goto end; } + +#ifdef FUZZ_SEC_ACCESS_CHECK_DS + /* + * The sec_access_check_ds() function has two arguments not found in + * se_access_check, and also not found in our fuzzing examples. + * + * One is a struct object_tree, which is used for object ACE types. + * The other is a SID, which is used as a default if an ACE lacks a + * SID. + */ + sec_access_check_ds(sd, + &token, + access_desired, + &access_granted, + NULL, + NULL); +#else status = se_access_check(sd, &token, access_desired, &access_granted); +#endif + end: talloc_free(mem_ctx); return 0; diff --git a/lib/fuzzing/wscript_build b/lib/fuzzing/wscript_build index 7a138a47468..e0f4173b989 100644 --- a/lib/fuzzing/wscript_build +++ b/lib/fuzzing/wscript_build @@ -47,6 +47,12 @@ bld.SAMBA_BINARY('fuzz_sddl_access_check', deps='fuzzing samba-security afl-fuzz-main', fuzzer=True) +bld.SAMBA_BINARY('fuzz_sddl_access_check_ds', + cflags='-DFUZZ_SEC_ACCESS_CHECK_DS=1', + source='fuzz_sddl_access_check.c', + deps='fuzzing samba-security afl-fuzz-main', + fuzzer=True) + bld.SAMBA_BINARY('fuzz_regfio', source='fuzz_regfio.c', deps='fuzzing samba3-util smbconf REGFIO afl-fuzz-main', |
