Tiny Core Linux

Tiny Core Base => TCB Bugs => Topic started by: simonc_67 on September 27, 2011, 05:23:36 AM

Title: Regression for Version 4. inetd : bind failed on telnet/tcp
Post by: simonc_67 on September 27, 2011, 05:23:36 AM
Address family not supported by protocol.

To reproduce... get inetutils.tcz and inetutils-servers.tcz.

Create /etc/protocols
tcp 6 TCP
udp 17 UDP

Create /etc/inetd.conf
telnet  stream tcp nowait root /usr/local/sbin/telnetd telnetd

$ /usr/local/sbin/inetd -d /etc/inetd.conf

Gives you the message
/etc/inetd.conf:1 ADD *:telnet proto=tcp, wait=0, max=0, user=root builltin=0 server=/usr/local/sbin/telnetd
bind failed on telnet/tcp: Address family not supported by protocol

This works fine in Version 3.8.

Regards,

Simon
Title: Re: Regression for Version 4. inetd : bind failed on telnet/tcp
Post by: manmasel on September 29, 2011, 04:51:34 AM
Hi,
i have a similar trouble with ffserver (ffmpeg-ffserver.tcz).
When I start ffsever with this ffserver.conf

Port 8090
# bind to all IPs aliased or not
BindAddress 0.0.0.0
# max number of simultaneous clients
MaxClients 1000
# max bandwidth per-client (kb/s)
MaxBandwidth 10000
# Suppress that if you want to launch ffserver as a daemon.
#NoDaemon

<Feed feed1.ffm>
File /tmp/feed1.ffm
FileMaxSize 2M
#Format swf
</Feed>

<Stream test.mjpeg>
Feed feed1.ffm
Format mpjpeg
VideoBitRate 1000
VideoBufferSize 320
#VideoFrameRate 15
VideoSize 640x480
VideoGopSize 13
#VideoIntraOnly
NoAudio
</Stream>

 I have the error:

Bind(port 8090): Address family not supported by protocol

In version 3.8 instead, with same settings work fine. The version of ffserver is the same 0.6.90-rc0

Someone have an answer? Thanks.
Title: Re: Regression for Version 4. inetd : bind failed on telnet/tcp
Post by: ixbrian on September 29, 2011, 11:50:19 PM
As a temporary workaround for the telnetd server, the busybox inetd seems to work:

Code: [Select]
busybox inetd /etc/inetd.conf
Title: Re: Regression for Version 4. inetd : bind failed on telnet/tcp
Post by: ixbrian on September 30, 2011, 12:16:46 AM
If you run the inetutil-servers inetd under strace it looks like it is trying to bind with IPv6 for some reason.
Title: Re: Regression for Version 4. inetd : bind failed on telnet/tcp
Post by: curaga on September 30, 2011, 02:59:04 AM
..and if that's the case, we have ipv6 support in the ipv6 extension.
Title: Re: Regression for Version 4. inetd : bind failed on telnet/tcp
Post by: ixbrian on September 30, 2011, 06:54:00 PM
..and if that's the case, we have ipv6 support in the ipv6 extension.

After loading the ipv6 extension the inetutil-servers inetd works. 
Title: Re: Regression for Version 4. inetd : bind failed on telnet/tcp
Post by: simonc_67 on October 03, 2011, 06:46:48 AM
Many thanks for your replies!!!!

IPV6 worked for me :-)

What should the long term fix be?

Should IPV6 be a dependancy for inetutils.tcz. It certainly makes it easier because ipv6 contains /etc/protocols, saving some typing ;-)

Or could the IPV6 dependancy be removed from inetutils?

Or possibly default to the busybox version?
Title: Re: Regression for Version 4. inetd : bind failed on telnet/tcp
Post by: curaga on October 03, 2011, 08:05:45 AM
Maybe a default has been changed in somewhere, making an unspecified "tcp" be both instead of just ipv4.

When using "tcp4" instead of "tcp" in inetd.conf (thus forcing ipv4), it works with inetutils-servers inetd. Current inetutils-servers depends on iana-etc (-> /etc/protocols), I don't think an ipv6 dep is needed.