summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--accel-pppd/ctrl/ipoe/arp.c2
-rw-r--r--accel-pppd/ctrl/pppoe/pppoe.c1
2 files changed, 3 insertions, 0 deletions
diff --git a/accel-pppd/ctrl/ipoe/arp.c b/accel-pppd/ctrl/ipoe/arp.c
index 0698bd1c..1979c762 100644
--- a/accel-pppd/ctrl/ipoe/arp.c
+++ b/accel-pppd/ctrl/ipoe/arp.c
@@ -59,6 +59,7 @@ static void arp_ctx_read(struct _arphdr *ah)
memset(&dst, 0, sizeof(dst));
dst.sll_family = AF_PACKET;
dst.sll_ifindex = ipoe->ifindex;
+ dst.sll_halen = ETH_ALEN;
dst.sll_protocol = htons(ETH_P_ARP);
ah2.ar_hrd = htons(ARPHRD_ETHER);
@@ -136,6 +137,7 @@ void arp_send(int ifindex, struct _arphdr *arph, int broadcast)
memset(&dst, 0, sizeof(dst));
dst.sll_family = AF_PACKET;
dst.sll_ifindex = ifindex;
+ dst.sll_halen = ETH_ALEN;
dst.sll_protocol = htons(ETH_P_ARP);
if (broadcast)
memcpy(dst.sll_addr, bc_addr, ETH_ALEN);
diff --git a/accel-pppd/ctrl/pppoe/pppoe.c b/accel-pppd/ctrl/pppoe/pppoe.c
index 7ab20e35..12b54004 100644
--- a/accel-pppd/ctrl/pppoe/pppoe.c
+++ b/accel-pppd/ctrl/pppoe/pppoe.c
@@ -748,6 +748,7 @@ static void pppoe_send(struct pppoe_serv_t *serv, const uint8_t *pack)
.sll_family = AF_PACKET,
.sll_protocol = htons(ETH_P_PPP_DISC),
.sll_ifindex = serv->ifindex,
+ .sll_halen = ETH_ALEN,
};
struct pppoe_hdr *hdr = (struct pppoe_hdr *)(pack + ETH_HLEN);