diff --git a/TODO b/TODO index 44aa9821..5bca22e0 100644 --- a/TODO +++ b/TODO @@ -1,5 +1,7 @@ Core ~~~~ +- config: when parsing prefix, check zero bits + - static: check validity of route destination? - static: allow specifying a per-route filter program for setting route attributes? @@ -9,7 +11,6 @@ Core Commands ~~~~~~~~ -- show status - showing of routing table as seen by given protocol - printing of dynamic attributes @@ -39,7 +40,6 @@ Various ideas - netlink: import Linux route attributes to our rta's, so that they can be filtered? - config: executable config files - client: access control -- config: when parsing prefix, check zero bits - io: use poll if available - IPv6 router advertisements - real multipath (doesn't seem to be simple at all :() diff --git a/nest/proto.c b/nest/proto.c index 7243fcd5..937cda2d 100644 --- a/nest/proto.c +++ b/nest/proto.c @@ -283,7 +283,7 @@ proto_rethink_goal(struct proto *p) mb_free(p); if (!nc) return; - p = proto_init(nc); /* FIXME: What about protocol priorities??? */ + p = proto_init(nc); } /* Determine what state we want to reach */ diff --git a/nest/rt-table.c b/nest/rt-table.c index f255a05e..b959770f 100644 --- a/nest/rt-table.c +++ b/nest/rt-table.c @@ -710,7 +710,11 @@ static void rt_show_cont(struct cli *c) { struct rt_show_data *d = c->rover; - unsigned max = 1; /* FIXME: After some debugging, increase to reasonable amount */ +#ifdef DEBUGGING + unsigned max = 4; +#else + unsigned max = 64; +#endif struct fib *fib = &d->table->fib; struct fib_iterator *it = &d->fit; diff --git a/sysdep/unix/io.c b/sysdep/unix/io.c index 267e5896..824c7e29 100644 --- a/sysdep/unix/io.c +++ b/sysdep/unix/io.c @@ -897,8 +897,6 @@ io_loop(void) sock *s; node *n, *p; - /* FIXME: Use poll() if available */ - FD_ZERO(&rd); FD_ZERO(&wr); for(;;) diff --git a/sysdep/unix/log.c b/sysdep/unix/log.c index b4a028da..fa2902e6 100644 --- a/sysdep/unix/log.c +++ b/sysdep/unix/log.c @@ -184,4 +184,6 @@ log_init_debug(char *f) dbgf = stderr; else if (!(dbgf = fopen(f, "a"))) log(L_ERR "Error opening debug file `%s': %m", f); + if (dbgf) + setvbuf(dbgf, NULL, _IONBF, 0); } diff --git a/sysdep/unix/main.c b/sysdep/unix/main.c index 58fffda4..c6f48936 100644 --- a/sysdep/unix/main.c +++ b/sysdep/unix/main.c @@ -385,8 +385,6 @@ main(int argc, char **argv) dmalloc_debug(0x2f03d00); #endif - setvbuf(stdout, NULL, _IONBF, 0); /* FIXME: Kill some day. */ - setvbuf(stderr, NULL, _IONBF, 0); parse_args(argc, argv); if (debug_flag == 1) log_init_debug("");