Header Ads Widget

[MAN] error

Content-type: text/html; charset=UTF-8 Man page of ERROR

ERROR

Section: Linux Programmer's Manual (3)
Updated: 2017-09-15
Index Return to Main Contents
 

NAME

error, error_at_line, error_message_count, error_one_per_line, error_print_progname - glibc error reporting functions  

SYNOPSIS

#include <error.h>

void error(int status, int errnum, const char *format, ...);

void error_at_line(int status, int errnum, const char *filename,
                   unsigned int linenum, const char *format, ...);

extern unsigned int error_message_count;

extern int error_one_per_line;

extern void (*error_print_progname) (void);
 

DESCRIPTION

error() is a general error-reporting function. It flushes stdout, and then outputs to stderr the program name, a colon and a space, the message specified by the printf(3)-style format string format, and, if errnum is nonzero, a second colon and a space followed by the string given by strerror(errnum). Any arguments required for format should follow format in the argument list. The output is terminated by a newline character.

The program name printed by error() is the value of the global variable program_invocation_name(3). program_invocation_name initially has the same value as main()'s argv[0]. The value of this variable can be modified to change the output of error().

If status has a nonzero value, then error() calls exit(3) to terminate the program using the given value as the exit status.

The error_at_line() function is exactly the same as error(), except for the addition of the arguments filename and linenum. The output produced is as for error(), except that after the program name are written: a colon, the value of filename, a colon, and the value of linenum. The preprocessor values __LINE__ and __FILE__ may be useful when calling error_at_line(), but other values can also be used. For example, these arguments could refer to a location in an input file.

If the global variable error_one_per_line is set nonzero, a sequence of error_at_line() calls with the same value of filename and linenum will result in only one message (the first) being output.

The global variable error_message_count counts the number of messages that have been output by error() and error_at_line().

If the global variable error_print_progname is assigned the address of a function (i.e., is not NULL), then that function is called instead of prefixing the message with the program name and colon. The function should print a suitable string to stderr.  

ATTRIBUTES

For an explanation of the terms used in this section, see attributes(7).
InterfaceAttributeValue
error() Thread safetyMT-Safe locale
error_at_line() Thread safety MT-Unsafe race: error_at_line/error_one_per_line locale

The internal error_one_per_line variable is accessed (without any form of synchronization, but since it's an int used once, it should be safe enough) and, if error_one_per_line is set nonzero, the internal static variables (not exposed to users) used to hold the last printed filename and line number are accessed and modified without synchronization; the update is not atomic and it occurs before disabling cancellation, so it can be interrupted only after one of the two variables is modified. After that, error_at_line() is very much like error().  

CONFORMING TO

These functions and variables are GNU extensions, and should not be used in programs intended to be portable.  

SEE ALSO

err(3), errno(3), exit(3), perror(3), program_invocation_name(3), strerror(3)  

COLOPHON

This page is part of release 4.15 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at https://www.kernel.org/doc/man-pages/.


 

Index

NAME
SYNOPSIS
DESCRIPTION
ATTRIBUTES
CONFORMING TO
SEE ALSO
COLOPHON

This document was created by man2html, using the manual pages.
Time: 04:45:49 GMT, September 16, 2022 Content-type: text/html; charset=UTF-8 Man page of ERROR

ERROR

Section: Misc. Reference Manual Pages (8postfix)
Index Return to Main Contents
 

NAME

error - Postfix error/retry mail delivery agent  

SYNOPSIS

error [generic Postfix daemon options]
 

DESCRIPTION

The Postfix error(8) delivery agent processes delivery requests from the queue manager. Each request specifies a queue file, a sender address, the reason for non-delivery (specified as the next-hop destination), and recipient information. The reason may be prefixed with an RFC 3463-compatible detail code; if none is specified a default 4.0.0 or 5.0.0 code is used instead. This program expects to be run from the master(8) process manager.

Depending on the service name in master.cf, error or retry, the server bounces or defers all recipients in the delivery request using the "next-hop" information as the reason for non-delivery. The retry service name is supported as of Postfix 2.4.

Delivery status reports are sent to the bounce(8), defer(8) or trace(8) daemon as appropriate.  

SECURITY



The error(8) mailer is not security-sensitive. It does not talk
to the network, and can be run chrooted at fixed low privilege.
 

STANDARDS

RFC 3463 (Enhanced Status Codes)
 

DIAGNOSTICS

Problems and transactions are logged to syslogd(8).

Depending on the setting of the notify_classes parameter, the postmaster is notified of bounces and of other trouble.  

CONFIGURATION PARAMETERS



Changes to main.cf are picked up automatically as error(8)
processes run for only a limited amount of time. Use the command
"postfix reload" to speed up a change.

The text below provides only a parameter summary. See postconf(5) for more details including examples.

2bounce_notice_recipient (postmaster)
The recipient of undeliverable mail that cannot be returned to the sender.
bounce_notice_recipient (postmaster)
The recipient of postmaster notifications with the message headers of mail that Postfix did not deliver and of SMTP conversation transcripts of mail that Postfix did not receive.
config_directory (see 'postconf -d' output)
The default location of the Postfix main.cf and master.cf configuration files.
daemon_timeout (18000s)
How much time a Postfix daemon process may take to handle a request before it is terminated by a built-in watchdog timer.
delay_logging_resolution_limit (2)
The maximal number of digits after the decimal point when logging sub-second delay values.
double_bounce_sender (double-bounce)
The sender address of postmaster notifications that are generated by the mail system.
ipc_timeout (3600s)
The time limit for sending or receiving information over an internal communication channel.
max_idle (100s)
The maximum amount of time that an idle Postfix daemon process waits for an incoming connection before terminating voluntarily.
max_use (100)
The maximal number of incoming connections that a Postfix daemon process will service before terminating voluntarily.
notify_classes (resource, software)
The list of error classes that are reported to the postmaster.
process_id (read-only)
The process ID of a Postfix command or daemon process.
process_name (read-only)
The process name of a Postfix command or daemon process.
queue_directory (see 'postconf -d' output)
The location of the Postfix top-level queue directory.
syslog_facility (mail)
The syslog facility of Postfix logging.
syslog_name (see 'postconf -d' output)
A prefix that is prepended to the process name in syslog records, so that, for example, "smtpd" becomes "prefix/smtpd".

Available in Postfix 3.3 and later:

service_name (read-only)
The master.cf service name of a Postfix daemon process.
 

SEE ALSO

qmgr(8), queue manager
bounce(8), delivery status reports
discard(8), Postfix discard delivery agent
postconf(5), configuration parameters
master(5), generic daemon options
master(8), process manager
syslogd(8), system logging
 

LICENSE



The Secure Mailer license must be distributed with this software.
 

AUTHOR(S)

Wietse Venema
IBM T.J. Watson Research
P.O. Box 704
Yorktown Heights, NY 10598, USA

Wietse Venema
Google, Inc.
111 8th Avenue
New York, NY 10011, USA


 

Index

NAME
SYNOPSIS
DESCRIPTION
SECURITY
STANDARDS
DIAGNOSTICS
CONFIGURATION PARAMETERS
SEE ALSO
LICENSE
AUTHOR(S)

This document was created by man2html, using the manual pages.
Time: 04:45:58 GMT, September 16, 2022

댓글 쓰기

0 댓글