[SNMP4J] Two Snmp, one TransportMapping cause IOException
Robert Mycek
robert.mycek at gmail.com
Wed Oct 14 10:31:42 CEST 2009
Hi,
asyncMsgProcessingSupported is true by default (AbstractTransportMapping:44)
Problem is in AbstractTransportMapping.fireProcessMessage(Address,
ByteBuffer):83
After first iteration buffer buf is in wrong state (processMessage
read from buf and change it position)
I change this line to:
l.processMessage(this, address, buf.duplicate());
and after recompilation it works.
rm
On Tue, Oct 13, 2009 at 9:47 PM, Frank Fock <fock at agentpp.com> wrote:
> 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