X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?p=secnet.git;a=blobdiff_plain;f=TODO;h=2d5e447edeb162360ff15fbeb94e1a1754d691b3;hp=af3a4686efd4ad5be8ee2a6f870b4f78aaa48323;hb=5a8a70536e4fa79612405a88c50743976abb2d50;hpb=b2a56f7c93d221607864761c590952b9a614dc9f diff --git a/TODO b/TODO index af3a468..2d5e447 100644 --- a/TODO +++ b/TODO @@ -1,37 +1,34 @@ -Makefile.in: autodep stuff - dh.c: change format to binary from decimal string (without introducing endianness problems) -netlink.c: investigate why 'default' routes don't appear to work -(reported by JDA). - -slip.c: detect failure of userv-ipif to start. Restart userv-ipif to -cope with soft routes? Restart it if it fails in use? +netlink.c: test the 'allow_route' option properly. +Add fragmentation code. Check that we comply with RFC1812. -tun.c: jdamery reports tun-old code works on Linux-2.2. -Unresolved problem with ioctl(TUNSETIFF) sometimes returning EINVAL, seems -to be related to early 2.4.x (x<=5) series kernels. 2.4.9 and above seem ok; -2.4.[678] untested. +random.c: test properly -random.c: test +resolver.c: ought to return a list of addresses for each address; the +site code ought to remember them and try contacting them in turn. rsa.c: check padding type, change format to binary from decimal string (without introducing endianness problems) -site.c: the site_incoming() routing could be implemented much more -cleanly using a table. There's still quite a lot of redundancy in this -file. Abandon key exchanges when a bad packet is received. Modify -protocol to include version fields, as described in the NOTES file. +site.c: Abandon key exchanges when a bad packet is received. Modify +protocol to include version fields, as described in the NOTES +file. Implement keepalive mode. Make policy about when to initiate key +exchanges more configurable (how many NAKs / bad reverse-transforms +does it take to prompt a key exchange?) + +slip.c: restart userv-ipif to cope with soft routes? Restart it if it +fails in use? -transform.c: see below +transform.c: separate the transforms into multiple parts, which can +then be combined in the configuration file. Will allow the user to +plug in different block ciphers, invent an authenticity-only mode, +etc. (similar to udptunnel) -sha1.c: test +udp.c: option for path-MTU discovery (once fragmentation support is +implemented in netlink) -General: separate the transforms in transform.c into multiple parts, -which can then be combined in the configuration file. Will allow the -user to plug in different block ciphers, invent an authenticity-only -mode, etc. -Signal handling! Really just cope with SIGCHLD and SIGTERM. Possibly -use SIGUSR1/2 for prodding things. Manage child processes properly. +global: +consider using liboop for the event loop