Re: Table custom handlers

"Nikos Balkanas" <[email protected]>
Newsgroups gmane.network.net-snmp.user
Message-ID <003601c96fb4$704c6120$02b2a8c0@tardis>
Dear Wes,

Thanks again for the valuable info.

I'm afraid I will impose a bit more on this.

I looked at both of the suggestions:

1) row_merge is not for me, since I only have 1 writable column/table.

2) I also checked the iterator_helper. It has the oid code you suggested. It 
is also pretty involved and, as you mentioned, a bit heavy. By fitting its 
logic to my data, I can make it much simpler and faster. I need only 1 thing 
to do it.

I need to get the changed row index. I looked everywhere, requests, reginfo, 
reqinfo, handler. Couldn't find it. There is an index in the requests 
structure, at the right place, but it is the wrong one. I considered using 
the build_oid_noalloc to generate the index oids, but my row indeces list is 
NULL. I could of course regenerate the list by looping through the rows. I 
hope I am not asking too much.

I am using netsnmp_table_data_set from data_set.c example.

Hopefully, this is the last piece missing to complete the puzzle.

BR,
Nikos

----- Original Message ----- 
From: "Wes Hardaker" <[email protected]>
To: "Nikos Balkanas" <[email protected]>
Cc: <[email protected]>
Sent: Monday, January 05, 2009 6:14 PM
Subject: Re: Table custom handlers


>>>>>> On Sun, 4 Jan 2009 02:59:33 +0200, "Nikos Balkanas" 
>>>>>> <[email protected]> said:
>
> NB> I know how to get the values for each row/column. If I keep the old
> NB> values in an array, I could iterate through them and do it; I was
> NB> wondering if there is a better way to do it through a flag that i am
> NB> missing or something.
>
> There are multiple ways of doing it and depending on which type of
> internal data structure you have helps decide how to do it.  Generally
> speaking, you need to look at the incoming index values pulled out of
> the OIDs for the SET and use that data to look up the rows in your
> current data.  Then you go through the SET phases and replace the old
> values with the new at the appropriate point (keeping the older ones
> around till the FREE or UNDO phases).
>
> Many of the table handlers help you do this sort of thing (eg the
> iterator helper helps you walk through your data, but is inefficient).
> If you're writing your own without any of the above helpers it'll take
> more work.
>
> You might at least look at the row_merge helper, which groups all the
> incoming requests together by each row so you can safely loop through
> the request chain and know they're all affecting the same row.
> -- 
> Wes Hardaker
> Sparta, Inc. 


------------------------------------------------------------------------------
_______________________________________________
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.