diff options
author | Dmitriy Eshenko <dmitriy.eshenko@accel-ppp.org> | 2023-07-01 09:57:36 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-07-01 09:57:36 +0300 |
commit | 7b7b6dabfd83eafc62555e0edc6147ebca270ac4 (patch) | |
tree | c257eb5211f15ba8d54c5d7a207099cadc1559ad /accel-pppd/ctrl | |
parent | 981f2399a8f61256f866a87f50c3b4a8aa77847c (diff) | |
parent | a9e9f3ea0d7d4c48ba402d885372c978d5c75aab (diff) | |
download | accel-ppp-7b7b6dabfd83eafc62555e0edc6147ebca270ac4.tar.gz accel-ppp-7b7b6dabfd83eafc62555e0edc6147ebca270ac4.zip |
Merge pull request #95 from DmitriyEshenko/show-sessions-impr
CLI: PPPoE: Add possibility to display inbound interface and service-…
Diffstat (limited to 'accel-pppd/ctrl')
-rw-r--r-- | accel-pppd/ctrl/pppoe/pppoe.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/accel-pppd/ctrl/pppoe/pppoe.c b/accel-pppd/ctrl/pppoe/pppoe.c index 59d9f4f3..78cc64a0 100644 --- a/accel-pppd/ctrl/pppoe/pppoe.c +++ b/accel-pppd/ctrl/pppoe/pppoe.c @@ -201,6 +201,7 @@ static void disconnect(struct pppoe_conn_t *conn) sid_map[conn->sid/(8*sizeof(long))] |= 1 << (conn->sid % (8*sizeof(long))); pthread_mutex_unlock(&sid_lock); + _free(conn->ctrl.service_name); _free(conn->ctrl.calling_station_id); _free(conn->ctrl.called_station_id); _free(conn->service_name); @@ -389,6 +390,12 @@ static struct pppoe_conn_t *allocate_channel(struct pppoe_serv_t *serv, const ui conn->ctrl.calling_station_id = _malloc(IFNAMSIZ + 19); + conn->ctrl.service_name = _malloc(256); + memset(conn->ctrl.service_name, 0x0, 256); + + if (service_name && ntohs(service_name->tag_len) < 256 && ntohs(service_name->tag_len) > 0) + memcpy(conn->ctrl.service_name, service_name->tag_data, ntohs(service_name->tag_len)); + if (conf_ifname_in_sid == 1 || conf_ifname_in_sid == 3) if (conf_sid_uppercase) sprintf(conn->ctrl.calling_station_id, "%s:%02X:%02X:%02X:%02X:%02X:%02X", serv->ifname, |