Lines Matching refs:acl

267 	struct vacm_access *acl;  in op_vacm_access()  local
271 if ((acl = vacm_get_access_rule(&val->var, sub)) == NULL) in op_vacm_access()
276 if ((acl = vacm_get_next_access_rule(&val->var, sub)) == NULL) in op_vacm_access()
278 vacm_append_access_rule_index(&val->var, sub, acl); in op_vacm_access()
282 if ((acl = vacm_get_access_rule(&val->var, sub)) == NULL && in op_vacm_access()
285 if (acl != NULL && community != COMM_INITIALIZE && in op_vacm_access()
286 acl->type == StorageType_readOnly) in op_vacm_access()
291 ctx->scratch->int1 = acl->ctx_match; in op_vacm_access()
293 acl->ctx_match = 1; in op_vacm_access()
295 acl->ctx_match = 0; in op_vacm_access()
301 ctx->scratch->ptr1 = acl->read_view; in op_vacm_access()
302 acl->read_view = vacm_get_view_by_name(val->v.octetstring.octets, val->v.octetstring.len); in op_vacm_access()
303 if (acl->read_view == NULL) { in op_vacm_access()
304 acl->read_view = ctx->scratch->ptr1; in op_vacm_access()
310 ctx->scratch->ptr1 = acl->write_view; in op_vacm_access()
311 if ((acl->write_view = in op_vacm_access()
314 acl->write_view = ctx->scratch->ptr1; in op_vacm_access()
320 ctx->scratch->ptr1 = acl->notify_view; in op_vacm_access()
321 if ((acl->notify_view = in op_vacm_access()
324 acl->notify_view = ctx->scratch->ptr1; in op_vacm_access()
333 if (acl == NULL) { in op_vacm_access()
338 if ((acl = vacm_new_access_rule(gname, cprefix, in op_vacm_access()
341 acl->status = RowStatus_destroy; in op_vacm_access()
343 acl->type = StorageType_volatile; in op_vacm_access()
345 acl->type = StorageType_readOnly; in op_vacm_access()
349 ctx->scratch->int1 = acl->status; in op_vacm_access()
350 acl->status = val->v.integer; in op_vacm_access()
358 if ((acl = vacm_get_access_rule(&val->var, sub)) == NULL) in op_vacm_access()
361 return (vacm_delete_access_rule(acl)); in op_vacm_access()
363 acl->status = RowStatus_active; in op_vacm_access()
367 if ((acl = vacm_get_access_rule(&val->var, sub)) == NULL) in op_vacm_access()
371 acl->ctx_match = ctx->scratch->int1; in op_vacm_access()
374 acl->read_view = ctx->scratch->ptr1; in op_vacm_access()
377 acl->write_view = ctx->scratch->ptr1; in op_vacm_access()
380 acl->notify_view = ctx->scratch->ptr1; in op_vacm_access()
384 return (vacm_delete_access_rule(acl)); in op_vacm_access()
396 return (string_get(val, acl->ctx_prefix, -1)); in op_vacm_access()
398 if (acl->read_view != NULL) in op_vacm_access()
399 return (string_get(val, acl->read_view->viewname, -1)); in op_vacm_access()
403 if (acl->write_view != NULL) in op_vacm_access()
404 return (string_get(val, acl->write_view->viewname, -1)); in op_vacm_access()
408 if (acl->notify_view != NULL) in op_vacm_access()
409 return (string_get(val, acl->notify_view->viewname, -1)); in op_vacm_access()
413 val->v.integer = acl->type; in op_vacm_access()
416 val->v.integer = acl->status; in op_vacm_access()
683 const struct vacm_access *acl) in vacm_append_access_rule_index() argument
687 oid->len = sub + strlen(acl->group->groupname) + in vacm_append_access_rule_index()
688 strlen(acl->ctx_prefix) + 4; in vacm_append_access_rule_index()
690 oid->subs[sub] = strlen(acl->group->groupname); in vacm_append_access_rule_index()
691 for (i = 1; i <= strlen(acl->group->groupname); i++) in vacm_append_access_rule_index()
692 oid->subs[sub + i] = acl->group->groupname[i - 1]; in vacm_append_access_rule_index()
693 sub += strlen(acl->group->groupname) + 1; in vacm_append_access_rule_index()
695 oid->subs[sub] = strlen(acl->ctx_prefix); in vacm_append_access_rule_index()
696 for (i = 1; i <= strlen(acl->ctx_prefix); i++) in vacm_append_access_rule_index()
697 oid->subs[sub + i] = acl->ctx_prefix[i - 1]; in vacm_append_access_rule_index()
698 sub += strlen(acl->ctx_prefix) + 1; in vacm_append_access_rule_index()
699 oid->subs[sub++] = acl->sec_model; in vacm_append_access_rule_index()
700 oid->subs[sub] = acl->sec_level; in vacm_append_access_rule_index()
736 struct vacm_access *acl; in vacm_get_access_rule() local
742 for (acl = vacm_first_access_rule(); acl != NULL; in vacm_get_access_rule()
743 acl = vacm_next_access_rule(acl)) in vacm_get_access_rule()
744 if (strcmp(gname, acl->group->groupname) == 0 && in vacm_get_access_rule()
745 strcmp(prefix, acl->ctx_prefix) == 0 && in vacm_get_access_rule()
746 smodel == acl->sec_model && slevel == acl->sec_level) in vacm_get_access_rule()
747 return (acl); in vacm_get_access_rule()
757 struct vacm_access *acl; in vacm_get_next_access_rule() local
766 for (acl = vacm_first_access_rule(); acl != NULL; in vacm_get_next_access_rule()
767 acl = vacm_next_access_rule(acl)) in vacm_get_next_access_rule()
768 if (strcmp(gname, acl->group->groupname) == 0 && in vacm_get_next_access_rule()
769 strcmp(prefix, acl->ctx_prefix) == 0 && in vacm_get_next_access_rule()
770 smodel == acl->sec_model && slevel == acl->sec_model) in vacm_get_next_access_rule()
771 return (vacm_next_access_rule(acl)); in vacm_get_next_access_rule()