Me again...

To see if I reproduce the same problem with the latest version of net-snmp,
I try my sample with net-snmp v5.3.1 (instead of v.5.0.11).

The problems I'm facing now are:
- the index retrieved with register_int_index is always -1
- I get a long list of error messages 'registering pdu failed: 263!'

The sample I test is identical to the sample which was running correctly
with net-snmp v5.0.11.

Here is the code of my sample:

void init_GenServerTable()
{
oid genServerTableOid[] =
{ 1, 3, 6, 1, 4, 1, 99999, 10000, 1, 1 };

size_t genServerTableOidLen = OID_LENGTH(genServerTableOid);
u_long allocatedIndex = register_int_index(genServerTableOid,
genServerTableOidLen, ANY_INTEGER_INDEX);

oid genServerAllocatedOid[] =
{ 1, 3, 6, 1, 4, 1, 99999, 10000, 1, 1, 1, 1 };
size_t genServerAllocatedOidLen = OID_LENGTH(genServerAllocatedOid);
genServerAllocatedOid[genServerAllocatedOidLen - 1] = allocatedIndex;

netsnmp_table_data_set *genServerTable =
netsnmp_create_table_data_set("genServerTable");

netsnmp_table_dataset_add_index(genServerTable, ASN_UNSIGNED);
netsnmp_table_set_multi_add_default_row(genServerT able,
2,
ASN_OCTET_STR, 0, NULL, 0,
3,
ASN_OCTET_STR, 0, NULL, 0,
4,
ASN_OCTET_STR, 0, NULL, 0,
5,
ASN_UNSIGNED, 0, NULL, 0,
0);

netsnmp_handler_registration * handlerServerTable =
netsnmp_create_handler_registration
("genServerTable",
NULL,
genServerAllocatedOid, //genServerAllocatedOid,
genServerAllocatedOidLen - 2, //genServerAllocatedOidLen,
HANDLER_CAN_RONLY);

handlerServerTable->range_subid = genServerAllocatedOidLen - 1;
handlerServerTable->range_ubound = 5;

int res = netsnmp_register_table_data_set(handlerServerTable ,
genServerTable, NULL);
if ( res != MIB_REGISTERED_OK )
{
snmp_log(LOG_ERR,"Unable to register the Server Row: res = %d.\n", res);
}

// Add a Row
netsnmp_table_row *row = netsnmp_create_table_data_row();

snmp_log(LOG_INFO,"Index found=%d.\n", allocatedIndex);
netsnmp_table_row_add_index(row, ASN_UNSIGNED, &allocatedIndex,
sizeof(allocatedIndex));

netsnmp_set_row_column(row, 2, ASN_OCTET_STR,
"Test1", strlen("Test1"));

netsnmp_set_row_column(row, 3, ASN_OCTET_STR, "Test2",
strlen("Test2"));

netsnmp_set_row_column(row, 4, ASN_OCTET_STR,
"Test3", strlen("Test3"));

u_long pid = 1500;
netsnmp_set_row_column(row, 5, ASN_UNSIGNED, (const char *)&pid,
sizeof(pid));

netsnmp_table_dataset_add_row(genServerTable, row);

}


RETSIGTYPE
stop_server(int a) {
keep_running = 0;
}

int
main (int argc, char **argv)
{
// print log errors to syslog or stderr
snmp_enable_stderrlog();

// Sub-agentX
netsnmp_ds_set_boolean(NETSNMP_DS_APPLICATION_ID,
NETSNMP_DS_AGENT_ROLE, 1);
// Read configuration file
netsnmp_ds_set_string(NETSNMP_DS_LIBRARY_ID, NETSNMP_DS_LIB_OPTIONALCONFIG,
"App1.conf");
netsnmp_ds_toggle_boolean(NETSNMP_DS_APPLICATION_I D,
NETSNMP_DS_AGENT_NO_ROOT_ACCESS);
netsnmp_ds_set_string(NETSNMP_DS_APPLICATION_ID, NETSNMP_DS_AGENT_X_SOCKET,
"/home/arnboden/snmp/master");

// Set the communication Port with the master agent
netsnmp_ds_set_string(NETSNMP_DS_APPLICATION_ID, NETSNMP_DS_AGENT_PORTS,
"1400");

SOCK_STARTUP;

// initialize the agent library
init_agent("App1");

init_mib_modules();

// Load the table
init_GenServerTable();

init_snmp("App1");

keep_running = 1;
signal(SIGTERM, stop_server);
signal(SIGINT, stop_server);

snmp_log(LOG_INFO,"App1 is up and running.\n");

sendSpecificTrap();

while(keep_running)
{
agent_check_and_process(1);
}

snmp_shutdown("App1");
SOCK_CLEANUP;

return 0;
}

Any suggestions?

Thanks in advance.

>From: "Arnaud BODENAN"
>To: net-snmp-users@lists.sourceforge.net
>Subject: Re: multiple Sub-agents managing the same table
>Date: Tue, 05 Sep 2006 15:12:16 +0200
>
>At the moment, when I register my first application (App1), it is now well
>registered and an snmpwalk on my table gives me now the values I expect:
>GEN-MONITORING-MIB::genServerName.1 = STRING: "Test1"
>GEN-MONITORING-MIB::genServerProductName.1 = STRING: "Test2"
>GEN-MONITORING-MIB::genServerHostname.1 = STRING: "Test3"
>GEN-MONITORING-MIB::genServerPID.1 = Gauge32: 1500
>
>But, now, I'm not able to register a new server. (I will debug my second
>server to see what's going on)
>
> >From: "Dave Shield"
> >To: "Arnaud BODENAN"
> >CC: net-snmp-users@lists.sourceforge.net
> >Subject: Re: multiple Sub-agents managing the same table
> >Date: Tue, 5 Sep 2006 13:32:03 +0100
> >
> >On 05/09/06, Arnaud BODENAN wrote:
> >>What is nsRegistryTable? I look in the source code of net-snmp and I do
> >>not
> >>find any occurence of nsRegistryTable.

> >
> >My apologies. It's actually the 'nsMibRegistry' group
> >(containing the 'nsModuleTable').
> >
> >It lists all the MIB object that have been registered with the master
> >agent.
> >
> >Dave

>
>__________________________________________________ _______________
>Get the new Windows Live Messenger!
>http://imagine-msn.com/messenger/lau...=wlmailtagline
>
>
>-------------------------------------------------------------------------
>Using Tomcat but need to do more? Need to support web services, security?
>Get stuff done quickly with pre-integrated technology to make your job
>easier
>Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
>http://sel.as-us.falkag.net/sel?cmd=...057&dat=121642
>_______________________________________________
>Net-snmp-users mailing list
>Net-snmp-users@lists.sourceforge.net
>Please see the following page to unsubscribe or change other options:
>https://lists.sourceforge.net/lists/...net-snmp-users


__________________________________________________ _______________
Express yourself instantly with MSN Messenger! Download today it's FREE!
http://messenger.msn.click-url.com/g...ave/direct/01/


-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=...057&dat=121642
_______________________________________________
Net-snmp-users mailing list
Net-snmp-users@lists.sourceforge.net
Please see the following page to unsubscribe or change other options:
https://lists.sourceforge.net/lists/...net-snmp-users