Age | Commit message (Collapse) | Author | |
---|---|---|---|
2016-04-28 | cli: flush pending data before disconnecting | Guillaume Nault | |
The telnet and tcp servers disconnect as soon as they receive the 'exit' command or see a disconnection from the client. In this case, all data queued for transmission are lost. This can lead to truncated output when big amount of data is being sent. For example, on a moderately loaded server with a few thouthands connections, the output of the 'accel-cmd show sessions' command can be truncated. The problem is that accel-cmd sends the 'show sessions' command, followed by 'exit'. It does so because it has to stop running once all data has been received from the server. But it never knows whether more data are going to arrive. Disconnection must then come from the server, hence the use of 'exit' (although the same effect could be achieved with shutdown(SHUT_WR)). The telnet and tcp modules behave very similarly and are modified in the same way: * For a soft disconnection, cln_read() doesn't call disconnect() anymore if there are data queued for transmission. Instead it sets the 'disconnect' flag and stops listening to its peer (no need to process further messages). * cln_write() checks the 'disconnect' flag once it has sent all pending data and actually performs the disconnection if necessary. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr> | |||
2016-04-28 | cli: fix data output miss-ordering | Guillaume Nault | |
In tcp and telnet backends, the first buffer been queued is directly pointed to by cln->xmit_buf. It's not added to cln->xmit_queue. Therefore testing if ->xmit_queue is empty doesn't reliably tells if data has already been queued. We should test if ->xmit_buf is non-NULL instead. This is reliable because ->xmit_buf is re-filled with the first buffer from ->xmit_queue after every successful write(). Failure to properly check if data has already been queued can lead to message miss-ordering because cli_client_send() or telnet_send() will try to directly write() their input buffer, effectively bypassing the one previously queued up in ->xmit_buf. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr> | |||
2016-04-28 | cli: fix partial line duplication and truncation | Guillaume Nault | |
When queueing output data for later write(), the 'n' first bytes of the buffer have already been sent (we have n > 0 if EAGAIN was returned after some other write() calls succeeded). Therefore, we need to skip these bytes when initialising the buffer to be queued. The size passed to memcpy() did already take that space into account. Signed-off-by: Guillaume Nault <g.nault@alphalink.fr> | |||
2016-04-13 | logwtmp: check for username presence | Dmitry Kozlov | |
2016-04-13 | ppp: removed mtu/mru size warnings | Dmitry Kozlov | |
2016-04-13 | ppp: increase input buffer size | Dmitry Kozlov | |
2016-04-12 | ipoe: generate EUI-64 interface identifier for ipv6 addresses | Dmitry Kozlov | |
2016-04-12 | ipv6: remove ipv6 address and routes on session termination | Dmitry Kozlov | |
2016-04-11 | Revert "pppoe: do not negotiate LCP MRU option if it is larger than 1492" | Dmitry Kozlov | |
This reverts commit fc098b3062badfd802f91241533069cad4886b6f. | |||
2016-04-10 | Merge branch 'master' of ssh://git.code.sf.net/p/accel-ppp/code | Dmitry Kozlov | |
2016-04-10 | pppoe: do not negotiate LCP MRU option if it is larger than 1492 | Dmitry Kozlov | |
2016-04-07 | link pppoe and ipoe with vlan-mon library | Dmitry Kozlov | |
2016-04-06 | radius: do not mark request as active if send function fails | Dmitry Kozlov | |
2016-04-05 | ipoe: continue to reply to dhcp requests on active sessions when "shutdown ↵ | Dmitry Kozlov | |
soft" is active | |||
2016-04-05 | improved logging: if session's interface is empty log ctrl's interface | Dmitry Kozlov | |
2016-04-05 | pppoe: add interface name to log messages | Dmitry Kozlov | |
2016-04-05 | ipoe_mod: code simplification | Dmitry Kozlov | |
2016-04-05 | iputils: check for IFLA_INFO_KIND presence | Dmitry Kozlov | |
2016-04-04 | ipoe_mod: restored ip-mac binding function | Dmitry Kozlov | |
2016-04-04 | Revert "vlan_mon: recalculate busy mask on vlan mask update" | Dmitry Kozlov | |
This reverts commit f67292499b20f599f2bd744d2dcf0f6779581787. | |||
2016-04-04 | ipoe: remove stale backup.c | Dmitry Kozlov | |
2016-04-04 | pppoe: stop "vlan timeout" timer on new connection | Dmitry Kozlov | |
2016-04-04 | vlan_mon: fixed panic on latest kernels | Dmitry Kozlov | |
2016-04-04 | vlan_mon: fixed bug | Dmitry Kozlov | |
2016-04-04 | vlan_mon: make possible to work other module after message "vlan not started" | Dmitry Kozlov | |
2016-04-04 | vlan_mon: recalculate busy mask on vlan mask update | Dmitry Kozlov | |
2016-04-04 | vlan_mon: fixes for previous commit | Dmitry Kozlov | |
2016-04-04 | vlan_mon: introduced autoclean module parameter | Dmitry Kozlov | |
if autoclean=1 then vlan_mon will delete all vlan interfaces created by previous accel-pppd run f.e. vlan_mon cleans created interfaces if accel-pppd restarts | |||
2016-04-04 | ipoe,pppoe,vlan_mon: deleted conditions to simultaneous start ipoe and pppoe ↵ | Dmitry Kozlov | |
on same interfaces (started by vlan_mon) | |||
2016-04-04 | pppoe: add support for PPP-Max-Payload tag (RFC 4638) | Dmitry Kozlov | |
2016-04-02 | for single-session=deny make early check for duplicate username (before ↵ | Dmitry Kozlov | |
calling radius) | |||
2016-04-02 | ipoe_mod: ignore 0.0.0.0 and 255.255.255.255 addresses | Dmitry Kozlov | |
2016-04-02 | ipoe: ignore start=auto for shared=1 interfaces | Dmitry Kozlov | |
2016-04-01 | shaper: fix wrong priority value for skbedit | Dmitry Kozlov | |
2016-04-01 | shaper: implemented internal class id map | Dmitry Kozlov | |
Before this commit shaper used ses->unit_idx as class id, but it is not unique. This commit introduces internal map to manage unique class ids | |||
2016-03-31 | pppoe: disc.c: add missing initialization of context's before_switch function | Dmitry Kozlov | |
2016-03-31 | pppoe: fix typo | Dmitry Kozlov | |
2016-03-31 | dhcpv6: fix typo | Dmitry Kozlov | |
2016-03-31 | vlan_mon: clean state on start | Dmitry Kozlov | |
2016-03-29 | vlan_mon: use local netlink socket in utility functions | Dmitry Kozlov | |
2016-03-29 | ipoe: populate existing vlan interfaces by vlan info when vlan monitor event ↵ | Dmitry Kozlov | |
occurs | |||
2016-03-29 | ipoe_mod: do not redirect arp requests to virtual ipoe interfaces | Dmitry Kozlov | |
2016-03-29 | pppoe: add missing stopping of discovery on vlan timeout | Dmitry Kozlov | |
2016-03-29 | ipoe: do not cleanup shared=1 interfaces | Dmitry Kozlov | |
2016-03-19 | ppp: futher improvement of distablish_ppp function | Dmitry Kozlov | |
2016-03-19 | pppd_compat: check for script existance before fork | Dmitry Kozlov | |
2016-03-19 | ppp: fix bug introduced by d392ccd024f9243bf5df8e242a5b0cb6a85876ba | Dmitry Kozlov | |
2016-03-19 | ppp: fix bug introduced by "call ap_session_finished before actual interface ↵ | Dmitry Kozlov | |
destroing" | |||
2016-03-19 | ipoe: bug fix | Dmitry Kozlov | |
2016-03-19 | ipoe: send arp reply for sessions started by arp request | Dmitry Kozlov | |