dhcpcd-discuss

results after patching dhcp6.c

Peter Mattern

Sat May 24 15:10:18 2014

Hello.

Thank You very much for Your quick response and sorry for my delayed one. Will try to be faster next time.

So I applied the patch You provided against dhcp6.c, recompiled dhcpcd and took a look at systemd's journal. As main difference there were four additional lines
     d6_open 0
     d6_open 1
     d6_open 2
     d6_open 3
at the end, a more verbose sdiff is attached. Also attached the log from an i686 laptop where the connection works flawlessly as mentioned in my first post.

There's one more thing imo worth mentioning: if CPPFLAGS comprises -D_FORTIFY_SOURCE=2, which is e. g. default in Arch Linux's ABS, there are three warnings
          dhcp.c: In function 'dhcp_handleifudp':
dhcp.c:2637:2: warning: ignoring return value of 'read', declared with attribute warn_unused_result [-Wunused-result]
            (void)read(state->udp_fd, buffer, sizeof(buffer));
            ^

          dhcp.c: In function 'dhcp_handleudp':
dhcp.c:2622:2: warning: ignoring return value of 'read', declared with attribute warn_unused_result [-Wunused-result]
            (void)read(ctx->udp_fd, buffer, sizeof(buffer));
            ^

          compat/arc4random.c: In function 'arc4_stir':
compat/arc4random.c:112:3: warning: ignoring return value of 'read', declared with attribute warn_unused_result [-Wunused-result]
             (void)read(fd, rdat.rnd, sizeof(rdat.rnd));
             ^
These warnings also appear if dhcpcd is recompiled using ABS on my i686 / x86_64 devices, where the problem we're discussing doesn't exist, though.

Regards,

