Red Hat Bugzilla – Bug 1285091
xinetd attempts to bind to IPv6 sockets even on systems with IPv6 disabled
Last modified: 2016-05-10 17:42:13 EDT
Description of problem:
xinetd attempts to open sockets with PF_INET6 by default, even on systems with IPv6 module disabled ('options ipv6 disabled=1' in /etc/modprobe.d/*)
This causes xinetd to kill long running clients with xinetd is reloaded because xinetd appears to believe the config has changed for the service.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. enable telnet, or some other connection service in xinetd
2. disable IPv6 (blacklist the module, or options ipv6 disabled=1)
4. telnet (or connect to enabled service)
5. send SIGHUP (or 'service xinetd reload')
telnet connection is dropped because the telnet process receives SIGKILL
telnet connection stays up because telnet config didn't change
IPv6 by default was added in https://bugzilla.redhat.com/show_bug.cgi?id=195265
It looks like now if IPv6 is disabled xinetd gets confused thinking the running config doesn't match the defined service and will always send a SIGKILL (would send SIGTERM if the service were type = INTERNAL). This is not desired behavior as the telnet (or whatever defined service) configuration has not changed.
Clarification was added to the man pages via: https://bugzilla.redhat.com/show_bug.cgi?id=1075152 but that misses the point. The work-around would be to set 'flags = IPv4' to the service or 'bind = 0.0.0.0' to the main xinetd.conf (as documented on our portal: https://access.redhat.com/solutions/706163 ) Maybe that should be added to the man page, as it is more relevant...
However customer feels that xinetd should handle this situation gracefully
Created attachment 1100938 [details]
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory, and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.