net-snmp
5.4.1
|
00001 /* 00002 * Note: this file originally auto-generated by mib2c using 00003 * : mib2c.check_values.conf,v 1.5 2003/05/31 00:11:57 hardaker Exp $ 00004 */ 00005 00006 /******************************************************************** 00007 * NOTE NOTE NOTE 00008 * This file is auto-generated and SHOULD NOT BE EDITED by hand. 00009 * Modify the netSnmpHostsTable_checkfns_local.[ch] files insead so that you 00010 * can regenerate this one as mib2c improvements are made. 00011 ********************************************************************/ 00012 00013 /* 00014 * standard headers 00015 */ 00016 #include <net-snmp/net-snmp-config.h> 00017 #include <net-snmp/net-snmp-includes.h> 00018 #include "netSnmpHostsTable_checkfns.h" 00019 #include "netSnmpHostsTable_checkfns_local.h" 00020 #include "netSnmpHostsTable_enums.h" 00021 00030 int 00031 check_netSnmpHostAddressType(int type, long *val, size_t val_len, 00032 long *old_val, size_t old_val_len) 00033 { 00034 00035 int ret; 00036 00038 if (!val) 00039 return SNMP_ERR_GENERR; 00040 00042 if (type != ASN_INTEGER) 00043 return SNMP_ERR_WRONGTYPE; 00044 00046 switch (*val) { 00047 case NETSNMPHOSTADDRESSTYPE_UNKNOWN: 00048 case NETSNMPHOSTADDRESSTYPE_IPV4: 00049 case NETSNMPHOSTADDRESSTYPE_IPV6: 00050 case NETSNMPHOSTADDRESSTYPE_IPV4Z: 00051 case NETSNMPHOSTADDRESSTYPE_IPV6Z: 00052 case NETSNMPHOSTADDRESSTYPE_DNS: 00053 break; 00054 00056 default: 00057 return SNMP_ERR_INCONSISTENTVALUE; 00058 } 00059 ret = SNMP_ERR_NOERROR; 00060 00061 00063 return check_netSnmpHostAddressType_local(type, val, val_len, old_val, 00064 old_val_len); 00065 } 00066 00075 int 00076 check_netSnmpHostAddress(int type, char *val, size_t val_len, 00077 char *old_val, size_t old_val_len) 00078 { 00079 00080 int ret; 00081 00083 if (!val) 00084 return SNMP_ERR_GENERR; 00085 00087 if (type != ASN_OCTET_STR) 00088 return SNMP_ERR_WRONGTYPE; 00089 00091 if (!(val_len >= 0 && val_len <= 255) 00092 ) { 00093 return SNMP_ERR_WRONGVALUE; 00094 } 00095 00096 00098 return check_netSnmpHostAddress_local(type, val, val_len, old_val, 00099 old_val_len); 00100 } 00101 00110 int 00111 check_netSnmpHostStorage(int type, long *val, size_t val_len, 00112 long *old_val, size_t old_val_len) 00113 { 00114 00115 int ret; 00116 00118 if (!val) 00119 return SNMP_ERR_GENERR; 00120 00122 if (type != ASN_INTEGER) 00123 return SNMP_ERR_WRONGTYPE; 00124 00126 switch (*val) { 00127 case NETSNMPHOSTSTORAGE_OTHER: 00128 case NETSNMPHOSTSTORAGE_VOLATILE: 00129 case NETSNMPHOSTSTORAGE_NONVOLATILE: 00130 case NETSNMPHOSTSTORAGE_PERMANENT: 00131 case NETSNMPHOSTSTORAGE_READONLY: 00132 break; 00133 00135 default: 00136 return SNMP_ERR_INCONSISTENTVALUE; 00137 } 00138 ret = SNMP_ERR_NOERROR; 00139 00140 if (ret = 00141 check_storage_transition((old_val) ? *old_val : SNMP_STORAGE_NONE, 00142 *val)) 00143 return ret; 00144 00146 return check_netSnmpHostStorage_local(type, val, val_len, old_val, 00147 old_val_len); 00148 } 00149 00158 int 00159 check_netSnmpHostRowStatus(int type, long *val, size_t val_len, 00160 long *old_val, size_t old_val_len) 00161 { 00162 00163 int ret; 00164 00166 if (!val) 00167 return SNMP_ERR_GENERR; 00168 00170 if (type != ASN_INTEGER) 00171 return SNMP_ERR_WRONGTYPE; 00172 00174 switch (*val) { 00175 case NETSNMPHOSTROWSTATUS_ACTIVE: 00176 case NETSNMPHOSTROWSTATUS_NOTINSERVICE: 00177 case NETSNMPHOSTROWSTATUS_NOTREADY: 00178 case NETSNMPHOSTROWSTATUS_CREATEANDGO: 00179 case NETSNMPHOSTROWSTATUS_CREATEANDWAIT: 00180 case NETSNMPHOSTROWSTATUS_DESTROY: 00181 break; 00182 00184 default: 00185 return SNMP_ERR_INCONSISTENTVALUE; 00186 } 00187 ret = SNMP_ERR_NOERROR; 00188 00189 if (ret = 00190 check_rowstatus_transition((old_val) ? *old_val : RS_NONEXISTENT, 00191 *val)) 00192 return ret; 00193 00195 return check_netSnmpHostRowStatus_local(type, val, val_len, old_val, 00196 old_val_len); 00197 }