Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
SENDMAIL(1)		    General Commands Manual		   SENDMAIL(1)

NAME
       sendmail	- Postfix to Sendmail compatibility interface

SYNOPSIS
       sendmail	[option	...] [recipient	...]

       mailq
       sendmail	-bp

       newaliases
       sendmail	-I

DESCRIPTION
       The Postfix sendmail(1) command implements the Postfix to Sendmail com-
       patibility interface.  For the sake of compatibility with existing  ap-
       plications,  some  Sendmail  command-line  options  are	recognized but
       silently	ignored.

       By default, Postfix sendmail(1) reads a message from standard input un-
       til  EOF	or until it reads a line with only a . character, and arranges
       for delivery.  Postfix sendmail(1) relies on the	postdrop(1) command to
       create a	queue file in the maildrop directory.

       Specific	 command aliases are provided for other	common modes of	opera-
       tion:

       mailq  List the mail queue. Each	entry shows the	queue file ID, message
	      size,  arrival  time, sender, and	the recipients that still need
	      to be delivered.	If mail	could not be delivered upon  the  last
	      attempt, the reason for failure is shown.	The queue ID string is
	      followed by an optional status character:

	      *	     The message is in the active queue, i.e. the  message  is
		     selected for delivery.

	      !	     The  message is in	the hold queue,	i.e. no	further	deliv-
		     ery attempt will be made until  the  mail	is  taken  off
		     hold.

	      This   mode   of	operation  is  implemented  by	executing  the
	      postqueue(1) command.

       newaliases
	      Initialize the alias database.  If no input  file	 is  specified
	      (with  the  -oA  option,	see  below), the program processes the
	      file(s) specified	with the alias_database	configuration  parame-
	      ter.   If	 no alias database type	is specified, the program uses
	      the type specified with the default_database_type	 configuration
	      parameter.  This mode of operation is implemented	by running the
	      postalias(1) command.

	      Note: it may take	a minute or so before an alias database	update
	      becomes  visible.	 Use the "postfix reload" command to eliminate
	      this delay.

       These and other features	can be selected	by specifying the  appropriate
       combination  of	command-line  options. Some features are controlled by
       parameters in the main.cf configuration file.

       The following options are recognized:

       -Am (ignored)

       -Ac (ignored)
	      Postfix sendmail uses the	same configuration file	regardless  of
	      whether or not a message is an initial submission.

       -B body_type
	      The message body MIME type: 7BIT or 8BITMIME.

       -bd    Go  into	daemon	mode. This mode	of operation is	implemented by
	      executing	the "postfix start" command.

       -bh (ignored)

       -bH (ignored)
	      Postfix has no persistent	host status database.

       -bi    Initialize alias database. See the newaliases command above.

       -bl    Go into daemon mode. To accept only local	 connections  as  with
	      Sendmail's  -bl  option, specify "inet_interfaces	= loopback" in
	      the Postfix main.cf configuration	file.

       -bm    Read mail	from standard input and	arrange	for delivery.  This is
	      the default mode of operation.

       -bp    List the mail queue. See the mailq command above.

       -bs    Stand-alone  SMTP	 server	mode. Read SMTP	commands from standard
	      input, and write responses to standard output.   In  stand-alone
	      SMTP  server  mode,  mail	relaying and other access controls are
	      disabled by default. To enable them,  run	 the  process  as  the
	      mail_owner user.

	      This  mode  of  operation	is implemented by running the smtpd(8)
	      daemon.

       -bv    Do not collect or	deliver	a message. Instead, send an email  re-
	      port after verifying each	recipient address.  This is useful for
	      testing address rewriting	and routing configurations.

	      This feature is available	in Postfix version 2.1 and later.

       -C config_file

       -C config_dir
	      The path name of the Postfix main.cf file, or of its parent  di-
	      rectory.	This  information is ignored with Postfix versions be-
	      fore 2.3.

	      With Postfix version 3.2 and later, a non-default	directory must
	      be  authorized  in  the default main.cf file, through the	alter-
	      nate_config_directories  or  multi_instance_directories  parame-
	      ters.

	      With  all	Postfix	versions, you can specify a directory pathname
	      with the MAIL_CONFIG environment variable	to override the	 loca-
	      tion of configuration files.

       -F full_name
	      Set  the	sender	full name. This	overrides the NAME environment
	      variable,	and is used only with messages that have no From: mes-
	      sage header.

       -f sender
	      Set  the	envelope sender	address. This is the address where de-
	      livery problems are sent to. With	Postfix	versions  before  2.1,
	      the  Errors-To:  message	header	overrides the error return ad-
	      dress.

       -G     Gateway (relay) submission, as opposed to	initial	 user  submis-
	      sion.   Either do	not rewrite addresses at all, or update	incom-
	      plete addresses with the domain information specified  with  re-
	      mote_header_rewrite_domain.

	      This option is ignored before Postfix version 2.3.

       -h hop_count (ignored)
	      Hop  count limit.	Use the	hopcount_limit configuration parameter
	      instead.

       -I     Initialize alias database. See the newaliases command above.

       -i     When reading a message from standard input, don't	treat  a  line
	      with only	a . character as the end of input.

       -L label	(ignored)
	      The  logging  label. Use the syslog_name configuration parameter
	      instead.

       -m (ignored)
	      Backwards	compatibility.

       -N dsn (default:	'delay,	failure')
	      Delivery	status	notification   control.	  Specify   either   a
	      comma-separated list with	one or more of failure (send notifica-
	      tion when	delivery fails), delay (send notification when	deliv-
	      ery  is delayed),	or success (send notification when the message
	      is delivered); or	specify	never (don't send any notifications at
	      all).

	      This feature is available	in Postfix 2.3 and later.

       -n (ignored)
	      Backwards	compatibility.

       -oAalias_database
	      Non-default  alias  database. Specify pathname or	type:pathname.
	      See postalias(1) for details.

       -O option=value (ignored)
	      Set the named option to value. Use the equivalent	 configuration
	      parameter	in main.cf instead.

       -o7 (ignored)

       -o8 (ignored)
	      To  send 8-bit or	binary content,	use an appropriate MIME	encap-
	      sulation and specify the appropriate -B command-line option.

       -oi    When reading a message from standard input, don't	treat  a  line
	      with only	a . character as the end of input.

       -om (ignored)
	      The sender is never eliminated from alias	etc. expansions.

       -o x value (ignored)
	      Set  option x to value. Use the equivalent configuration parame-
	      ter in main.cf instead.

       -r sender
	      Set the envelope sender address. This is the address  where  de-
	      livery  problems	are sent to. With Postfix versions before 2.1,
	      the Errors-To: message header overrides  the  error  return  ad-
	      dress.

       -R return
	      Delivery	status notification control.  Specify "hdrs" to	return
	      only the header when a message bounces, "full" to	return a  full
	      copy (the	default	behavior).

	      The -R option specifies an upper bound; Postfix will return only
	      the header, when a full copy would exceed	the  bounce_size_limit
	      setting.

	      This option is ignored before Postfix version 2.10.

       -q     Attempt  to deliver all queued mail. This	is implemented by exe-
	      cuting the postqueue(1) command.

	      Warning: flushing	undeliverable mail frequently will  result  in
	      poor delivery performance	of all other mail.

       -qinterval (ignored)
	      The interval between queue runs. Use the queue_run_delay config-
	      uration parameter	instead.

       -qIqueueid
	      Schedule immediate delivery of mail with the specified queue ID.
	      This  option  is	implemented by executing the postqueue(1) com-
	      mand, and	is available with Postfix version 2.4 and later.

       -qRsite
	      Schedule immediate delivery of all mail that is queued  for  the
	      named  site. This	option accepts only site names that are	eligi-
	      ble for the "fast	flush" service,	and is implemented by  execut-
	      ing the postqueue(1) command.  See flush(8) for more information
	      about the	"fast flush" service.

       -qSsite
	      This command is not implemented. Use the	slower	"sendmail  -q"
	      command instead.

       -t     Extract  recipients from message headers.	These are added	to any
	      recipients specified on the command line.

	      With Postfix versions prior to 2.1, this option requires that no
	      recipient	addresses are specified	on the command line.

       -U (ignored)
	      Initial user submission.

       -V envid
	      Specify the envelope ID for notification by servers that support
	      DSN.

	      This feature is available	in Postfix 2.3 and later.

       -XV (Postfix 2.2	and earlier: -V)
	      Variable Envelope	Return Path. Given an envelope sender  address
	      of  the  form  owner-listname@origin, each recipient user@domain
	      receives mail with a personalized	envelope sender	address.

	      By  default,  the	 personalized  envelope	 sender	  address   is
	      owner-listname+user=domain@origin.  The  default + and = charac-
	      ters are configurable with the default_verp_delimiters  configu-
	      ration parameter.

       -XVxy (Postfix 2.2 and earlier: -Vxy)
	      As  -XV,	but uses x and y as the	VERP delimiter characters, in-
	      stead of the characters specified	with  the  default_verp_delim-
	      iters configuration parameter.

       -v     Send an email report of the first	delivery attempt (Postfix ver-
	      sions 2.1	and later). Mail delivery always happens in the	 back-
	      ground.  When multiple -v	options	are given, enable verbose log-
	      ging for debugging purposes.

       -X log_file (ignored)
	      Log mailer traffic. Use the debug_peer_list and debug_peer_level
	      configuration parameters instead.

