Statistics
| Branch: | Revision:

iof-bird-daemon / TODO @ 758458be

History | View | Annotate | Download (2.61 KB)

1
Core
2
~~~~
3
- config: try to unify expressions
4

    
5
- static: check validity of route destination?
6

    
7
- configure: default CFLAGS?
8

    
9
- filters: deletion of mandatory attributes?
10
- filters: user defined attributes?
11

    
12
- cli: show tables?
13
- cli: show where is routed given IP address?
14

    
15
- client: Ctrl-R eats one more enter
16
- client: paging?
17
- client: data losses on large dumps?
18

    
19
- table: ocassional core dumps in rt_prune()
20
- table: do feeding by parts
21

    
22
- bgp: timing of updates?
23
- bgp: dump and get_route_info
24
- bgp: when protocol is down, don't print Idle state
25

    
26
- proto: Don't show repeated `Changed state to ...' messages if only internal states change
27

    
28
Documentation
29
~~~~~~~~~~~~~
30
- write doctool
31
- write documentation :|
32

    
33
Globals
34
~~~~~~~
35
- right usage of DBG vs. debug
36
- kill preconfigs?
37
- check dump functions
38
- cleanup debugging calls
39
- logging and tracing; use appropriate log levels
40
- check incoming packets and log errors!!
41
- check log calls for trailing newlines and log levels followed by comma
42
- check if all protocols set proper packet priorities and TTL's.
43
- replace all NUM, IPA and expr tokens by constant filter expressions
44
- try compiling with -Wunused
45
- does everybody test return value of sk_open?
46
- doc: references to RFC's we did follow
47
- protocols: implement CLI hooks and per-procotol CLI commands
48
- protocols: implement reconfigure hook
49
- protocols: use locking
50
- check use of system includes and sprintf()
51

    
52
Various ideas
53
~~~~~~~~~~~~~
54
- static: allow specifying a per-route filter program for setting route attributes?
55
- netlink: realms
56
- netlink: import Linux route attributes to our rta's, so that they can be filtered?
57
- config: executable config files
58
- client: access control
59
- io: use poll if available
60
- IPv6 router advertisements
61
- real multipath (doesn't seem to be simple at all :()
62
- fake multipath (even less simple)
63
- route recalculation timing and flap dampening [see RFC2439 for algorithms]
64
- aggregate engine: standard route aggregation and summarization [RFC2519]
65
- aggregate engine: injection of manually configured pseudo-static routes
66
- generate default route if any working BGP connection exists (aggregate engine again?)
67
- generate default route to IGP's (aggregate engine yet another time?)
68
- look at RFC 2386 (QoS-based routing)
69

    
70

    
71
OSPF
72
~~~~
73
	- refuse running on non-multicast devices
74
	- importing of device routes for networks where we don't run OSPF
75
	- check incoming packets using neighbor cache
76
	- RFC2328 appendix E: Use a better algorithm
77
	- automatic generation of external route tags (RFC1403)
78
	- RFC1587 NSSA areas
79
	- RFC2370 opaque LSA's
80
	- respect interface MTU and try not to create larger packets unless unavoidable