| SETPROCTITLE(3) | Library Functions Manual | SETPROCTITLE(3) |
setproctitle — set
process title
Standard C Library (libc, -lc)
#include
<stdlib.h>
void
setproctitle(const
char *fmt,
...);
The
setproctitle()
function sets the invoking process's title. The process title is set to the
last component of the program name, followed by a colon 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.
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());
The setproctitle() function first appeared
in NetBSD 1.0.
It is important never to pass a string with user-supplied data as
a format without using ‘%s’. An
attacker can put format specifiers in the string to mangle your stack,
leading to a possible security hole. This holds true even if you have built
the string “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);
| April 13, 1994 | NetBSD 11.0 |