Posts for April 2012

2012-04-05: Miscellaneous haul

I've been avoiding buying books, since I have a staggering number of them that I've not read and I got a lot of books last year, but small purchases accumulate. Here's the stuff I've picked up recently so that I don't forget and buy it again.

L. Frank Baum — The Complete Wizard of Oz (sff)
Susan Cain — Quiet (non-fiction)
Susanna Clarke — Jonathan Strange & Mr Norrell (sff)
John Kenneth Galbraith — The Affluent Society (non-fiction)
Mira Grant — Deadline (sff)
Robert E. Howard — Red Nails (sff)
C.M. Kornbluth — His Share of Glory (sff)
Seanan McGuire — A Local Habitation (sff)
Seanan McGuire — Discount Armageddon (sff)
Richelle Mead — Storm Born (sff)
Richelle Mead — Thorn Queen (sff)
Richelle Mead — Iron Crowned (sff)
Bertrand Russell — Mysticism and Logic and Other Essays (non-fiction)
Bertrand Russell — Political Ideals (non-fiction)
Bertrand Russell — Proposed Roads to Freedom (non-fiction)
John Scalzi — 24 Frames into the Future (non-fiction)
John G. Slater (ed.) — The Basic Writings of Bertrand Russell (non-fiction)
Catherine M. Wilson — The Warrior's Path (mainstream)

All of these except the Kornbluth and the Scalzi are on the Kindle.

The Bertrand Russell were largely free. I've already read the Clarke, but it was on sale, and it's a book that I think I'd like to read again sometime. Similarly, I already have paper copies of all the Wizard of Oz books and wouldn't give up those copies, but the complete original series was only 99 cents, which was too good of a deal to pass up.

2012-04-25: WebAuth 4.1.1

This release is just a bug-fix release for the WebKDC and WebLogin components. There are no changes to the mod_webauth or mod_webauthldap modules; only those maintaining a central WebAuth system will be interested.

The primary fixes in this version correct problems processing timestamps associated with login history. The timestamp wasn't being correctly parsed from the user information service in the WebKDC, and then wasn't being correctly read by the WebLogin code. WebLogin now also suppresses the time if there is no timestamp information.

Also in this release are several fixes for the sample templates to suppress optional sections if the data is missing and to ensure that all attributes that contain any external data are put through an HTML filter by Template Toolkit.

The generated HTML version of the mod_webkdc manual has also been updated, and some of the build and test machinery has been improved.

You can get the latest release from the official WebAuth site or from my WebAuth release page.

Next step will be Apache 2.4 support, which I hope to start working on next week.

2012-04-25: C TAP Harness 1.11

Since I synchronized the latest WebAuth release with this, I should actually release it, although there may be some follow-on changes and another release from some other things in progress.

The biggest change in this release is that I redid the source organization so that everything is under tests, and I redid the includes in the TAP library so that they assume they're under tests/tap and not just a directory named tap.

I have mixed feelings about this, since it forces a particular code layout on users of the library unless they patch the TAP library. However, I wanted to introduce a macros.h header that was used by other TAP headers, and if I stayed with having the TAP library reference headers under a tap directory and then users add a -I flag to find the headers, every test program that used the library would have to have a -I flag to pick up the nested includes. With non-recursive Automake, that's horribly painful unless you build the entire project with a -I flag pointing to the TAP directory (which also seems wrong). The only other alternative was to use #include "", but I find that very fragile.

Also in this release are various portability fixes. Feature-test macros were an interesting experiment, but they make everything difficult on Solaris, so now feature-test macros are only used if specifically requested or when built with gcc -ansi (or similar flags). I also avoided using local in the TAP shell library (not supported by Solaris) in favor of regular global variables with a tap_ prefix. Finally, the is_double function and all the floating point code is now in separate files that can be copied in as desired, avoiding the need to link with -lm on Solaris systems if is_double is not used anywhere in the test suite.

You can get the latest version from the C TAP Harness distribution page.

