summaryrefslogtreecommitdiff
path: root/accel-pppd
diff options
context:
space:
mode:
authorDmitry Kozlov <xeb@mail.ru>2014-08-26 16:45:44 +0400
committerDmitry Kozlov <xeb@mail.ru>2014-08-26 16:45:44 +0400
commit35aea541e7a9069d9d18be5c9c2946e004d03e4a (patch)
tree8eee3938368d64d5848854dcb57992d0101e899d /accel-pppd
parent538246933be69bb539811ca15c98725c9736a22b (diff)
downloadaccel-ppp-xebd-35aea541e7a9069d9d18be5c9c2946e004d03e4a.tar.gz
accel-ppp-xebd-35aea541e7a9069d9d18be5c9c2946e004d03e4a.zip
ipoe: implemneted proxy-arp=3 mode (always reply by interface mac address)
Diffstat (limited to 'accel-pppd')
-rw-r--r--accel-pppd/ctrl/ipoe/arp.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/accel-pppd/ctrl/ipoe/arp.c b/accel-pppd/ctrl/ipoe/arp.c
index e019d88..10ea138 100644
--- a/accel-pppd/ctrl/ipoe/arp.c
+++ b/accel-pppd/ctrl/ipoe/arp.c
@@ -111,7 +111,10 @@ static int arp_read(struct triton_md_handler_t *h)
pthread_mutex_unlock(&s->ipoe->lock);
continue;
}
- memcpy(ah2.ar_sha, ses2->hwaddr, ETH_ALEN);
+ if (s->ipoe->opt_arp == 2)
+ memcpy(ah2.ar_sha, ses2->hwaddr, ETH_ALEN);
+ else
+ memcpy(ah2.ar_sha, s->ipoe->hwaddr, ETH_ALEN);
} else
memcpy(ah2.ar_sha, s->ipoe->hwaddr, ETH_ALEN);