P. Mattern
 version 6.3.2 starting									 version 6.3.2 starting
 version 6.3.2 starting									 version 6.3.2 starting
 eth0: executing `/usr/lib/dhcpcd/dhcpcd-run-hooks' PREINIT				 eth0: executing `/usr/lib/dhcpcd/dhcpcd-run-hooks' PREINIT
 eth0: executing `/usr/lib/dhcpcd/dhcpcd-run-hooks' PREINIT				 eth0: executing `/usr/lib/dhcpcd/dhcpcd-run-hooks' PREINIT
 eth0: executing `/usr/lib/dhcpcd/dhcpcd-run-hooks' CARRIER				 eth0: executing `/usr/lib/dhcpcd/dhcpcd-run-hooks' CARRIER
 eth0: executing `/usr/lib/dhcpcd/dhcpcd-run-hooks' CARRIER				 eth0: executing `/usr/lib/dhcpcd/dhcpcd-run-hooks' CARRIER
 DUID <IPv6 address>									 DUID <IPv6 address>
 eth0: IAID <IAID>									 eth0: IAID <IAID>
 eth0: soliciting an IPv6 router							 eth0: soliciting an IPv6 router
 eth0: sending Router Solicitation							 eth0: sending Router Solicitation
 DUID <IPv6 address>									 DUID <IPv6 address>
 eth0: IAID <IAID>									 eth0: IAID <IAID>
 eth0: soliciting an IPv6 router							 eth0: soliciting an IPv6 router
 eth0: sending Router Solicitation							 eth0: sending Router Solicitation
 eth0: reading lease `/var/lib/dhcpcd/dhcpcd-eth0.lease'				 eth0: reading lease `/var/lib/dhcpcd/dhcpcd-eth0.lease'
 eth0: reading lease `/var/lib/dhcpcd/dhcpcd-eth0.lease'				 eth0: reading lease `/var/lib/dhcpcd/dhcpcd-eth0.lease'
 eth0: rebinding lease of <local IPv4 address>						 eth0: rebinding lease of <local IPv4 address>
 eth0: sending REQUEST (xid 0x528f809c), next in 3.2 seconds			      |	 eth0: sending REQUEST (xid 0xf8d35c08), next in 3.3 seconds
 eth0: Router Advertisement from <Link Local Unicast address upstream router>		 eth0: Router Advertisement from <Link Local Unicast address upstream router>
 eth0: adding address <Global Unicast address>/64					 eth0: adding address <Global Unicast address>/64
 eth0: vltime 7200 seconds, pltime 1005 seconds					      |	 eth0: vltime 7200 seconds, pltime 1137 seconds
 eth0: waiting for Router Advertisement DAD to complete					 eth0: waiting for Router Advertisement DAD to complete
 dhcp6_start: eth0: Protocol not available						 dhcp6_start: eth0: Protocol not available
 eth0: acknowledged <local IPv4 address> from <IPv4 address upstream router>		 eth0: acknowledged <local IPv4 address> from <IPv4 address upstream router>
 eth0: rebinding lease of <local IPv4 address>						 eth0: rebinding lease of <local IPv4 address>
 eth0: sending REQUEST (xid 0x528f809c), next in 3.2 seconds			      |	 eth0: sending REQUEST (xid 0xf8d35c08), next in 3.3 seconds
 eth0: Router Advertisement from <Link Local Unicast address upstream router>		 eth0: Router Advertisement from <Link Local Unicast address upstream router>
 eth0: adding address <Global Unicast address>/64					 eth0: adding address <Global Unicast address>/64
 eth0: vltime 7200 seconds, pltime 1005 seconds					      |	 eth0: vltime 7200 seconds, pltime 1137 seconds
 eth0: waiting for Router Advertisement DAD to complete					 eth0: waiting for Router Advertisement DAD to complete
 dhcp6_start: eth0: Protocol not available						 dhcp6_start: eth0: Protocol not available
 eth0: acknowledged <local IPv4 address> from <IPv4 address upstream router>		 eth0: acknowledged <local IPv4 address> from <IPv4 address upstream router>
 eth0: checking for <local IPv4 address>						 eth0: checking for <local IPv4 address>
 eth0: checking for <local IPv4 address>						 eth0: checking for <local IPv4 address>
 eth0: sending ARP probe (1 of 3), next in 1.9 seconds				      |	 eth0: sending ARP probe (1 of 3), next in 2.0 seconds
 eth0: sending ARP probe (1 of 3), next in 1.9 seconds				      |	 eth0: sending ARP probe (1 of 3), next in 2.0 seconds
 eth0: Router Advertisement DAD completed						 eth0: Router Advertisement DAD completed
 eth0: executing `/usr/lib/dhcpcd/dhcpcd-run-hooks' ROUTERADVERT			 eth0: executing `/usr/lib/dhcpcd/dhcpcd-run-hooks' ROUTERADVERT
 eth0: Router Advertisement DAD completed						 eth0: Router Advertisement DAD completed
 eth0: executing `/usr/lib/dhcpcd/dhcpcd-run-hooks' ROUTERADVERT			 eth0: executing `/usr/lib/dhcpcd/dhcpcd-run-hooks' ROUTERADVERT
 eth0: sending ARP probe (2 of 3), next in 1.3 seconds				      |	 eth0: sending ARP probe (2 of 3), next in 1.7 seconds
 eth0: sending ARP probe (2 of 3), next in 1.3 seconds				      |	 eth0: sending ARP probe (2 of 3), next in 1.7 seconds
 eth0: sending ARP probe (3 of 3), next in 2.0 seconds					 eth0: sending ARP probe (3 of 3), next in 2.0 seconds
 eth0: sending ARP probe (3 of 3), next in 2.0 seconds					 eth0: sending ARP probe (3 of 3), next in 2.0 seconds
 eth0: leased <local IPv4 address> for 864000 seconds					 eth0: leased <local IPv4 address> for 864000 seconds
 eth0: leased <local IPv4 address> for 864000 seconds				      <
 eth0: renew in 432000 seconds, rebind in 756000 seconds				 eth0: renew in 432000 seconds, rebind in 756000 seconds
 eth0: adding IP address <local IPv4 address>/24					 eth0: adding IP address <local IPv4 address>/24
 eth0: adding route to <IPv4 network address>/24					 eth0: adding route to <IPv4 network address>/24
 eth0: adding default route via <IPv4 address upstream router>				 eth0: adding default route via <IPv4 address upstream router>
 eth0: writing lease `/var/lib/dhcpcd/dhcpcd-eth0.lease'				 eth0: writing lease `/var/lib/dhcpcd/dhcpcd-eth0.lease'
 eth0: executing `/usr/lib/dhcpcd/dhcpcd-run-hooks' BOUND				 eth0: executing `/usr/lib/dhcpcd/dhcpcd-run-hooks' BOUND
										      >	 eth0: leased <local IPv4 address> for 864000 seconds
 eth0: renew in 432000 seconds, rebind in 756000 seconds				 eth0: renew in 432000 seconds, rebind in 756000 seconds
 eth0: adding IP address <local IPv4 address>/24					 eth0: adding IP address <local IPv4 address>/24
 eth0: adding route to <IPv4 network address>/24					 eth0: adding route to <IPv4 network address>/24
 eth0: adding default route via <IPv4 address upstream router>				 eth0: adding default route via <IPv4 address upstream router>
 eth0: writing lease `/var/lib/dhcpcd/dhcpcd-eth0.lease'				 eth0: writing lease `/var/lib/dhcpcd/dhcpcd-eth0.lease'
 eth0: executing `/usr/lib/dhcpcd/dhcpcd-run-hooks' BOUND				 eth0: executing `/usr/lib/dhcpcd/dhcpcd-run-hooks' BOUND
 forking to background									 forking to background
 forked to background, child pid <PID>							 forked to background, child pid <PID>
										      >	Mai 24 13:44:29 ct1 dhcpcd[<PID>]: eth0: sending ARP announce (1 of 2), next in 2.0 s
										      >	Mai 24 13:44:31 ct1 dhcpcd[<PID>]: eth0: sending ARP announce (2 of 2)
										      >	Mai 24 13:44:29 ct1 systemd[1]: Started dhcpcd auf eth0.
 forking to background									 forking to background
 forked to background, child pid <PID>							 forked to background, child pid <PID>
