]> git.ipfire.org Git - thirdparty/bird.git/blob - TODO
5ba0433bc3f33c392d55fbca3b308f7b81f68f9f
[thirdparty/bird.git] / TODO
1 Core
2 ~~~~
3 - debug: static
4 - debug: pipe
5 - debug: krt
6
7 - static: check validity of route destination?
8 - static: allow specifying a per-route filter program for setting route attributes?
9
10 - krt: rescan interfaces when route addition fails?
11
12 - tagging of external routes?
13
14 Commands
15 ~~~~~~~~
16 - show status
17 - showing of routing table as seen by given protocol
18 - printing of dynamic attributes
19
20 Documentation
21 ~~~~~~~~~~~~~
22 - write doctool
23 - write documentation :|
24
25 Globals
26 ~~~~~~~
27 - right usage of DBG vs. debug
28 - cleanup debugging calls
29 - logging and tracing; use appropriate log levels
30 - check incoming packets and log errors!!
31 - check log calls for trailing newlines
32 - check if all protocols set proper packet priorities and TTL's.
33 - replace all NUM, IPA and expr tokens by constant filter expressions
34 - try compiling with -Wunused
35 - does everybody test return value of sk_open?
36 - doc: references to RFC's we did follow
37 - protocols: implement CLI hooks and per-procotol CLI commands
38 - protocols: implement reconfigure hook
39 - protocols: use locking
40
41 Various ideas
42 ~~~~~~~~~~~~~
43 - netlink: import Linux route attributes to our rta's, so that they can be filtered?
44 - config: executable config files
45 - client: access control
46 - config: when parsing prefix, check zero bits
47 - io: use poll if available
48 - IPv6 router advertisements
49 - real multipath (doesn't seem to be simple at all :()
50 - fake multipath (even less simple)
51 - route recalculation timing and flap dampening [see RFC2439 for algorithms]
52 - aggregate engine: standard route aggregation and summarization [RFC2519]
53 - aggregate engine: injection of manually configured pseudo-static routes
54 - generate default route if any working BGP connection exists (aggregate engine again?)
55 - generate default route to IGP's (aggregate engine yet another time?)
56 - look at RFC 2386 (QoS-based routing)
57
58
59 RIP
60 ~~~
61
62 OSPF
63 ~~~~
64 - refuse running on non-multicast devices
65 - importing of device routes for networks where we don't run OSPF
66 - check incoming packets using neighbor cache
67 - RFC2328 appendix E: Use a better algorithm
68 - automatic generation of external route tags (RFC1403)
69 - RFC1587 NSSA areas
70 - RFC2370 opaque LSA's
71 - respect interface MTU and try not to create larger packets unless unavoidable