summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-08-08fix: connection problem with clients having nomru optionrabhis
Fixed problem while connecting with clients in which mru not negotiating lcp option is set
2017-07-13improved SIGSEGV handlerDmitry Kozlov
2017-07-04support for openssl-1.1Dmitry Kozlov
2017-05-08ipoe: implemented support for vendor specific attrbiutesDmitry Kozlov
introduced new config option: [ipoe] vendor=Name this affects to all attributes specified in attr-xxx options
2017-04-18implemented session count limitingDmitry Kozlov
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.
2017-04-18Revert "implemented session count limiting"Dmitry Kozlov
This reverts commit e3fc927ee321ed6663d46357de0165340b792860.
2017-04-18shaper: fixed bug in class id allocation procedureDmitry Kozlov
this is related only for htb
2017-04-18implemented session count limitingDmitry Kozlov
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.
2017-04-04ipoe: included lua bitop libraryDmitry Kozlov
Included bitop library http://bitop.luajit.org/index.html It may be used to extract vlan components in username function: function username(ses) vid=ses:vlan() svid=bit.rshift(vid,16) cvid=bit.band(vid,0xffff) ... end
2017-04-04ipoe: implemented ability to change ipset by CoADmitry Kozlov
For this need to send 2 attributes: L4-Redirect=1,L4-Redirect-Ipset=new-set
2017-03-29Revert "ipoe: fix lua 5.3 support"Dmitry Kozlov
This reverts commit 5159276962e4305db249bbbf5eb589ec59b9e318.
2017-03-27cmake: check for pcre and openssl headers are presentDmitry Kozlov
2017-03-27ipoe: fix lua 5.3 supportDmitry Kozlov
2017-03-27net-snmp: add definition for U64 (if not set)Dmitry Kozlov
2017-03-27ipoe: fixed prefix calculation from ipaddrDmitry Kozlov
2017-03-27ipoe: lua: add "vlan" field to session objectDmitry Kozlov
resulting value is vlan | (parent_vlan << 16)
2017-03-19radius: introduced radius_plugin_t:send_accounting_update function (called ↵Dmitry Kozlov
each time when accounting interim update is about to send)
2017-03-19libnetlink: export function iputils_get_handle()Dmitry Kozlov
2017-01-26shaper: fixed conditions to install limiter (may install only up or only ↵Dmitry Kozlov
down limiter)
2016-11-29fixed compilationDmitry Kozlov
2016-11-29ipoe: assign point-to-point addresses to non-shared physical interface ↵Dmitry Kozlov
(prevents route cleaning by interface renaming)
2016-11-29ipoe: add support for peer-to-peer client interfacesDmitry Kozlov
2016-11-28ipoe: fixed typo (incorrect assignment)Dmitry Kozlov
2016-11-28ipoe: bug fixDmitry Kozlov
2016-07-091.11.0 releaseDmitry Kozlov
* general rewrite and improve ipoe/vlan_mon drivers * ipoe: generate EUI-64 interface identifier for ipv6 addresses * ipoe: log warning if interface was not started by vlan_mon notification * ipoe: introduced option "start=auto" * ipoe: translate UP session to dhcp session when dhcp request received (for shared=0 interfaces) * ipoe: implemented starting UP session by arp request * ipoe: log interface renaming * pppoe: add interface name to log messages * pppoe: implemented vlan_mon support * pppd_compat: change mode of radattr files to 0644 * pppd_compat: check for script existance before fork * radius: implemented handling of Framed-Route attribute * radius: do not send NAS-Port and NAS-Port-Id if they are undefined * radius: add Delegated-IPv6-Prefix to accounting packets * radius: update Session-Timeout by CoA * shaper: implemented internal class id map * ppp: introduced unit-preallocate option * ipv6: remove ipv6 address and routes on session termination * vlan_mon: introduced autoclean module parameter * iprange: implement config reload * make termination caused by SIGTERM soft * remove pid file on exit * for single-session=deny make early check for duplicate username (before calling radius) * fixed broken "noauth" mode
2016-07-09removed accel-dp related filesDmitry Kozlov
accel-dp will be continued in separated branch
2016-07-09radius: do not execute interface rename immediately, store new name for ↵Dmitry Kozlov
later use Bacause interface may not still exists in authentication phase
2016-07-09ppp: ignore zero read on chan fdDmitry Kozlov
2016-07-04ppp: ignore zero read on unit fdDmitry Kozlov
2016-06-25radius: do not send NAS-Port and NAS-Port-Id if they are undefinedDmitry Kozlov
2016-06-25ppp: introduced unit-preallocate optionDmitry Kozlov
If set to 1 then allocate unit (interface) before authorization, so Nas-Port and Nas-Port-Id would be defined in Access-Request phase
2016-06-08ipoe: fixed incorrect arp reply (reply for request which started session)Dmitry Kozlov
2016-06-08ipoe: fixed incorrect initialization of interface's hwaddr in internal structureDmitry Kozlov
2016-06-07Merge branch 'master' of ssh://git.code.sf.net/p/accel-ppp/codeDmitry Kozlov
2016-06-07radius: update Session-Timeout by CoADmitry Kozlov
2016-06-02radius: initialise ipv6db addresses completelyGuillaume Nault
The 'installed' bit of the allocated ipv6db_addr_t structure needs to be initialised. This is because ap_session_ifdown() reads this bit to know if the address or route needs to be removed from the kernel. The 'installed' bit is set by ap_session_accounting_started() and the ND and DHCPV6 protocol handlers, but disconnection could happen before these steps. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2016-06-02ppp: remove obsolete filesGuillaume Nault
This files aren't used (and aren't even compiled) anymore. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2016-06-02ppp: make include/ppp_auth.h a symlinkGuillaume Nault
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>
2016-06-02set INSTALL_RPATH for ipoe and pppoeDmitry Kozlov
2016-05-31accel-ppp Debian x32 fix minor -Wformat warningsMarek Michalkiewicz
Hello, small patch to avoid gcc -Wformat warnings on Debian x32 where time_t is "long long" (64-bit signed, to be 2038 safe), not "unsigned long" (32-bit unsigned) corresponding to "%lu" format strings. Regards, Marek
2016-05-31Fixup - don't divide on unchecked values. Multiply instead.Mihail Vasilev
2016-05-14lcp: fix Protocol-Field-Compression settingGuillaume Nault
The kernel flag used for setting PFC is SC_COMP_PROT (SC_COMP_AC is for Address-and-Control-Field-Compression). Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2016-05-11iprange: warn before disabling module due to /0 network with non-null IPGuillaume Nault
Using a /0 prefix on an IP different from 0.0.0.0 is valid, but might be a configuration mistake. Log warning message in this case so that user can easily troubleshoot it. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2016-05-11iprange: replace UINT32_MAX by INADDR_BROADCASTGuillaume Nault
This is equivalent, but INADDR_BROADCAST is more descriptive. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2016-05-11iprange: don't warn about empty iprange config if no modules depend on itGuillaume Nault
Move warning messages to PPTP and L2TP modules. No other module actually uses iprange, so it's perfectly valid to disable it, or at least to not configure any range, when PPTP and L2TP aren't used. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2016-05-11iprange: implement config reloadGuillaume Nault
Protect conf_disable and client_ranges with a mutex. Instead of directly setting conf_disable, load_ranges() now returns a disable flag. The caller is in charge of propagating its value in conf_disable. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2016-05-11triton: implement list_replace*()Guillaume Nault
Add list_replace() and list_replace_init(), as defined in Linux kernel sources. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2016-05-11iprange: rework ip range parsing functionsGuillaume Nault
The previous parsing functions had a few problems: * They did accept negative numbers in addresses (e.g. 192.0.2.-5). * They relied on C undefined behaviour for detecting /0 prefix length: "mask = htonl(~((1 << (32 - m)) - 1)" was wrong for m = 0, because that resulted in a left shift of 32 bits, on a 32 bit wide value (the right operand of a bitwise shift operator must be strictly smaller than the width of the promoted left operand). * They misinterpreted /32 prefixes as disable requests. In fact, due to the undefined behaviour described above, /0 and /32 prefix lengths were represented in the same way by parse1(), that is, with an iprange_t structure where ->begin == ->end. Therefore load_ranges() had no way to distinguish between them and did disable the module in both cases. This patch fixes these issues and brings the following improvements: * It uses getaddrinfo() to parse IP addresses, so it accept (almost) all IPv4 representations and is more easily extensible to IPv6 in the future. * It warns when the IP address used in CIDR notation is not the first address in the range (e.g. the first address of 192.0.2.1/24 is 192.0.2.0, not 192.0.2.1). * It doesn't _exit() on parsing failures, thus making the functions usable in an EV_CONFIG_RELOAD handler. While there, the unfinished tunnel_ranges code, which was already commented, has been removed. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2016-05-02fixed typo in the previous commitDmitry Kozlov
2016-04-30more verbose interface rename error messageDmitry Kozlov