FW: Re: multiple Sub-agents managing the same table

"Arnaud BODENAN" <[email protected]>
Newsgroups gmane.network.net-snmp.user
Message-ID <[email protected]>
Sorry again, the are mistakes in the code I give you.

Here is the correct one.

>>
>>Sorry Dave, but I give you my MIB in previous mails; I give you my MIB 
>>again as it would make things clearer.
>>
>>Concerning range_subid, there was a mistake in the code I give (error on 
>>copy/paste)... sorry...
>>
>>My table is defined something like that:
>>genRoot (99999)
>>---- genTestRoot (10000)
>>--------- genMetrics (1)
>>--------------- genServerTable (1)
>>---------------------genServerEntry (1)
>>-------------------------- genServerIndex (1)
>>-------------------------- genServerName (2)
>>-------------------------- genServerProductName (3)
>>-------------------------- genServerHostname (4)
>>-------------------------- genServerPID (5)
>>
>>After reading RFC 2741 (with pointers to range_subid and range_ubound)
>>
>>So now, what I'm doing is:
>>
>>// Declare the Oid of genServerTable
>>oid genServerTableOid[] =
>>    { 1, 3, 6, 1, 4, 1, 99999, 10000, 1, 1 };
>>
>>size_t genServerTableOidLen = OID_LENGTH(genServerTableOid);
>>
>>// Get an unique index from the master agent
>>u_long allocatedIndex = register_int_index(genServerTableOid,
>>genServerTableOidLen, ANY_INTEGER_INDEX);
>>
>>// Strangely, it has to begin with the index 2... @todo
>>while ( allocatedIndex <= 1 && allocatedIndex > 0 )
>>{
>>     allocatedIndex = register_int_index(genServerTableOid,
>>genServerTableOidLen, ANY_INTEGER_INDEX);
>>}
>>
>>// Define the oid of the first column from the index returned
>>oid genServerAllocatedOid[] =
>>    { 1, 3, 6, 1, 4, 1, 99999, 10000, 1, 1, 1, allocatedIndex };
>>size_t genServerAllocatedOidLen = OID_LENGTH(genServerAllocatedOid);
>>
>>// Define the structure of the table
>>netsnmp_table_data_set *genServerTable = 
>>netsnmp_create_table_data_set("genServerTable");
>>nesnmp_table_dataset_add_index(genServerTable, ASN_UNSIGNED);
>>netsnmp_table_set_multi_add_default_row(genServerTable,
>>                                            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,
>>genServerAllocatedOidLen,
>>HANDLER_CAN_RONLY);
>>
>>// Set the range_subid to the first column of the row
>>handlerServerTable->range_subid = genServerAllocatedOidLen;
>>
>>// set the range_ubound
>>handlerServerTable->range_ubound = 5;
>>}
>>
>>
>>>From: "Dave Shield" <[email protected]>
>>>To: "Arnaud BODENAN" <[email protected]>
>>>CC: [email protected]
>>>Subject: Re: multiple Sub-agents managing the same table
>>>Date: Tue, 5 Sep 2006 10:07:14 +0100
>>>
>>>On 05/09/06, Arnaud BODENAN <[email protected]> wrote:
>>>>Thanks Dave. What I've done now is:
>>>
>>>I'm sorry - this code is meaningless to me.
>>>You're listing assorted numeric OIDs, but I have no idea what MIB
>>>objects they refer to.
>>>
>>>I'm pretty sure that they aren't correct, since:
>>>
>>>>// Declare the top Oid for my table
>>>>oid genServerTableOid[] =   { 1, 3, 6, 1, 4, 1, 99999, 10000, 1, 1 };
>>>
>>>>// Define the oid of the first column from the index returned
>>>>oid genServerAllocatedOid[] =    { 1, 3, 6, 1, 4, 1, 99999, 10000, 1, 1, 
>>>>allocatedIndex };
>>>
>>>don't seem to match.   I'd expect another field in the column-instance
>>>OID array.
>>>But you've never listed your MIB file, so I'm forced to guess. And
>>>quite frankly, I don't have the time to waste at the moment.
>>>
>>>
>>>I'm also not confident that initialising an array using another
>>>variable is particularly safe.
>>>You'd probably be much safer using a dummy placeholder field, and
>>>explicitly inserting the index value:
>>>
>>>oid genServerAllocatedOid[] =    { 1, 3, 6, 1, 4, 1, 99999, 10000, 1,
>>>1, 1?,  999 };
>>>genServerAllocatedOid[ genServerAllocatedOidLen-1 ] = allocatedIndex;
>>>
>>>
>>>>// Set the range_subid to the first column of the row
>>>>handlerServerTable->range_subid = genServerAllocatedOid;
>>>
>>>No
>>>The range_subid is an *index* into this array - not the whole OID.
>>>Please re-read the AgentX specifications.  You clearly haven't grasped
>>>how this mechanism works.
>>>
>>>
>>>>// set the range_ubound ???
>>>>handlerServerTable->range_ubound = allocatedIndex;
>>>
>>>No.
>>>This is the value of the maximum column *object* subidentifier (the
>>>bit you seem to have omitted in the earlier code).   Not the row index
>>>(instance) subidentifier.
>>>
>>>
>>>
>>>
>>>>If I understand you, I should set range_ubound to 5 (I have five columns 
>>>>in
>>>>my row) ?
>>>
>>>Yes.   Or at least Probably.
>>>I can't be sure, 'cos you've never shown us the MIB file that defines
>>>this table.
>>>If there are five columns in the table, they would typically be numbered 
>>>1..5,
>>>in which case range_ubound would indeed be 5.
>>>   But if they're numbered 2..6 (for example) then ubound would be 6.
>>>
>>>
>>>Dave
>>
>>_________________________________________________________________
>>Windows Live Spaces is here! It’s easy to create your own personal Web 
>>site.  http://spaces.live.com/signup.aspx
>>
>>
>
>
>>-------------------------------------------------------------------------
>>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=lnk&kid=120709&bid=263057&dat=121642
>
>
>>_______________________________________________
>>Net-snmp-users mailing list
>>[email protected]
>>Please see the following page to unsubscribe or change other options:
>>https://lists.sourceforge.net/lists/listinfo/net-snmp-users
>
>_________________________________________________________________
>Express yourself instantly with MSN Messenger! Download today it's FREE! 
>http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/
>

_________________________________________________________________
FREE pop-up blocking with the new MSN Toolbar - get it now! 
http://toolbar.msn.click-url.com/go/onm00200415ave/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=lnk&kid=120709&bid=263057&dat=121642

_______________________________________________
Net-snmp-users mailing list
[email protected]
Please see the following page to unsubscribe or change other options:
https://lists.sourceforge.net/lists/listinfo/net-snmp-users
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.