changes
This commit is contained in:
parent
2b79539c82
commit
00cf457a23
@ -5,25 +5,9 @@
|
|||||||
#include <net-snmp/net-snmp-includes.h>
|
#include <net-snmp/net-snmp-includes.h>
|
||||||
#include <net-snmp/agent/net-snmp-agent-includes.h>
|
#include <net-snmp/agent/net-snmp-agent-includes.h>
|
||||||
|
|
||||||
|
int number1 = 42;
|
||||||
|
|
||||||
int
|
#if 0
|
||||||
handle_counter32(netsnmp_mib_handler *handler,
|
|
||||||
netsnmp_handler_registration *reginfo,
|
|
||||||
netsnmp_agent_request_info *reqinfo,
|
|
||||||
netsnmp_request_info *requests)
|
|
||||||
{
|
|
||||||
return handle_it(handler, reginfo, reqinfo, requests, ASN_COUNTER);
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
|
||||||
handle_integer32(netsnmp_mib_handler *handler,
|
|
||||||
netsnmp_handler_registration *reginfo,
|
|
||||||
netsnmp_agent_request_info *reqinfo,
|
|
||||||
netsnmp_request_info *requests)
|
|
||||||
{
|
|
||||||
return handle_it(handler, reginfo, reqinfo, requests, ASN_INTEGER);
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
int
|
||||||
handle_it(netsnmp_mib_handler *handler,
|
handle_it(netsnmp_mib_handler *handler,
|
||||||
netsnmp_handler_registration *reginfo,
|
netsnmp_handler_registration *reginfo,
|
||||||
@ -55,6 +39,26 @@ printf("\n");
|
|||||||
return SNMP_ERR_NOERROR;
|
return SNMP_ERR_NOERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
handle_counter32(netsnmp_mib_handler *handler,
|
||||||
|
netsnmp_handler_registration *reginfo,
|
||||||
|
netsnmp_agent_request_info *reqinfo,
|
||||||
|
netsnmp_request_info *requests)
|
||||||
|
{
|
||||||
|
printf("handle_counter32\n");
|
||||||
|
return handle_it(handler, reginfo, reqinfo, requests, ASN_COUNTER);
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
handle_integer32(netsnmp_mib_handler *handler,
|
||||||
|
netsnmp_handler_registration *reginfo,
|
||||||
|
netsnmp_agent_request_info *reqinfo,
|
||||||
|
netsnmp_request_info *requests)
|
||||||
|
{
|
||||||
|
printf("handle_integer32\n");
|
||||||
|
return handle_it(handler, reginfo, reqinfo, requests, ASN_INTEGER);
|
||||||
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
handle_number1(netsnmp_mib_handler *handler,
|
handle_number1(netsnmp_mib_handler *handler,
|
||||||
netsnmp_handler_registration *reginfo,
|
netsnmp_handler_registration *reginfo,
|
||||||
@ -77,7 +81,41 @@ handle_number1(netsnmp_mib_handler *handler,
|
|||||||
return SNMP_ERR_NOERROR;
|
return SNMP_ERR_NOERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
#define NETSNMP_REGISTER_SCALAR(A, B) netsnmp_register_scalar(netsnmp_create_handler_registration(#A, B, A##_oid, OID_LENGTH(A##_oid), HANDLER_CAN_RONLY))
|
#define NETSNMP_REGISTER_SCALAR(A, B) netsnmp_register_scalar(netsnmp_create_handler_registration(#A, B, A##_oid, OID_LENGTH(A##_oid), HANDLER_CAN_RONLY)); printf("registered: %s\n", #A)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
int
|
||||||
|
handle_dhsNumber1(netsnmp_mib_handler *handler,
|
||||||
|
netsnmp_handler_registration *reginfo,
|
||||||
|
netsnmp_agent_request_info *reqinfo,
|
||||||
|
netsnmp_request_info *requests)
|
||||||
|
{
|
||||||
|
/* We are never called for a GETNEXT if it's registered as a
|
||||||
|
"instance", as it's "magically" handled for us. */
|
||||||
|
|
||||||
|
/* a instance handler also only hands us one request at a time, so
|
||||||
|
we don't need to loop over a list of requests; we'll only get one. */
|
||||||
|
|
||||||
|
switch(reqinfo->mode) {
|
||||||
|
|
||||||
|
case MODE_GET:
|
||||||
|
snmp_set_var_typed_value(requests->requestvb, ASN_COUNTER,
|
||||||
|
(u_char *) &number1/* XXX: a pointer to the scalar'
|
||||||
|
s data */,
|
||||||
|
sizeof(number1)/* XXX: the length of the data in bytes */)
|
||||||
|
;
|
||||||
|
break;
|
||||||
|
|
||||||
|
|
||||||
|
default:
|
||||||
|
/* we should never get here, so this is a really bad error */
|
||||||
|
return SNMP_ERR_GENERR;
|
||||||
|
}
|
||||||
|
|
||||||
|
return SNMP_ERR_NOERROR;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
init_subagent(void)
|
init_subagent(void)
|
||||||
@ -85,7 +123,7 @@ init_subagent(void)
|
|||||||
static oid dhsNumber1_oid[] = { 1,3,6,1,4,1,9676,2,1,1 }; /* counter */
|
static oid dhsNumber1_oid[] = { 1,3,6,1,4,1,9676,2,1,1 }; /* counter */
|
||||||
static oid dhsAccepted_oid[] = { 1,3,6,1,4,1,9676,2,1,2,1 }; /* counter */
|
static oid dhsAccepted_oid[] = { 1,3,6,1,4,1,9676,2,1,2,1 }; /* counter */
|
||||||
static oid dhsFailed_oid[] = { 1,3,6,1,4,1,9676,2,1,2,2 }; /* counter */
|
static oid dhsFailed_oid[] = { 1,3,6,1,4,1,9676,2,1,2,2 }; /* counter */
|
||||||
static oid dhsRunningNwThreads_oid[] = { 1,3,6,1,4,1,9676,2,1,2,3 }; /* integer */
|
static oid dhsRunningNwThreads_oid[] = { 0,3,6,1,4,1,9676,2,1,2,3 }; /* integer */
|
||||||
static oid dhsNwThreads_oid[] = { 1,3,6,1,4,1,9676,2,1,2,4 }; /* counter */
|
static oid dhsNwThreads_oid[] = { 1,3,6,1,4,1,9676,2,1,2,4 }; /* counter */
|
||||||
static oid dhsFailedNwThreads_oid[] = { 1,3,6,1,4,1,9676,2,1,2,5 }; /* counter */
|
static oid dhsFailedNwThreads_oid[] = { 1,3,6,1,4,1,9676,2,1,2,5 }; /* counter */
|
||||||
static oid dhsOKReturned_oid[] = { 1,3,6,1,4,1,9676,2,1,2,6 }; /* counter */
|
static oid dhsOKReturned_oid[] = { 1,3,6,1,4,1,9676,2,1,2,6 }; /* counter */
|
||||||
@ -99,6 +137,21 @@ init_subagent(void)
|
|||||||
|
|
||||||
DEBUGMSGTL(("dhsMIBObjects", "Initializing\n"));
|
DEBUGMSGTL(("dhsMIBObjects", "Initializing\n"));
|
||||||
|
|
||||||
|
netsnmp_register_scalar(
|
||||||
|
netsnmp_create_handler_registration("dhsNumber1", handle_dhsNumber1,
|
||||||
|
dhsNumber1_oid, OID_LENGTH(dhsNumber1_oid),
|
||||||
|
HANDLER_CAN_RONLY
|
||||||
|
));
|
||||||
|
|
||||||
|
|
||||||
|
#if 0
|
||||||
|
netsnmp_register_scalar(
|
||||||
|
netsnmp_create_handler_registration("dhsNumber1", handle_number1,
|
||||||
|
dhsNumber1_oid, OID_LENGTH(dhsNumber1_oid),
|
||||||
|
HANDLER_CAN_RONLY
|
||||||
|
));
|
||||||
|
|
||||||
|
|
||||||
NETSNMP_REGISTER_SCALAR(dhsNumber1, handle_number1);
|
NETSNMP_REGISTER_SCALAR(dhsNumber1, handle_number1);
|
||||||
NETSNMP_REGISTER_SCALAR(dhsAccepted, handle_counter32);
|
NETSNMP_REGISTER_SCALAR(dhsAccepted, handle_counter32);
|
||||||
NETSNMP_REGISTER_SCALAR(dhsFailed, handle_counter32);
|
NETSNMP_REGISTER_SCALAR(dhsFailed, handle_counter32);
|
||||||
@ -113,6 +166,7 @@ init_subagent(void)
|
|||||||
NETSNMP_REGISTER_SCALAR(dhsUnknownClassFailure, handle_counter32);
|
NETSNMP_REGISTER_SCALAR(dhsUnknownClassFailure, handle_counter32);
|
||||||
NETSNMP_REGISTER_SCALAR(dhsTimeoutFailure, handle_counter32);
|
NETSNMP_REGISTER_SCALAR(dhsTimeoutFailure, handle_counter32);
|
||||||
NETSNMP_REGISTER_SCALAR(dhsNetStringFailure, handle_counter32);
|
NETSNMP_REGISTER_SCALAR(dhsNetStringFailure, handle_counter32);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void snmp_subagent_main () {
|
void snmp_subagent_main () {
|
||||||
@ -124,6 +178,7 @@ void snmp_subagent_main () {
|
|||||||
|
|
||||||
/* main loop here... */
|
/* main loop here... */
|
||||||
while(1) {
|
while(1) {
|
||||||
|
printf("*** main loop\n");
|
||||||
agent_check_and_process(1);
|
agent_check_and_process(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user