c-ares and me

I’ve said this a few times on the c-ares mailing list, but I guess that just doesn’t reach very many people outside the very closest “family” so I decided I’d mention a blurb here. (I don’t think this reaches very many people either, but quite possibly at least a few others…)


A couple of years ago, I wanted to introduce asynchronous name resolving to libcurl to better allow many simultaneous requests still being single-threaded. This venture started with me and Bjorn Reese starting the Denise project that would do exactly this. We found no proper existing alternatives with a suitable license so we started our own.

Then someone mentioned that ares is almost exactly what Denise was meant to become and it had a fine license. I immediately jumped the Denise idea and went with ares. Soon enough we found out that ares needed improvements and tweaks, and its original author didn’t seem interested in incorporation those into ares… so I created a fork named c-ares.

c-ares has since then been used by libcurl and it has been bug-fixed and improved by a bunch of skilled hackers and it works solidly and reliably. It has also been discovered and incorporated into a bunch of other softwares, including UnreadlIRCd, BZFlag, Hobbit network monitor, libevnet, Tor, gLite, aria2, sipsak, Second Life and more…


I don’t normally work with any of my open source projects in my full-time job, so I need to distribute my spare time on the various projects. When my spare time gets limited, I need to cut down on the projects that I deem is least interesting or perhaps least in need of attention (from me). Recently, it has been obvious that c-ares is one of them projects that I rarely have time and energy left for at the end of the day.


I have no plans to “jump ship” or to abandon the project in any way, but I think it would be beneficial for the c-ares project if someone would step forward and if not “take over” the project, at least join in and help share the burden with patch applying, source code reviewing, do design decisions, reply to mailing list questions etc.

There’s no crisis, there’s no hurry, but the project won’t move forward very fast as the situation currently is.