The thing is that it I've looked through the code, and it's not doing anything hard at all to this point. All it's done is open the serial port O_RDWR, write some data to reboot (my addition -- thanks for the help, Tony), read a good amount of data, write one character, and then try to read that one character back, and somewhere it isn't seeing the character. A system trace shows it polling the serial port and not seeing anything, but I can verify that it does if I use a ``terminal emulator''. I don't see how the system could be not seeing it if it were sent, so I have to assume that it's not being sent, but I can't see why that would happen reproducibly with one program but not another.

Aargh. Maybe I'll just rewrite it in Perl. I'm tired of all this proprietariness.
_________________________
Bitt Faulk