0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011 #ifndef __LINUX_IMA_TEMPLATE_LIB_H
0012 #define __LINUX_IMA_TEMPLATE_LIB_H
0013
0014 #include <linux/seq_file.h>
0015 #include "ima.h"
0016
0017 #define ENFORCE_FIELDS 0x00000001
0018 #define ENFORCE_BUFEND 0x00000002
0019
0020 void ima_show_template_digest(struct seq_file *m, enum ima_show_type show,
0021 struct ima_field_data *field_data);
0022 void ima_show_template_digest_ng(struct seq_file *m, enum ima_show_type show,
0023 struct ima_field_data *field_data);
0024 void ima_show_template_digest_ngv2(struct seq_file *m, enum ima_show_type show,
0025 struct ima_field_data *field_data);
0026 void ima_show_template_string(struct seq_file *m, enum ima_show_type show,
0027 struct ima_field_data *field_data);
0028 void ima_show_template_sig(struct seq_file *m, enum ima_show_type show,
0029 struct ima_field_data *field_data);
0030 void ima_show_template_buf(struct seq_file *m, enum ima_show_type show,
0031 struct ima_field_data *field_data);
0032 void ima_show_template_uint(struct seq_file *m, enum ima_show_type show,
0033 struct ima_field_data *field_data);
0034 int ima_parse_buf(void *bufstartp, void *bufendp, void **bufcurp,
0035 int maxfields, struct ima_field_data *fields, int *curfields,
0036 unsigned long *len_mask, int enforce_mask, char *bufname);
0037 int ima_eventdigest_init(struct ima_event_data *event_data,
0038 struct ima_field_data *field_data);
0039 int ima_eventname_init(struct ima_event_data *event_data,
0040 struct ima_field_data *field_data);
0041 int ima_eventdigest_ng_init(struct ima_event_data *event_data,
0042 struct ima_field_data *field_data);
0043 int ima_eventdigest_ngv2_init(struct ima_event_data *event_data,
0044 struct ima_field_data *field_data);
0045 int ima_eventdigest_modsig_init(struct ima_event_data *event_data,
0046 struct ima_field_data *field_data);
0047 int ima_eventname_ng_init(struct ima_event_data *event_data,
0048 struct ima_field_data *field_data);
0049 int ima_eventsig_init(struct ima_event_data *event_data,
0050 struct ima_field_data *field_data);
0051 int ima_eventbuf_init(struct ima_event_data *event_data,
0052 struct ima_field_data *field_data);
0053 int ima_eventmodsig_init(struct ima_event_data *event_data,
0054 struct ima_field_data *field_data);
0055 int ima_eventevmsig_init(struct ima_event_data *event_data,
0056 struct ima_field_data *field_data);
0057 int ima_eventinodeuid_init(struct ima_event_data *event_data,
0058 struct ima_field_data *field_data);
0059 int ima_eventinodegid_init(struct ima_event_data *event_data,
0060 struct ima_field_data *field_data);
0061 int ima_eventinodemode_init(struct ima_event_data *event_data,
0062 struct ima_field_data *field_data);
0063 int ima_eventinodexattrnames_init(struct ima_event_data *event_data,
0064 struct ima_field_data *field_data);
0065 int ima_eventinodexattrlengths_init(struct ima_event_data *event_data,
0066 struct ima_field_data *field_data);
0067 int ima_eventinodexattrvalues_init(struct ima_event_data *event_data,
0068 struct ima_field_data *field_data);
0069 #endif