54 lines
2.0 KiB
C
54 lines
2.0 KiB
C
############################################################# -*- c -*-
|
|
## generic include for XXX. Do not use directly.
|
|
##
|
|
##
|
|
## 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 node-varbind-validate.m2i */
|
|
@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 node-varbind-validate.m2i */
|
|
@end@
|