diff options
| author | Ed Maste <emaste@FreeBSD.org> | 2017-09-17 14:03:54 +0000 |
|---|---|---|
| committer | Ed Maste <emaste@FreeBSD.org> | 2017-09-17 14:03:54 +0000 |
| commit | c9c69ebad704f480600009b987d2352258e958b0 (patch) | |
| tree | 267c1fca84b9bd6d171bff86101be48d4015d7e6 | |
| parent | d1797f7bfc82279aa51110470e27ed1cfe14e1c4 (diff) | |
Notes
| -rw-r--r-- | lib/libsysdecode/flags.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/libsysdecode/flags.c b/lib/libsysdecode/flags.c index 68ea0e678f58..31ac33a8391c 100644 --- a/lib/libsysdecode/flags.c +++ b/lib/libsysdecode/flags.c @@ -1028,8 +1028,15 @@ void sysdecode_cap_rights(FILE *fp, cap_rights_t *rightsp) { struct name_table *t; + int i; bool comma; + for (i = 0; i < CAPARSIZE(rightsp); i++) { + if (CAPIDXBIT(rightsp->cr_rights[i]) != 1 << i) { + fprintf(fp, "invalid cap_rights_t"); + return; + } + } comma = false; for (t = caprights; t->str != NULL; t++) { if (cap_rights_is_set(rightsp, t->val)) { |
