diff options
-rw-r--r-- | networking/udhcp/d6_dhcpc.c | 2 | ||||
-rw-r--r-- | networking/udhcp/dhcpc.c | 7 |
2 files changed, 5 insertions, 4 deletions
diff --git a/networking/udhcp/d6_dhcpc.c b/networking/udhcp/d6_dhcpc.c index b0f0798e5..044f04673 100644 --- a/networking/udhcp/d6_dhcpc.c +++ b/networking/udhcp/d6_dhcpc.c | |||
@@ -711,7 +711,7 @@ static int d6_raw_socket(int ifindex) | |||
711 | /* jump to L3 if udp dport is CLIENT_PORT6, else to L4 */ | 711 | /* jump to L3 if udp dport is CLIENT_PORT6, else to L4 */ |
712 | BPF_JUMP(BPF_JMP|BPF_JEQ|BPF_K, 68, 0, 1), | 712 | BPF_JUMP(BPF_JMP|BPF_JEQ|BPF_K, 68, 0, 1), |
713 | /* L3: accept packet */ | 713 | /* L3: accept packet */ |
714 | BPF_STMT(BPF_RET|BPF_K, 0xffffffff), | 714 | BPF_STMT(BPF_RET|BPF_K, 0x7fffffff), |
715 | /* L4: discard packet */ | 715 | /* L4: discard packet */ |
716 | BPF_STMT(BPF_RET|BPF_K, 0), | 716 | BPF_STMT(BPF_RET|BPF_K, 0), |
717 | }; | 717 | }; |
diff --git a/networking/udhcp/dhcpc.c b/networking/udhcp/dhcpc.c index bdb1e2b9b..25f18b35d 100644 --- a/networking/udhcp/dhcpc.c +++ b/networking/udhcp/dhcpc.c | |||
@@ -1025,9 +1025,10 @@ static int udhcp_raw_socket(int ifindex) | |||
1025 | BPF_STMT(BPF_LD|BPF_H|BPF_IND, 2), | 1025 | BPF_STMT(BPF_LD|BPF_H|BPF_IND, 2), |
1026 | /* jump to L3 if udp dport is CLIENT_PORT, else to L4 */ | 1026 | /* jump to L3 if udp dport is CLIENT_PORT, else to L4 */ |
1027 | BPF_JUMP(BPF_JMP|BPF_JEQ|BPF_K, 68, 0, 1), | 1027 | BPF_JUMP(BPF_JMP|BPF_JEQ|BPF_K, 68, 0, 1), |
1028 | /* L3: accept packet */ | 1028 | /* L3: accept packet ("accept 0x7fffffff bytes") */ |
1029 | BPF_STMT(BPF_RET|BPF_K, 0xffffffff), | 1029 | /* Accepting 0xffffffff works too but kernel 2.6.19 is buggy */ |
1030 | /* L4: discard packet */ | 1030 | BPF_STMT(BPF_RET|BPF_K, 0x7fffffff), |
1031 | /* L4: discard packet ("accept zero bytes") */ | ||
1031 | BPF_STMT(BPF_RET|BPF_K, 0), | 1032 | BPF_STMT(BPF_RET|BPF_K, 0), |
1032 | }; | 1033 | }; |
1033 | static const struct sock_fprog filter_prog = { | 1034 | static const struct sock_fprog filter_prog = { |