Posts for January 2007

2007-01-03: pam-krb5 3.1

This is a bug fix release only, fixing some obvious problems in 3.0. The 3.0 release would go into an infinite loop if someone entered the wrong password, due to some reshuffling of the code without updating the exit condition.

I was considering completing the TODO list by adding some macros to handle option parsing, but I wanted to get this release out there fast and didn't feel like working on that tonight. I'll probably do that for the next release.

The PKINIT support hasn't been tested yet and should still be considered alpha.

You can get the latest version from the pam-krb5 distribution page.

2007-01-05: svnlog 1.14

For my editing work on the Netnews protocol draft RFC, I wanted to enable commit notification for one specific file (to notify the working group of any changes made to the draft). The commit notification scripts that come with Subversion have lots of options in this area, but I prefer the output from mine. I've now added a very simple option to limit notifications to only those commits that affect files matching a set of regexes. If any of the modified files matches one of those regexes, the regular full commit notification will be sent (so this may not be entirely what one wants).

I also added a somewhat ugly hack to allow user confirmation of whether to send the notification message before sending it. It's ugly because post-commit Subversion hooks don't have a stdout or stderr available to them (but do have stdin — odd), so I opened /dev/tty to print the prompt. This will probably break horribly in any scenario other than a local repository accessed via a file: URL, but that's all I needed.

You can get the latest version from the svnlog distribution page.

2007-01-07: 2006 in Books

I've been slow in writing this up (although only one day slower than last year). Here's the summary of my reading for 2006. These details don't count the four reviews I've written so far in 2007.

Books read: 93
Total pages: 31,659
Average rating: 7.03
Pages per day: 86.7
Days per book: 3.92

I read less this year than last year on any metric: 8 fewer books and 4,710 fewer pages (meaning that the books I read were on the average shorter as well, despite reading four George R.R. Martin books). Not entirely sure why that was, although the Winter Olympics did take two weeks away from reading on top of the regular company, vacations, and other interruptions. The first half of last year was just slow for reading.

This coming year, I'm going to drop any explicit goals on how much I read. I enjoy finishing books and seeing the numbers of reviews go up anyway, so I'll have plenty of motivation, and I don't want to add stress to a recreational hobby.

My reading was far more diverse this year, which was one of my goals. Only 61 of the books I read were SF: 17 genre classics or award winners and another 20 books that were published in the last couple of years (the remainder being various books from my long backlog). To that, I added 14 books in other genres (including three literary classics, a category I want to increase), 15 non-fiction books (only three of which were SF analysis, although James Tiptree, Jr. could arguably count as a fourth), and 3 graphic novels. This feels like a good mix, although I'd like to add more graphic novels.

Three books stood out above all others this year: Geoff Ryman's brilliant Air and Nicola Griffith's mainstream series The Blue Place and Stay. Other notable and recommended SF books were Parable of the Sower (Octavia Butler), Slow River (another Nicola Griffith), and Komarr (Lois McMaster Bujold, one entry in the long Miles Vorkosigan series). Ellen Raskin's The Westing Game is an exceptional young-adult novel.

The remaining notables are all non-fiction. I put some effort into learning time management techniques this year, and can wholeheartedly recommend Time Management for System Administrators by Tom Limoncelli and Getting Things Done by David Allen. I also finally read Strunk and White's The Elements of Style and wish I had done so years ago. Other non-fiction notables were James Tiptree, Jr. (Julie Phillips), Zen and the Art of Motorcycle Maintenance (Robert Pirsig), and About Writing (Samuel Delany).

2007-01-07: reminder 1.6

When editing a reminder the other day to change the repeat period, I got a strange error message complaining about the repeat interval, couldn't fix it, and then when I aborted, it deleted the reminder. Today I finally got a chance to look at that bug. I'm still not sure what error I got and what it meant, but now reminder will report correct error messages and not delete them on aborted edits.

While I was at it, I also made a change that I'd been intending to make for a while: reminder will now reuse the reminder numbers of completed reminders rather than always using a number at the end of the sequence.

You can get the latest version from the reminder distribution page.

2007-01-08: Some new year thoughts

