summaryrefslogtreecommitdiff
path: root/accel-pppd/ctrl/ipoe/ipoe.c
diff options
context:
space:
mode:
authorDmitry Kozlov <xeb@mail.ru>2013-10-14 13:45:53 +0400
committerDmitry Kozlov <xeb@mail.ru>2013-10-14 13:45:53 +0400
commit53c98ffb495b2cbb6da2f9d06b92cdece986c395 (patch)
tree11408793ca1cf3aee07fda9d1aeca868c2cd89a5 /accel-pppd/ctrl/ipoe/ipoe.c
parentf4335fb76b573137c352a34a6c95b1077ec459c2 (diff)
downloadaccel-ppp-53c98ffb495b2cbb6da2f9d06b92cdece986c395.tar.gz
accel-ppp-53c98ffb495b2cbb6da2f9d06b92cdece986c395.zip
ipoe: add missing put of allocated ipv4 address
Signed-off-by: Dmitry Kozlov <xeb@mail.ru>
Diffstat (limited to 'accel-pppd/ctrl/ipoe/ipoe.c')
-rw-r--r--accel-pppd/ctrl/ipoe/ipoe.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/accel-pppd/ctrl/ipoe/ipoe.c b/accel-pppd/ctrl/ipoe/ipoe.c
index 23acb66f..6ad57119 100644
--- a/accel-pppd/ctrl/ipoe/ipoe.c
+++ b/accel-pppd/ctrl/ipoe/ipoe.c
@@ -935,10 +935,15 @@ static void ipoe_session_finished(struct ap_session *s)
if (ses->dhcp_addr)
dhcpv4_put_ip(ses->serv->dhcpv4, ses->yiaddr);
-
+
if (ses->relay_addr && ses->serv->dhcpv4_relay)
dhcpv4_relay_send_release(ses->serv->dhcpv4_relay, ses->hwaddr, ses->xid, ses->yiaddr, ses->client_id, ses->relay_agent, ses->serv->ifname, conf_agent_remote_id);
+ if (s->ipv4) {
+ ipdb_put_ipv4(s, s->ipv4);
+ s->ipv4 = NULL;
+ }
+
if (ses->ifcfg)
ipoe_ifcfg_del(ses, 1);