--> c_varun has joined #net-snmp
--> varun_ has joined #net-snmp
--> frostburn has joined #net-snmp
--> hardaker has joined #net-snmp
--> af_ has joined #net-snmp
--> darnok has joined #net-snmp
--> interfaith has joined #net-snmp
[2008/08/25 08:08:56] #net-snmp <interfaith> hello re:mib2c any reports of memory leaks for mfd ?
[2008/08/25 08:09:44] #net-snmp <rstory> it's been a while since i've tested it, but there shouldn't be..
[2008/08/25 08:13:14] #net-snmp <interfaith> thx, see this output BRIDGE-MIB::dot1dTpFdbStatus.'....f.'.34 = INTEGER: other(1)
[2008/08/25 08:13:31] #net-snmp <interfaith> from mib2c via mfd
[2008/08/25 08:13:58] #net-snmp <interfaith> iftable has no problem (a mfd example ?) but here some odd output shows
[2008/08/25 08:14:24] #net-snmp <interfaith> -Ob fixes this as was pointed out, however is there a way to avoid it ?
[2008/08/25 08:14:55] #net-snmp <interfaith> BRIDGE-MIB::dot1dTpFdbAddress.'.....U'.162 = STRING: 0:11:9:c1:55:a2
[2008/08/25 08:15:07] #net-snmp <interfaith> .......U for example
[2008/08/25 08:15:57] #net-snmp <interfaith> perhaps using mib2c another way will avoid this unwanted ascii output
--> mike_irc has joined #net-snmp
[2008/08/25 08:19:07] #net-snmp <rstory> that's output from snmpwalk, not mib2c..
[2008/08/25 08:19:48] #net-snmp <rstory> so no, there's nothing you can do on the agent side...
[2008/08/25 08:20:17] #net-snmp <rstory> can you show me what the output is with -Ob or -On ?
[2008/08/25 08:21:05] #net-snmp <rstory> it's odd that it shows a string, since the mib defines the index as a MacAddress, which has a proper display-hint..
[2008/08/25 08:30:43] #net-snmp <interfaith> here is -Ob
[2008/08/25 08:30:44] #net-snmp <interfaith> BRIDGE-MIB::dot1dTpFdbAddress.6.0.128.163.102.227.223 = STRING: 0:80:a3:66:e3:df
[2008/08/25 08:31:36] #net-snmp <interfaith> a minor concern, iftable does not seem to have this 'issue'
[2008/08/25 08:31:36] #net-snmp <rstory> aha.. ok, you do have a bug.. the mac address is fixed size, and should not have a length prefix..
[2008/08/25 08:31:50] #net-snmp <interfaith> hah !
[2008/08/25 08:32:13] #net-snmp <interfaith> so then change the code for the mac address, grab it from other mac address code i guess
[2008/08/25 08:32:42] #net-snmp <rstory> you just need to change a type.. hang on a sec..
[2008/08/25 08:33:30] #net-snmp <interfaith> k
[2008/08/25 08:38:18] #net-snmp <rstory> in your *_index_to_oid() function, change var_dot1dTpFdbAddress.type from OCTET_STR to ASN_PRIV_IMPLIED_OCTET_STR
[2008/08/25 08:39:05] #net-snmp <rstory> should be in your _interface.c file..
[2008/08/25 08:40:05] #net-snmp <interfaith> i'll try that now
--> EvalBMS_ has joined #net-snmp
[2008/08/25 08:40:27] #net-snmp <EvalBMS> herro
[2008/08/25 08:41:51] #net-snmp <interfaith> so then some change in the use of mib2c could have avoided this ?
[2008/08/25 08:43:04] #net-snmp <rstory> not in the use, but in mib2c or the mfd conf file.. apparently it doesn't recognize a fixed size octet string that is defined via a textual convention..
[2008/08/25 08:43:14] #net-snmp <EvalBMS> whew! people are alive! heartening.
[2008/08/25 08:43:55] #net-snmp <EvalBMS> ACTION is going loopy about table iterators, C++, and deferred IPC calls
[2008/08/25 08:44:09] #net-snmp <interfaith> ok.. well simply change ASN_OCTET_STR will fix it THX !
[2008/08/25 08:44:14] #net-snmp <EvalBMS> ACTION will spill his beans after the break... (it's dinner time here)
[2008/08/25 08:45:32] #net-snmp <EvalBMS> ACTION wonders if sparse table helper has part of the answer (hint: I need to 'delegate' the get-first-data-point and get-next-data-point operations
[2008/08/25 08:46:35] #net-snmp <EvalBMS> yup, food definitely needed here
[2008/08/25 08:47:33] #net-snmp <interfaith> here too
[2008/08/25 08:47:46] #net-snmp <interfaith> must be an absolute value
[2008/08/25 08:48:22] #net-snmp <EvalBMS> my problems loom large
[2008/08/25 08:48:51] #net-snmp <EvalBMS> I have to do a hop skip and jump from a handler context, into c++, then actually run the iterator (which gets data using our own IPC calls)
[2008/08/25 08:49:07] #net-snmp <EvalBMS> and 'cuz those IPC calls are async, they need to be delegated (i.e. not block)
[2008/08/25 08:49:45] #net-snmp <interfaith> a dedicated agent ?
[2008/08/25 08:49:45] #net-snmp <EvalBMS> ACTION sees delayed_instance.c, but that is just for a scalar instance
[2008/08/25 08:50:02] #net-snmp <EvalBMS> we are using a dedicated agentx process for this, yeah
[2008/08/25 08:50:19] #net-snmp <EvalBMS> but we still have to use the net-snmp event loop as we segue in and out of agentx request land
[2008/08/25 08:50:34] #net-snmp <EvalBMS> (we're using net-snmp to build the agentx subagent, therefore we have net-snmp's event loop underneath)
[2008/08/25 08:50:51] #net-snmp <EvalBMS> I wrapped agent_check_and_process() in some code which fits into our own event framework
[2008/08/25 08:51:07] #net-snmp <EvalBMS> and periodically use snmp_select_info() when the file descriptors may have changed
[2008/08/25 08:51:11] #net-snmp <rstory> so the agentx subagent is embedded in your app?
[2008/08/25 08:51:39] #net-snmp <EvalBMS> one problem here is that our native event loop (XORP EventLoop) expects XorpFd's, which can be Windows HANDLEs or UNIX Fds depending on which planet you're on
[2008/08/25 08:51:51] #net-snmp <EvalBMS> yup
[2008/08/25 08:52:37] #net-snmp <EvalBMS> wrote some code which frobs an STL set; symmetric_difference was pasted 'cuz it doesn't let you choose different functors based on "present in set a" or "present in set b"
[2008/08/25 08:53:19] #net-snmp <EvalBMS> would be nice if we could tease select()-ness out the way WE already did, C++ gave us XorpFd, but that's confusion enough.
[2008/08/25 08:54:06] #net-snmp <interfaith> sounds like you can solve it in linux land for a start
[2008/08/25 08:54:59] #net-snmp <EvalBMS> well, freebsd's where we tend to do things most days
[2008/08/25 08:55:11] #net-snmp <EvalBMS> and that technique appears to work
[2008/08/25 08:55:30] #net-snmp <EvalBMS> we shouldn't really need to do it periodically as the agentx paths appear to use no snmp_alarm_register()'s
[2008/08/25 08:56:18] #net-snmp <EvalBMS> but we do need to check if net-snmp created a new agent session (e.g. the connection to master broke)
[2008/08/25 08:56:33] #net-snmp <EvalBMS> btw would be nice if there were a way of polling for connection to the master being OK
[2008/08/25 08:57:03] #net-snmp <EvalBMS> I just use the default init_agent() and init_snmp() paths on the way in, inside a constructor for SnmpSubagent (just an oblique wrapper)
[2008/08/25 08:57:10] #net-snmp <rstory> you can set it up to ping the master every N seconds
[2008/08/25 08:57:44] #net-snmp <EvalBMS> cool...
[2008/08/25 08:58:48] #net-snmp <EvalBMS> rstory: agentx looks like it hella caused refactoring when it went in
[2008/08/25 08:59:13] #net-snmp <EvalBMS> call tree chopp
[2008/08/25 08:59:23] #net-snmp <rstory> probably.. that was before my time...
[2008/08/25 09:01:28] #net-snmp <EvalBMS> putting nsap in a function name, evil :o)
[2008/08/25 09:01:39] #net-snmp <EvalBMS> ACTION .oO(huh? wha? atm? where?)
[2008/08/25 09:05:21] #net-snmp <EvalBMS> NETSNMP_DS_AGENT_AGENTX_PING_INTERVAL
[2008/08/25 09:05:23] #net-snmp <EvalBMS> heh
[2008/08/25 09:06:14] #net-snmp <EvalBMS> ok I see that now, that's cool
[2008/08/25 09:06:33] #net-snmp <EvalBMS> NETSNMP_DS_AGENT_NO_CONNECTION_WARNINGS
[2008/08/25 09:06:34] #net-snmp <EvalBMS> also see that
[2008/08/25 09:07:26] #net-snmp <EvalBMS> would be nice if I could ask for a callback whenever the connection flaps
[2008/08/25 09:09:30] #net-snmp <EvalBMS> root snmpd 942 8 stream /var/agentx/master
[2008/08/25 09:09:31] #net-snmp <EvalBMS> hmm!
[2008/08/25 09:13:03] #net-snmp <EvalBMS> can't poll the tdomains
[2008/08/25 09:13:09] #net-snmp <EvalBMS> snmp_agent.c does not export them
[2008/08/25 09:13:43] #net-snmp <EvalBMS> s/snmp_agent.c/subagent.c/
[2008/08/25 09:14:11] #net-snmp <EvalBMS> trapping the LOG_WARNING isn't really kosher
[2008/08/25 09:14:40] #net-snmp <EvalBMS> Oooooh.
[2008/08/25 09:14:47] #net-snmp <EvalBMS> netsnmp_session *main_session = NULL;
[2008/08/25 09:14:50] #net-snmp <EvalBMS> global
[2008/08/25 09:19:05] #net-snmp <EvalBMS> oh
[2008/08/25 09:19:11] #net-snmp <EvalBMS> I could poll with snmp_sess_pointer()
[2008/08/25 09:19:20] #net-snmp <EvalBMS> and snmp_sess_transport()
[2008/08/25 09:25:01] #net-snmp <interfaith> made the change var_dot1dTpFdbAddress.type = ASN_PRIV_IMPLIED_OCTET_STR
[2008/08/25 09:25:26] #net-snmp <interfaith> still shows the ascii ->BRIDGE-MIB::dot1dTpFdbAddress.'..H...' = STRING: 0:0:48:d3:91:c4
[2008/08/25 09:26:04] #net-snmp <interfaith> perhaps i should use another mib2c conf or just copy the iftable code ?
--> clever has joined #net-snmp
[2008/08/25 09:48:35] #net-snmp <rstory> interfaith: that won't help, because the ifTable doesn't have a mac addr as the index
[2008/08/25 09:50:32] #net-snmp <rstory> aha.. also in interface.c, check your _initialize_interface for a call to netsnmp_table_helper_add_indexes.. and change the address one to implied again..
[2008/08/25 09:50:43] #net-snmp <interfaith> will do
[2008/08/25 09:51:35] #net-snmp <rstory> and check index_from_oid as well
[2008/08/25 09:51:43] #net-snmp <interfaith> right
[2008/08/25 12:20:05] #net-snmp <interfaith> one final place -> case COLUMN_DOT1DTPFDBADDRESS:
[2008/08/25 12:20:05] #net-snmp <interfaith> var->type = ASN_PRIV_IMPLIED_OCTET_STR;//ASN_OCTET_STR;
[2008/08/25 12:23:42] #net-snmp <rstory> so what does the walk output now?
--> magfr has joined #net-snmp
[2008/08/25 12:50:53] #net-snmp <interfaith> failed.. i will undo that last change
[2008/08/25 12:51:23] #net-snmp <interfaith> walking the bridge..
[2008/08/25 13:12:26] #net-snmp <interfaith> back to the same display BRIDGE-MIB::dot1dTpFdbStatus.'..1.Z.' = INTEGER: other(1)
[2008/08/25 13:12:56] #net-snmp <interfaith> BRIDGE-MIB::dot1dTpFdbAddress.'....&.' = STRING: 0:80:a3:18:26:8f
[2008/08/25 13:13:18] #net-snmp <interfaith> so far 3 changes of the OCTET_STR type
--> dliang has joined #net-snmp
[2008/08/25 13:13:43] #net-snmp <dliang> Is there a way to set the source IP for outgoing snmpwalk commands?
[2008/08/25 13:13:55] #net-snmp <interfaith> well its not crucial, i can live with it
[2008/08/25 13:14:29] #net-snmp <rstory> dliang: try clientaddr.. set the snmp.conf man page
[2008/08/25 13:14:35] #net-snmp <rstory> s/set/see/
[2008/08/25 13:15:05] #net-snmp <interfaith> snmpwalk -v2c -c HELLO 192.168.0.19 BRIDGE
[2008/08/25 13:15:18] #net-snmp <interfaith> walking the bridge at 19
[2008/08/25 13:15:49] #net-snmp <dliang> rstory: Hmm, don't see anything like that in the man page
[2008/08/25 13:15:51] #net-snmp <rstory> when you said 'failed' earlier, what happened?
[2008/08/25 13:15:58] #net-snmp <rstory> dliang: what release?
[2008/08/25 13:19:39] #net-snmp <dliang> rstory: sorry, 5.3.1-24
[2008/08/25 13:21:04] #net-snmp <rstory> hmm.. are you sure you are looking at the man page for snmp.conf, and not snmpd.conf?
[2008/08/25 13:21:51] #net-snmp <dliang> rstory: Oh doh, thanks I see it now :)
[2008/08/25 13:43:42] #net-snmp <interfaith> error when walking
[2008/08/25 13:43:43] #net-snmp <interfaith> -- iso.3.6.1.2.1.17.4.3.1.1.0.0.170.162.50.84
[2008/08/25 13:43:44] #net-snmp <interfaith> snmp_build: unknown failuresend response: Error building ASN.1 representation (wrong type in snmp_reall)
[2008/08/25 13:43:44] #net-snmp <interfaith>
[2008/08/25 13:44:08] #net-snmp <interfaith> so i backed out of that final change
[2008/08/25 14:09:43] #net-snmp <EvalBMS> ACTION back ;ended up socialising
--> rstory has joined #net-snmp
--> mike_irc has joined #net-snmp
--> rstory has joined #net-snmp
[2008/08/25 19:29:15] #net-snmp <fenestro> so, basically nobody uses the python bindings, eh?
--> c_varun has joined #net-snmp
--> Lap_64 has joined #net-snmp
--> snmpbot has joined #net-snmp