Home | History | Annotate | Download | only in src

Lines Matching refs:rec

19 typedef int (*selabel_initfunc)(struct selabel_handle *rec,
140 int selabel_validate(struct selabel_handle *rec,
145 if (!rec->validating || contexts->validated)
164 struct selabel_handle *rec = NULL;
171 rec = (struct selabel_handle *)malloc(sizeof(*rec));
172 if (!rec)
175 memset(rec, 0, sizeof(*rec));
176 rec->backend = backend;
177 rec->validating = selabel_is_validate_set(opts, nopts);
179 rec->subs = NULL;
180 rec->dist_subs = NULL;
182 if ((*initfuncs[backend])(rec, opts, nopts)) {
183 free(rec);
184 rec = NULL;
188 return rec;
192 selabel_lookup_common(struct selabel_handle *rec, int translating,
204 ptr = selabel_sub(rec->subs, key);
206 dptr = selabel_sub(rec->dist_subs, ptr);
212 ptr = selabel_sub(rec->dist_subs, key);
215 lr = rec->func_lookup(rec, ptr, type);
218 lr = rec->func_lookup(rec, key, type);
223 if (compat_validate(rec, lr, rec->spec_file, 0))
233 int selabel_lookup(struct selabel_handle *rec, char **con,
238 lr = selabel_lookup_common(rec, 1, key, type);
246 int selabel_lookup_raw(struct selabel_handle *rec, char **con,
251 lr = selabel_lookup_common(rec, 0, key, type);
259 void selabel_close(struct selabel_handle *rec)
261 selabel_subs_fini(rec->subs);
262 selabel_subs_fini(rec->dist_subs);
263 rec->func_close(rec);
264 free(rec->spec_file);
265 free(rec);
268 void selabel_stats(struct selabel_handle *rec)
270 rec->func_stats(rec);