summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-09-07L2TP: Terminate sessions without closing tunnelGuillaume Nault
Implement CDN message sending in order to give the possibility to close a session without closing the underlying tunnel (close a tunnel only when closing its last session, which is always the case as long as session-multiplexing is not implemented). Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2012-09-07L2TP: Use different states for handling sessions and tunnelsGuillaume Nault
Use the "state" field (struct l2tp_conn_t) for tracking tunnel states and "state1" (struct l2tp_sess_t) for sessions. The meaning of the STATE_* has been slightly modified: * STATE_WAIT_SCCN (tunnel): no modification. * STATE_WAIT_ICRQ (session): now unused. Acceptation of ICRQ messages now depend on the tunnel state (STATE_ESTB). * STATE_WAIT_ICCN (session): no modification. * STATE_ESTB (tunnel and session): for tunnels, means that the tunnel is ready to accept new sessions. For sessions, means that the L2TP session is established, but that it doesn't carry any PPP session yet. * STATE_PPP (session): the session is in use (i.e. it is established and carries a PPP session). * STATE_FIN (tunnel): the tunnel is being closed. * STATE_CLOSE (tunnel and session): default state after allocation/free. For session, this is also the state used once disconnected. Since outgoing calls are not implemented yet, STATE_WAIT_OCRP and STATE_WAIT_OCCN are not used. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2012-09-07L2TP: Separate session and tunnel connection codeGuillaume Nault
Establish tunnel and session connections upon reception of SCCCN and ICCN messages respectively. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2012-09-07L2TP: Rename function that frees connection struturesGuillaume Nault
Rename l2tp_disconnect() to l2tp_tunnel_free() for consistency with the new l2tp_session_free() function. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2012-09-07L2TP: Define and use dedicated function to free sessionsGuillaume Nault
Move session specific operations out of l2tp_disconnect(). Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2012-09-07L2TP: Add session specific allocation functionGuillaume Nault
Separate session allocation from the rest of tunnel allocation operations. This implies a few extra modifications: * Store destination address of the SCCRQ message in the connection structure (and rename the "addr" field to "lac_addr" for consistency). This information is required for allocating the session. * No more PPP information in log prefix: with session multiplexing, tunnels are no longer tied to a single PPP session, so there is no struct ppp_t to pass as parameter to the log_switch() function. Session allocation is currently still done inside l2tp_tunnel_alloc(). It should rather be done at session establishment once tunnel/session separation will be terminated. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2012-09-07L2TP: Add new structure to store session specific dataGuillaume Nault
Use struct l2tp_sess_t to separate session data from other connection information. This is required in order to implement session multiplexing. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2012-09-05generalize interface statistics gatheringKozlov Dmitry
2012-09-05libnetlink: remove unused functionKozlov Dmitry
2012-09-05Fix format string errorsGuillaume Nault
Fix several errors and compiler warnings in format string arguments. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2012-09-05Add compilation checks for printf-style format stringsGuillaume Nault
Append the format() __attribute__ to function prototypes which use a format string. This allows GCC to check for consistency between the format string and its arguments when these functions are called. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2012-08-29fix various typosKozlov Dmitry
2012-08-29fix typo (successed -> succeeded)Kozlov Dmitry
Conflicts: accel-pppd/ppp/ppp_auth.c
2012-08-29Merge branch 'master' of ↵Kozlov Dmitry
ssh://accel-ppp.git.sourceforge.net/gitroot/accel-ppp/accel-ppp
2012-08-29add 'ppp' filed to CTRL to identify ppp sessionsKozlov Dmitry
2012-08-23L2TP: Tear down tunnel when peer stops listeningGuillaume Nault
Stop sending messages on tunnels for which no peer is listening. Discard retransmissions too. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2012-08-15radius: fixed broken authentication procedureKozlov Dmitry
2012-08-15l2tp: fixed missing ctrl.terminate assignmentKozlov Dmitry
2012-08-13ipoe: implements l4-redirect-on-rejectsKozlov Dmitry
2012-08-13Merge branch 'master' of ↵Kozlov Dmitry
ssh://accel-ppp.git.sourceforge.net/gitroot/accel-ppp/accel-ppp
2012-08-13snapshotKozlov Dmitry
2012-08-11restore accel-pppd/CMakeLists.txtKozlov Dmitry
2012-08-11ipoe: fixed packet output pathKozlov Dmitry
2012-08-10ipoe: set dev->tx_queue_len=100Kozlov Dmitry
2012-08-10ipoe: fixed packet receive pathKozlov Dmitry
2012-08-09ipoe: fixed sending PAP passwordKozlov Dmitry
2012-08-09ipoe: fixed handling local-net with mask 32Kozlov Dmitry
ipoe: use user paaword same is user name
2012-08-03ppp: don't drop connection when mppe=prefer and user rejects ccpKozlov Dmitry
Conflicts: accel-pppd/ppp/ppp_ccp.c
2012-08-03ipoe: configure giaddr only if ifcfg=1Kozlov Dmitry
2012-08-03fixed complilation for 3.4 kernelKozlov Dmitry
2012-08-03ipoe: implemented dhcp relayKozlov Dmitry
2012-07-20ipoe: update config file and man fileKozlov Dmitry
2012-07-19radius: implemented Idle-TimeoutKozlov Dmitry
2012-07-19removed shaper_tbfKozlov Dmitry
2012-07-19ipoe: implemented L4-Redirect radius attributeKozlov Dmitry
ipoe: implemented client address, router address and mask to be passed via radius
2012-07-19radius: multiple disctionary options supportKozlov Dmitry
2012-07-19Merge commit '918036a3c42cb6dd5b796c52b6aaf278c466c928'Kozlov Dmitry
* commit '918036a3c42cb6dd5b796c52b6aaf278c466c928': cli: telnet: check for disconnect condition while processing input chars
2012-07-19cli: telnet: check for disconnect condition while processing input charsKozlov Dmitry
2012-07-15ipoe: better support for ip unnumberedKozlov Dmitry
2012-07-13ipoe: use netfilter pre routing hook to capture packetsKozlov Dmitry
2012-07-13ipoe: shared nat supportKozlov Dmitry
2012-07-13Merge commit '178b27b0b6d60afdc5039dc3d995f4ad000b5486'Kozlov Dmitry
* commit '178b27b0b6d60afdc5039dc3d995f4ad000b5486': radius: update Class attribute by CoA request
2012-07-13L2TP: Check for fcntl() errors in l2tp_connect()Kozlov Dmitry
Add error detection to ensure the FD_CLOEXEC flag gets set for every new socket. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2012-07-13Merge commit 'e04b9b2b35ed36ceb89d6991d2322210f6dd6abc'Kozlov Dmitry
* commit 'e04b9b2b35ed36ceb89d6991d2322210f6dd6abc': L2TP: Close sockets opened by l2tp_connect() upon failure
2012-07-13Merge commit '0b99fef73bce3f1abed63e581594de9d1f132312'Kozlov Dmitry
* commit '0b99fef73bce3f1abed63e581594de9d1f132312': L2TP: Fix socket() error handling in l2tp_connect() iprange: accept network with null mask (which actually disables iprange module)
2012-07-13radius: update Class attribute by CoA requestKozlov Dmitry
2012-07-13L2TP: Check for fcntl() errors in l2tp_connect()Guillaume Nault
Add error detection to ensure the FD_CLOEXEC flag gets set for every new socket. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2012-07-13L2TP: Close sockets opened by l2tp_connect() upon failureGuillaume Nault
Centralise error management to ensure full cleanup upon failure. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2012-07-13L2TP: Fix socket() error handling in l2tp_connect()Guillaume Nault
Check if the tunnel file descriptor has been successfully created. Explicitely check for negative values to detect socket() errors. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
2012-07-12ipoe: per-interface static dhcp pool of addressesKozlov Dmitry