blob: a567d2e18035a8f218860f58420cef806eee96ee [file] [log] [blame]
/*
* snmpTsmStats
*/
#include <net-snmp/net-snmp-config.h>
#include <net-snmp/net-snmp-features.h>
#include <net-snmp/net-snmp-includes.h>
#include <net-snmp/agent/net-snmp-agent-includes.h>
#include <net-snmp/library/snmp_api.h>
#include "snmpTsmStats.h"
static netsnmp_handler_registration* _myreg = NULL;
netsnmp_feature_require(helper_statistics)
netsnmp_feature_child_of(shutdown_snmptsmsession, netsnmp_unused)
/** Initializes the snmpTsmStats module */
void
init_snmpTsmStats(void)
{
static oid snmpTsmStats_oid[] = { 1, 3, 6, 1, 2, 1, 190, 1, 1 };
int rc;
DEBUGMSGTL(("snmpTsmStats", "Initializing\n"));
_myreg = netsnmp_create_handler_registration("snmpTsmStats", NULL,
snmpTsmStats_oid,
OID_LENGTH(snmpTsmStats_oid),
HANDLER_CAN_RONLY);
if (NULL == _myreg) {
snmp_log(LOG_ERR, "failed to create handler registration for "
"snmpTsmStats\n");
return;
}
rc = NETSNMP_REGISTER_STATISTIC_HANDLER(_myreg, 1, TSM);
if (MIB_REGISTERED_OK != rc) {
snmp_log(LOG_ERR, "failed to register snmpTsmStats mdoule\n");
netsnmp_handler_registration_free(_myreg);
_myreg = NULL;
}
}
#ifndef NETSNMP_FEATURE_REMOVE_SHUTDOWN_SNMPTSMSESSION
void
shutdown_snmpTsmSession(void)
{
if (_myreg) {
netsnmp_unregister_handler(_myreg);
_myreg = NULL;
}
}
#endif /* NETSNMP_FEATURE_REMOVE_SHUTDOWN_SNMPTSMSESSION */