summaryrefslogtreecommitdiff
path: root/accel-pppd/ctrl
diff options
context:
space:
mode:
Diffstat (limited to 'accel-pppd/ctrl')
-rw-r--r--accel-pppd/ctrl/ipoe/arp.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/accel-pppd/ctrl/ipoe/arp.c b/accel-pppd/ctrl/ipoe/arp.c
index fbef3d9..3bde87b 100644
--- a/accel-pppd/ctrl/ipoe/arp.c
+++ b/accel-pppd/ctrl/ipoe/arp.c
@@ -109,8 +109,10 @@ static int arp_read(struct triton_md_handler_t *h)
if (!ses1)
memcpy(ah2.ar_sha, s->ipoe->hwaddr, ETH_ALEN);
else if (ses2) {
- if (s->ipoe->opt_arp == 1 || ses1 == ses2)
+ if (s->ipoe->opt_arp == 1 || ses1 == ses2) {
+ pthread_mutex_unlock(&s->ipoe->lock);
continue;
+ }
memcpy(ah2.ar_sha, ses2->hwaddr, ETH_ALEN);
} else
memcpy(ah2.ar_sha, s->ipoe->hwaddr, ETH_ALEN);