X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?p=secnet.git;a=blobdiff_plain;f=TODO;h=2d5e447edeb162360ff15fbeb94e1a1754d691b3;hp=e9ae871bb7214e82427a9becfa17f3561288b4ed;hb=094ca922beda8a0af97cf9aeeeea3a983b59531c;hpb=3454dce4c6909648b711a59b57c5a527036b2a8e;ds=sidebyside diff --git a/TODO b/TODO index e9ae871..2d5e447 100644 --- a/TODO +++ b/TODO @@ -1,41 +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. +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. - -transform.c: make generic +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?) -util.c: sort out logging +slip.c: restart userv-ipif to cope with soft routes? Restart it if it +fails in use? -sha1.c: test +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) -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. +udp.c: option for path-MTU discovery (once fragmentation support is +implemented in netlink) -Signal handling! Really just cope with SIGCHLD and SIGTERM. Possibly -use SIGUSR1/2 for prodding things. -Write scripts to generate the 'real' sites file from a less-expressive -version that's more easily checked by external tools. +global: +consider using liboop for the event loop