diff options
author | Martin Schiller <ms@dev.tdt.de> | 2020-11-26 07:35:54 +0100 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2020-11-27 17:22:51 -0800 |
commit | a4989fa91110508b64eea7ccde63d062113988ff (patch) | |
tree | aef98c93311451142769cf2fa851a424a77b7503 /net/lapb/lapb_timer.c | |
parent | 7eed751b3b2a6949932a6a59fa2792c584641618 (diff) |
net/lapb: support netdev events
This patch allows layer2 (LAPB) to react to netdev events itself and
avoids the detour via layer3 (X.25).
1. Establish layer2 on NETDEV_UP events, if the carrier is already up.
2. Call lapb_disconnect_request() on NETDEV_GOING_DOWN events to signal
the peer that the connection will go down.
(Only when the carrier is up.)
3. When a NETDEV_DOWN event occur, clear all queues, enter state
LAPB_STATE_0 and stop all timers.
4. The NETDEV_CHANGE event makes it possible to handle carrier loss and
detection.
In case of Carrier Loss, clear all queues, enter state LAPB_STATE_0
and stop all timers.
In case of Carrier Detection, we start timer t1 on a DCE interface,
and on a DTE interface we change to state LAPB_STATE_1 and start
sending SABM(E).
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
Acked-by: Xie He <xie.he.0141@gmail.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'net/lapb/lapb_timer.c')
0 files changed, 0 insertions, 0 deletions