SECURITY
       By design, this program is not set-user (or group) id. However, it must
       handle data from	untrusted, possibly remote, users.   Thus,  the	 usual
       precautions need	to be taken against malicious inputs.

DIAGNOSTICS
       Problems	 are  logged to	syslogd(8) or postlogd(8), and to the standard
       error stream.

ENVIRONMENT
       MAIL_CONFIG
	      Directory	with Postfix configuration files.

       MAIL_VERBOSE (value does	not matter)
	      Enable verbose logging for debugging purposes.

       MAIL_DEBUG (value does not matter)
	      Enable debugging with an external	command, as specified with the
	      debugger_command configuration parameter.

       NAME   The  sender full name. This is used only with messages that have
	      no From: message header. See also	the -F option above.

CONFIGURATION PARAMETERS
       The following main.cf parameters	are especially relevant	to  this  pro-
       gram.   The  text  below	 provides  only	a parameter summary. See post-
       conf(5) for more	details	including examples.

COMPATIBILITY CONTROLS
       Available with Postfix 2.9 and later:

       sendmail_fix_line_endings (always)
	      Controls how the Postfix sendmail	command	converts email message
	      line endings from	<CR><LF> into UNIX format (<LF>).

TROUBLE	SHOOTING CONTROLS
       The  DEBUG_README  file gives examples of how to	troubleshoot a Postfix
       system.

       debugger_command	(empty)
	      The external command to execute when a Postfix daemon program is
	      invoked with the -D option.

       debug_peer_level	(2)
	      The  increment  in verbose logging level when a remote client or
	      server matches a pattern in the debug_peer_list parameter.

       debug_peer_list (empty)
	      Optional list of remote client or	server hostname	or network ad-
	      dress  patterns that cause the verbose logging level to increase
	      by the amount specified in $debug_peer_level.

