rra-c-util 4.6

It's been a while (almost four months) since I've made a release of my utility library, in large part because most of my development time has been going into WebAuth. I took some time off from that last week, though — admittedly, mostly to attend meetings, but inbetween meetings I got some stuff done on other packages and have some accumulated changes.

The primary change is that concat and concatpath have been dropped. The former is entirely inferior to xasprintf now that I provide a portable version of that. concatpath has some special handling for file paths that should be relative to some other path unless they're already an absolute path, but that's currently only used in INN, so I'm going to drop it too until I have some need for it in other packages.

xasprintf, xvasprintf, basprintf, and bvasprintf now all return void and are guaranteed to either succeed or abort the program. Previously, memory allocation failures were checked, but other failures besides memory allocation were returned to the caller. This represents a source bug (such as a bad format) and is extremely rare, but it meant adding that checking code everywhere anyway, significantly reducing the benefit of those functions. Now, that failure will be handled just like a memory allocation failure, which is not entirely correct but which should be close enough for practical purposes and significantly simplifies code.

There are also a few more minor fixes: a compilation failure in kafs for Solaris 11 and later, and some additional support and fixes for determining Apache compilation flags and headers.

Finally, I've started writing POD documentation for the APIs provided in the util library. So far, there's only documentation for xmalloc, xcalloc, and xrealloc. More of that documentation will be fleshed out in future releases.

You can get the latest release from the rra-c-util distribution page.

Posted: 2012-09-17 19:45 — Why no comments?

Last spun 2022-02-06 from thread modified 2013-01-04