discard − Postfix discard mail delivery agent


discard [generic Postfix daemon options]


The Postfix discard(8) delivery agent processes delivery requests from the queue manager. Each request specifies a queue file, a sender address, a next-hop destination that is treated as the reason for discarding the mail, and recipient information. The reason may be prefixed with an RFC 3463-compatible detail code. This program expects to be run from the master(8) process manager.

The discard(8) delivery agent pretends to deliver all recipients in the delivery request, logs the "next-hop" destination as the reason for discarding the mail, updates the queue file, and either marks recipients as finished or informs the queue manager that delivery should be tried again at a later time.

Delivery status reports are sent to the trace(8) daemon as appropriate.


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


RFC 3463 (Enhanced Status Codes)


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.


Changes to main.cf are picked up automatically as discard(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.
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 411toppm(1)

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.

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)

The mail system name that is prepended to the process name in syslog records, so that "smtpd" becomes, for example, "postfix/smtpd".


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


The Secure Mailer license must be distributed with this software.


This service was introduced with Postfix version 2.2.


Victor Duchovni
Morgan Stanley

Based on code by:
Wietse Venema
IBM T.J. Watson Research
P.O. Box 704
Yorktown Heights, NY 10598, USA

More Linux Commands

XkbAllocGeomOverlayRows(3) - Allocate rows in a overlay.....
XkbAllocGeomOverlayRows.3 - Xkb provides a number of functions to allocate and free subcomponents of a keyboard geometry. Use these functions to create or modif

mousemask(3ncurses) - mouse interface through curses........
These functions provide an interface to mouse events from ncurses(3NCURSES). Mouse events are represented by KEY_MOUSE pseudo-key values in the wgetch input str

XKeyEvent(3) - KeyPress, KeyRelease, ButtonPress, ButtonRele
The structures for KeyPress, KeyRelease, ButtonPress, ButtonRelease, and MotionNotify events contain: typedef struct { int type; /* ButtonPress or ButtonRelease

SDL_SemTryWait(3) - Attempt to lock a semaphore but don.....
SDL_SemTryWait is a non-blocking varient of SDL_SemWait. If the value of the semaphore pointed to by sem is positive it will atomically decrement the semaphore

evim(1) - easy Vim, edit a file with Vim and setup for model
eVim starts Vim and sets options to make it behave like a modeless editor. This is still Vim but used as a point-and-click editor. This feels a lot like using N

rmdir(2) - delete a directory (System - Linux man page).....
rmdir() deletes a directory, which must be empty. RETURN VALUE On success, zero is returned. On error, -1 is returned, and errno is set appropriately. ERRORS EA

glVertex3fv(3gl) - specify a vertex - Linux manual page.....
glVertex commands are used within glBegin/glEnd pairs to specify point, line, and polygon vertices. The current color, normal, and texture coordinates are assoc

Mail::SpamAssassin::Timeout(3pm) - safe, reliable timeouts i
This module provides a safe, reliable and clean API to provide alarm(2)-based timeouts for perl code. Note that $SIG{ALRM} is used to provide the timeout, so th

idlok(3ncurses) - curses output options - Linux manual page
These routines set options that change the style of output within curses. All options are initially FALSE, unless otherwise stated. It is not necessary to turn

XtPopdown(3) - unmap a pop-up (Library - Linux man page)....
The XtPopdown function performs the following: * Calls XtCheckSubclass to ensure popup_shell is a subclass of Shell. * Checks that popup_shell is currently popp

glPushClientAttrib(3gl) - push and pop the client attribute
glPushClientAttrib takes one argument, a mask that indicates which groups of client-state variables to save on the client attribute stack. Symbolic constants ar

netsnmp_config_api(3) - netsnmp_config_api functions........
The functions are a fairly extensible system of parsing various configuration files at the run time of an application. The configuration file flow is broken int

We can't live, work or learn in freedom unless the software we use is free.