• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-12-stable/contrib/bsnmp/snmp_vacm/

Lines Matching refs:val

91 op_vacm_context(struct snmp_context *ctx __unused, struct snmp_value *val,
98 if (val->var.subs[sub - 1] != LEAF_vacmContextName)
103 if ((vacm_ctx = vacm_get_context(&val->var, sub)) == NULL)
108 if ((vacm_ctx = vacm_get_next_context(&val->var, sub)) == NULL)
110 vacm_append_ctxindex(&val->var, sub, vacm_ctx);
114 if ((vacm_ctx = vacm_get_context(&val->var, sub)) != NULL)
118 if (val->var.subs[sub] >= SNMP_ADM_STR32_SIZ)
120 if (index_decode(&val->var, sub, iidx, &cname, &cnamelen))
135 return (string_get(val, vacm_ctx->ctxname, -1));
139 op_vacm_security_to_group(struct snmp_context *ctx, struct snmp_value *val,
148 if ((user = vacm_get_user(&val->var, sub)) == NULL)
153 if ((user = vacm_get_next_user(&val->var, sub)) == NULL)
155 vacm_append_userindex(&val->var, sub, user);
159 if ((user = vacm_get_user(&val->var, sub)) == NULL &&
160 val->var.subs[sub - 1] != LEAF_vacmSecurityToGroupStatus)
168 val->v.integer != RowStatus_destroy)
172 switch (val->var.subs[sub - 1]) {
177 val->v.octetstring.octets,val->v.octetstring.len));
184 if (val->v.integer != RowStatus_createAndGo ||
185 vacm_user_index_decode(&val->var, sub,
196 } else if (val->v.integer != RowStatus_active &&
197 val->v.integer != RowStatus_destroy)
200 user->status = val->v.integer;
206 if (val->var.subs[sub - 1] != LEAF_vacmSecurityToGroupStatus)
208 if ((user = vacm_get_user(&val->var, sub)) == NULL)
210 switch (val->v.integer) {
224 if ((user = vacm_get_user(&val->var, sub)) == NULL)
226 switch (val->var.subs[sub - 1]) {
246 switch (val->var.subs[sub - 1]) {
248 return (string_get(val, user->group->groupname, -1));
250 val->v.integer = user->type;
253 val->v.integer = user->status;
263 op_vacm_access(struct snmp_context *ctx, struct snmp_value *val, uint32_t sub,
272 if ((acl = vacm_get_access_rule(&val->var, sub)) == NULL)
277 if ((acl = vacm_get_next_access_rule(&val->var, sub)) == NULL)
279 vacm_append_access_rule_index(&val->var, sub, acl);
283 if ((acl = vacm_get_access_rule(&val->var, sub)) == NULL &&
284 val->var.subs[sub - 1] != LEAF_vacmAccessStatus)
290 switch (val->var.subs[sub - 1]) {
293 if (val->v.integer == vacmAccessContextMatch_exact)
295 else if (val->v.integer == vacmAccessContextMatch_prefix)
303 acl->read_view = vacm_get_view_by_name(val->v.octetstring.octets, val->v.octetstring.len);
313 vacm_get_view_by_name(val->v.octetstring.octets,
314 val->v.octetstring.len)) == NULL) {
323 vacm_get_view_by_name(val->v.octetstring.octets,
324 val->v.octetstring.len)) == NULL) {
335 if (val->v.integer != RowStatus_createAndGo ||
336 vacm_access_rule_index_decode(&val->var,
347 } else if (val->v.integer != RowStatus_active &&
348 val->v.integer != RowStatus_destroy)
351 acl->status = val->v.integer;
357 if (val->var.subs[sub - 1] != LEAF_vacmAccessStatus)
359 if ((acl = vacm_get_access_rule(&val->var, sub)) == NULL)
361 if (val->v.integer == RowStatus_destroy)
368 if ((acl = vacm_get_access_rule(&val->var, sub)) == NULL)
370 switch (val->var.subs[sub - 1]) {
395 switch (val->var.subs[sub - 1]) {
397 return (string_get(val, acl->ctx_prefix, -1));
400 return (string_get(val, acl->read_view->viewname, -1));
402 return (string_get(val, NULL, 0));
405 return (string_get(val, acl->write_view->viewname, -1));
407 return (string_get(val, NULL, 0));
410 return (string_get(val, acl->notify_view->viewname, -1));
412 return (string_get(val, NULL, 0));
414 val->v.integer = acl->type;
417 val->v.integer = acl->status;
427 op_vacm_view_lock(struct snmp_context *ctx __unused, struct snmp_value *val,
430 if (val->var.subs[sub - 1] != LEAF_vacmViewSpinLock)
437 val->v.integer = vacm_lock;
444 if (val->v.integer != vacm_lock)
458 op_vacm_view(struct snmp_context *ctx, struct snmp_value *val, uint32_t sub,
467 if ((view = vacm_get_view(&val->var, sub)) == NULL)
472 if ((view = vacm_get_next_view(&val->var, sub)) == NULL)
474 vacm_append_viewindex(&val->var, sub, view);
478 if ((view = vacm_get_view(&val->var, sub)) == NULL &&
479 val->var.subs[sub - 1] != LEAF_vacmViewTreeFamilyStatus)
487 val->v.integer != RowStatus_destroy)
491 switch (val->var.subs[sub - 1]) {
493 if (val->v.octetstring.len > sizeof(view->mask))
501 memcpy(view->mask, val->v.octetstring.octets,
502 val->v.octetstring.len);
507 if (val->v.integer == vacmViewTreeFamilyType_included)
509 else if (val->v.integer == vacmViewTreeFamilyType_excluded)
520 if (val->v.integer != RowStatus_createAndGo ||
521 vacm_view_index_decode(&val->var, sub, vname,
531 } else if (val->v.integer != RowStatus_active &&
532 val->v.integer != RowStatus_destroy)
535 view->status = val->v.integer;
541 switch (val->var.subs[sub - 1]) {
546 if ((view = vacm_get_view(&val->var, sub)) == NULL)
548 switch (val->v.integer) {
566 if ((view = vacm_get_view(&val->var, sub)) == NULL)
568 switch (val->var.subs[sub - 1]) {
590 switch (val->var.subs[sub - 1]) {
592 return (string_get(val, view->mask, sizeof(view->mask)));
595 val->v.integer = vacmViewTreeFamilyType_excluded;
597 val->v.integer = vacmViewTreeFamilyType_included;
600 val->v.integer = view->type;
603 val->v.integer = view->status;