GETPROGNAME(3bsd) | 3bsd | GETPROGNAME(3bsd) |
NAME¶
getprogname
, setprogname
—
LIBRARY¶
library “libbsd”SYNOPSIS¶
#include <stdlib.h>
(See
libbsd(7) for include usage.)
const char *
getprogname
(void);
void
setprogname
(const
char *progname);
DESCRIPTION¶
Thegetprogname
() and
setprogname
() functions manipulate the name of the
current program. They are used by error-reporting routines to produce
consistent output.
The getprogname
() function returns the
name of the program. If the name has not been set yet, it will return
NULL
.
The setprogname
() function sets the name
of the program to be the last component of the
progname argument. Since a pointer to the given string
is kept as the program name, it should not be modified for the rest of the
program's lifetime.
In FreeBSD, the name of the program is set
by the start-up code that is run before main
();
thus, running setprogname
() is not necessary.
Programs that desire maximum portability should still call it; on another
operating system, these functions may be implemented in a portability
library. Calling setprogname
() allows the
aforementioned library to learn the program name without modifications to
the start-up code.
SEE ALSO¶
err(3), setproctitle(3bsd)HISTORY¶
These functions first appeared in NetBSD 1.6, and made their way into FreeBSD 4.4.May 1, 2001 | Linux 4.19.0-10-amd64 |