+++ This bug was initially created as a clone of Bug #143728 +++ Description of problem: dhcp6c cannot be used, because it won't work as expected. Version-Release number of selected component (if applicable): # rpm -q dhcpv6_client dhcpv6_client-0.10-8 How reproducible: Always Steps to Reproduce: 1. Setup dhcp6s on a server 2. run dhcp6c on a client, e.g. # dhcp6c -D -f eth0 Actual results: # dhcp6c -D -f eth0 Dec/25/2004 23:15:50 <3>[interface] (9) Dec/25/2004 23:15:50 <5>[eth0] (4) Dec/25/2004 23:15:50 <3>begin of closure [{] (1) Dec/25/2004 23:15:50 <3>comment [# information-only;] (19) Dec/25/2004 23:15:50 <3>[send] (4) Dec/25/2004 23:15:50 <3>[rapid-commit] (12) Dec/25/2004 23:15:50 <3>end of sentence [;] (1) Dec/25/2004 23:15:50 <3>[request] (7) Dec/25/2004 23:15:50 <3>[prefix-delegation] (17) Dec/25/2004 23:15:50 <3>end of sentence [;] (1) Dec/25/2004 23:15:50 <3>comment [#information-only;] (18) Dec/25/2004 23:15:50 <3>comment [# request temp-address;] (23) Dec/25/2004 23:15:50 <3>end of closure [}] (1) Dec/25/2004 23:15:50 <3>end of sentence [;] (1) Dec/25/2004 23:15:50 extracted an existing DUID from /var/lib/dhcpv6/dhcp6c_duid: 00:01:00:01:09:60:73:93:00:00:39:ea:77:81 Dec/25/2004 23:15:50 link local addr is fe80::200:39ff:feea:7781 Dec/25/2004 23:15:50 res addr is fe80::200:39ff:feea:7781%eth0/28 Dec/25/2004 23:15:50 found an interface eth0 harware 00:00:39:ffffffea:77:ffffff81 Dec/25/2004 23:15:50 create iaid 3929604096 for interface eth0 Dec/25/2004 23:15:50 found an interface eth0 harware 00:00:39:ffffffea:77:ffffff81 Dec/25/2004 23:15:50 found interface eth0 iaid 3929604096 Dec/25/2004 23:15:50 interface eth0 iaid is 3929604096 Dec/25/2004 23:15:50 open_netlink_socket called Dec/25/2004 23:15:50 netlink_send_rtmsg called Dec/25/2004 23:15:50 netlink_recv_rtgenmsg called Dec/25/2004 23:15:50 netlink_recv_rtgenmsg error Dec/25/2004 23:15:50 netlink_send_rtgenmsg called Dec/25/2004 23:15:50 netlink_recv_rtgenmsg called Dec/25/2004 23:15:50 get_if_flags called Dec/25/2004 23:15:50 get_if_flags called Dec/25/2004 23:15:50 netlink_recv_rtgenmsg error Dec/25/2004 23:15:50 create an event 0x89aa2d0 xid 0 for state 0 Dec/25/2004 23:15:50 reset a timer on eth0, state=INIT, timeo=0, retrans=851 Dec/25/2004 23:15:51 ifp 0x89a6008 event 0x89aa2d0 a new XID (7314bf) is generated Dec/25/2004 23:15:51 set client ID Dec/25/2004 23:15:51 set opt_8 Dec/25/2004 23:15:51 set rapid commit Dec/25/2004 23:15:51 set IA_PD iaidinfo: iaid 3929604096 renewtime 0 rebindtime 0 Dec/25/2004 23:15:51 set opt_30 Dec/25/2004 23:15:51 send dst if eth0 addr is ff02::1:2%eth0 scope id is 2 Dec/25/2004 23:15:51 send solicit to ff02::1:2%eth0 Dec/25/2004 23:15:51 DUID is 00:01:00:01:09:60:73:93:00:00:39:ea:77:81, DUID_LEN is 14 Dec/25/2004 23:15:51 removing ID (ID: 00:01:00:01:09:60:73:93:00:00:39:ea:77:81) Dec/25/2004 23:15:51 DUID is , DUID_LEN is 0 Dec/25/2004 23:15:51 reset a timer on eth0, state=SOLICIT, timeo=0, retrans=1016 Dec/25/2004 23:15:51 receive packet info ifname eth0, addr is fe80::200:39ff:feea:7781 scope id is 2 Dec/25/2004 23:15:51 receive reply from fe80::250:4ff:febd:b485%eth0 scope id 2 eth0 Dec/25/2004 23:15:51 get DHCP option client ID, len 14 Dec/25/2004 23:15:51 DUID: 00:01:00:01:09:60:73:93:00:00:39:ea:77:81 Dec/25/2004 23:15:51 get DHCP option server ID, len 14 Dec/25/2004 23:15:51 DUID: 00:01:00:01:09:60:5e:bc:00:50:04:bd:b4:85 Dec/25/2004 23:15:51 get DHCP option rapid commit, len 0 Dec/25/2004 23:15:51 get DHCP option opt_30, len 47 Dec/25/2004 23:15:51 get option iaid is 3929604096, renewtime 60, rebindtime 90 Dec/25/2004 23:15:51 IA address option: opt_31, len 31 Dec/25/2004 23:15:51 get IAPREFIX prefix information: fec0:0:0:1::/64 preferlifetime 130 validlifetime 200 Dec/25/2004 23:15:51 status code for this prefix is: success Dec/25/2004 23:15:51 get DHCP option preference, len 1 Dec/25/2004 23:15:51 get option preferrence is ff Dec/25/2004 23:15:51 get DHCP option status code, len 2 Dec/25/2004 23:15:51 this message status code: success Dec/25/2004 23:15:51 get DHCP option DNS_RESOLVERS, len 16 Dec/25/2004 23:15:51 get DHCP option opt_26, len 18 Dec/25/2004 23:15:51 expand domain name pbg.bieringer.de, size 16 Dec/25/2004 23:15:51 reply message XID is (7314bf) Dec/25/2004 23:15:51 ifp 0x89a6008 event 0x89aa2d0 id is 7314bf Dec/25/2004 23:15:51 serverID is 00:01:00:01:09:60:5e:bc:00:50:04:bd:b4:85 len is 14 Dec/25/2004 23:15:51 new server DUID 00:01:00:01:09:60:5e:bc:00:50:04:bd:b4:85, len 14 Dec/25/2004 23:15:51 parse domain name dyn.pbg.bieringer.de Dec/25/2004 23:15:51 parse domain name pbg.bieringer.de Dec/25/2004 23:15:51 parse domain name bieringer.de Dec/25/2004 23:15:51 parse name server fec0:0:0:1::1 Dec/25/2004 23:15:51 received nameserver[0] fec0:0:0:1::1 Dec/25/2004 23:15:51 nameserver fec0:0:0:1::1 found in resolv.conf Dec/25/2004 23:15:51 received domainname[0] pbg.bieringer.de Dec/25/2004 23:15:51 domain name pbg.bieringer.de found in resolv.conf Dec/25/2004 23:15:51 rename failed for resolv.conf file Segmentation fault Expected results: Working Additional info: For me it looks that at least the additional patch is wrong: dhcpv6-0.10-change_resolv_conf.patch Function "int change_resolv_conf(" either returns 1 or -1, but below return value is compared against 0: - if (rename(resolv_dhcpv6_file, RESOLV_CONF_FILE)) { + if (change_resolv_conf(resolv_dhcpv6_file)!=0) { dprintf(LOG_ERR, "%s" " rename failed for resolv.conf file", FNAME); return(-1); Therefore it will never be counted as succesful, but as far as I see the external call did the change in /etc/resolv.conf. The reason, why it crashed afterwards can be perhaps seen here: Last lines of # strace -f dhcp6c -D -f eth0 [pid 5555] rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 [pid 5555] stat64("/var/lock/subsys/nscd", 0xfeeca1b0) = -1 ENOENT (No such file or directory) [pid 5555] rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 [pid 5555] rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 [pid 5555] exit_group(1) = ? Process 5554 resumed Process 5555 detached <... waitpid resumed> [{WIFEXITED(s) && WEXITSTATUS(s) == 1}], 0) = 5555 --- SIGCHLD (Child exited) @ 0 (0) --- time(NULL) = 1104013342 write(2, "Dec/25/2004 23:22:22 rename fai"..., 57Dec/25/2004 23:22:22 rename failed for resolv.conf file ) = 57 close(10) = 0 munmap(0xf6ffe000, 4096) = 0 close(10) = -1 EBADF (Bad file descriptor) ioctl(-1, SNDCTL_TMR_TIMEBASE or TCGETS, 0xfee9a6f8) = -1 EBADF (Bad file descriptor) mmap2(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xf6ffd000 --- SIGSEGV (Segmentation fault) @ 0 (0) --- +++ killed by SIGSEGV (core dumped) +++ Backtrace in core: #0 0x002630cc in memcpy () from /lib/tls/libc.so.6 (gdb) bt #0 0x002630cc in memcpy () from /lib/tls/libc.so.6 #1 0x00256d74 in _IO_file_xsgetn_internal () from /lib/tls/libc.so.6 #2 0x00257bd8 in _IO_sgetn_internal () from /lib/tls/libc.so.6 #3 0x0024c152 in fread () from /lib/tls/libc.so.6 #4 0x08059259 in dprintf () #5 0x08059589 in dprintf () #6 0x0804ba40 in ?? () #7 0xfee9aa00 in ?? () #8 0x08068e08 in optind () #9 0x0805ffcd in _IO_stdin_used () #10 0x08068e40 in optind () #11 0x0000000e in ?? () #12 0x00000002 in ?? () #13 0x083d8098 in ?? () #14 0x00000000 in ?? ()
fixed with dhcpv6-0.10-14_EL4
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on the solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHBA-2006-0115.html