[Bug 211038] security/xinetd: Broken with dgram udp services (e.g. tftpd, tftp-proxy)

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Tue Jul 12 16:23:19 UTC 2016


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=211038

            Bug ID: 211038
           Summary: security/xinetd: Broken with dgram udp services (e.g.
                    tftpd, tftp-proxy)
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: Individual Port(s)
          Assignee: sem at FreeBSD.org
          Reporter: garga at FreeBSD.org
          Assignee: sem at FreeBSD.org
             Flags: maintainer-feedback?(sem at FreeBSD.org)

xinetd is not working on FreeBSD 10.3 and 12.0-CURRENT with dgram UDP services
like tftp server or tftp-proxy.

Sample config:

service tftp
{
        disable = no
        port = 69
        socket_time = dgram
        protocol = udp
        wait = yes
        user = root
        group = wheel
        server = /usr/libexec/tftpd
        server_args = -d 15 -l -s /tftpboot
}

xinetd logs:

16/7/12 at 12:36:10: DEBUG: 15844 {main_loop} select returned 1
16/7/12 at 12:36:10: DEBUG: 15844 {svc_suspend} Suspended service tftp
16/7/12 at 12:36:10: DEBUG: 15844 {server_start} Starting service tftp
16/7/12 at 12:36:10: DEBUG: 15844 {main_loop} active_services = 0
16/7/12 at 12:36:10: DEBUG: 15845 {exec_server} duping 0
16/7/12 at 12:36:10: DEBUG: 15844 {main_loop} active_services = 0
16/7/12 at 12:36:10: DEBUG: 15844 {main_loop} select returned 1
16/7/12 at 12:36:10: DEBUG: 15844 {check_pipe} Got signal 20 (Child exited)
16/7/12 at 12:36:10: DEBUG: 15844 {child_exit} waitpid returned = 15845
16/7/12 at 12:36:10: DEBUG: 15844 {server_end} tftp server 15845 exited
16/7/12 at 12:36:10: DEBUG: 15844 {drain} UDP socket should be empty
16/7/12 at 12:36:10: DEBUG: 15844 {svc_resume} Resumed service tftp
16/7/12 at 12:36:10: DEBUG: 15844 {child_exit} waitpid returned = -1
16/7/12 at 12:36:10: DEBUG: 15844 {main_loop} active_services = 1

tftpd logs:

Jul 12 12:36:10 tp tftpd[15845]: recvfrom: Resource temporarily unavailable

tftp-proxy logs:

Jul 11 17:12:39 test-ce-23-amd64 tftp-proxy[38884]: setsockopt(IP_RECVDSTADDR):
Protocol not available

It was first reported on pfSense, then I reproduced it on stock FreeBSD as
well.

Ref: https://redmine.pfsense.org/issues/6315

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-ports-bugs mailing list