oftpd compiled without ipv6 support does not work on platforme with ipv4 only kernel. Reproducible: Always Steps to Reproduce: oftpd compiled with USE="-ipv6" with ipv4 only kernel (syslog output): Jan 25 21:38:29 gentoocyril oftpd: Starting, version 0.3.7, as PID 26639 Jan 25 21:38:29 gentoocyril oftpd: Binding interface '::', port 21, max clients 250 Jan 25 21:38:29 gentoocyril oftpd: error initializing FTP listener; error creating socket; Address family not supported by protocol with ipv6 support kernel : Jan 26 08:43:47 gentoocyril oftpd: Starting, version 0.3.7, as PID 2248 Jan 26 08:43:47 gentoocyril oftpd: Binding interface '::', port 21, max clients 250 Jan 26 08:43:47 gentoocyril oftpd: in ftp_listener_start Jan 26 08:43:47 gentoocyril oftpd: in connection_acceptor
This would appear to be the combination of two problems. One is that the configure script incorrectly interprets --disable-ipv6 in the same way as --enable-ipv6 and enables it unless no IPv6 enable/disable is specified. The other is that, once configured correctly, the IPv4 build has been broken by the patches to enable IPv6. I can perform the compilation process (and see it listening on IPv4 only) but I do not have a non-IPv6-capable target to test it on. Patches to follow.
Created attachment 337604 [details, diff] Patch for fix broken --disable-ipv6 in configure script.
Created attachment 337606 [details, diff] Patch for broken non-IPv6 build.
(In reply to comment #1) > ... > I can perform the compilation process (and see it listening on IPv4 > only) but I do not have a non-IPv6-capable target to test it on. > ... Hi, I tried patches #337604 and #337606 (added to the oftpd-0.3.7-r8.ebuild). It builds and runs fine on an -ipv6/amd64/no ipv6 kernel system. Only the logs look a bit strange, containing function names. I can provide a build log, and test stability if needed. ---- /var/log/ftpd/current ------ Feb 01 20:29:26 [oftpd] Starting, version 0.3.7, as PID 14070 Feb 01 20:29:26 [oftpd] Binding interface '0.0.0.0', port 2121, max clients 250_ Feb 01 20:29:26 [oftpd] in ftp_listener_start_ Feb 01 20:29:26 [oftpd] in connection_acceptor_ Feb 01 20:30:14 [oftpd] in connection_acceptor loop_ Feb 01 20:30:14 [oftpd] about to call ftp_session_init_ Feb 01 20:30:14 [oftpd] in connection_handler_ Feb 01 20:30:14 [oftpd] 127.0.0.1 port 49929 connection Feb 01 20:30:14 [oftpd] about to call ftp_session_run_ Feb 01 20:30:14 [oftpd] 127.0.0.1 port 49929 220 Service ready for new user. Feb 01 20:30:14 [oftpd] 127.0.0.1 port 49929 USER anonymous_ Feb 01 20:30:14 [oftpd] 127.0.0.1 port 49929 331 Send e-mail address as password. Feb 01 20:30:14 [oftpd] 127.0.0.1 port 49929 PASS opera@_ Feb 01 20:30:14 [oftpd] 127.0.0.1 port 49929 reports e-mail address "opera@" Feb 01 20:30:14 [oftpd] 127.0.0.1 port 49929 230 User logged in, proceed. Feb 01 20:30:14 [oftpd] 127.0.0.1 port 49929 PWD_ Feb 01 20:30:14 [oftpd] 127.0.0.1 port 49929 257 "/" is current directory. Feb 01 20:30:14 [oftpd] 127.0.0.1 port 49929 EPSV ALL_ Feb 01 20:30:14 [oftpd] 127.0.0.1 port 49929 200 EPSV ALL command successful. Feb 01 20:30:14 [oftpd] 127.0.0.1 port 49929 TYPE I_ Feb 01 20:30:14 [oftpd] 127.0.0.1 port 49929 200 Command okay. Feb 01 20:30:14 [oftpd] 127.0.0.1 port 49929 MODE B_ Feb 01 20:30:14 [oftpd] 127.0.0.1 port 49929 504 Command not implemented for that parameter. Feb 01 20:30:14 [oftpd] 127.0.0.1 port 49929 EPSV_ Feb 01 20:30:14 [oftpd] 127.0.0.1 port 49929 229 Entering Extended Passive Mode (|||59816|) Feb 01 20:30:14 [oftpd] 127.0.0.1 port 49929 LIST_ Feb 01 20:30:14 [oftpd] 127.0.0.1 port 49929 150 About to send file list. Feb 01 20:30:14 [oftpd] 127.0.0.1 port 49929 226 Transfer complete. Feb 01 20:30:14 [oftpd] 127.0.0.1 port 49929 QUIT_ Feb 01 20:30:14 [oftpd] 127.0.0.1 port 49929 221 Service closing control connection. Feb 01 20:30:14 [oftpd] 127.0.0.1 port 49929 disconnected Feb 01 20:40:08 [oftpd] SIGTERM received, shutting down Feb 01 20:40:08 [oftpd] all connections finished, FTP server exiting
Package removed.