static int probe_opthandler_varref(int option, int op, va_list args) { bool o_switch; char *o_name; char *o_temp; if (op == PROBE_OPTION_GET) return -1; o_switch = va_arg(args, int); o_name = va_arg(args, char *); if (o_name == NULL) { /* switch varref handling on/off globally */ OSCAP_GSYM(varref_handling) = o_switch; return (0); } o_temp = oscap_bfind (OSCAP_GSYM(no_varref_ents), OSCAP_GSYM(no_varref_ents_cnt), sizeof(char *), o_name, (int(*)(void *, void *)) &probe_optecmp); if (o_temp != NULL) return (0); OSCAP_GSYM(no_varref_ents) = oscap_realloc(OSCAP_GSYM(no_varref_ents), sizeof (char *) * ++OSCAP_GSYM(no_varref_ents_cnt)); OSCAP_GSYM(no_varref_ents)[OSCAP_GSYM(no_varref_ents_cnt) - 1] = strdup(o_name); qsort(OSCAP_GSYM(no_varref_ents), OSCAP_GSYM(no_varref_ents_cnt), sizeof (char *), (int(*)(const void *, const void *))&probe_optecmp); return (0); }
static oval_pd_t *oval_pdtbl_get(oval_pdtbl_t * tbl, oval_subtype_t type) { oval_pd_t **pdp; pdp = oscap_bfind(tbl->memb, tbl->count, sizeof(oval_pd_t *), &type, (int (*)(void *, void *))oval_pdtbl_typecmp); return (pdp == NULL ? NULL : *pdp); }
oval_subtype_t oval_str_to_subtype(const char *str) { oval_subtypedsc_t *d; __init_once(); d = oscap_bfind(OSCAP_GSYM(__n2s_tbl), __n2s_tbl_count, sizeof(oval_subtypedsc_t), (void *)str, (int(*)(void *, void *))__n2s_tbl_cmp); return (d == NULL ? OVAL_SUBTYPE_UNKNOWN : d->type); }
const char *oval_subtype_to_str(oval_subtype_t subtype) { oval_subtypedsc_t *d; __init_once(); d = oscap_bfind(OSCAP_GSYM(__s2n_tbl), __s2n_tbl_count, sizeof(oval_subtypedsc_t), &subtype, (int(*)(void *, void *))__s2n_tbl_cmp); return (d == NULL ? NULL : d->name); }