ACCESS CONTROLS
       Available in Postfix version 2.2	and later:

       authorized_flush_users (static:anyone)
	      List of users who	are authorized to flush	the queue.

       authorized_mailq_users (static:anyone)
	      List of users who	are authorized to view the queue.

       authorized_submit_users (static:anyone)
	      List of users who	are authorized to submit mail with  the	 send-
	      mail(1) command (and with	the privileged postdrop(1) helper com-
	      mand).

RESOURCE AND RATE CONTROLS
       bounce_size_limit (50000)
	      The maximal amount of original message text that is  sent	 in  a
	      non-delivery notification.

       fork_attempts (5)
	      The maximal number of attempts to	fork() a child process.

       fork_delay (1s)
	      The delay	between	attempts to fork() a child process.

       hopcount_limit (50)
	      The maximal number of Received:  message headers that is allowed
	      in the primary message headers.

       queue_run_delay (300s)
	      The time between deferred	queue  scans  by  the  queue  manager;
	      prior to Postfix 2.4 the default value was 1000s.

FAST FLUSH CONTROLS
       The  ETRN_README	file describes configuration and operation details for
       the Postfix "fast flush"	service.

       fast_flush_domains ($relay_domains)
	      Optional list of destinations that are eligible for per-destina-
	      tion logfiles with mail that is queued to	those destinations.

