summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--accel-pppd/accel-ppp.conf5
-rw-r--r--accel-pppd/accel-ppp.conf.59
-rw-r--r--accel-pppd/radius/acct.c18
-rw-r--r--accel-pppd/radius/req.c6
4 files changed, 23 insertions, 15 deletions
diff --git a/accel-pppd/accel-ppp.conf b/accel-pppd/accel-ppp.conf
index 1630ae1..1dc6bd2 100644
--- a/accel-pppd/accel-ppp.conf
+++ b/accel-pppd/accel-ppp.conf
@@ -68,8 +68,9 @@ verbose=1
nas-identifier=accel-ppp
nas-ip-address=127.0.0.1
gw-ip-address=192.168.100.1
-auth-server=127.0.0.1:1812,testing123
-acct-server=127.0.0.1:1813,testing123
+#auth-server=127.0.0.1:1812,testing123 (obsolete)
+#acct-server=127.0.0.1:1813,testing123 (obsolete)
+server=127.0.0.1,testing123
dae-server=127.0.0.1:3799,testing123
verbose=1
#timeout=3
diff --git a/accel-pppd/accel-ppp.conf.5 b/accel-pppd/accel-ppp.conf.5
index 76c32a7..aee1354 100644
--- a/accel-pppd/accel-ppp.conf.5
+++ b/accel-pppd/accel-ppp.conf.5
@@ -262,10 +262,15 @@ Also DM/CoA server will bind to that address.
Specifies address to use as local address of ppp interfaces if Framed-IP-Address received from RADIUS server.
.TP
.BI "auth-server=" x.x.x.x:port,secret
-Specifies IP address, port and secret of authentication RADIUS server.
+Specifies IP address, port and secret of authentication RADIUS server. (obsolete)
.TP
.BI "acct-server=" x.x.x.x:port,secret
-Specifies IP address, port and secret of accounting RADIUS server.
+Specifies IP address, port and secret of accounting RADIUS server. (obsolete)
+.TP
+.BI "server=" address,secret[,auth-port[,acct-port]]
+Specifies IP address, ports and secret of RADIUS server.
+If you want to specify only authentication or accounting server then set auth-port/acct-port to zero.
+You may specify multiple radius servers.
.TP
.BI "dae-server=" x.x.x.x:port,secret
Specifies IP address, port to bind and secret for Dynamic Authorization Extension server (DM/CoA).
diff --git a/accel-pppd/radius/acct.c b/accel-pppd/radius/acct.c
index 66dcbb4..4f1d901 100644
--- a/accel-pppd/radius/acct.c
+++ b/accel-pppd/radius/acct.c
@@ -304,16 +304,16 @@ int rad_acct_start(struct radius_pd_t *rpd)
rad_server_req_exit(rpd->acct_req);
- if (!rpd->acct_req->reply) {
- rad_server_fail(rpd->acct_req->serv);
- if (rad_server_realloc(rpd->acct_req, 1)) {
- log_ppp_warn("radius:acct_start: no servers available\n");
- goto out_err;
- }
- if (req_set_RA(rpd->acct_req, rpd->acct_req->serv->acct_secret))
- goto out_err;
- } else
+ if (rpd->acct_req->reply)
break;
+
+ rad_server_fail(rpd->acct_req->serv);
+ if (rad_server_realloc(rpd->acct_req, 1)) {
+ log_ppp_warn("radius:acct_start: no servers available\n");
+ goto out_err;
+ }
+ if (req_set_RA(rpd->acct_req, rpd->acct_req->serv->acct_secret))
+ goto out_err;
}
rpd->acct_req->hnd.read = rad_acct_read;
diff --git a/accel-pppd/radius/req.c b/accel-pppd/radius/req.c
index f3d72f8..b45a601 100644
--- a/accel-pppd/radius/req.c
+++ b/accel-pppd/radius/req.c
@@ -126,8 +126,10 @@ int rad_req_acct_fill(struct rad_req_t *req)
return -1;
if (rad_packet_add_int(req->pack, NULL, "Acct-Output-Gigawords", 0))
return -1;
- if (rad_packet_add_int(req->pack, NULL, "Acct-Delay-Time", 0))
- return -1;
+ if (conf_acct_delay_time) {
+ if (rad_packet_add_int(req->pack, NULL, "Acct-Delay-Time", 0))
+ return -1;
+ }
if (rad_packet_add_ipaddr(req->pack, NULL, "Framed-IP-Address", req->rpd->ppp->peer_ipaddr))
return -1;