For those interested in this sort of thing: (I glanced at the early code a while back, and like anything Henning has written, seemed clean and neat). Henning Brauer wrote:
CVSROOT: /cvs Module name: src Changes by: henning@cvs.openbsd.org 2003/12/17 04:46:54
Added files: usr.sbin/bgpd : Makefile bgpd.c bgpd.h buffer.c config.c ensure.h imsg.c log.c mrt.c mrt.h parse.y rde.c rde.h rde_decide.c rde_prefix.c rde_rib.c session.c session.h
Log message: welcome, bgpd started by me some time ago with moral support from theo, the proceeded up to the point where the session engine worked correctly. claudio jeker joined then and did a lot of work in the RDE. it is not particulary usefull as application right now as parts are still missing but is imported to enable more people to work on it. status: BGP sessions get established fine, OPEN messages and then KEEPALIVEs exchanged etc. session FSM works fine; NOTIFICATIONs are handled fine, and all connection drops etc I provoked get handled fine. Incoming UPDATE messgages are parsed well and the data entered to the RIB, the decision process is not yet there, neither is outgoing UPDATEs or sync to the kernel routing table.
not connected to the builds yet.