[
https://issues.apache.org/jira/browse/DIRMINA-996?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Emmanuel Lécharny resolved DIRMINA-996.
---------------------------------------
Fix Version/s: 2.2.3
2.0.25
2.1.8
Resolution: Fixed
I fixed the issue by creating a key that also contains the local port:
{code:java}
String key = session.getRemoteAddress() + ":" +
((InetSocketAddress)session.getLocalAddress()).getPort(); {code}
> IoSessionRecycler RemoteAddress Collision
> -----------------------------------------
>
> Key: DIRMINA-996
> URL: https://issues.apache.org/jira/browse/DIRMINA-996
> Project: MINA
> Issue Type: Bug
> Components: Core
> Affects Versions: 2.0.7
> Reporter: Flavio Battimo
> Assignee: Jonathan Valliere
> Priority: Critical
> Fix For: 2.2.3, 2.0.25, 2.1.8
>
>
> When using NioDatagramAcceptor with multiple binded local addresses the
> IoSessionRecycler is not working as expected.
> If the acceptor has been prefilled with two sessions:
> remoteaddr=192.168.1.10:2001 localaddr=192.168.1.20:1000
> remoteaddr=192.168.1.10:2001 localaddr=192.168.1.20:1001
> so with same remote address but different local address, when the recycle
> method of IoSessionRecycler interface is called only remote address is
> passed. The recycler returns the same IoSession for incoming datagrams on two
> different local addresses of the same acceptor.
> The IoSessionRecycler should have the local address parameter also in order
> to find the correct IoSession.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]