SETPROCTITLE(3) BSD Programmer's Manual SETPROCTITLE(3)NAMEsetproctitle - set process title
SYNOPSIS
#include <stdlib.h>
void
setproctitle(const char *fmt, ...);
DESCRIPTION
The setproctitle() function sets the invoking process's title. The pro-
cess title is set to the last component of the program name, followed by
a colon, a single space, and the formatted string specified by fmt. If
fmt is NULL, the colon and formatted string are omitted. The length of a
process title is limited to 2048 bytes.
EXAMPLES
Set the process title to the program name, with no further information:
setproctitle(NULL);
Set the process title to the program name, an informational string, and
the process ID:
setproctitle("foo! (%d)", getpid());
SEE ALSOps(1), w(1), printf(3)HISTORY
The setproctitle() function first appeared in NetBSD 0.9A.
CAVEATS
It is important never to pass a string with user-supplied data as a for-
mat without using '%s'. An attacker can put format specifiers in the
string to mangle the stack, leading to a possible security hole. This
holds true even if the string has been built "by hand" using a function
like snprintf(), as the resulting string may still contain user-supplied
conversion specifiers for later interpolation by setproctitle().
Always be sure to use the proper secure idiom:
setproctitle("%s", string);
MirOS BSD #10-current April 13, 1994 1