- NetBSD Manual Pages
SETPROCTITLE(3) NetBSD Library Functions Manual SETPROCTITLE(3)
Powered by man-cgi (2021-06-01).
Maintained for NetBSD
by Kimmo Suominen.
Based on man-cgi by Panagiotis Christias.
setproctitle -- set process title
Standard C Library (libc, -lc)
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:
Set the process title to the program name, an informational string, and
the process id:
setproctitle("foo! (%d)", getpid());
ps(1), w(1), getprogname(3), printf(3)
The setproctitle() function first appeared in NetBSD 1.0.
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 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:
NetBSD 9.99 April 13, 1994 NetBSD 9.99