setproctitle redux

Russ Allbery rra at
Thu Aug 29 15:13:18 UTC 2002

I pulled the TITLE* stuff out of nnrpd and some of the ovdb server
processes into a replacement for setproctitle for systems that don't have
it and created a new portable/* header for it.  When using INN's support,
you have to call setproctitle_init first, to stash the bounds of argv.
INN makes calls to setproctitle_init go away unless they're needed.

All the documentation for the system setproctitle function that I can find
say that it adds the program name, so I removed the program name from all
of the calls to TITLEset when converting them to setproctitle and just
had setproctitle add the program name (from message_program_name) when
emulating setproctitle.

Tested on Linux, where it works as expected, on HP-UX 11.00, where the new
configure machinery to find HP's idiosyncratic method worked as expected
as did the calls, on IRIX 6.5, which just doesn't support this at all but
didn't have any trouble ignoring it, and on Solaris.  On Solaris, you have
to use /usr/ucb/ps to see the changed titles; ps -ef won't reflect any
changes.  There's also something really weird going on on Solaris;
anything past the length of the command name is shown twice, once where
it's supposed to be and then again at the apparent end of the command line
in the ps output.  I checked and it looks like the old code caused that
too, so I wrote it off to a Solaris oddity and didn't try to fix it.

Russ Allbery (rra at             <>

More information about the inn-workers mailing list