210b41efc0
improve robustness of ppp readiness notification
...
there was a race where ip-up could write ifname and then
ip6-up could write its outputs and then test ifname and
signal ready before ip-up had written the rest of its outputs
2025-03-31 23:17:50 +01:00
01fe2159b4
ppp: write ifindex as output
...
because what happens if the service is restarted but the new ppp0 is
a different interface than the old one so that services which had
bound to it with the old name are now not getting new data
(I am not 100% that this actually happens but it seems like it would
be good to avoid it if it does)
2025-03-31 23:11:30 +01:00
46ed8f0199
add bandwidth as a service option for ppp (l2tp, pppoe)
2025-03-27 20:23:26 +00:00
1a6160bcab
firewall: show how to ratelimit icmp6 to 5% of available bandwidth
...
it's a little klunky as yet, requires setting properties.bandwidth on
the interface service
2025-03-25 23:53:02 +00:00
7e2b0068e6
nixfmt-rfc-style
...
There is nothing in this commit except for the changes made by
nix-shell -p nixfmt-rfc-style --run "nixfmt ."
If this has mucked up your open branches then sorry about that. You
can probably nixfmt them to match before merging
2025-02-10 21:55:08 +00:00
1f7d6544e3
provide stdout to ppp callback scripts
...
pppd runs them with 0,1,2 => /dev/null but we actually quite like
seeing errors in the logs
2024-10-17 21:37:08 +01:00
7b98724643
turns out we did need usepeerdns
2024-10-17 21:05:16 +01:00
b1625763ee
ppp service signal readiness only when ip-up has run
...
as downstream services need e.g. ifname which is not written by ipv6-up
2024-10-16 22:59:01 +01:00
4a0120487c
remove usepeerdns - it causes only errors
...
we handle dns with service outputs anyway
2024-10-16 18:58:34 +01:00
e0725489ca
unbreak pppoe ci job
2024-09-06 00:33:30 +01:00
091d863710
extract pppoe/l2tp common code
2024-09-04 12:02:00 +01:00
c7bcfbfa34
make pppoe/l2tp more consistent
2024-09-03 22:57:45 +01:00
500a3c1025
make nodefaultroute explicit in ppp
2024-09-03 22:53:13 +01:00
e745991b9d
restart pppoe/l2tp in secrets changes
2024-08-30 20:49:27 +01:00
9c30b6f882
change output references from attrset to lambda
...
this is so that we can distinguish a ref from a literal parameter that
might be a attrset
2024-08-23 22:25:57 +01:00
a6128955e7
ppp modules: permit (mostly) same params for l2tp as pppoe
...
this also means that l2tp can use secrets for username/password
2024-08-21 23:10:28 +01:00
2992771c7e
pppoe allow secrets for username/password
2024-08-21 00:17:22 +01:00
54d3415885
pppoe convert to using a config file
...
mostly for ease of implementation but does mean we don't
have username/password secrets on the command line
2024-08-20 22:55:30 +01:00
5db9d7269e
ppoe structured options are optional
2024-08-06 18:43:27 +01:00
7195cb10ce
add structured config for common pppoe options
2024-07-23 09:31:34 +01:00
df395a4d5d
finish moving pkgs.linimix.callService to config.system
2024-07-15 19:00:08 +01:00
ac551536da
set cwd before exec xl2tpd
2024-07-08 21:56:26 +01:00
07a6eb73cd
set lcp-echo timeout in l2tp
2024-07-08 21:45:54 +01:00
159bfa3057
make xl2tpd quit when the connections close
2024-07-08 21:44:15 +01:00
143137cbc6
pppoe: set lcp echo failure timeout
2024-07-08 21:25:42 +01:00
8d228f2bef
mess with redial
2024-07-08 21:24:44 +01:00
e94bf62ec1
remove dead code (run deadnix)
2024-06-29 22:59:27 +01:00
758c7ef657
exec xl2tpd
...
haven't fully worked out why, but without this s6 is unable to stop it.
2024-05-22 18:54:49 +01:00
73225a70b2
add rudimentary l2tp service module
2024-05-22 18:54:49 +01:00
540a1dfd76
remove interface.device
...
build-time uses can mostly be replaced with interface.name
for runtime uses, switch to $(output ${interface} name)
2023-08-28 22:02:28 +01:00
3ea40f95dc
convert pppoe to serviceDefn
2023-08-10 22:53:45 +01:00
2a29a00dfe
much text, such doc, very wow
2023-08-09 22:27:37 +01:00
5cff862ae9
add preamble text to each service-providing-module
2023-08-07 23:03:49 +01:00
df6cfe1cd5
move pppoe service derivation into ppp module dir
2023-07-14 21:35:59 +01:00
c13defc891
rename modules/ppp.nix -> modules/ppp/default.nix
2023-07-14 21:08:33 +01:00