A stressful weekend

For one thing, I installed WindowShade X a while back, decided I didn’t need it, and disabled it. I didn’t remove it, I just turned it off. When I booted up after the new system install, everything went well until my desktop showed up. And disappeared. And showed up. And disappeared….

Luckily I have other accounts on the system which are kept ‘pure,’ and I was able to log into one of those accounts during one of the occasions when the desktop was alive. From there I was able to systematically remove startup applications and preference panes in my usual account folders until eventually the Finder stopped recycling itself. Phew! Time to check the mail.

Hmmm. mac.com showed up, but the mail I received on my home system (I run my own server) did not. Check the firewall, and it’s not operational, so I had to dip into the Terminal and type ‘sudo ipfw flush’ – luckily, I had seen this problem before, and a search on the web brought me to the same site as before so I could remind myself of what to do. Back to mail. still no good, so I checked the mail server itself. Messages galore about Postfix, but I’m running qmail. had to run around killing off Postfix and dig into inetd.conf to restart qmail. While I was at it, I set up xinetd instead. OK, the server’s running. Where the hell is my mail?

I have a status page on my web server, so I checked that. I have 50 messages in my mailbox, but I can’t get to them. Aaaargh! I mentioned the problem to my daughter, and she tells me she’s been getting her mail without problems. I send her mail, and she gets it. She sends me mail, and I now have 51 messages in my mailbox. Hmm. Maybe I screwed up my password. Check the keychain, everything looks ok.

Eventually I tried telnetting to port 110, and it turns out my password doesn’t work, but the password for all the other accounts do. ‘Nidump passwd .’ tells me my password is now a bunch of asterisks, but everyone else is the same old same old jumble of encrypted characters. I’ve been shadowed! Apparently the password of the installing account is shadowed right away, and the other passwords will be shadowed later. New accounts are shadowed immediately. Meanwhile, my POP server is checking for passwords using non-shadowed calls, and mine isn’t working. 85 messages in the queue now….

I mooched around on the web for POP servers which can handle shadowed passwords. It seems my current password checker should be able to handle it, i just have to rebuild with a flag set. No joy – the link is apparently empty. imapd and pop3d don’t build properly – I need to do some work to bring the software to the Panther platform (the Jaguar version has the same problem on Panther as my previous server). 138 messages in the queue.

Time to take desperate action. I grab the source code for the password checker and hard-code the accounts into the utility. While I’m at it, I try to figure out how the utility worked in the first place – the includes are missing. Finally I get it up and running under Xcode, and I rebuild it, test it, and it doesn’t work. It’s been years since I worked on C, and I’ve turned a couple of logical conditions end for end. I stick a ‘!’ in front of a couple of strcmp’s and try again. With telnet to POP, USER xxxx gives me OK+.PASS yyyy gives me OK+. It seems to work!

Finally I try firing up my mail client again. 240 messages in your mailbox. 201 messages in your mailbox… Yow! I’m back in business, and I can fix the password checker properly when I have a little more leisure. Another Lost Weekend, though, and I have to get ready for Monday….sigh.