On Wed, 27 Apr 2005 09:57:14 +0100 Dave wrote: DS> > DS> In terms of public API, the main difference between table_data DS> > DS> and table_container is in terms of how the indexing is handled. DS> > DS> > Actually, the real difference is that table_container doesn't have DS> > an API at all. DS> DS> Eh? DS> What does DS> http://www.net-snmp.org/dev/agent/group__table__container.html DS> describe then?
That describes the handler. Note that there is a single function described - to get the handler. One function does not an API make. DS> And there's been a 'mib2c.container.conf' generator since 5.2. Yes, and array_user and MFD both use the table_container helper as well. That still doesn't make any of them an API. All of them could be updated to use a table_helper API, if one existed. DS> > So I'm suggesting that the table_data2 API become the table_container DS> > API. There is no backwards compatibility implications. DS> DS> I disagree. DS> The behaviour, API calls and data structures of table_container DS> are fairly well established by now. Again, there are NO table_container API calls. The only data structure requirement for the table_container is that the pointers put into the container have a netsnmp_index as the first item. The table_data2 API fulfils this requirement. DS> My view for table_data2 (under whatever name) is that it should retain DS> the same APIs as table_data, but rely on table_container internally. Well, it's impossible to have the same API - the function names have to differ. All I'm proposing is that the names be prefixed with table_container_ instead of table_data2_ (or whatever name). The parameters and other such stuff would remain the same. DS> With table_data, I can use a native data structure to hold a row DS> of the table. So that should remain true with table_data2. DS> With table_container, the per-row data structure *must* begin DS> with the index information (in some specified format). So DS> there *are* compatibility implications. If there were compatibility problems, then the code as it exists today would not work. But it does. The table_data2 simply deals with the additional malloc to create the structure that table_container helps, and stores the user's native data structure. Renaming functions and putting them into another file does not change how they work. (Last time I checked, anyhow.) DS> Table_container is your baby [...]. DS> I prefer to keep 'table_data2' as a separate helper. Ok. It's your baby, so I'll be quiet now so that we can both get back to work. DS> That's my understanding anyway - Wes, care to correct any errors? Like he's paying any attention. I'd be willing to be when he sees a thread between us that starts to get long, he stays as far away as possible, so as not to get any blood on his nice clean white shirt. :-) -- NOTE: messages sent directly to me, instead of the lists, will be deleted unless they are requests for paid consulting services. Robert Story; NET-SNMP Junkie Support: <http://www.net-snmp.org/> <irc://irc.freenode.net/#net-snmp> Archive: <http://sourceforge.net/mailarchive/forum.php?forum=net-snmp-coders> You are lost in a twisty maze of little standards, all different. ------------------------------------------------------- SF.Net email is sponsored by: Tell us your software development plans! Take this survey and enter to win a one-year sub to SourceForge.net Plus IDC's 2005 look-ahead and a copy of this survey Click here to start! http://www.idcswdc.com/cgi-bin/survey?id=105hix _______________________________________________ Net-snmp-coders mailing list Net-snmp-coders@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/net-snmp-coders