I don't do new year resolutions. There's too much baggage and weight on the concept. I do use any long holiday to consider how my life is working and think about ways to change it, though, and the Christmas holiday is particularly good for that since I've often done a lot of thinking over my long October holiday, tried to put it into practice for a couple of months, and have some results to try to internalize and analyze.

One thing that has been mostly successful over the past couple of months is my plan to multitask less. I used to do this a lot when I was a college student, and shortly thereafter, and I probably could get more done that way. But I've increasingly found that multitasking makes me irritable and frustrated, and having the TV on or other background noise going while I'm doing things really does decrease my productivity and make it harder for me to get things done. So I'm going to continue to watch much less TV, not have sports on regularly on the weekend, and try to focus on doing one thing at a time.

The major challenge for this will be in the evenings, when I often have left-over work that I want to get done, I have reviews that I want to write, and I'm also spending time writing fiction and talking with my friends. It's going to be hard for me to avoid multitasking there and still get things done that I want to do, like writing reviews. This will require more thought.

The other goal I have is to take more definitive weekends. Right now, I'm very overloaded with work projects and non-work projects that I want to do, and I've been packing my weekends too heavily. This has to stop, even if it means that I simply do less and some things (like INN) just won't get done the way that I want them to. I'm tackling this on a few fronts: first, I'm trying to spend less time working on work projects and just letting them take longer. Second, I'm taking Saturday as a day to do things off-line, trying to minimize how much time I spend on the computer and instead catching up on reading, doing the laundry, doing mindless things around the house, playing video games, or watching DVDs. This gives me a recovery day and leaves Sunday for non-work projects if I feel like I have energy. And if I don't have energy, I'm trying to give myself permission to take Sunday off as well, even from non-work projects.

I'm getting back on top of to-do lists. More work projects are heating up, but I'm trying to stick to having more time to myself, more time to pursue non-work things, and therefore work may just have to slip. I've been devoting too much time to work and not enough time to myself the past couple of years, and I've started making that shift after October and it's helped a great deal.

2007-01-10: Asimov's, October/November 2006

Review: Asimov's Science Fiction, October/November 2006

Editor: Sheila Williams
Issue: Volume 30, No. 10 & 11
ISSN: 1065-2698
Pages: 240

This is the fall double-sized issue, which among other things means that it has a Norman Spinrad book column, always something to look forward to. As he has before, he complains about a trend in SF publishing (pushing series over single novels) while writing detailed and interesting reviews of several books. He liked River of Gods better than I did, but his book review columns are always worth reading.

Of the other non-fiction, I liked James Patrick Kelly's discussion of web sites and Locus Online. This issue also had a much-appreciated letter column.

The fiction is, as it would have to be for this large of an issue, a mixed bag, but there are several good and thought-provoking stories here and a wide variety of ideas.

"A Billion Eves" by Robert Reed: A future society finds a way of travelling to alternate worlds, which is then abused by a man who kidnaps a sorority house of women into a new world with the intent of using them as a harem. He founds a new religion based on this practice, very reminiscent of certain fundamentalist religions. Several worlds down the line, a woman growing up in one of the derived societies fights with its expectations, beliefs, and abuse of the world to find another belief and set of goals.

This is the perfect antidote to nearly every story Orson Scott Card has written, a story about how parallel worlds would really interact with a patriarchal, fundamentalist faith. It is, in turns, disturbing, remarkably perceptive about how religions form and diversify within a doctrinal base, and realistic but still desperately hopeful. Even in a stifling and twisted ideology, people can still find their own lessons, interpretations, and ways of breaking free. (7)

"Biodad" by Kit Reed: More on the disturbing side, this is the story of a family reunion gone wrong after a woman tracks down her anonymous sperm doner. Good characterization, but not much of a plot apart from the disturbing twist in the end. I didn't get enough feeling of narrative flow to get into this one. (5)