VERP CONTROLS
       The  VERP_README	 file describes	configuration and operation details of
       Postfix support for variable envelope return path addresses.

       default_verp_delimiters (+=)
	      The two default VERP delimiter characters.

       verp_delimiter_filter (-=+)
	      The characters Postfix accepts as	VERP delimiter	characters  on
	      the Postfix sendmail(1) command line and in SMTP commands.

MISCELLANEOUS CONTROLS
       alias_database (see 'postconf -d' output)
	      The  alias databases for local(8)	delivery that are updated with
	      "newaliases" or with "sendmail -bi".

       command_directory (see 'postconf	-d' output)
	      The location of all postfix administrative commands.

       config_directory	(see 'postconf -d' output)
	      The default location of the Postfix main.cf and  master.cf  con-
	      figuration files.

       daemon_directory	(see 'postconf -d' output)
	      The directory with Postfix support programs and daemon programs.

       default_database_type (see 'postconf -d'	output)
	      The default database type	for use	in newaliases(1), postalias(1)
	      and postmap(1) commands.

       delay_warning_time (0h)
	      The time after which the sender receives a copy of  the  message
	      headers of mail that is still queued.

       import_environment (see 'postconf -d' output)
	      The  list	 of  environment  parameters that a privileged Postfix
	      process will  import  from  a  non-Postfix  parent  process,  or
	      name=value environment overrides.

       mail_owner (postfix)
	      The  UNIX	 system	 account  that owns the	Postfix	queue and most
	      Postfix daemon processes.

       queue_directory (see 'postconf -d' output)
	      The location of the Postfix top-level queue directory.

       remote_header_rewrite_domain (empty)
	      Don't rewrite message headers from remote	clients	 at  all  when
	      this  parameter is empty;	otherwise, rewrite message headers and
	      append the specified domain name to incomplete addresses.

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

       Postfix 3.2 and later:

       alternate_config_directories (empty)
	      A	list of	non-default Postfix configuration directories that may
	      be specified with	"-c config_directory" on the command line  (in
	      the  case	 of  sendmail(1),  with	 the  "-C" option), or via the
	      MAIL_CONFIG environment parameter.

       multi_instance_directories (empty)
	      An optional list of non-default Postfix  configuration  directo-
	      ries;  these  directories	belong to additional Postfix instances
	      that share the Postfix executable	files and  documentation  with
	      the  default  Postfix  instance,	and that are started, stopped,
	      etc., together with the default Postfix instance.

FILES
       /var/spool/postfix, mail	queue
       /usr/local/etc/postfix, configuration files

SEE ALSO
       pickup(8), mail pickup daemon
       qmgr(8),	queue manager
       smtpd(8), SMTP server
       flush(8), fast flush service
       postsuper(1), queue maintenance
       postalias(1), create/update/query alias database
       postdrop(1), mail posting utility
       postfix(1), mail	system control
       postqueue(1), mail queue	control
       postlogd(8), Postfix logging
       syslogd(8), system logging

README_FILES
       Use "postconf readme_directory" or "postconf html_directory" to	locate
       this information.
       DEBUG_README, Postfix debugging howto
       ETRN_README, Postfix ETRN howto
       VERP_README, Postfix VERP howto

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

								   SENDMAIL(1)

NAME | SYNOPSIS | DESCRIPTION | SECURITY | DIAGNOSTICS | ENVIRONMENT | CONFIGURATION PARAMETERS | COMPATIBILITY CONTROLS | TROUBLE SHOOTING CONTROLS | ACCESS CONTROLS | RESOURCE AND RATE CONTROLS | FAST FLUSH CONTROLS | VERP CONTROLS | MISCELLANEOUS CONTROLS | FILES | SEE ALSO | README_FILES | LICENSE | AUTHOR(S)

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=sendmail&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help