About a year ago I found a ... well, bug, I guess ... in serf_connection_create() [*] on the 1.3.x branch: The fact that this function does not set the serf_connection_t::host_info member caused a segfault down the line when the Host: request header was being computed. I "solved" this locally by adding a function to set both the host_url and host_info members of the connection struct, similarly to what serf_connection_create2() does.
Last week I started work on using serf trunk instead of 1.3.x, for OCSP support. It turns out that, in addition to the bug described above, there's now another issue with serf_connection_create(): it does not initialze the serf_connection_t::config member, either. I have some ideas for fixing these two bugs, but the first question I have is, are we even interested in keeping serf_connection_create() working? AFAICS it's been broken for a *long* time now. -- Brane [*] I use serf_connection_create() because the whole thing has to run in a massively asynchronous environment driven by libdispatch task queues, where blocking on DNS lookups is not an option. For the same reason I also rolled my own replacement for serf_context_run().