glenda.party
term% ls -F
term% cat index.txt
PERROR(2)                     System Calls Manual                    PERROR(2)

NAME
       perror, syslog, sysfatal - system error messages

SYNOPSIS
       #include <u.h>
       #include <libc.h>

       void perror(char *s)

       void syslog(int cons, char *logname, char *fmt, ...)

       void sysfatal(char *fmt, ...)

DESCRIPTION
       Perror  produces  a  short error message on the standard error file de‐
       scribing the last error encountered during a call to the system.  First
       the argument string s is printed, then a colon, then the message and  a
       newline.  If s is nil, only the error message and newline are printed.

       Syslog  logs  messages  in  the  file named by logname in the directory
       /sys/log; the file must already exist and should be append-only.   Log‐
       name  must  contain  no  slashes.   The  message is a line with several
       fields: the name of the machine writing the message; the date and time;
       the message specified by the print(2) format fmt and any following  ar‐
       guments; and a final newline.  If cons is set or the log file cannot be
       opened,  the message is also printed on the system console.  Syslog can
       be used safely in multi-threaded programs.

       Sysfatal prints to standard error the name of the  running  program,  a
       colon  and a space, the message described by the print(2) format string
       fmt and subsequent arguments, and a newline.  It  then  calls  exits(2)
       with  the  formatted  message  as  argument.  The program's name is the
       value of argv0, which will be set if the program uses the arg(2) inter‐
       face to process its arguments.  If argv0 is null, it is ignored and the
       following colon and space are suppressed.

SOURCE
       /sys/src/libc/port/perror.c
       /sys/src/libc/9sys/syslog.c
       /sys/src/libc/9sys/sysfatal.c

SEE ALSO
       intro(2), errstr(2), the %r format in print(2)

BUGS
       Perror is a holdover; the %r format in print(2) is preferred.

                                                                     PERROR(2)