Age | Commit message (Collapse) | Author |
|
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
|
|
to lua scripts
session object consists of following functions:
ifname() - interface name
ifindex() - interface ifindex
sid() - Acct-Session-ID
uptime() - session uptime in seconds
username()
ctrl_type() - type of session (pppt/pppoe/l2tp/ipoe)
calling_sid() - Calling-Station-ID
called_sid() - Called-Station-ID
ipv4() - retuns pair (peer address, local address)
ipv6() - ipv6 address or nil
rx_bytes()
tx_bytes()
|
|
Implemented support for lua 5.2/5.3.
To build accel-ppp with exact lua version pass it in -DLUA=x.y, for example -DLUA=5.2 (cmake 3.0 is required for this).
Old style -DLUA=TRUE supports only 5.1 and does not require cmake 3.0.
Also extra lua modules (lua_lpack, lua_bit) took out into separated library luasupp.
|
|
new config option:
[common]
max-sessions=N
If set then accel-pppd stops reply to new connection requests if total number of sessions (active and starting) is reached specified limit.
|
|
This reverts commit 88a908974b0b2e9c7eee8ad9a8b0b4432e95d167.
|
|
new config option:
[common]
max-sessions=N
If set then accel-pppd stops reply to new connection requests if total number of sessions (active and starting) is reached specified limit.
|
|
This reverts commit 9ea88bac7d5bf8fc5cf2d5f7d0a734ec7a9e6df6.
|
|
new config option:
[common]
max-sessions=N
If set then accel-pppd stops reply to new connection requests if total number of sessions (active and starting) is reached specified limit.
|
|
This is done using radius attribute NAS-Port-Id. The new format of this attribute is NAS-Port-Id=[ns/][name].
Namespaces must be created malually by "ip netns add ..." command
|
|
include/ppp_auth.h used to be a symlink to ppp/ppp_auth.h, until it was
made a copy by ebbd6f580322 ("fix typo (successed -> succeeded)").
Therefore, changes to ppp/ppp_auth.h aren't visible to files including
ppp_auth.h anymore. These files have already diverged (just a
whitespace fix for now), so let's restore the original symlink before
more changes occur.
Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
|
|
|
|
|
|
This reverts commit fc098b3062badfd802f91241533069cad4886b6f.
|
|
|
|
|
|
|
|
on same interfaces (started by vlan_mon)
|
|
calling radius)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
introduced new module "vlan-mon"
|
|
|
|
|
|
|
|
|
|
|
|
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.
|
|
|
|
First try to rename interface immediately and if it fails then do second try later just before bring interface up.
In case single-session=replace first try to rename interface may fail because first session may be active
|
|
Wait for previous session completely terminated before continuing authorization new session.
|
|
|
|
|
|
Initialise 'key' before calling memcpy() to ensure that all bytes are
set in the return value.
Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
|
|
The 'hw' parameter of cl_key_from_mac() is actually a pointer, so
'key.hw' must be used instead to compute the size of the MAC address.
Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
|
|
|
|
This reverts commit 9f4f36169f03857b6910402028717210270a0339.
|
|
|
|
|
|
|
|
|
|
[BConflicts:
accel-pppd/ctrl/openvpn/openvpn.c
|
|
|
|
Conflicts:
accel-pppd/ppp/ppp_auth.c
|
|
|
|
|