What's Changed
- cli: clear show sessions cell buffer to avoid stale output by @nuclearcat in #293
- Various Framed‑Route improvements by @nuclearcat in #288
- netlink: Added VRF support by @AndriiFullroot in #294
- Minor fixes by @nuclearcat in #292
- radius: Fix use after free and more by @nuclearcat in #299
- policy/docs: Add contributing guidelines by @nuclearcat in #295
- Simplify Alpine Linux / musl libc port by @marekm72 in #300
- radius: fix stop accounting timeout flow and request cleanup by @nuclearcat in #301
- Various radius fixes by @nuclearcat in #297
- fix: typo, dont close wrong descriptor by @nuclearcat in #309
- Fix vlan_mod kernel WARNING issue by @nuclearcat in #310
- ci: Tightening warning condition in dmesg checks by @nuclearcat in #312
- stats: improve how we handle statistics in the code by @nuclearcat in #308
- Metrics module by @nuclearcat in #314
- ippool/ipv6pool: bitmap allocator + online reconfiguration by @nuclearcat in #318
- ci: harden s390x qemu test against modloop/disk flakes by @nuclearcat in #321
- [codex] openssl: suppress deprecated API warnings by @nuclearcat in #322
- Several bugfixes for problems reported by Khodor Tahech by @nuclearcat in #315
- log_file: don't register general target when log-file is unset by @nuclearcat in #319
- radius: update server secret on config reload by @nuclearcat in #320
- Stability fixes by @nuclearcat in #323
- ipoe: Fix OOPS if ipv6.disable=1 by @nuclearcat in #326
- pppoe: fix use-after-free in mac_filter_load() by @nuclearcat in #327
- Fix ipv6 ifid and UB shift by @nuclearcat in #337
- cli: proper ipv6 support for cli interface by @nuclearcat in #325
- triton: reject concurrent config reload requests by @nuclearcat in #333
- ipv6: fix NULL deref and OOB read in dnssl/AFTR-Name config parsing by @nuclearcat in #332
- ppp: close unit fd only after session cleanup finishes by @nuclearcat in #334
- ppp: don't terminate session on IPV6CP TermReq unless IPv6 is required by @nuclearcat in #330
- ipoe: fix two memory leaks (relay reply packet, username string) by @nuclearcat in #331
- Radius leak fixes by @nuclearcat in #328
- Docs/readme markdown, configs updates, man updates by @nuclearcat in #335
- sstp: express escape buffer bound as one invariant by @themiron in #340
- sstp: flush queued output on disconnect by @themiron in #341
- sstp: add ppposeq transport to avoid userspace HDLC framing by @themiron in #343
- sstp: reject packets shorter than header by @nuclearcat in #348
- metrics: expose session details in JSON output by @nuclearcat in #342
- l2tp hidden-AVP length fix, per-session IPv6 DNS, crypto.h cleanup by @nuclearcat in #344
- Stability fixes and function unification by @nuclearcat in #352
- auth: fix challenge-name lifetime on reload by @nuclearcat in #347
- pptp: drop the out-of-tree kernel driver by @nuclearcat in #349
- PPTP fixes by @nuclearcat in #350
- Ipoe stale session flush fixes by @nuclearcat in #346
- Various fixes on compiler warnings by @nuclearcat in #351
- Fix several unsafe or unaligned integer accesses found in protocol parsing paths, including option-gated MPPE, DHCP, PPPoE, RADIUS, IPCP and IPv6CP code. by @nuclearcat in #361
- Ipcp ccp delay ack by @nuclearcat in #359
- utils: centralize max macro by @nuclearcat in #357
- tests: give the veth pair fixed MAC addresses by @nuclearcat in #364
- Remove debian11 from CI (as EoL), add ubuntu 26:04 (build, test), remove qemu src-build for big-endian test by @svlobanov in #367
- Additional safeguards by @nuclearcat in #362
- cmake: fix kernel module installation by @nuclearcat in #358
- IPv6 DNS fixes by @nuclearcat in #356
- log: bound log lines and share target unpacking by @nuclearcat in #374
- Doc updates by @nuclearcat in #375
- Doc validation fixes by @nuclearcat in #376
- release: 1.15.0 by @nuclearcat in #377
New Contributors
- @AndriiFullroot made their first contribution in #294
- @marekm72 made their first contribution in #300
Full Changelog: 1.14.0...1.15.0