Mai 24 13:46:41 ct1 dhcpcd[<PID>]: eth0: sending ARP announce (1 of 2), next in 2.0 s |	 d6_open 0
Mai 24 13:46:41 ct1 systemd[1]: Started dhcpcd auf eth0.			      |	 d6_open 1
Mai 24 13:46:43 ct1 dhcpcd[<PID>]: eth0: sending ARP announce (2 of 2)		      |	 d6_open 2
										      >	 d6_open 3
 version 6.3.2 starting
 wlan0: executing `/usr/lib/dhcpcd/dhcpcd-run-hooks' PREINIT
 wlan0: executing `/usr/lib/dhcpcd/dhcpcd-run-hooks' CARRIER
 DUID <DUID>
 wlan0: IAID <IAID>
 wlan0: soliciting an IPv6 router
 wlan0: delaying Router Solicitation for LL address
 wlan0: soliciting a DHCP lease
 wlan0: sending DISCOVER (xid 0x453a40ae), next in 3.3 seconds
 wlan0: offered <local IPv4 address> from <IPv4 address router>
 wlan0: sending REQUEST (xid 0x453a40ae), next in 4.8 seconds
 wlan0: acknowledged <local IPv4 address> from <IPv4 address router>
 wlan0: checking for <local IPv4 address>
 wlan0: sending ARP probe (1 of 3), next in 1.6 seconds
 wlan0: sending Router Solicitation
 wlan0: Router Advertisement from <Link Local Unicast Address router>
 wlan0: adding address <Global Unicast address>/64
 wlan0: vltime 7200 seconds, pltime 1238 seconds
 wlan0: waiting for Router Advertisement DAD to complete
 wlan0: soliciting a DHCPv6 lease
 wlan0: delaying SOLICIT6 (xid 0xfb5edf), next in 0.8 seconds
 wlan0: Router Advertisement from <Link Local Unicast Address router>
 wlan0: adding address <Global Unicast address>/64
 wlan0: vltime 7200 seconds, pltime 1238 seconds
 wlan0: waiting for Router Advertisement DAD to complete
 wlan0: broadcasting SOLICIT6 (xid 0xfb5edf), next in 1.1 seconds
 wlan0: REPLY6 received from <Link Local Unicast Address router>
 wlan0: adding address <Global Unicast address>/128
 wlan0: vltime 7200 seconds, pltime 3600 seconds
 wlan0: renew in 1800 seconds, rebind in 2880 seconds
 wlan0: writing lease `/var/lib/dhcpcd/dhcpcd-wlan0.lease6'
 wlan0: waiting for DHCPv6 DAD to complete
 wlan0: sending ARP probe (2 of 3), next in 1.1 seconds
 wlan0: Router Advertisement DAD completed
 wlan0: executing `/usr/lib/dhcpcd/dhcpcd-run-hooks' ROUTERADVERT
 wlan0: DHCPv6 DAD completed
 wlan0: executing `/usr/lib/dhcpcd/dhcpcd-run-hooks' BOUND6
 wlan0: sending ARP probe (3 of 3), next in 2.0 seconds
 wlan0: leased <local IPv4 address> for 864000 seconds
 wlan0: renew in 432000 seconds, rebind in 756000 seconds
 wlan0: adding IP address <local IPv4 address>/24
 wlan0: adding route to <network address IPv4>/24
 wlan0: adding default route via <IPv4 address router>
 wlan0: writing lease `/var/lib/dhcpcd/dhcpcd-wlan0.lease'
 wlan0: executing `/usr/lib/dhcpcd/dhcpcd-run-hooks' BOUND
 forking to background
Mai 24 15:27:44 am dhcpcd[1578]: wlan0: sending ARP announce (1 of 2), next in 2.0 seconds
 forked to background, child pid 1578
Mai 24 15:27:46 am dhcpcd[1578]: wlan0: sending ARP announce (2 of 2)

Follow-Ups:
Re: results after patching dhcp6.cRoy Marples
References:
meaning of an error message related to DHCPv6Peter Mattern
Re: meaning of an error message related to DHCPv6Roy Marples
Archive administrator: postmaster@marples.name