summaryrefslogtreecommitdiff
path: root/cleopatre/application/spidnetsnmp/agent/mibgroup/mibII/snmp_mib.c
diff options
context:
space:
mode:
Diffstat (limited to 'cleopatre/application/spidnetsnmp/agent/mibgroup/mibII/snmp_mib.c')
-rw-r--r--cleopatre/application/spidnetsnmp/agent/mibgroup/mibII/snmp_mib.c253
1 files changed, 0 insertions, 253 deletions
diff --git a/cleopatre/application/spidnetsnmp/agent/mibgroup/mibII/snmp_mib.c b/cleopatre/application/spidnetsnmp/agent/mibgroup/mibII/snmp_mib.c
deleted file mode 100644
index 0b301960eb..0000000000
--- a/cleopatre/application/spidnetsnmp/agent/mibgroup/mibII/snmp_mib.c
+++ /dev/null
@@ -1,253 +0,0 @@
-/*
- * SNMPv1 MIB group implementation - snmp.c
- *
- */
-
-#include <net-snmp/net-snmp-config.h>
-#include <sys/types.h>
-#if HAVE_STRING_H
-#include <string.h>
-#else
-#include <strings.h>
-#endif
-#if HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-
-#if HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
-
-#include <net-snmp/net-snmp-includes.h>
-#include <net-snmp/agent/net-snmp-agent-includes.h>
-
-#include "util_funcs.h"
-#include "snmp_mib.h"
-#include "sysORTable.h"
-
-
- /*********************
- *
- * Kernel & interface information,
- * and internal forward declarations
- *
- *********************/
-
-extern int snmp_enableauthentraps;
-extern int snmp_enableauthentrapsset;
-int old_snmp_enableauthentraps;
-
-/*********************
- *
- * Initialisation & common implementation functions
- *
- *********************/
-
-/*
- * define the structure we're going to ask the agent to register our
- * information at
- */
-struct variable1 snmp_variables[] = {
- {SNMPINPKTS, ASN_COUNTER, RONLY, var_snmp, 1, {1}},
- {SNMPOUTPKTS, ASN_COUNTER, RONLY, var_snmp, 1, {2}},
- {SNMPINBADVERSIONS, ASN_COUNTER, RONLY, var_snmp, 1, {3}},
-#if !defined(NETSNMP_DISABLE_SNMPV1) || !defined(NETSNMP_DISABLE_SNMPV2C)
- {SNMPINBADCOMMUNITYNAMES, ASN_COUNTER, RONLY, var_snmp, 1, {4}},
- {SNMPINBADCOMMUNITYUSES, ASN_COUNTER, RONLY, var_snmp, 1, {5}},
-#endif /* support for community based SNMP */
- {SNMPINASNPARSEERRORS, ASN_COUNTER, RONLY, var_snmp, 1, {6}},
- {SNMPINTOOBIGS, ASN_COUNTER, RONLY, var_snmp, 1, {8}},
- {SNMPINNOSUCHNAMES, ASN_COUNTER, RONLY, var_snmp, 1, {9}},
- {SNMPINBADVALUES, ASN_COUNTER, RONLY, var_snmp, 1, {10}},
- {SNMPINREADONLYS, ASN_COUNTER, RONLY, var_snmp, 1, {11}},
- {SNMPINGENERRS, ASN_COUNTER, RONLY, var_snmp, 1, {12}},
- {SNMPINTOTALREQVARS, ASN_COUNTER, RONLY, var_snmp, 1, {13}},
- {SNMPINTOTALSETVARS, ASN_COUNTER, RONLY, var_snmp, 1, {14}},
- {SNMPINGETREQUESTS, ASN_COUNTER, RONLY, var_snmp, 1, {15}},
- {SNMPINGETNEXTS, ASN_COUNTER, RONLY, var_snmp, 1, {16}},
- {SNMPINSETREQUESTS, ASN_COUNTER, RONLY, var_snmp, 1, {17}},
- {SNMPINGETRESPONSES, ASN_COUNTER, RONLY, var_snmp, 1, {18}},
- {SNMPINTRAPS, ASN_COUNTER, RONLY, var_snmp, 1, {19}},
- {SNMPOUTTOOBIGS, ASN_COUNTER, RONLY, var_snmp, 1, {20}},
- {SNMPOUTNOSUCHNAMES, ASN_COUNTER, RONLY, var_snmp, 1, {21}},
- {SNMPOUTBADVALUES, ASN_COUNTER, RONLY, var_snmp, 1, {22}},
- {SNMPOUTGENERRS, ASN_COUNTER, RONLY, var_snmp, 1, {24}},
- {SNMPOUTGETREQUESTS, ASN_COUNTER, RONLY, var_snmp, 1, {25}},
- {SNMPOUTGETNEXTS, ASN_COUNTER, RONLY, var_snmp, 1, {26}},
- {SNMPOUTSETREQUESTS, ASN_COUNTER, RONLY, var_snmp, 1, {27}},
- {SNMPOUTGETRESPONSES, ASN_COUNTER, RONLY, var_snmp, 1, {28}},
- {SNMPOUTTRAPS, ASN_COUNTER, RONLY, var_snmp, 1, {29}},
- {SNMPENABLEAUTHENTRAPS, ASN_INTEGER, RWRITE, var_snmp, 1, {30}},
- {SNMPSILENTDROPS, ASN_COUNTER, RONLY, var_snmp, 1, {31}},
- {SNMPPROXYDROPS, ASN_COUNTER, RONLY, var_snmp, 1, {32}}
-};
-
-/*
- * Define the OID pointer to the top of the mib tree that we're
- * registering underneath
- */
-oid snmp_variables_oid[] = { SNMP_OID_MIB2, 11 };
-#ifdef USING_MIBII_SYSTEM_MIB_MODULE
-extern oid system_module_oid[];
-extern int system_module_oid_len;
-extern int system_module_count;
-#endif
-
-static int
-snmp_enableauthentraps_store(int a, int b, void *c, void *d)
-{
- char line[SNMP_MAXBUF_SMALL];
-
- if (snmp_enableauthentrapsset > 0) {
- snprintf(line, SNMP_MAXBUF_SMALL, "pauthtrapenable %d",
- snmp_enableauthentraps);
- snmpd_store_config(line);
- }
- return 0;
-}
-
-void
-init_snmp_mib(void)
-{
- /*
- * register ourselves with the agent to handle our mib tree
- */
- REGISTER_MIB("mibII/snmp", snmp_variables, variable1,
- snmp_variables_oid);
-
-#ifdef USING_MIBII_SYSTEM_MIB_MODULE
- if (++system_module_count == 3)
- REGISTER_SYSOR_TABLE(system_module_oid, system_module_oid_len,
- "The MIB module for SNMPv2 entities");
-#endif
- snmp_register_callback(SNMP_CALLBACK_LIBRARY, SNMP_CALLBACK_STORE_DATA,
- snmp_enableauthentraps_store, NULL);
-}
-
-/*
- * header_snmp(...
- * Arguments:
- * vp IN - pointer to variable entry that points here
- * name IN/OUT - IN/name requested, OUT/name found
- * length IN/OUT - length of IN/OUT oid's
- * exact IN - TRUE if an exact match was requested
- * var_len OUT - length of variable or 0 if function returned
- * write_method
- *
- */
-
- /*********************
- *
- * System specific implementation functions
- * (actually common!)
- *
- *********************/
-
-
-u_char *
-var_snmp(struct variable *vp,
- oid * name,
- size_t * length,
- int exact, size_t * var_len, WriteMethod ** write_method)
-{
- static long long_ret;
-
- *write_method = 0; /* assume it isnt writable for the time being */
- *var_len = sizeof(long_ret); /* assume an integer and change later if not */
-
- if (header_generic(vp, name, length, exact, var_len, write_method)
- == MATCH_FAILED)
- return NULL;
-
- /*
- * this is where we do the value assignments for the mib results.
- */
- if (vp->magic == SNMPENABLEAUTHENTRAPS) {
- *write_method = write_snmp;
- long_return = snmp_enableauthentraps;
- return (u_char *) & long_return;
- } else if ((vp->magic >= 1)
- && (vp->magic <=
- (STAT_SNMP_STATS_END - STAT_SNMP_STATS_START + 1))) {
- long_ret =
- snmp_get_statistic(vp->magic + STAT_SNMP_STATS_START - 1);
- return (unsigned char *) &long_ret;
- }
- return NULL;
-}
-
-/*
- * only for snmpEnableAuthenTraps:
- */
-
-int
-write_snmp(int action,
- u_char * var_val,
- u_char var_val_type,
- size_t var_val_len, u_char * statP, oid * name, size_t name_len)
-{
- long intval = 0;
-
- switch (action) {
- case RESERVE1: /* Check values for acceptability */
- if (var_val_type != ASN_INTEGER) {
- DEBUGMSGTL(("mibII/snmp_mib", "%x not integer type",
- var_val_type));
- return SNMP_ERR_WRONGTYPE;
- }
-
- intval = *((long *) var_val);
- if (intval != 1 && intval != 2) {
- DEBUGMSGTL(("mibII/snmp_mib", "not valid %x\n", intval));
- return SNMP_ERR_WRONGVALUE;
- }
- if (snmp_enableauthentrapsset < 0) {
- /*
- * The object is set in a read-only configuration file.
- */
- return SNMP_ERR_NOTWRITABLE;
- }
- break;
-
- case RESERVE2: /* Allocate memory and similar resources */
-
- /*
- * Using static variables, so nothing needs to be done
- */
- break;
-
- case ACTION: /* Perform the SET action (if reversible) */
-
- /*
- * Save the old value, in case of UNDO
- */
- intval = *((long *) var_val);
- old_snmp_enableauthentraps = snmp_enableauthentraps;
- snmp_enableauthentraps = intval;
- break;
-
- case UNDO: /* Reverse the SET action and free resources */
-
- snmp_enableauthentraps = old_snmp_enableauthentraps;
- break;
-
- case COMMIT:
- snmp_enableauthentrapsset = 1;
- snmp_save_persistent(netsnmp_ds_get_string(NETSNMP_DS_LIBRARY_ID, NETSNMP_DS_LIB_APPTYPE));
- (void) snmp_call_callbacks(SNMP_CALLBACK_LIBRARY,
- SNMP_CALLBACK_STORE_DATA, NULL);
- snmp_clean_persistent(netsnmp_ds_get_string
- (NETSNMP_DS_LIBRARY_ID, NETSNMP_DS_LIB_APPTYPE));
- break;
-
- case FREE: /* Free any resources allocated */
- break;
- }
- return SNMP_ERR_NOERROR;
-}
-
-/*********************
- *
- * Internal implementation functions
- *
- *********************/