]> git.ipfire.org Git - thirdparty/bird.git/blobdiff - TODO
Babel: Rework handling of retractions
[thirdparty/bird.git] / TODO
diff --git a/TODO b/TODO
index a681a167f5ab2eb064037e8e3c53b82c28142d58..23cd18778a12a76432afb529d62772d6a8a99bf5 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,13 +1,8 @@
 Core
 ~~~~
-- client: Ctrl-R eats one more enter
-- client: paging?
-- client: data losses on large dumps?
-
-Documentation
-~~~~~~~~~~~~~
-- write doctool
-- write documentation :|
+- socket open failure should not be fatal
+- &&,||: priorities
+- static: allow specifying a per-route filter program for setting route attributes?
 
 Globals
 ~~~~~~~
@@ -18,7 +13,6 @@ Globals
 - check if all protocols set proper packet priorities and TTL's.
 - try compiling with -Wunused
 - does everybody test return value of sk_open?
-- doc: references to RFC's we did follow
 - protocols: implement CLI hooks and per-procotol CLI commands
 - protocols: implement reconfigure hook
 - protocols: use locking
@@ -26,17 +20,12 @@ Globals
 
 Various ideas
 ~~~~~~~~~~~~~
-- static: allow specifying a per-route filter program for setting route attributes?
+- client: Ctrl-R eats one more enter
 - bgp: timing of updates?
-- netlink: realms
 - netlink: import Linux route attributes to our rta's, so that they can be filtered?
 - config: executable config files
 - filters: user defined attributes?
-- client: access control
 - io: use poll if available
-- IPv6 router advertisements
-- real multipath (doesn't seem to be simple at all :()
-- fake multipath (even less simple)
 - route recalculation timing and flap dampening [see RFC2439 for algorithms]
 - aggregate engine: standard route aggregation and summarization [RFC2519]
 - aggregate engine: injection of manually configured pseudo-static routes
@@ -47,97 +36,10 @@ Various ideas
 
 OSPF
 ~~~~
-       - refuse running on non-multicast devices
-       - importing of device routes for networks where we don't run OSPF
        - check incoming packets using neighbor cache
        - RFC2328 appendix E: Use a better algorithm
        - automatic generation of external route tags (RFC1403)
-       - RFC1587 NSSA areas
        - RFC2370 opaque LSA's
-       - respect interface MTU and try not to create larger packets unless unavoidable
-
-Documentation (sorry, its in czech)
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-K SGML:
-
-o  Mohl bys, prosim, nekam napsat, co je vsechno potreba udelat, aby bylo
-   dokumentaci mozno postavit? Skoncil jsem u toho, ze jsem do doc/sbase/
-   zkopiroval spoustu souboru z /usr/lib/sgml-tools a pridal nekolik symlinku
-   -- ted uz sice dokumentaci vygeneruji, ale asi to neni ta spravna cesta.
-
-K HTML:
-
-o  "2000" zcela vypadava mimo hlavicku.
-o  Zkusit HTML projet nejakym validatorem.
-
-Uvod:
-
-o  Chybi sekce popisujici instalaci, spousteni a command-line options.
-o  "About routing tables" by melo byt podstatne podrobnejsi (vysvetlit, co vlastne
-   routovaci tabulky jsou, co obsahuji, ze vubec existuji nejake atributy, k cemu
-   slouzi, ze nektere tabulky jsou synchronizovane s kernelem, zatimco jine nikoliv,
-   ze lze prenaset routy mezi tabulkami (odkaz na protokol pipe), ze k tabulkam
-   jsou pres filtry pripojeny protokoly atd.) Asi z toho udelat samostatnou kapitolu.
-o  Zminit logy a kategorie hlasek.
-
-Filtry:
-
-o  Napsat neco o tom, jak filtry debugovat -- ze existuje trasovani filtru
-   a CLI command pro vypsani routovaci tabulky tak, jak projde filtrem ci tak,
-   jak ji vidi dany protokol.
-o  `filters internally work ...' patri do progdoc.
-o  Vysvetlit nesting a zastinovani.
-o  Nadefinovat, co se stane, kdyz funkce nevrati hodnotu, i kdyz ma.
-o  Typy: tez rici, ze integery se lisi nejen od booleanu, ale take od enumu.
-o  Boolean: TRUE nebo true? U kazdeho typu zminit, jak vypadaji literaly
-   tohoto typu a psat je vzdycky tt fontem.
-o  int: Nadefinovat rozsah a rici, ze preteceni se nekontroluje. Zminit
-   hexadecimalni konstanty.
-o  ip: IPv4/IPv6 nezavisi na verzi BIRDa, nybrz na compile-time konfiguraci.
-o  ip: .mask zminit zvlast mezi specialnimi operatory.
-o  set: lepe vysvetlit matchovani prefixu, ukazat na prikladu.
-o  bgppath: list of autonomous system _numbers_
-o  bgpmask: vysvetlit matchovani.
-o  operations: prejmenovat na `operators', mela by to asi byt tabulka
-   operatoru, u kazdeho receno, na jakych typech je definovan a jakeho
-   typu je vysledek.
-o  operations: ~ pracuje i na clistech, neni-liz pravda?
-o  Examply by mohly byt krapet smysluplnejsi.
-o  defined(): To, ze undefined attribute cannot be accessed, by melo byt
-   rozhodne receno nekde jinde (v uvodu sekce) -- vzdyt u defined samotneho
-   to mozne je.
-o  attributes: nemyslim, ze jsou vsechny -- co treba scope a preference?
-o  print: a coz takhle printn apod.?
-o  Mezi prikazy nikde neni zminen napriklad accept a reject.
-o  Co se stane, kdyz filtr skonci, aniz by vydal verdikt?
-
-Protocols:
-
-o  RIP: Per-interface optiony uvadet tez jako definition list.
-o  passwords: syntaxe data uz, tusim, davno vypada jinak.
-
-Struktura dokumentace:
-
-o  Chybi kapitola o CLI a o clientovi.
-o  Na konci (nebo ve zvlast sekci pro kazdy protokol?) by mel byt seznam referenci
-   na vsechny mozne dokumenty, zejmena vsak vsechna RFC, kterymi se ridime nebo
-   ktera maji neco spolecneho s tim, co delame (napriklad RPSL).
-
-K jazyku:
-
-o  K "BIRD Internet Routing Daemon" by mel patrit urcity clen.
-o  Pokud je v zavorce cela veta, patri pred ')' tecka, pokud neni, tak
-   nepatri.
-o  Davej si pozor na rody -- router je vzdycky `it', nikdy `he'.
-
-> > Nechtel bys kapitolu o clientovy napsat ty? Ja o nem nic nevim, a
-> > kvalita uzivatelske dokumentace je o hodne dulezitejsi nez
-> > programatorske.
->
->    O clientovi neni temer co psat, commandy si, myslim, snadno najdes v config.Y.
-> Protokol je velice jednoduchy: uzivatel posila prikazy, BIRD odpovida radky
-> typu CCCCs..., kde CCCC je kod hlasky (viz doc/reply-codes), `s' je whitespace,
-> `...' hlaska. Viceradkove odpovedi maji na vsech radcich mimo posledniho misto `s'
-> minus a nebo na druhem az predposlednim radku misto celeho prefixu jen whitespace
-> (presne jako ve FTP).
+       - Limit export rate of external LSAs (like Gated does)
+       - Bugfix in link state retransmission list (aging)
+       - Graceful OSPF restart - RFC3623