Lines 179-185
static unsigned int add_subj_attr(auparse_state_t *au, const char *str,
Link Here
|
179 |
if ((auparse_find_field(au, str))) { |
179 |
if ((auparse_find_field(au, str))) { |
180 |
attr = set_record(0, rnum); |
180 |
attr = set_record(0, rnum); |
181 |
attr = set_field(attr, auparse_get_field_num(au)); |
181 |
attr = set_field(attr, auparse_get_field_num(au)); |
182 |
cllist_append(&D.actor.attr, attr, NULL); |
182 |
if (cllist_append(&D.actor.attr, attr, NULL)) |
|
|
183 |
return 1; |
183 |
return 0; |
184 |
return 0; |
184 |
} else |
185 |
} else |
185 |
auparse_goto_record_num(au, rnum); |
186 |
auparse_goto_record_num(au, rnum); |
Lines 224-230
static unsigned int add_obj_attr(auparse_state_t *au, const char *str,
Link Here
|
224 |
if ((auparse_find_field(au, str))) { |
225 |
if ((auparse_find_field(au, str))) { |
225 |
attr = set_record(0, rnum); |
226 |
attr = set_record(0, rnum); |
226 |
attr = set_field(attr, auparse_get_field_num(au)); |
227 |
attr = set_field(attr, auparse_get_field_num(au)); |
227 |
cllist_append(&D.thing.attr, attr, NULL); |
228 |
if (cllist_append(&D.thing.attr, attr, NULL)) |
|
|
229 |
return 1; |
228 |
return 0; |
230 |
return 0; |
229 |
} else |
231 |
} else |
230 |
auparse_goto_record_num(au, rnum); |
232 |
auparse_goto_record_num(au, rnum); |
Lines 360-380
static void collect_id_obj2(auparse_state_t *au, const char *syscall)
Link Here
|
360 |
} |
362 |
} |
361 |
} |
363 |
} |
362 |
|
364 |
|
363 |
static void collect_path_attrs(auparse_state_t *au) |
365 |
static int collect_path_attrs(auparse_state_t *au) |
364 |
{ |
366 |
{ |
365 |
value_t attr; |
367 |
value_t attr; |
366 |
unsigned int rnum = auparse_get_record_num(au); |
368 |
unsigned int rnum = auparse_get_record_num(au); |
367 |
|
369 |
|
368 |
auparse_first_field(au); |
370 |
auparse_first_field(au); |
369 |
if (add_obj_attr(au, "mode", rnum)) |
371 |
if (add_obj_attr(au, "mode", rnum)) |
370 |
return; // Failed opens don't have anything else |
372 |
return 1; // Failed opens don't have anything else |
371 |
|
373 |
|
372 |
// All the rest of the fields matter |
374 |
// All the rest of the fields matter |
373 |
while ((auparse_next_field(au))) { |
375 |
while ((auparse_next_field(au))) { |
374 |
attr = set_record(0, rnum); |
376 |
attr = set_record(0, rnum); |
375 |
attr = set_field(attr, auparse_get_field_num(au)); |
377 |
attr = set_field(attr, auparse_get_field_num(au)); |
376 |
cllist_append(&D.thing.attr, attr, NULL); |
378 |
if (cllist_append(&D.thing.attr, attr, NULL)) |
|
|
379 |
return 1; |
377 |
} |
380 |
} |
|
|
381 |
return 0; |
378 |
} |
382 |
} |
379 |
|
383 |
|
380 |
static void collect_cwd_attrs(auparse_state_t *au) |
384 |
static void collect_cwd_attrs(auparse_state_t *au) |