Contributed by jj on from the we-got-him dept.
I have been an OpenBSD user since 2.3 and had always been meaning to take part in development but time was lacking and I didn't know where to start. Before last year I had really small diffs integrated like -Wall fixups in tip and passwd (almost 5 years ago), I also submitted a few ports.
Some time ago I started integrating OpenBSD in more complex network infrastructures. This meant using many of the recent networking code. It also gave me the opportunity to find things that needed to be fixed. For instance OpenOSPFD was lacking some configuration features that I needed, so I added them. I also hit other problems which I fixed with the help of henning, claudio and norby.
This led me to get accustomed to the code on which most network daemons in OpenBSD rely: the 3 process architecture, privilege separation and libevent. While reading the code I found and fixed some minor issues in BGPD that had propagated to OSPFD and friends. I also submitted diffs for yacc syntactic sugar.
On my spare time I coded tree (ascii-art tree display of ls, basically) which seems to be popular amongst debian admins. And a C version of ipcalc which can come in handy when handling networks all day long. Both quickly became OpenBSD ports.
At the same time I started getting really fed-up with the configuration and administration nightmare that is keepalived and thought that a daemon that had a similar purpose on OpenBSD would be great. I started hacking on it, which meant getting used to pf's ioctl API, and I quickly came to results. Most of the complex stuff was already handled by pf. In two week's time I had a daemon with 60% reused code that was populating pf tables and pf rdr rules through anchors.
Then things went fast, I sent a first version of the daemon to ports@ and shortly thereafter got a message from reyk@ telling there was interest in the daemon, we worked together to get some things fixed and improving it. After a few improvements were made I got my account, this led to theo finding ugly bugs in my code and me getting yelled at for it. reyk@ is now my mentor and will endure ok'ing all my diffs for some time.
(Comments are closed)