Running xinetd 2.3.12
Marco Di Benedetto <[email protected]> Wed, 13 Aug 2003 12:22:40 -0700 (PDT)
| Newsgroups | gmane.network.xinetd |
|---|---|
| Message-ID | <[email protected]> |
Hi all.
A few days ago I've downloaded the sources of xinetd v2.3.12, and
I'm having a few problems running it.
First of all, the built executable. I'm running xinetd on a pentium-based
linux box with a 2.4.17 kernel (sources built with the same).
I was used to run xinetd 2.3.3, and I had an /etc/xinetd.conf (plus a
/etc/xinetd.d/*) with that version of xinetd running a few services
(telnet, ssh, ftp). Everything was fine with 2.3.3.
I replaced the old xinetd binary with the new binary (didn't touch the
conf files), but the new version seems to have problems with the following
in the conf file:
> defaults
> {
> [...]
> log_type = SYSLOG authpriv
> log_on_success = HOST PID
> log_on_failure = HOST
> }
Removing those 3 lines the behavior changes. But let's start with those
lines present... I don't get any warning about them if the '-d' option
is enabled, but xinetd crashes immediately when it tries to show me
something about them:
> Linux(debug)# xinetd -syslog local7 -dontfork -reuse -d &
> [1] 2623
> 03/8/13@09:52:20: DEBUG: 2623 {handle_includedir} Reading included configuration file:
> /etc/xinetd.d/ftp [file=/etc/xinetd.conf] [line=38]
> 03/8/13@09:52:20: DEBUG: 2623 {handle_includedir} Reading included configuration file:
> /etc/xinetd.d/rexec [file=/etc/xinetd.d/rexec] [line=13]
> 03/8/13@09:52:20: DEBUG: 2623 {handle_includedir} Reading included configuration file:
> /etc/xinetd.d/rlogin [file=/etc/xinetd.d/rlogin] [line=15]
> 03/8/13@09:52:20: DEBUG: 2623 {handle_includedir} Reading included configuration file:
> /etc/xinetd.d/rsh [file=/etc/xinetd.d/rsh] [line=15]
> 03/8/13@09:52:20: DEBUG: 2623 {handle_includedir} Reading included configuration file:
> /etc/xinetd.d/ssh [file=/etc/xinetd.d/ssh] [line=16]
> 03/8/13@09:52:20: DEBUG: 2623 {handle_includedir} Reading included configuration file:
> /etc/xinetd.d/telnet [file=/etc/xinetd.d/telnet] [line=30]
> Service defaults
> Instances = 60
> Bind = All addresses.
> Only from: All sites
> No access: No blocked sites
> Logging to syslog. Facility = authpriv, level = info
> Log_on_success flags = HOST PID03/8/13@09:52:20: CRITICAL: 2623 {mem_fault_handler}
> Address of fault: 46415254
> 03/8/13@09:52:20: CRITICAL: 2623 {mem_fault_handler} address is not mapped for object
> 03/8/13@09:52:20: CRITICAL: 2623 {general_handler} (2623) Unexpected signal: 11 (Segmentation
> fault)
And then there's a SIGABRT and xinetd exits.
If I leave those 3 lines, and start without the '-d' option, no service is enabled, and
xinetd causes lots of SIGSEGV whenever I try to send a HUP or a USR1.
Now, what happens if I remove those 3 lines? Well, the behavior improves, I can use
the telnet service when I start xinetd, but HUP and USR1 are still not working.
As soon as I use HUP, all the services get disabled, and telnet doesn't work anymore.
Here is a wild log of my attempts after removing those three lines from the
/etc/xinetd.conf (skip this log for some comments about building xinetd 2.3.12):
> Linux(debug)# ps aux |grep xin
> root 4075 0.0 0.0 1336 480 ttyS0 S 11:19 0:00 grep xin
> Linux(debug)# xinetd -dontfork -reuse -d &
> 03/8/13@11:19:59: DEBUG: 4076 {handle_includedir} Reading included
> configuration file: /etc/xinet
> d.d/ftp [file=/etc/xinetd.conf] [line=38]
> 03/8/13@11:19:59: DEBUG: 4076 {handle_includedir} Reading included
> configuration file: /etc/xinet
> d.d/rexec [file=/etc/xinetd.d/rexec] [line=12]
> 03/8/13@11:19:59: DEBUG: 4076 {handle_includedir} Reading included
> configuration file: /etc/xinet
> d.d/rlogin [file=/etc/xinetd.d/rlogin] [line=15]
> 03/8/13@11:19:59: DEBUG: 4076 {handle_includedir} Reading included
> configuration file: /etc/xinet
> d.d/rsh [file=/etc/xinetd.d/rsh] [line=15]
> 03/8/13@11:19:59: DEBUG: 4076 {handle_includedir} Reading included
> configuration file: /etc/xinet
> d.d/ssh [file=/etc/xinetd.d/ssh] [line=16]
> 03/8/13@11:19:59: DEBUG: 4076 {handle_includedir} Reading included
> configuration file: /etc/xinet
> d.d/telnet [file=/etc/xinetd.d/telnet] [line=30]
> Service defaults
> Instances = 60
> Bind = All addresses.
> Only from: All sites
> No access: No blocked sites
> No logging
>
> Service configuration: ftp
> id = ftp
> flags = IPv4
> socket_type = stream
> Protocol (name,number) = (tcp,6)
> port = 21
> wait = no
> user = 0
> Groups = no
> PER_SOURCE = -1
> Bind = All addresses.
> Server = /usr/sbin/in.ftpd
> Server argv = in.ftpd
> Only from: 127.0.0.0/255.0.0.0(NET)
> No access: No blocked sites
> No logging
>
> Service configuration: exec
> id = exec
> flags = IPv4
> socket_type = stream
> Protocol (name,number) = (tcp,6)
> port = 512
> wait = no
> user = 0
> Groups = no
> PER_SOURCE = -1
> Bind = All addresses.
> Server = /usr/sbin/in.rexecd
> Server argv = in.rexecd
> Only from: 127.0.0.0/255.0.0.0(NET)
> No access: No blocked sites
> No logging
>
> Service configuration: login
> id = login
> flags = IPv4
> socket_type = stream
> Protocol (name,number) = (tcp,6)
> port = 513
> wait = no
> user = 0
> Groups = no
> PER_SOURCE = -1
> Bind = All addresses.
> Server = /usr/sbin/in.rlogind
> Server argv = in.rlogind
> Only from: 127.0.0.0/255.0.0.0(NET)
> No access: No blocked sites
> No logging
>
> Service configuration: shell
> id = shell
> flags = IPv4
> socket_type = stream
> Protocol (name,number) = (tcp,6)
> port = 514
> wait = no
> user = 0
> Groups = no
> PER_SOURCE = -1
> Bind = All addresses.
> Server = /usr/sbin/in.rshd
> Server argv = in.rshd
> Only from: 127.0.0.0/255.0.0.0(NET)
> No access: No blocked sites
> No logging
>
> Service configuration: ssh
> id = ssh
> flags = IPv4
> socket_type = stream
> Protocol (name,number) = (tcp,6)
> port = 22
> wait = no
> user = 0
> Groups = no
> PER_SOURCE = -1
> Bind = All addresses.
> Server = /isan/sbin/sshd
> Server argv = sshd -i
> Only from: All sites
> No access: No blocked sites
> No logging
>
> Service configuration: telnet
> id = telnet
> flags = REUSE IPv4
> socket_type = stream
> Protocol (name,number) = (tcp,6)
> port = 23
> wait = no
> user = 0
> Groups = no
> PER_SOURCE = -1
> Bind = All addresses.
> Server = /usr/sbin/in.telnetd
> Server argv = in.telnetd
> Only from: All sites
> No access: No blocked sites
> No logging
>
> 03/8/13@11:19:59: DEBUG: 4076 {cnf_start_services} Started service: ftp
> 03/8/13@11:19:59: DEBUG: 4076 {cnf_start_services} Started service: exec
> 03/8/13@11:19:59: DEBUG: 4076 {cnf_start_services} Started service: login
> 03/8/13@11:19:59: DEBUG: 4076 {cnf_start_services} Started service: shell
> 03/8/13@11:19:59: DEBUG: 4076 {cnf_start_services} Started service: ssh
> 03/8/13@11:19:59: DEBUG: 4076 {cnf_start_services} Started service: telnet
> 03/8/13@11:20:03: DEBUG: 4076 {cnf_start_services} mask_max = 11,
> services_started = 6
> 03/8/13@11:20:03: NOTICE: 4076 {main} xinetd Version 2.3.12 started with no
> options compiled in.
> 03/8/13@11:20:03: NOTICE: 4076 {main} Started working: 6 available services
> 03/8/13@11:20:03: DEBUG: 4076 {main_loop} active_services = 6
> [1] 4076
> Linux(debug)# 03/8/13@11:20:46: DEBUG: 4076 {main_loop} select returned 1
> 03/8/13@11:20:46: DEBUG: 4076 {server_start} Starting service telnet
> 03/8/13@11:20:46: DEBUG: 4076 {main_loop} active_services = 6
> 03/8/13@11:20:46: DEBUG: 4077 {exec_server} duping 12
> 03/8/13@11:20:51: DEBUG: 4076 {main_loop} active_services = 6
> 03/8/13@11:20:51: DEBUG: 4076 {main_loop} select returned 1
> 03/8/13@11:20:51: DEBUG: 4076 {check_pipe} Got signal 17 (Child exited)
> 03/8/13@11:20:51: DEBUG: 4076 {child_exit} waitpid returned = 4077
> 03/8/13@11:20:51: DEBUG: 4076 {server_end} telnet server 4077 exited
> 03/8/13@11:20:51: INFO: 4076 {conn_free} freeing connection
> 03/8/13@11:20:51: DEBUG: 4076 {child_exit} waitpid returned = -1
> 03/8/13@11:20:51: DEBUG: 4076 {main_loop} active_services = 6
>
> Linux(debug)# kill -HUP 4076
> 03/8/13@11:21:01: DEBUG: 4076 {main_loop} active_services = 6
> 03/8/13@11:21:01: DEBUG: 4076 {main_loop} select returned 1
> 03/8/13@11:21:01: DEBUG: 4076 {check_pipe} Got signal 1 (Hangup)
> 03/8/13@11:21:01: NOTICE: 4076 {hard_reconfig} Starting reconfiguration
> Service defaults
> Bind = All addresses.
> Only from: All sites
> No access: No blocked sites
> No logging
>
> 03/8/13@11:21:01: DEBUG: 4076 {deactivate} 4076 Service ftp deactivated
> 03/8/13@11:21:01: NOTICE: 4076 {hard_reconfig} service ftp deactivated
> 03/8/13@11:21:01: DEBUG: 4076 {svc_release} ref count of service ftp
> dropped to 0
> 03/8/13@11:21:01: DEBUG: 4076 {deactivate} 4076 Service exec deactivated
> 03/8/13@11:21:01: NOTICE: 4076 {hard_reconfig} service exec deactivated
> 03/8/13@11:21:01: DEBUG: 4076 {svc_release} ref count of service exec
> dropped to 0
> 03/8/13@11:21:01: DEBUG: 4076 {deactivate} 4076 Service login deactivated
> 03/8/13@11:21:01: NOTICE: 4076 {hard_reconfig} service login deactivated
> 03/8/13@11:21:01: DEBUG: 4076 {svc_release} ref count of service login
> dropped to 0
> 03/8/13@11:21:01: DEBUG: 4076 {deactivate} 4076 Service shell deactivated
> 03/8/13@11:21:01: NOTICE: 4076 {hard_reconfig} service shell deactivated
> 03/8/13@11:21:01: DEBUG: 4076 {svc_release} ref count of service shell
> dropped to 0
> 03/8/13@11:21:01: DEBUG: 4076 {deactivate} 4076 Service ssh deactivated
> 03/8/13@11:21:01: NOTICE: 4076 {hard_reconfig} service ssh deactivated
> 03/8/13@11:21:01: DEBUG: 4076 {svc_release} ref count of service ssh
> dropped to 0
> 03/8/13@11:21:01: DEBUG: 4076 {deactivate} 4076 Service telnet deactivated
> 03/8/13@11:21:01: NOTICE: 4076 {hard_reconfig} service telnet deactivated
> 03/8/13@11:21:01: DEBUG: 4076 {svc_release} ref count of service telnet
> dropped to 0
> 03/8/13@11:21:01: DEBUG: 4076 {cnf_start_services} mask_max = 11,
> services_started = 0
> 03/8/13@11:21:01: NOTICE: 4076 {hard_reconfig} Reconfigured: new=0 old=0
> dropped=6 (services)
> 03/8/13@11:21:01: DEBUG: 4076 {main_loop} active_services = 0
> Linux(debug)# kill -USR1 4076
> 03/8/13@11:21:10: DEBUG: 4076 {main_loop} active_services = 0
> 03/8/13@11:21:10: DEBUG: 4076 {main_loop} select returned 1
> 03/8/13@11:21:10: DEBUG: 4076 {check_pipe} Got signal 10 (User defined
> signal 1)
> 03/8/13@11:21:10: DEBUG: 4076 {dump_internal_state} Dumping State
> 03/8/13@11:21:10: INFO: 4076 {dump_internal_state} generated state dump in
> file /var/run/xinetd.d
> ump
> 03/8/13@11:21:10: DEBUG: 4076 {main_loop} active_services = 0
> Linux(debug)# cat /var/run/xinetd.dump
> INTERNAL STATE DUMP: xinetd Version 2.3.12
> Current time: Wed Aug 13 11:21:10 2003
>
> Services + defaults:
> Service defaults
> Bind = All addresses.
> Only from: All sites
> No access: No blocked sites
> No logging
> Server table dump:
>
> Retry table dump:
>
> Socket mask: 4
> mask_max = 11
> Open descriptors (not in socket mask): 0 1 2 3 5 6
>
> active_services = 0
> available_services = 0
> descriptors_free = 1016
> running_servers = 0
> Logging service = enabled
>
> max_descriptors = 1024
> process_limit = 0
> config_file = /etc/xinetd.conf
> debug_fd = 3
>
> END OF DUMP
>
> Linux(debug)# kill -TERM 4076
> 03/8/13@11:24:02: DEBUG: 4076 {main_loop} active_services = 0
> 03/8/13@11:24:02: DEBUG: 4076 {main_loop} select returned 1
> 03/8/13@11:24:02: DEBUG: 4076 {check_pipe} Got signal 15 (Terminated)
> 03/8/13@11:24:02: WARNING: 4076 {quit_program} Exiting...
> Linux(debug)# xinetd -syslog local7 -dontfork -reuse -d &
> [1] 4100
> 03/8/13@11:24:29: DEBUG: 4100 {handle_includedir} Reading included
> configuration file: /etc/xinet
> d.d/ftp [file=/etc/xinetd.conf] [line=38]
> 03/8/13@11:24:29: DEBUG: 4100 {handle_includedir} Reading included
> configuration file: /etc/xinet
> d.d/rexec [file=/etc/xinetd.d/rexec] [line=12]
> 03/8/13@11:24:29: DEBUG: 4100 {handle_includedir} Reading included
> configuration file: /etc/xinet
> d.d/rlogin [file=/etc/xinetd.d/rlogin] [line=15]
> 03/8/13@11:24:29: DEBUG: 4100 {handle_includedir} Reading included
> configuration file: /etc/xinet
> d.d/rsh [file=/etc/xinetd.d/rsh] [line=15]
> 03/8/13@11:24:29: DEBUG: 4100 {handle_includedir} Reading included
> configuration file: /etc/xinet
> d.d/ssh [file=/etc/xinetd.d/ssh] [line=16]
> 03/8/13@11:24:29: DEBUG: 4100 {handle_includedir} Reading included
> configuration file: /etc/xinet
> d.d/telnet [file=/etc/xinetd.d/telnet] [line=30]
> Service defaults
> Instances = 60
> Bind = All addresses.
> Only from: All sites
> No access: No blocked sites
> No logging
>
> Service configuration: ftp
> id = ftp
> flags = IPv4
> socket_type = stream
> Protocol (name,number) = (tcp,6)
> port = 21
> wait = no
> user = 0
> Groups = no
> PER_SOURCE = -1
> Bind = All addresses.
> Server = /usr/sbin/in.ftpd
> Server argv = in.ftpd
> Only from: 127.0.0.0/255.0.0.0(NET)
> No access: No blocked sites
> No logging
>
> Service configuration: exec
> id = exec
> flags = IPv4
> socket_type = stream
> Protocol (name,number) = (tcp,6)
> port = 512
> wait = no
> user = 0
> Groups = no
> PER_SOURCE = -1
> Bind = All addresses.
> Server = /usr/sbin/in.rexecd
> Server argv = in.rexecd
> Only from: 127.0.0.0/255.0.0.0(NET)
> No access: No blocked sites
> No logging
>
> Service configuration: login
> id = login
> flags = IPv4
> socket_type = stream
> Protocol (name,number) = (tcp,6)
> port = 513
> wait = no
> user = 0
> Groups = no
> PER_SOURCE = -1
> Bind = All addresses.
> Server = /usr/sbin/in.rlogind
> Server argv = in.rlogind
> Only from: 127.0.0.0/255.0.0.0(NET)
> No access: No blocked sites
> No logging
>
> Service configuration: shell
> id = shell
> flags = IPv4
> socket_type = stream
> Protocol (name,number) = (tcp,6)
> port = 514
> wait = no
> user = 0
> Groups = no
> PER_SOURCE = -1
> Bind = All addresses.
> Server = /usr/sbin/in.rshd
> Server argv = in.rshd
> Only from: 127.0.0.0/255.0.0.0(NET)
> No access: No blocked sites
> No logging
>
> Service configuration: ssh
> id = ssh
> flags = IPv4
> socket_type = stream
> Protocol (name,number) = (tcp,6)
> port = 22
> wait = no
> user = 0
> Groups = no
> PER_SOURCE = -1
> Bind = All addresses.
> Server = /isan/sbin/sshd
> Server argv = sshd -i
> Only from: All sites
> No access: No blocked sites
> No logging
>
> Service configuration: telnet
> id = telnet
> flags = REUSE IPv4
> socket_type = stream
> Protocol (name,number) = (tcp,6)
> port = 23
> wait = no
> user = 0
> Groups = no
> PER_SOURCE = -1
> Bind = All addresses.
> Server = /usr/sbin/in.telnetd
> Server argv = in.telnetd
> Only from: All sites
> No access: No blocked sites
> No logging
>
> 03/8/13@11:24:29: DEBUG: 4100 {cnf_start_services} Started service: ftp
> 03/8/13@11:24:29: DEBUG: 4100 {cnf_start_services} Started service: exec
> 03/8/13@11:24:29: DEBUG: 4100 {cnf_start_services} Started service: login
> 03/8/13@11:24:29: DEBUG: 4100 {cnf_start_services} Started service: shell
> 03/8/13@11:24:29: DEBUG: 4100 {cnf_start_services} Started service: ssh
> 03/8/13@11:24:29: DEBUG: 4100 {cnf_start_services} Started service: telnet
> 03/8/13@11:24:33: DEBUG: 4100 {cnf_start_services} mask_max = 11,
> services_started = 6
> 03/8/13@11:24:33: NOTICE: 4100 {main} xinetd Version 2.3.12 started with no
> options compiled in.
> 03/8/13@11:24:33: NOTICE: 4100 {main} Started working: 6 available services
> 03/8/13@11:24:33: DEBUG: 4100 {main_loop} active_services = 6
> Linux(debug)# rm /var/run/xinetd.dump
> Linux(debug)# kill -USR1 410003/8/13@11:24:56: DEBUG: 4100 {main_loop}
> select returned 1
> 03/8/13@11:24:56: DEBUG: 4100 {server_start} Starting service telnet
> 03/8/13@11:24:56: DEBUG: 4100 {main_loop} active_services = 6
> 03/8/13@11:24:56: DEBUG: 4102 {exec_server} duping 12
>
> Linux(debug)# 03/8/13@11:25:00: DEBUG: 4100 {main_loop} active_services = 6
> 03/8/13@11:25:00: DEBUG: 4100 {main_loop} select returned 1
> 03/8/13@11:25:00: DEBUG: 4100 {check_pipe} Got signal 10 (User defined
> signal 1)
> 03/8/13@11:25:00: DEBUG: 4100 {dump_internal_state} Dumping State
> 03/8/13@11:25:00: ERROR: 4100 {dump_internal_state} failed setting up sio
> buffering: Bad file des
> criptor (errno = 9) fd:12
> 03/8/13@11:25:00: DEBUG: 4100 {main_loop} active_services = 6
> cat /var/run/xinetd.dump
> Linux(debug)# cat /var/run/xinetd.dump
> Linux(debug)# kill -USR1 4100
> Linux(debug)# 03/8/13@11:25:41: DEBUG: 4100 {main_loop} active_services = 6
> 03/8/13@11:25:41: DEBUG: 4100 {main_loop} select returned 1
> 03/8/13@11:25:41: DEBUG: 4100 {check_pipe} Got signal 10 (User defined
> signal 1)
> 03/8/13@11:25:41: DEBUG: 4100 {dump_internal_state} Dumping State
> 03/8/13@11:25:41: CRITICAL: 4100 {mem_fault_handler} Address of fault: c
> 03/8/13@11:25:41: CRITICAL: 4100 {mem_fault_handler} address is not mapped
> for object
> 03/8/13@11:25:41: CRITICAL: 4100 {general_handler} (4100) Unexpected
> signal: 11 (Segmentation fau
> lt)
>
> [1]+ Aborted (core dumped) xinetd -syslog local7 -dontfork
> -reuse -d
> Linux(debug)# xinetd -dontfork -reuse -d &
> [1] 4110
> 03/8/13@11:26:03: DEBUG: 4110 {handle_includedir} Reading included
> configuration file: /etc/xinet
> d.d/ftp [file=/etc/xinetd.conf] [line=38]
ser = 0
> Groups = no
> PER_SOURCE = -1
> Bind = All addresses.
> Server = /usr/sbin/in.rexecd
> Server argv = in.rexecd
> Only from: 127.0.0.0/255.0.0.0(NET)
> No access: No blocked sites
> No logging
>
> Service configuration: login
> id = login
> flags = IPv4
> socket_type = stream
> Protocol (name,number) = (tcp,6)
> port = 513
> wait = no
> user = 0
> Groups = no
> PER_SOURCE = -1
> Bind = All addresses.
> Server = /usr/sbin/in.rlogind
mask_max = 11,
> services_started = 6
> 03/8/13@11:26:07: NOTICE: 4110 {main} xinetd Version 2.3.12 started with no
> options compiled in.
> 03/8/13@11:26:07: NOTICE: 4110 {main} Started working: 6 available services
> 03/8/13@11:26:07: DEBUG: 4110 {main_loop} active_services = 6
> Linux(debug)# 03/8/13@11:26:12: DEBUG: 4110 {main_loop} select returned 1
> 03/8/13@11:26:12: DEBUG: 4110 {server_start} Starting service telnet
> 03/8/13@11:26:12: DEBUG: 4110 {main_loop} active_services = 6
> 03/8/13@11:26:12: DEBUG: 4111 {exec_server} duping 12
>
> Linux(debug)# kill -USR1 4111
> Linux(debug)# 03/8/13@11:26:24: DEBUG: 4110 {main_loop} active_services = 6
> 03/8/13@11:26:24: DEBUG: 4110 {main_loop} select returned 1
>
> Linux(debug)# kill -USR1 4111
> Linux(debug)# 03/8/13@11:26:24: DEBUG: 4110 {main_loop} active_services = 6
> 03/8/13@11:26:24: DEBUG: 4110 {main_loop} select returned 1
> 03/8/13@11:26:24: DEBUG: 4110 {check_pipe} Got signal 17 (Child exited)
> 03/8/13@11:26:24: DEBUG: 4110 {child_exit} waitpid returned = 4111
> 03/8/13@11:26:24: DEBUG: 4110 {server_end} telnet server 4111 died
> 03/8/13@11:26:24: INFO: 4110 {conn_free} freeing connection
> 03/8/13@11:26:24: DEBUG: 4110 {child_exit} waitpid returned = -1
> 03/8/13@11:26:24: DEBUG: 4110 {main_loop} active_services = 6
>
> Linux(debug)# cat /var/run/xinetd.dump
> Linux(debug)# kill -USR1 4110
> 03/8/13@11:26:52: DEBUG: 4110 {main_loop} active_services = 6
> 03/8/13@11:26:52: DEBUG: 4110 {main_loop} select returned 1
> 03/8/13@11:26:52: DEBUG: 4110 {check_pipe} Got signal 10 (User defined
> signal 1)
> 03/8/13@11:26:52: DEBUG: 4110 {dump_internal_state} Dumping State
> 03/8/13@11:26:52: ERROR: 4110 {dump_internal_state} failed setting up sio
> buffering: Bad file des
> criptor (errno = 9) fd:12
> 03/8/13@11:26:52: DEBUG: 4110 {main_loop} active_services = 6
> Linux(debug)# 03/8/13@11:27:18: DEBUG: 4110 {main_loop} select returned 1
> 03/8/13@11:27:18: DEBUG: 4110 {server_start} Starting service telnet
> 03/8/13@11:27:18: DEBUG: 4110 {main_loop} active_services = 6
> 03/8/13@11:27:18: DEBUG: 4114 {exec_server} duping 12
> 03/8/13@11:27:21: DEBUG: 4110 {main_loop} active_services = 6
> 03/8/13@11:27:21: DEBUG: 4110 {main_loop} select returned 1
> 03/8/13@11:27:21: DEBUG: 4110 {check_pipe} Got signal 17 (Child exited)
> 03/8/13@11:27:21: DEBUG: 4110 {child_exit} waitpid returned = 4114
> 03/8/13@11:27:21: DEBUG: 4110 {server_end} telnet server 4114 exited
> 03/8/13@11:27:21: INFO: 4110 {conn_free} freeing connection
> 03/8/13@11:27:21: DEBUG: 4110 {child_exit} waitpid returned = -1
> 03/8/13@11:27:21: DEBUG: 4110 {main_loop} active_services = 6
I wonder if anybody else is getting a similar behavior... how much
incpompatibility should I expect between 2.3.3 and 2.3.12 wrt configuration
files?
Then, building the sources. I'm building on a pentium-based linux
box. The sources do build, but only if the gcc '-Wall -Werror' options
are not enabled. With those flags enabled, the configure.in script doesn't
detect the presence of 'memcpy' and of 'struct sockaddr_storage', causing
a bad behavior at build time.
Assuming I run 'configure' without the '-Wall -Werror' options and then
I try to enable them later at build time, I just get one simple warning:
> i686-pc-linux-gnu-gcc -pipe -g -O2 -Wall -Werror \
> -I../libs/include /src/xinetd/xinetd-2.3.12/xinetd/itox.c -o itox \
> -L../libs/lib -lsio -lmisc -lxlog -lstr -lpset -lportable -lm -lcrypt
> cc1: warnings being treated as errors
> /src/xinetd/xinetd-2.3.12/xinetd/itox.c:8: warning: `RCSid' defined but not used
> make[1]: *** [itox] Error 1
> make[1]: Leaving directory `/src/xinetd/xinetd-2.3.12/xinetd'
> make: *** [makeprog] Error 2
Ignoring completely the '-Wall -Werror' options, another nice to have
would be an 'all' target in the Makefile. xinetd uses a 'build' target
as its default target, but it doesn't have an 'all' target. The reason why
I'm looking for an 'all' target is because I need to integrate the build
of xinetd with a build environment based on automake. xinetd is a subdir
of a bigger automake-based tree, and using "SUBDIRS" with automake generates
recursion in subdirectories with a command like 'make all'.
Anyway, it's not too complicated to add the 'all' target by myself in the
xinetd's top level Makefile.in. :-)
Last, is 'linux/time.h' required? configure.in is checking for 'linux/time.h',
it doesn't find a working version in my environment (not sure why), but
then the build succeeds:
> checking linux/time.h usability... no
> checking linux/time.h presence... yes
> configure: WARNING: linux/time.h: present but cannot be compiled
> configure: WARNING: linux/time.h: check for missing prerequisite headers?
> configure: WARNING: linux/time.h: proceeding with the preprocessor's result
> checking for linux/time.h... yes
Regards!
Marco Di Benedettoer automake-based tree, and using "SUBDIRS" with automake generates
recursion in subdirectories with a command like 'make all'.
Anyway, it's not too complicated to add the 'all' target by myself in the
xinetd's top level Makefile.in. :-)
Last, is 'linux/time.h' required? configure.in is checking for 'linux/time.h',
it doesn't find a working version in my environment (not sure why), but
then the build succeeds:
> checking linux/time.h usability... no
> checking linux/time.h presence... yes
> configure: WARNING: linux/time.h: present but cannot be compiled
> configure: WARNING: linux/time.h: check for missing prerequisite headers?
> configure: WARNING: linux/time.h: proceeding with the preprocessor's result
> checking for linux/time.h... yes
Regards!
Marco Di Benedetto