diff options
| author | Vladislav Grishenko <themiron@mail.ru> | 2021-05-25 17:32:28 +0500 |
|---|---|---|
| committer | Vladislav Grishenko <themiron@mail.ru> | 2021-05-25 17:32:28 +0500 |
| commit | 35a4901c4f8a2bb3fadbaf1fbe3636c01a22e9d7 (patch) | |
| tree | da234ac61aa241916961ef040f9a308116a5f822 /accel-pppd/ctrl | |
| parent | b621a9a3a5a554be1393d5ad33e23c5cea6385b9 (diff) | |
| parent | 2cd9ffe9086415fcc934001048b40f4a005aadcc (diff) | |
| download | accel-ppp-35a4901c4f8a2bb3fadbaf1fbe3636c01a22e9d7.tar.gz accel-ppp-35a4901c4f8a2bb3fadbaf1fbe3636c01a22e9d7.zip | |
Merge branch 'master' of github.com:accel-ppp/accel-ppp
Diffstat (limited to 'accel-pppd/ctrl')
| -rw-r--r-- | accel-pppd/ctrl/pppoe/pppoe.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/accel-pppd/ctrl/pppoe/pppoe.c b/accel-pppd/ctrl/pppoe/pppoe.c index 18aac8bd..415dd7c0 100644 --- a/accel-pppd/ctrl/pppoe/pppoe.c +++ b/accel-pppd/ctrl/pppoe/pppoe.c @@ -90,6 +90,7 @@ struct iplink_arg { int conf_verbose; char *conf_service_name[255]; int conf_accept_any_service; +int conf_accept_blank_service; char *conf_ac_name; int conf_ifname_in_sid; char *conf_pado_delay; @@ -1003,7 +1004,11 @@ static void pppoe_recv_PADI(struct pppoe_serv_t *serv, uint8_t *pack, int size) case TAG_END_OF_LIST: break; case TAG_SERVICE_NAME: - if (conf_service_name[0]) { + if (tag->tag_len == 0 && conf_accept_blank_service) { + service_match = 1; + break; + } + else if (conf_service_name[0]) { int svc_index = 0; do { if (ntohs(tag->tag_len) == strlen(conf_service_name[svc_index]) && @@ -1949,6 +1954,10 @@ static void load_config(void) if (opt) conf_accept_any_service = atoi(opt); + opt = conf_get_opt("pppoe", "accept-blank-service"); + if (opt) + conf_accept_blank_service = atoi(opt); + opt = conf_get_opt("pppoe", "ac-name"); if (!opt) opt = conf_get_opt("pppoe", "AC-Name"); |
