libsystemd-networkd: introduce sd-pppoe library

System Internals / systemd - Tom Gundersen [jklm.no] - 1 November 2014 16:31 UTC

This library negotiates a PPPoE channel. It handles the discovery stage and leaves the session stage to the kernel. A further PPP library is needed to actually set up a PPP unit (negotatie LCP, IPCP and do authentication), so in isolation this is not yet very useful.

The test program has two modes:

# ./test-pppoe

will create a veth tunnel in a new network namespace, start pppoe-server on one end and this client library on the other. The pppd server will time out as no LCP is performed, and the client will then shut down gracefully.

# ./test-pppoe eth0

will run the client on eth0 (or any other netdev), and requires a PPPoE server to be reachable on the local link.

cda391c libsystemd-networkd: introduce sd-pppoe library
.gitignore | 1 +
Makefile.am | 13 +
src/libsystemd-network/sd-pppoe.c | 808 +++++++++++++++++++++++++++++++++++
src/libsystemd-network/test-pppoe.c | 181 ++++++++
src/systemd/sd-pppoe.h | 53 +++
5 files changed, 1056 insertions(+)

Upstream: github.com


  • Share