diff options
Diffstat (limited to 'local/mib2c-conf.d/node-varbind-validate.m2i')
-rw-r--r-- | local/mib2c-conf.d/node-varbind-validate.m2i | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/local/mib2c-conf.d/node-varbind-validate.m2i b/local/mib2c-conf.d/node-varbind-validate.m2i new file mode 100644 index 0000000..ed2f933 --- /dev/null +++ b/local/mib2c-conf.d/node-varbind-validate.m2i @@ -0,0 +1,54 @@ +############################################################# -*- c -*- +## generic include for XXX. Do not use directly. +## +## $Id: node-varbind-validate.m2i 12101 2005-04-20 22:45:01Z rstory $ +## +## Tests a netsnmp_variable_list pointer (var) against known +## contstraints. If none are found, calls the user supplied funtion +## ${node}_check_value. +## +## Sets the variable rc to a SNMP_ERR. +## +## Requirements +## ------------ +## +######################################################################## +@if $m2c_mark_boundary == 1@ +/** START code generated by $RCSfile$ $Revision: 12101 $ */ +@end@ +######################################################################## +##---------------------------------------------------------------------- +## setup +##---------------------------------------------------------------------- +@if $m2c_paranoid == 1@ +netsnmp_assert(rc == SNMP_ERR_NOERROR); /* paranoia */ +@end@ +##---------------------------------------------------------------------- +## syntax specific +##---------------------------------------------------------------------- +@ifconf syntax-$node.syntax-varbind-validate.m2i@ +@ include syntax-$node.syntax-varbind-validate.m2i@ +@else@ +##---------------------------------------------------------------------- +## Check type +##---------------------------------------------------------------------- +## if not generated code, length checks are up to user +@ if "$m2c_data_context" ne "generated"@ + rc = netsnmp_check_vb_type( var, $node.type ); +@ elsif ($m2c_node_needlength == 1) || ("$node.perltype" eq "BITS")@ + rc = netsnmp_check_vb_type_and_max_size( var, $node.type, + sizeof( $m2c_nvv_item$node ) ); +@ else@ + rc = netsnmp_check_vb_type_and_size( var, $node.type, + sizeof( $m2c_nvv_item$node ) ); +@ end@ +@ eval $m2c_nv_val = "*var->val.integer"@ +@ eval $m2c_nv_len = "var->val_len"@ +@ eval $m2c_nv_str = "var->val.string"@ +@ include node-validate.m2i@ +@end@ # not syntax specific +## +######################################################################## +@if $m2c_mark_boundary == 1@ +/** END code generated by $RCSfile$ $Revision: 12101 $ */ +@end@ |