Correctly obtain localAddress after connect was complete

Motivation:

We need to cache the localAddress after the connect was complete

Modifications:

- Call socket.localAddress() after the connect was complete
- Enable test again

Result:

Correctly set localAddress after connect was successful
This commit is contained in:
Norman Maurer 2020-09-02 10:25:03 +02:00
parent b4e7f046d5
commit c0ddac2c83
2 changed files with 3 additions and 10 deletions

View File

@ -371,6 +371,9 @@ abstract class AbstractIOUringChannel extends AbstractChannel implements UnixCha
} }
active = true; active = true;
if (local == null) {
local = socket.localAddress();
}
computeRemote(); computeRemote();
// Register POLLRDHUP // Register POLLRDHUP

View File

@ -19,8 +19,6 @@ import io.netty.bootstrap.Bootstrap;
import io.netty.bootstrap.ServerBootstrap; import io.netty.bootstrap.ServerBootstrap;
import io.netty.testsuite.transport.TestsuitePermutation; import io.netty.testsuite.transport.TestsuitePermutation;
import io.netty.testsuite.transport.socket.SocketConnectTest; import io.netty.testsuite.transport.socket.SocketConnectTest;
import org.junit.Ignore;
import org.junit.Test;
import java.util.List; import java.util.List;
@ -29,12 +27,4 @@ public class IOUringSocketConnectTest extends SocketConnectTest {
protected List<TestsuitePermutation.BootstrapComboFactory<ServerBootstrap, Bootstrap>> newFactories() { protected List<TestsuitePermutation.BootstrapComboFactory<ServerBootstrap, Bootstrap>> newFactories() {
return IOUringSocketTestPermutation.INSTANCE.socket(); return IOUringSocketTestPermutation.INSTANCE.socket();
} }
@Ignore
@Test
@Override
public void testLocalAddressAfterConnect() throws Throwable {
super.testLocalAddressAfterConnect();
}
} }