[SNMP4J] Two Snmp, one TransportMapping cause IOException

Frank Fock fock at agentpp.com
Tue Oct 13 21:47:21 CEST 2009


Hi Robert,

Although this is an unusual use case (normally you would use
a single Snmp instance with one or more transport mappings),
it should work. Prerequisite is that you set

transport.setAsyncMsgProcessingSupported(true);

before you call

transport.listen();

Best regards,
Frank

Robert Mycek wrote:
> Hi,
> 
> QUESTION:
> Is it OK to put one transportMapping to many Snmp object?
> 
> PROBLEM:
> I create 2 Snmp objects and one TransportMapping (UDP).
> 
> TransportMapping transport = new DefaultUdpTransportMapping(address);
> transport.listen();
> Snmp snmp1 = new Snmp(transport);
> Snmp snmp2 = new Snmp(transport);
> 
> Simultaneously in separate threads do request (Set, Get, etc) on snmp1
> and snmp2.
> 
> This cause:
> java.io.IOException: Unexpected end of input stream at position 87
>        at org.snmp4j.asn1.BERInputStream.read(BERInputStream.java:59)
>        at org.snmp4j.asn1.BER.decodeHeader(BER.java:578)
>        at org.snmp4j.MessageDispatcherImpl.processMessage(MessageDispatcherImpl.java:327)
>        at org.snmp4j.MessageDispatcherImpl.processMessage(MessageDispatcherImpl.java:309)
>        at org.snmp4j.transport.AbstractTransportMapping.fireProcessMessage(AbstractTransportMapping.java:83)
>        at org.snmp4j.transport.DefaultUdpTransportMapping$ListenThread.run(DefaultUdpTransportMapping.java:364)
>        at java.lang.Thread.run(Thread.java:595)
>        at org.snmp4j.util.DefaultThreadFactory$WorkerThread.run(DefaultThreadFactory.java:65)
> 
> snmp4j: 1.10.1
> 
> RM
> _______________________________________________
> SNMP4J mailing list
> SNMP4J at agentpp.org
> http://lists.agentpp.org/mailman/listinfo/snmp4j

-- 
AGENT++
http://www.agentpp.com
http://www.snmp4j.com
http://www.mibexplorer.com
http://www.mibdesigner.com




More information about the SNMP4J mailing list