OpenBSD Journal

Developer Blog: pyr

Contributed by jj on from the we-got-him dept.

Hi, I'm Pierre-Yves or pyr. I'm a new OpenBSD developer. I got my account shortly after hoststated was imported in base.

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)

  1. By Anonymous Coward ( on

    1. By Anonymous Coward ( on


      whoever wrote this list obviously has not been around very long. art is listed as "sparc port maintainer" for instance. come on... that would be like making a list of the greatest musicians of the 20th century, and then listing james brown under it as "a black performer"

      1. By r ( on

        The good think is that if you happen to know more you can fix it.

        Just like OpenBSD, is it.

  2. By Anonymous Coward (cnst) on

    subj. :)

  3. By Chris ( on

    Tree is great.


Copyright © - Daniel Hartmeier. All rights reserved. Articles and comments are copyright their respective authors, submission implies license to publish on this web site. Contents of the archive prior to as well as images and HTML templates were copied from the fabulous original with Jose's and Jim's kind permission. This journal runs as CGI with httpd(8) on OpenBSD, the source code is BSD licensed. undeadly \Un*dead"ly\, a. Not subject to death; immortal. [Obs.]