Server components not listening to ipv4 (ipv6 compatability issue)
With the introduction of ipv6 support, the server components (smp and xftp) do not listen to ipv4 any more. The server components bind to their respective ports on ipv6, but not on ipv4. If ipv6 is disabled on the server, the smp and xftp components fail to start. In my tests the last fully working smp-server version is v4.4.1. I suspect, it's some kind of regression with ipv6 support.
The way it works on most linuxes is that binding to ipv6 interface binds to both, so it's not a regression.
We don't bind separately to avoid having two separate threads separately binding to ipv6 and to ipv4.
I guess we just need a fallback that if binding to ipv6 failed or if it's not available then bind to ipv4.
What exactly gets printed when you start the server when ipv6 is disabled?
Thanks for your swift reply.
If ipv6 is disabled, the smp server prints:
Jun 14 11:42:23 (redacted) smp-server[7263]: smp-server: Network.Socket.socket: unsupported operation (Address family not supported by protocol)
and exits with status 1/FAILURE
If ipv6 is enabled, it starts, however it does bind only to ipv6. IPv4 connectivity is not present. "lsof -i" list just one entry: smp-server 1008 smp 40u IPv6 26663 0t0 TCP *:5223 (LISTEN)
v4.4.1 works flawlessly... Any ideas?
Sorry, the ipv6 issue was due to some silly FW misconfig. But the server crash on ipv4 disabled remains...