summaryrefslogtreecommitdiff
path: root/accel-pppd/radius/radius_p.h
AgeCommit message (Collapse)Author
2018-12-04radius: implement Framed-IPv6-Route attributeGuillaume Nault
Framed-IPv6-Route is the IPv6 counterpart of Framed-Route. It's only used for defining routes to be added locally by accel-ppp. Routes that should be announced to the peer using Router Advertisements should be defined in the Route-IPv6-Information attribute (but that's currently not implemented). Framed-IPv6-Route format is: <network in CIDR notation> [<gateway IPv6 address> [<route metric>]] The gateway address and the route metric are optionals, but the metric can only be set if a gateway address is given. One can use the unspecified address '::' to define a route with no gateway and a non-default route metric. When no gateway address is defined, the session's network interface is used directly. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2018-02-21radius: add support for route priority (metric) in Framed-RouteGuillaume Nault
Let an optional route priority (aka metric) be defined in RADIUS Framed-Route attributes. The priority is an integer placed at the end of the route string. This is backward compatible with the previous format and also conforms with the recommended format defined by RFC 2865 (although we don't allow multiple metrics). Framed-Route format is: <network> [<gateway> [<priority>]] For example, 'Framed-Route = "192.0.2.0/24 203.0.113.1 8"' will let the following route be installed (assuming 203.0.113.1 is routed through eth0): $ ip route show [...] 192.0.2.0/24 via 203.0.113.1 dev eth0 metric 8 It's possible to use the unspecified gateway (0.0.0.0) if one wants to set a priority without specifying a gateway address. Finally, route deletion now also takes the priority into account, in order to avoid removing a different route accidentally. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2017-10-17radius: implemented lua supportDmitry Kozlov
to get radius object use session:module("radius") function radius object provides flollowing functions: radius:attrs() - returns array of attributes {"name" = NAME, "vendor" = VENDOR|nil} radius:attr(name[,vendor]) - returns value of attribute (may return multiple results) Example: function ip_up(ses) rad = ses:module("radius") attrs = rad:attrs() if attrs then print("attrs:") for _,a in pairs(attrs) do io.write("\t") if a.vendor then io.write(a.vendor..":") end io.write(a.name.."=") print(rad:attr(a.name, a.vendor)) end end end
2017-10-09radius: split request queue to 2 subqueuesDmitry Kozlov
1 - is high priority queue for Access-Request and Account-Request(Start) 2 - is low priority queue for Account-Request(Alive) and Account-Request(Stop) This patch intended to prioritize sessions connecting requests over disconnects and interim updates.
2016-06-07radius: update Session-Timeout by CoADmitry Kozlov
2016-04-30radius: add Delegated-IPv6-Prefix to accounting packetsDmitry Kozlov
2016-01-03radius: implemented handling of Framed-Route attributeDmitry Kozlov
Framed-Route has following syntax: Framed-Route=address[/mask] [gateway] If gateway is not specified then route would be attached to session interface.
2015-02-21radius: override session's idle and timeout timers values by Idle-Timeout ↵Dmitry Kozlov
and Session-Timeout attributes
2014-11-22remove trailing whitespacesDmitry Kozlov
2014-10-23radius: introduced max-fail optionDmitry Kozlov
Before this patch any single fail (no responce for max_try requests) caused radius server to enter "fail" state, which may be unwanted behaviour, because radius may not respond for interim Accounting-Request by some reasons. This patch introduces "max-fail" option which specifies number of unreplied requests in a row after which server enters into "fail" state. (Actual only for multi-server configurations)
2014-10-23radius: fixed backup radius selectionDmitry Kozlov
2014-10-06radius: fixed Accounting-On/Accounting-Off functionalityDmitry Kozlov
2014-10-04radius: various bug fixesDmitry Kozlov
2014-09-22fixed compilation warningsDmitry Kozlov
2014-09-20rewrite of authentication/accounting proceduresDmitry Kozlov
This patch gets rid of synchronuos style of authentication/accounting. Synchronous style of authentication/accounting produced sleeping threads which becomes a problem when lots of sessions started/stopped and all they want authorization/accounting.
2014-06-17radius: introduced attr-tunnel-type optionDmitry Kozlov
If specified then accel-ppp will send tunnel type as string (pppoe,pptp,l2tp,ipoe).
2014-05-13radius: introduced weight and backup per-server optionsDmitry Kozlov
New options are applied to server option as server=...[,weight=x][,backup] Weight is used for multi-server configurations (larger weight takes more users). Backup is used to mark backup server f.e. server which will be used only if all other servers are failed.
2014-05-12radius: add support for Nas-Port-Id attribute (interface name)Dmitry Kozlov
2013-08-15radius: implemented sending Account-Request with ↵Dmitry Kozlov
Acct-Status-Type=Accounting-On on startup and Acct-Status-Type=Accounting-Off on shutdown
2012-09-05generalize interface statistics gatheringKozlov Dmitry
2012-07-19radius: implemented Idle-TimeoutKozlov Dmitry
2012-07-11radius: fetch interface statistics via netlinkKozlov Dmitry
2012-07-10initial session backup implementationKozlov Dmitry
2012-06-22initial ipoe implementationKozlov Dmitry
2012-06-19general preparation for IPoE integrationKozlov Dmitry
2011-12-27radius: implemented simultaneous requests limitingKozlov Dmitry
2011-09-05radius: per-server statisticsKozlov Dmitry
2011-09-03radius: servers reloadKozlov Dmitry
2011-08-28radius: implemented ipv6 prefix delegation supportKozlov Dmitry
2011-08-24radius: load balancing improvementKozlov Dmitry
2011-08-24radius: better radius server fails handlingKozlov Dmitry
2011-08-20Merge branch 'ipv6'Dmitry Kozlov
2011-08-16multi-radius supportKozlov Dmitry
2011-06-22tempKozlov Dmitry
2011-05-31radius: Acct-Delay-Time attribute becomes optional and disabled by defaultKozlov Dmitry
2011-02-08snapshotDmitry Kozlov
2011-01-27radius: extended statistics calculationDmitry Kozlov
2011-01-26dynamicaly check if radius module loaded (so not more require to rebuild ↵Dmitry Kozlov
project without RADIUS to switch to chap-secrets)
2011-01-05rename accel-pptp to accel-pppDmitry Kozlov