"Dawn, and Sunset, and the Colours of the Earth" by Michael F. Flynn: A Seattle ferry disappears into a strange disturbance, taking all of its passengers with it. The families of those who went missing try to cope, the city and others investigate, and scientists attempt to develop theories as to what happened. In one of those unusual structures that one can only get away with in short fiction, there's no story in the sense of a narrative arc, just a set of reactions from different individuals (although moving forward in time so some of the investigation unfolds). There's no true conclusion, just a profile of how various people react to the disaster, written in very different styles. I found it surprisingly compelling reading, though (although I would have preferred more of an ending). (7)

"After I Stopped Screaming" by Pamela Sargent: Written with another unusual narrative style, this "story" is a short interview, late in her life, with the woman kidnapped by King Kong. It becomes a deconstruction of not only the movie but of the process and reactions of celebrity, as well as a parody of the sort of answers celebrities give in retrospective interviews. Not horribly memorable, but entertaining. (6)

"The Small Astral Object Genius" by James Van Pelt: I loved the idea of this story. We've invented a way to send small cameras to anywhere in the universe not close to the earth's star system, have them take a picture, and return instantly. This odd technology, full of limitations, is being used as a way of exploring the galaxy, and SETI-like is farmed out to hundreds of thousands of individuals all over the world for the price of a subscription and the hardware (and a lot of batteries). The protagonist is a kid from a troubled marriage who works at this search obsessively as a way of escaping the rest of his life. The ending involves a tenuous connection between this search and the boy's family life that felt artificial to me, which left me unsatisfied, but well worth reading for the idea. (6)

"1 Is True" by Ron Collins: Another good idea story suffering from a weak ending, this one starts with a corporate intrigue story featuring the remnants of a programming team who invented a way to program illusions using brain implants. I liked the way it started, drawing the protagonist back into the next, more dangerous version of the original idea and intermixed with memories of the woman who originally formed the marketing and contract part of the partnership. Characterization is excellent, particularly of the woman who never appears in the story and is only seen through memories and interactions. The ending was a let-down, though: the conclusion of the intrigue is too pat and the story of Yulani has a deeply unsatisfactory resolution. (6)

"The Seducer" by Carol Emshwiller: This is a borderline-horrific story of a seduction turning into a love story, mixed with a haunting of sorts with clear psychological overtones. The element of the supernatural may be entirely in the head of the protagonist and serves as a symbol for dealing with childhood trauma. It fits together, but I didn't find the completed puzzle that interesting, in part I think because I never felt much reason to care about the characters. (4)

"Saving for a Sunny Day, or, the Benefits of Reincarnation" by Ian Watson: The background here is that everyone in the world is reincarnated, and it can be proven via computer who they were previously. As a result, debts and assets now carry over into the next life, given out when someone reaches a certain age, and people either work hard their whole life to overcome debts from a previous life or live lives of luxury based on their own inheritence, replacing all normal inheritence methods. The world background is wryly humorous and well worked-out, and I liked the twist ending. More amusing than serious, but true to human nature. (7)

"Foster" by Melissa Lee Shaw: A grieving widow takes on caring for stray cats and discovers, as she tries to keep abandoned newborn kittens alive, that she's being haunted by ghosts of her old pets. The emotional dilemmas are drawn sharply and painfully, but the protagonist keeps making different decisions than I would have made and by the end of the story I was fairly disgusted with her. Evocative enough to leave a bad taste in my mouth because I thought she was so wrong. (5)

"Down to the Earth Below" by William Barton: This is the novella of this issue, the story of a group of teenagers who explore a cave and find a passage in it to a world out of the early SF pulps that they love so much. Events there are a combination of pulp adventure and adolescent symbolism for sexual awakening, growth, imagination, and fantasy worlds. It suffered considerably from my dislike of essentially all of the characters except the woman (who gets a few good bits and then becomes a non-entity) and my lack of interest in adolescent sexual stumbling. The ending is a weird sort of fantasy feel-good story that takes it firmly out of the realm of psychological realism and into wish-fulfillment, which was odd given that I thought the rest of the story was leading up to something more profound. (5)

Rating: 6 out of 10

Permanent review page

2007-01-11: USEFOR status

