summaryrefslogtreecommitdiff
path: root/accel-pppd
diff options
context:
space:
mode:
authorDmitry Kozlov <xeb@mail.ru>2015-02-21 15:11:44 +0300
committerDmitry Kozlov <xeb@mail.ru>2015-02-21 15:11:44 +0300
commit2a9fe3c6710bb42049886f0ba91a0db7d15c33ae (patch)
tree0f4ec11ec2fd8f042b147fbf0a685f1bd3f6a557 /accel-pppd
parentbc767dc4dd80284e836a9c60eb1eed2e6b94b406 (diff)
downloadaccel-ppp-2a9fe3c6710bb42049886f0ba91a0db7d15c33ae.tar.gz
accel-ppp-2a9fe3c6710bb42049886f0ba91a0db7d15c33ae.zip
ipoe: change l4-redirect-ipset/l4-redirect-table by CoA
Diffstat (limited to 'accel-pppd')
-rw-r--r--accel-pppd/ctrl/ipoe/ipoe.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/accel-pppd/ctrl/ipoe/ipoe.c b/accel-pppd/ctrl/ipoe/ipoe.c
index 3739475b..c8f40273 100644
--- a/accel-pppd/ctrl/ipoe/ipoe.c
+++ b/accel-pppd/ctrl/ipoe/ipoe.c
@@ -1895,6 +1895,16 @@ static void ev_radius_coa(struct ev_radius_t *ev)
ipoe_change_addr(ses, attr->val.ipaddr);
} else if (attr->attr->id == conf_attr_dhcp_lease_time)
ses->lease_time = attr->val.integer;
+ else if (attr->attr->id == conf_attr_l4_redirect_table)
+ ses->l4_redirect_table = attr->val.integer;
+ else if (attr->attr->id == conf_attr_l4_redirect_ipset) {
+ if (attr->attr->type == ATTR_TYPE_STRING) {
+ if (ses->l4_redirect_ipset && strcmp(ses->l4_redirect_ipset, attr->val.string)) {
+ _free(ses->l4_redirect_ipset);
+ ses->l4_redirect_ipset = _strdup(attr->val.string);
+ }
+ }
+ }
}
//if (l4_redirect && !ses->l4_redirect) || (!l4_redirect && ses->l4_redirect))