Skip to content

Commit 6f91ba0

Browse files
Pierre Imaiandi34
authored andcommitted
Really disable IPv6 RA processing in dhcpcd.
IPv6 RA processing in dhcpcd causes crashes, so we disabled it in dhcpcd.conf. Unfortunately devices sometimes don't have the config file, because one is not required for dhcpcd to work. So disable IPv6 RA processing in the code too. (cherry picked from commit 69eb1982f233676775ccb8718fc62e78c137e33d) Bug: 15268738 Bug: 15779617 Change-Id: I67bce5fb27f6b7c4e3189285baeda639256c9079 (cherry picked from commit e0eb380913f6f24b011322d00aff261999bc465b)
1 parent 61ea854 commit 6f91ba0

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

if-options.c

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -796,7 +796,13 @@ read_config(const char *file,
796796
ifo = xzalloc(sizeof(*ifo));
797797
ifo->options |= DHCPCD_GATEWAY | DHCPCD_DAEMONISE | DHCPCD_LINK;
798798
ifo->options |= DHCPCD_ARP | DHCPCD_IPV4LL;
799+
#ifndef ANDROID
800+
/* On Android, don't enable IPv6 RS processing. This is because we
801+
* already process RAs in the kernel and netd and because we've seen
802+
* dhcpcd crashes when parsing certain RA options.
803+
* See http://b/15268738 and http://b/15779617 . */
799804
ifo->options |= DHCPCD_IPV6RS | DHCPCD_IPV6RA_REQRDNSS;
805+
#endif
800806
ifo->timeout = DEFAULT_TIMEOUT;
801807
ifo->reboot = DEFAULT_REBOOT;
802808
ifo->metric = -1;

0 commit comments

Comments
 (0)