The USEFOR IETF working group adopted my new Netnews protocol draft as the new working group draft going forward at the end of last month, and I put in another substantial chunk of time responding to mailing list messages and issues raised with it. Now, it's time to polish it up for last call, which means we've switched to a more formal discussion system. From this point on, protocol changes will only be made in conjunction with issues tracked in RT. This way, the working group chairs can call consensus on the issues and I'll update the draft according to their call, which lets me have my own opinion independent of being the draft editor.

I'm seeing if I can find the time to continue as draft editor. I'm trying to limit my involvement to two hours a week (although so far it's been more like five) given all the other things I have going on. As anticipated, we're now getting into the period where the people in the working group who favored the previous draft's style and position are raising as issues all the things that I intentionally changed, so the discussion is a bit tedious. I'm trying hard not to repeat myself and to stay out of the discussion once I've said my bit.

One serious problem for the working group is lack of participants. Right now, Charles and I are the most frequent posters, and since we want very different things from a Netnews protocol specification, that's not that useful. Frank mostly agrees with Charles in trying to push policy into the specification (in my opinion). The rest of the working group comes down on the other side of that question in polls of the whole working group, but they're mostly not participating in the threads. I'm not sure how we're going to deal with this going forward.

Anyway, right now, the chairs haven't had time to start turning threads into issues yet, so I only have two minor wording changes accumulated for this weekend's batch of updates (and in one of them we're still bickering over the wording).

I'm considering posting to to mention that we're starting to do more work and faster work again, and now's the time for people who dropped out to turn up and listen in, particularly if they know how news software works (and ideally have written some).

2007-01-12: Benefits of INN

I've been feeling guilty for a while now that I've not had a chance to work on INN. I need to make another 2.4 release, and more importantly I need to finish a 2.5 release so that all the hard work sitting on the development branch can see the light of day.

It has been nice, though, to not have that work go to waste. I put a lot of effort into developing a really good portability layer for INN, a lot of utility libraries that are generally useful, and a solid test suite for all of them. I've been pulling code from it ever since for other projects. Today, I spent most of the day working on IPv6 support for remctl, which is almost trivial since I can grab all of the supporting code from INN and build on the techniques I learned to keep #ifdef away from the mainline code. I'm extremely happy with the results.

remctl 2.4 should be out, with IPv6 support, early next week. Maybe this weekend I'll find time to put more work into INN and get closer to a new release.

2007-01-16: pam-krb5 3.2

Douglas Engert had a chance to test with the new Heimdal release candidate, and as expected there were a bunch of compilation errors in the PKINIT code in pam-krb5. Those should hopefully be fixed now. In the process, he also uncovered a dubious way of handling Kerberos credentials, and when looking at that I found a simplification that let me delete a whole layer of indirection.

There are a few other minor fixes, such as proper man page installation when building outside of the source directory and prefixing the default cache name with FILE: to make the cache type explicit.

You can get the latest version from the pam-krb5 distribution page.

2007-01-17: remctl 2.4

The big change in this version is IPv6 support, using the framework and infrastructure that I'd built for INN. I'm really happy with how well this works. It keeps all the problems self-contained in the portability layer and the code can use the new IPv6-aware interfaces like getaddrinfo and getnameinfo without having to think about IPv6 issues.

I also fixed a problem with detecting network errors when sending tokens, added a newline after server-provided error messages in the command-line client, and added a distinguished error for too many command-line parameters.

You can get the latest version from the remctl distribution page.

2007-01-23: krb5-sync 0.4

Today I finished writing and testing the code in our status and password synchronization plugin to support queuing. AD password changes aren't ever queued, but we fail a password change if there's already a queued change. AFS password changes and AD status changes are queued if they fail so that they can be retried later. I also finished the Perl script that lets one manipulate the queue.

You can get the latest version from the krb5-sync distribution page.

I've also been talking with the MIT Kerberos developers about the best plugin interface to use going forward so that the plugin hooks will be in MIT Kerberos 1.7 and I can supply only the module and supporting utilities.

2007-01-24: pam-krb5 3.3

This always takes me longer than I think it will, which is rather annoying. Also, doing a good job of supporting arbitrary preauth options in the PAM module context is a pain in the ass. As a result, the code is now more of a mess than I'd like, and for 3.4 I'm going to need to do some significant refactoring and clean up the option parsing.

But, hopefully this should work. This is the first version with support for the MIT Kerberos PKINIT branch, and it should also fix various compilation problems on Heimdal. A fair chunk of the time I spent on it this afternoon was to clean up the error handling to use the new MIT Kerberos error functions, so it should also have better errors. (It's really annoying to have to free the error string after using it.)

You can get the latest version from the pam-krb5 distribution page.

2007-01-25: Life update

This week has been a good week for getting project work done. I'm basically done at this point with Kerberos password and account status synchronization between MIT Kerberos, Active Directory, and an AFS kaserver. The code is deployed in test and working. We need to do another end-to-end test when I have the rest of the account creation infrastructure in place, but I'm pretty happy with what we've got now. There's even a remctl interface to manage the queue.

Other than that, I'm still feeling very behind. I'm feeling particularly guilty about INN, on which I've done no serious work in about six months. Realistically, I'm just not sure how much time I have to work on it, or on other Usenet things (like News::Gateway) right now. I do hope this changes, since I've really enjoyed working on it, and I've used the work I've done on INN in a ton of other projects.

In terms of general life, I want more time to myself, and I need to do more general apartment cleaning, reading of things other than books, and so forth. I'm doing surprisingly well with book reading so far this year (figures, right after I decided not to worry about reading 100 books that I'm currently ahead of schedule), but I'm behind in other things, like Locus. This isn't any sort of emergency, of course, but I like being current in the SF field.

So, pluses and minuses. Thankfully, work is going to settle down soon, and if I can get through some additional deliverables for the Kerberos project, I should have time to breathe and think about other work I want to get done. I'm a bit pessimistic about being able to pick up some of the open source projects I've mostly dropped, but we'll see how it goes.

2007-01-28: kstart 3.7

Thomas Weiss noticed that somewhere in previous code restructurings, I lost the code that paid any attention to the value passed to -H (to verify that the ticket has at least that much remaining life). This has been fixed, and the documentation of -K and -H has been improved.

You can get the latest version from the kstart distribution page.

2007-01-28: cvslog 1.54

Slava Girshman pointed out that the URLs generated by cvslog for cvsweb (and similar web CVS repository viewers) contain the invalid CVS pseudoversion NONE when a file is added or removed. I've now changed the URLs to suppress ones for removed files and to link to just the file, without diff revisions, for added files. Hopefully this improves the URLs in general for everyone. It seemed reasonable to me.

You can get the latest version from the cvslog distribution page.

2007-01-28: pam-krb5 3.4

3.3 still didn't build with Heimdal 0.7, since it turns out that 0.7 already had the PKINIT functions but took a different number of arguments. This was enough to get me to finally install a Heimdal development environment on my box at home and track down all the remaining build problems.

So, pam-krb5 now builds with the PKINIT support in Heimdal 0.7, although I don't know if there's enough there to do useful things. Various other problems on Heimdal are also cleaned up, the error handling is now a bit better with recent Heimdal snapshots, and I never attempt to use error_message with Heimdal since Heimdal's krb5-config doesn't include -lcom_err.

You can get the latest version from the pam-krb5 distribution page.

2007-01-31: Life update

There are very few things in this world more boring than writing audit code. But thankfully I think I'm almost done with it, and then get to see how long it takes the audit to run. Afterwords, I should have lots of interesting statistics and information about our Kerberos realm, along with a bunch of things that I have to fix at some point.

This, like most things lately, is taking me longer to do than I expected.

What I'd really like, right about now, is a week of vacation, entirely by myself, where I can generally catch up on the world. I could take that, but I don't really think it would help as much as it feels like it would help. Really, I'm fairly on top of stuff; there are just several things that I want to have more time to finish, and I want each weekend to be longer.

Hopefully the last two days of this work week will feature fewer interruptions and more time to sit down and concentrate on finishing things and putting more stuff in order. Then I'll have a weekend (although one day is a Super Bowl Party, so I won't get as much of it to myself as I'd ideally like).

I should get a few software releases out today or tomorrow.

Last spun 2014-04-06 from thread modified 2013-01-04