2012-04-26: rra-c-util 4.3

The major change in this release is a reworking of the GSS-API configure probes. They now check for headers with file existence checks if told to use a specific install root or include path, since otherwise configure could incorrectly detect properties of the system GSS-API include files instead of the ones it was told to use. While I was at it, I also moved a bunch of the standard GSS-API checks into the Autoconf macro instead of requiring they be done separately in, and I added a new RRA_INCLUDES_GSSAPI macro to make it easier to write checks.

Following a recommendation in Effective Java (which applied equally well to other programming languages), I modified buffer_sprintf and buffer_vsprintf to no longer take a boolean argument saying whether to append the information, and instead added two new functions. The meaning of boolean arguments is often very opaque at the call site.

There's also another fix for RRA_LIB_REMCTL_OPTIONAL (setting a shell variable that it was documented to set), and the PAM test script parser now supports parameter expansion in the PAM arguments.

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

2012-04-26: Hugo nominee haul

I'm finally home again for a while after a lot of travel that was unexpectedly extended. It's so very nice to be home and to have a chance to settle in and not go anywhere for at least a month.

It's also rather nice to come home to toys, which in this case means more books. The Hugo nominees were announced while I was gone, which of course meant a book order. And I've been picking up a few other things along the way.

Daniel Abraham — The Dragon's Path (sff)
C.L. Anderson — Bitter Angels (sff)
Elizabeth Bear — Range of Ghosts (sff)
Suzanne Collins — Catching Fire (sff)
Suzanne Collins — Mockingjay (sff)
James S.A. Corey — Leviathan Wakes (sff)
Lev Grossman — The Magicians (sff)
Alisa Harris — Raised Right (non-fiction)
Michael Flynn — The January Dancer (sff)
N.K. Jemisin — The Broken Kingdoms (sff)
N.K. Jemisin — The Kingdom of Gods (sff)
Paul Lafargue — The Right to be Lazy (non-fiction)
Marc Levison — The Box (non-fiction)
George R.R. Martin — A Dance with Dragons (sff)
Jack McDevitt — Echo (sff)
China Miéville — Embassytown (sff)
Mark Monmonier — Air Apparent (non-fiction)
Bill Moyers — Bill Moyers Journal (non-fiction)
Mary Norton — The Borrowers (children)
Mary Norton — The Borrowers Afield (children)
Mary Norton — The Borrowers Afloat (children)
Mary Norton — The Borrowers Aloft (children)
Mary Norton — The Borrowers Avenged (children)
Hannu Rajaniemi — The Quantum Thief (sff)

It's Hugo reading season, which means priority goes to the Corey, the Miéville, and the Martin, which are nominees. I've already read Leviathan Wakes and just need to write the review. I'm currently reading Deadline by Mira Grant, which I bought a while back (and which is also a nominee).

I'm still trying to decide, for A Dance with Dragons, whether to go back and re-read the previous four books in the series. It will make a lot more sense if I do, but that's a lot of reading. I'll read the other nominees and then see how inspired I feel.

So much great stuff to read. This order was particularly rich with it. I'm getting back into reading regularly, which is making me very happy, but also means I need to carve out more time to read. I'm six reviews behind again!

And, of course, being home means that video games are an option again, to cut into my reading time. So many fun things to do!

2012-04-30: Debian private repositories

Earlier this year, I switched Stanford's internal repositories from an old debarchiver setup that didn't do repository signing to something more modern and secure built on top of reprepro.

While we're not doing anything particularly exciting at a technical level, I thought it might be interesting for people to see how a large site with heavy Debian usage divides up and manages its internal repositories.

I put up a first draft of a writeup at Debian private repositories. This is currently fairly incomplete. One obvious thing that's missing is a pointer to the wrapper script that we use, but I know there's more. I'm happy to prioritize additional documentation based on what people would find interesting. Send me email (or mention on debian-enterprise, to which I'll also send a pointer to this) if there's anything in particular you want to hear about.

Last modified and spun 2017-03-25