You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mina.apache.org by "Emmanuel Lécharny (Jira)" <ji...@apache.org> on 2023/09/07 03:23:00 UTC

[jira] [Resolved] (DIRMINA-996) IoSessionRecycler RemoteAddress Collision

     [ 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: dev-unsubscribe@mina.apache.org
For additional commands, e-mail: dev-help@mina.apache.org