Commit graph

880 commits

Author SHA1 Message Date
Daniel Barlow
d948438ae1 extract borderVm config into separate file 2023-02-15 22:06:28 +00:00
Daniel Barlow
a98b266445 remove NIXPKGS_ALLOW_UNSUPPORTED_SYSTEM, no longer needed 2023-02-15 22:06:28 +00:00
Daniel Barlow
ea6b9c8016 bordervm add network debugging utils 2023-02-15 22:06:28 +00:00
Daniel Barlow
9899fa91f6 bordervm static ethernet and tftp server 2023-02-15 22:06:28 +00:00
Daniel Barlow
b438a0fd17 handlersocket must be bound before calling select()
this is due to a rather odd (imo) decision in luasocket which
says that the underlying socket (and therefore its file
descriptor) isn't actually created until we call something
that lets it work out whether ipv4 or ipv6
2023-02-15 22:06:28 +00:00
Daniel Barlow
2388e4ca24 recvfrom(-1) is not the same as recvfrom() 2023-02-15 22:06:28 +00:00
Daniel Barlow
f98b9c5c97 add README to say where Tufted came from 2023-02-15 22:06:28 +00:00
Daniel Barlow
1a29e2ba0f use locally modified tftp.lua instead of upstream tufty 2023-02-15 22:06:28 +00:00
Daniel Barlow
118f78f334 remove "using luasocket" message 2023-02-15 22:06:28 +00:00
Daniel Barlow
a258456f25 check return value of bind
is common to forget to run this as root, in which case we would like
to see the permission denied error when it tries to open port 69
2023-02-15 22:06:28 +00:00
Daniel Barlow
71e37f1b96 update listen docstring 2023-02-15 22:06:28 +00:00
Daniel Barlow
55688c14ed pass remote host and port to callback as params 2..3
This allows the callback to handle the response differently
depending on who is asking - for example, to refuse requests
from clients on a blocklist
2023-02-15 22:06:28 +00:00
Daniel Barlow
59c0881235 remove unhelpful debug message 2023-02-15 22:06:28 +00:00
Daniel Barlow
1b372bcb2b simpler eof handling 2023-02-15 22:06:28 +00:00
Daniel Barlow
b84a6e0aa5 fix poll() to not mutate its parameter 2023-02-15 22:06:28 +00:00
Daniel Barlow
d729709869 remove nixio support 2023-02-15 22:06:28 +00:00
Daniel Barlow
740314b329 added at 3cb95c869e2fe74cc61ca303d88af6c5daad6734 2023-02-15 22:06:28 +00:00
Daniel Barlow
e84833e52f WIP create VM for pppoe and tftpd 2023-02-15 22:06:28 +00:00
Daniel Barlow
9d651f5851 move files 2023-02-15 22:06:28 +00:00
Daniel Barlow
c298f128fa refine the TODO list 2023-02-15 22:06:28 +00:00
Daniel Barlow
5b51aa0826 tftp load address is per-device, IP addresses are local config 2023-02-15 22:06:28 +00:00
Daniel Barlow
dd8c8edd9c rewrite phram boot to use correct sizes and offsets 2023-02-15 22:06:28 +00:00
Daniel Barlow
1a08aaad01 move outputs into a module 2023-02-10 23:10:44 +00:00
Daniel Barlow
0a06319d0c make loadAddress and entryPoint device configuration
... already having second thoughts about loadAddress
2023-02-10 18:20:01 +00:00
Daniel Barlow
8cead61740 convert devices from overlay to module
this makes it possible for devices to stash things in
`config` (e.g. pathname to DTS) that can later be overwritten
(even by the end user)
2023-02-10 17:54:33 +00:00
Daniel Barlow
6be459b9ac thinking 2023-02-10 16:43:06 +00:00
Daniel Barlow
a7c94f5a12 delete dead file 2023-02-08 23:19:37 +00:00
Daniel Barlow
320d436c65 add wlan test to ci 2023-02-08 23:19:18 +00:00
Daniel Barlow
befc75b060 thunk 2023-02-08 22:50:26 +00:00
Daniel Barlow
c7f508d901 update contributing docs 2023-02-08 22:49:59 +00:00
Daniel Barlow
1dc9770dbc turn run-qemu.sh and connect-qemu scripts into buildEnv commands 2023-02-08 22:49:10 +00:00
Daniel Barlow
4addcbbd51 turn run-qemu.sh script into mips-vm buildEnv command 2023-02-08 22:17:06 +00:00
Daniel Barlow
103d85bdea fix readme bugs 2023-02-08 18:13:58 +00:00
Daniel Barlow
cc7daeabb3 add routeros to overlay 2023-02-08 18:13:35 +00:00
Daniel Barlow
f356e475d6 add buildEnv to CI so we know next time tufted breaks 2023-02-08 00:12:29 +00:00
Daniel Barlow
78c55d36a9 improve build tool derivations, review README
The readme is still very badly organised, but not quite so out of
date.
2023-02-08 00:03:37 +00:00
Daniel Barlow
52d8c03ddd update tufted for nixpkgs fennel changes 2023-02-07 23:42:19 +00:00
Daniel Barlow
afd9bbbc80 building but untested kernels for gl-mt300a, gl-mt300n-v2 2023-02-06 23:19:53 +00:00
Daniel Barlow
eaf90df56c per-device dts 2023-02-06 23:19:35 +00:00
Daniel Barlow
cb39209492 fix spelling, remove dead file 2023-02-05 22:42:41 +00:00
Daniel Barlow
424abc72b8 rearrange all the ci stuff 2023-02-05 22:38:21 +00:00
Daniel Barlow
ebc5d6a3e0 convert pppoe test to a derivation
* move shell script to a runCommand
* multicast needs special options to run on loopback
 (nix-build sandbox disables non-local network interfaces)
2023-02-05 17:37:31 +00:00
Daniel Barlow
16a923f58f convert routeros pppoe service to a derivation
and make it configure itself automatically instead of starting
out blank
2023-02-05 17:35:41 +00:00
Daniel Barlow
00aa42b803 create ci.nix to run all tests 2023-01-29 21:42:53 +00:00
Daniel Barlow
a0380728a5 convert test script to derivation 2023-01-29 21:39:34 +00:00
Daniel Barlow
3b1bc7eff8 test derivation for ci 2023-01-29 21:19:10 +00:00
Daniel Barlow
63bf4162b2 licence: remove accidental punctuation, update copyright year 2023-01-29 16:39:50 +00:00
Daniel Barlow
8dc65d2fc8 pass deviceName as hydra input 2023-01-29 14:32:05 +00:00
Daniel Barlow
cb6cc4b858 add jobs to jobset so we can see more easily what fails 2023-01-29 12:42:15 +00:00
Daniel Barlow
64b9bad891 allow building mips (bigendian) without setting env vars 2023-01-29 10:00:13 +00:00