ESMTP(1)

πŸ“¦
version 1.2 Β· 2 versions
, in debian bookworm, debian trixie, ubuntu jammy, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking

πŸ’Œ ESMTP(1) β€” the sendmail-adjacent bestie, from the General Commands Manual πŸ’Œ

okay so. sit down. hydrate. we're talking about esmtp, and honestly? she's that girl. πŸŽ€


✨ NAME ✨

esmtp β€” the libESMTP-to-Sendmail compatibility interface, aka the little translator between your mail setup and everyone else's expectations πŸ¦‹


✨ SYNOPSIS ✨

esmtp [flags] [address ...]
sendmail [flags] [address ...]

mailq
sendmail -bp

newaliases
sendmail -bi

✨ DESCRIPTION ✨

So like. esmtp is a send-only sendmail emulator. send-only!! she does not receive, she does not host, she does not want that kind of responsibility. πŸ’…

She's built for machines that normally pull their mail down from a centralized mailhub using programs like fetchmail. That's the whole vibe. Fetch it down, hand it off, done. 🫢

And lowkey, she is not trying to be sendmail. Not even a little. Esmtp does not attempt to provide all the functionality of sendmail β€” she's just here to be used by mail user agents like mutt. That's the job. That's the assignment. Periodt. ✨


✨ OPTIONS ✨

Bestie, real talk: most sendmail options are irrelevant to esmtp. Like, they're on the guest list but they're not coming.

Here's the key so you don't get confused:

  • options marked ignored''</yellow> or <yellow>default'' β†’ literally no effect on mail transfer, she's just nodding politely πŸ™ˆ
  • options marked ``unsupported'' β†’ fatal errors. she will not nod politely. she will throw hands. πŸ’€

Now the full list, no skips, no cuts: πŸ‘‘

  • -Ac (ignored) β€” Use submit.cf even if the operation mode does not indicate an initial mail submission.
  • -Am (ignored) β€” Use sendmail.cf even if the operation mode indicates an initial mail submission.
  • -B type β€” Set the body type to type. Current legal values are 7BIT or 8BITMIME.
  • -ba (unsupported) β€” Go into ARPANET mode. 🚫 fatal.
  • -bd (unsupported) β€” Run as a daemon. she said no 🚫
  • -bD (unsupported) β€” Same as -bd except runs in foreground. still no 🚫
  • -bh (unsupported) β€” Print the persistent host status database. 🚫
  • -bH (unsupported) β€” Purge expired entries from the persistent host status database. 🚫
  • -bi (ignored) β€” Initialize the alias database.
  • -bm (default) β€” Deliver mail in the usual way. the classic. the standard. the moment. πŸ’–
  • -bp β€” Print a listing of the queue(s).
  • -bP (unsupported) β€” Print number of entries in the queue(s); only available with shared memory support. 🚫
  • -bs (unsupported) β€” Use the SMTP protocol as described in RFC821 on standard input and output. 🚫
  • -bt (unsupported) β€” Run in address test mode. 🚫
  • -bv (unsupported) β€” Verify names only - do not try to collect or deliver a message. 🚫
  • -C file β€” Use alternate configuration file.
  • -d X (ignored) β€” Set debugging value to X.
  • -F fullname β€” Set the full name of the sender.
  • -f name β€” Sets the name of the ``from'' person (i.e., the envelope sender of the mail). This address may also be used in the From: header if that header is missing during initial submission. The envelope sender address is used as the recipient for delivery status notifications and may also appear in a Return-Path: header. Also β€” and this is the fun part β€” this address is also used to select from different identities in the configuration file. ✨ And if no envelope sender is specified on the command line, then the default identity's address is used. simple as that πŸ’…
  • -G (ignored) β€” Relay (gateway) submission of a message.
  • -h N (ignored) β€” Set the hop count to N.
  • -I (ignored) β€” Same as -bi.
  • -i (ignored) β€” Ignore dots alone on lines by themselves in incoming messages. This should be set if you are reading data from a file.
  • -L tag (ignored) β€” Set the identifier used in syslog messages to the supplied tag.
  • -N dsn β€” Set delivery status notification conditions to dsn, which can be never'' for no notifications, or a comma separated list of the values failure'' to be notified if delivery failed, delay'' to be notified if delivery is delayed, and success'' to be notified when the message is successfully delivered.
  • -n (default) β€” Don't do aliasing.
  • -O option=value (ignored) β€” Set option to the specified value. This form uses long names.
  • -o x value (ignored) β€” Set option x to the specified value. This form uses single character names only.
  • -p protocol (ignored) β€” Set the name of the protocol used to receive the message.
  • -q[time] (ignored) β€” Process saved messages in the queue at given intervals.
  • -qp[time] (ignored) β€” Similar to -qtime, except that instead of periodically forking a child to process the queue, forks a single persistent child for each queue that alternates between processing the queue and sleeping.
  • -qf (ignored) β€” Process saved messages in the queue once and do not fork(), but run in the foreground.
  • -qG name (ignored) β€” Process jobs in queue group called name only.
  • -q[!]I substr (ignored) β€” Limit processed jobs to those containing substr as a substring of the queue id, or not when ! is specified.
  • -q[!]R substr (ignored) β€” Limit processed jobs to those containing substr as a substring of one of the recipients, or not when ! is specified.
  • -q[!]S substr (ignored) β€” Limit processed jobs to those containing substr as a substring of the sender, or not when ! is specified.
  • -R return β€” Set the amount of the message to be returned if the message bounces. The return parameter can be full'' to return the entire message or hdrs'' to return only the headers. In the latter case also local bounces return only the headers.
  • -r name β€” An alternate and obsolete form of the -f flag. πŸ‘΅
  • -t β€” Read message for recipients. To:, Cc:, and Bcc: lines will be scanned for recipient addresses. The Bcc: line will be deleted before transmission.
  • -V envid β€” Set the original envelope id.
  • -v β€” Go into verbose mode. she will tell you EVERYTHING πŸ—£οΈ
  • -X logfile β€” Log all traffic in and out of mailers in the indicated logfile.
  • -- β€” Stop processing command flags and use the rest of the arguments as addresses.

✨ FILES ✨

  • ~/.esmtprc β€” User configuration file. Only read if no configuration file is specified on the command line.
  • /etc/esmtprc β€” System configuration file. Only read if no configuration file is specified on the command line and there is no user configuration file.
okay the ordering here matters bestie: your own ~/.esmtprc gets read first, and the system one only steps in if you didn't name a config file AND you don't have a user config. hierarchy. we respect it. πŸ‘‘

✨ SEE ALSO ✨

esmtprc(5), fetchmail(1) 🌈


✨ AUTHOR ✨

JosΓ© Fonseca β€” the icon, the legend, the moment πŸ‘‘βœ¨


and that's the whole page, bestie!! this was ESMTP(1), from the General Commands Manual, and she's giving exactly what she needs to give. go send some mail. slay. πŸ’–πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from