Minix Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
SETPROCTITLE(3)          BSD Library Functions Manual          SETPROCTITLE(3)

NAME
     setproctitle -- set process title

LIBRARY
     Standard C Library (libc, -lc)

SYNOPSIS
     #include <stdlib.h>

     void
     setproctitle(const char *fmt, ...);

DESCRIPTION
     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.

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 ALSO
     ps(1), w(1), getprogname(3), printf(3)

HISTORY
     The setproctitle() function first appeared in NetBSD 1.0.

CAVEATS
     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);

BSD                             April 13, 1994                             BSD

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | EXAMPLES | SEE ALSO | HISTORY | CAVEATS