<feed xmlns='http://www.w3.org/2005/Atom'>
<title>accel-ppp.git/tests/common/veth.py, branch 1.15.0</title>
<subtitle>High performance PPTP/L2TP/SSTP/PPPoE/IPoE server for Linux (mirror of https://github.com/accel-ppp/accel-ppp.git)
</subtitle>
<id>https://git.amelek.net/accel-ppp/accel-ppp.git/atom?h=1.15.0</id>
<link rel='self' href='https://git.amelek.net/accel-ppp/accel-ppp.git/atom?h=1.15.0'/>
<link rel='alternate' type='text/html' href='https://git.amelek.net/accel-ppp/accel-ppp.git/'/>
<updated>2026-09-09T08:05:56+00:00</updated>
<entry>
<title>tests: give the veth pair fixed MAC addresses</title>
<updated>2026-09-09T08:05:56+00:00</updated>
<author>
<name>Denys Fedoryshchenko</name>
<email>denys.f@collabora.com</email>
</author>
<published>2026-09-09T08:05:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/accel-ppp/accel-ppp.git/commit/?id=1c7856294d9eeb138a8e4b2d80fc2f48033a6de1'/>
<id>urn:sha1:1c7856294d9eeb138a8e4b2d80fc2f48033a6de1</id>
<content type='text'>
The tests create the veth pair with 'ip link add ... type veth peer name
...' and let the kernel pick random hardware addresses, then start
accel-pppd right away. On distributions where systemd-udevd rewrites the
address of a freshly created veth (MACAddressPolicy in its .link rules,
seen on Ubuntu 22.04) this is a race: accel-pppd reads the address of the
interface it serves once, at startup, and when udev wins it advertises an
address the interface no longer has.

Discovery still completes - the client copies the advertised address into
its kernel PPPoE session as the peer address - but from then on the two
ends disagree about it, no PPP frame is exchanged in either direction, and
the session dies on LCP timeouts. Every PPPoE session test can fail this
way; test_pppoe_ccp_ipcp_race failed 8 times out of 12 runs in one qemu
Ubuntu-22.04 job.

Create the pair with fixed, locally administered addresses derived from
the name the pair already gets, so udev has nothing to change. The same
job passes 12 out of 12 with this.

This only removes the trigger in the tests. accel-pppd not following the
address of the interface it serves is tracked in #363 and needs a fix of
its own.
</content>
</entry>
<entry>
<title>tests ci: add testing in Qemu (Ubuntu 18.04, 20.04, 22.04, Debian 10,11,12)</title>
<updated>2022-09-05T21:18:57+00:00</updated>
<author>
<name>Sergey V. Lobanov</name>
<email>sergey@lobanov.in</email>
</author>
<published>2022-09-05T20:02:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/accel-ppp/accel-ppp.git/commit/?id=127b1de95923fccdfdc892c20f931d364e099f4b'/>
<id>urn:sha1:127b1de95923fccdfdc892c20f931d364e099f4b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>add tests and ci workflow for running tests</title>
<updated>2022-09-04T16:06:49+00:00</updated>
<author>
<name>Sergey V. Lobanov</name>
<email>sergey@lobanov.in</email>
</author>
<published>2022-09-04T15:49:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/accel-ppp/accel-ppp.git/commit/?id=c92ff6266b18a9655edef231391739f0479dfb3a'/>
<id>urn:sha1:c92ff6266b18a9655edef231391739f0479dfb3a</id>
<content type='text'>
This commit adds tests (using python3 pytest framework):
1. Test basic accel-cmd commands (show version, show stat, etc)
2. Test ipoe shared session up (dhcpv4) without radius
3. Test pppoe discovery (without PADO delay)
4. Test pppoe discovery (without PADO delay)
5. Test pppoe session up (ipv4) without radius
6. Test vlan creation using vlan-mon (pppoe)

These tests require external utils. Please read tests/README.md how to setup
environment, how to run the tests and how to generate coverage report
Also, run-tests.yml contains step-by-step instruction how to run the tests

Signed-off-by: Sergey V. Lobanov &lt;sergey@lobanov.in&gt;
</content>
</entry>
</feed>
