[AGENT++] SNMPv3_ parallel access

Anurag Jain anuragjain026 at hotmail.com
Wed Dec 12 02:31:18 CET 2007


Ok I guess I understand now :) that we use this overloaded method specifying the valid authoratative engine ID , this should fix the problem as the underlyign implementation
will then correctly localize the keys - the user  ?
 
int add_usm_user(const OctetStr& user_name,
const OctetStr& security_name,
const long int auth_protocol,
const long int priv_protocol,
const OctetStr& auth_password,
const OctetStr& priv_password,
const OctetStr& engine_id);
> From: anuragjain026 at hotmail.com> To: katz at agentpp.com; agentpp at agentpp.org> Subject: RE: [AGENT++] SNMPv3_ parallel access> Date: Tue, 11 Dec 2007 18:24:54 -0600> CC: > > > > I maybe missing something here but doesnt the localization happen in the call to > usm -> add_usm_user (we are using this - localized with remote engine id ) method.> > Shouldnt the key (username and engine id ) identify the correct usm user as the engine ids are unique for the devices in mention.> > I have sent you the logs(separate email with snmp++ debug turned on) with problem.> > We see the problem intemittently , as if it were an issue with a mixup between agents user/engine id combination even though they > should form a correct uniqueness criteria in this particular scenario.> > If not can you confirm it is wrong usage i.e we need to use method > add_localized_user and not add_usm_user and provide an example if possible ?> > > Thanks> Anurag> > Date: Wed, 12 Dec 2007 00:32:18 +0100> From: katz at agentpp.com> To: agentpp at agentpp.org> Subject: Re: [AGENT++] SNMPv3_ parallel access> > Hi,> > > We are seeing some issues with SNMPv3 and parallel concurrent snmpv3> > access to v3 agents on network devices.> > > OR (our usage explanation)> > > At this point in our library (that uses snmp++) we cache a unique> > snmpv3 credential (identified uniquely by : sec user user, auth> > protocol,privprotocol , privpass and auth password) in memory and add> > it to to the USM only once per thread so as not to insert the same> > credential multiple times into USM in the same thread of execution ,> > also each thread access the same snmpv3 agent only during its> > lifetime . Is this something that could cause the above problem in a> > multi threaded environment or is this the right way to proceed?> > to make your code with passwords work, you will have do it like this> 1) lock global mutex> 2) add desired user with password> 3) issue request> 4) wait until response has been received> 5) remove user> 6) unlock global mutex> > So you don't need any threads any longer ;-)> > The right way for your scenario, is to add users using their localized> keys. This way you can add the needed user when contacting the agent for> the first time and keep it in USM until you're sure the agent does not> exist any longer.> > Regards,> Jochen> _______________________________________________> AGENTPP mailing list> AGENTPP at agentpp.org> http://lists.agentpp.org/mailman/listinfo/agentpp> _________________________________________________________________> Share life as it happens with the new Windows Live.> http://www.windowslive.com/share.html?ocid=TXT_TAGHM_Wave2_sharelife_122007_______________________________________________> AGENTPP mailing list> AGENTPP at agentpp.org> http://lists.agentpp.org/mailman/listinfo/agentpp
_________________________________________________________________
Share life as it happens with the new Windows Live.
http://www.windowslive.com/share.html?ocid=TXT_TAGHM_Wave2_sharelife_122007


More information about the AGENTPP mailing list