Source: wide-dhcpv6-client
Version: 20080615-12
Severity: normal

I am running wide-dhcpv6-client on my Ubiquiti EdgeRouter ERLITE-3
(which takes the package from Debian, and the version is 20080615-12,
i.e. current testing).

I am using this “script”:

    #!/bin/sh
    /etc/init.d/radvd restart
    exit 0

I noticed that after stopping wide-dhcpv6-client, I could not start it
again. It would always complain about not being able to bind:

bind(6, {sa_family=AF_INET6, sin6_port=htons(5546), inet_pton(AF_INET6, "::1", 
&sin6_addr), sin6_flowinfo=0, sin6_scope_id=0}, 28) = -1 EADDRINUSE (Address 
already in use)
write(2, "Aug/11/2014 19:01:13: dhcp6_ctl_init: bind(control sock): Address 
already in use\n", 81) = 81

It seemed strange to me that ::1:5546 was already in use, but netstat
-anp identified radvd as having that port open. Since radvd’s code does
not ever open that port, I checked its file descriptors, and it turns
out that radvd indeed inherited the file descriptors from
wide-dhcpv6-client, including the listening port and the configuration
file file descriptor.

In order to prevent this bug, wide-dhcpv6-client should use the CLOEXEC
option on all its file descriptors.

-- System Information:
Debian Release: jessie/sid
  APT prefers testing
  APT policy: (990, 'testing')
Architecture: amd64 (x86_64)
Foreign Architectures: armel
i386

Kernel: Linux 3.14-1-amd64 (SMP w/8 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash


-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]

Reply via email to