MAILFROMD(8)

πŸ“¦
version 9.1 Β· 5 versions
, in ubuntu resolute, ubuntu stonking

πŸŽ€ MAILFROMD β€” the mail filtering daemon, bestie edition πŸ’–

okay so. mailfromd. It's a general-purpose mail filtering daemon, and yes she is THAT girl. This page is your group chat briefing on all her flags, so grab a snack πŸ“ and let's get into it.


✨ SYNOPSIS ✨

mailfromd [OPTION...] [var=value...][SCRIPT]

that's it. that's the whole vibe check. options, then some var=value assignments if you're feeling spicy, then maybe a script name. iconic.


πŸ’… DESCRIPTION πŸ’…

mailfromd β€” a general purpose milter daemon. she filters mail. she daemonizes. she does it all. πŸ¦‹

πŸ‘‘ Operation modifiers

these decide what she's actually doing with her day.

  • --daemon β€” run in daemon mode (this is the default, she's a daemon girlie)
  • -E β€” preprocess source files and exit
  • --lint, --syntax-check β€” check syntax and exit
  • --run[=FUNC] β€” run script and execute function FUNC (main if not given, obvi)
  • --show-defaults β€” show compilation defaults
  • -t, --test[=HANDLER] β€” run in test mode

🌈 General options

the everyday essentials.

  • --callout-socket=STRING β€” set callout socket
  • --echo[=FILE] β€” divert output of the echo instruction to FILE
  • -I, --include-path=DIR β€” add the directory DIR to the list of directories to be searched for header files
  • --mtasim β€” run in mtasim compatibility mode
  • -O, --optimize[=LEVEL] β€” set code optimization level
  • -P, --module-path=DIR β€” add the directory DIR to the list of directories to be searched for MFL module files
  • -p, --port, --milter-socket=STRING β€” set communication socket
  • --relayed-domain-file=FILE β€” read relayed domains from FILE
  • --resolv-conf-file=FILE β€” read resolver configuration from FILE
  • -v, --variable=VAR=VALUE β€” assign VALUE to VAR

🧚 Preprocessor options

for the pre-processing girlies.

  • -D, --define=NAME[=VALUE] β€” define a preprocessor symbol NAME as having VALUE, or empty
  • --no-preprocessor β€” disable the use of external preprocessor
  • --preprocessor[=COMMAND] β€” use COMMAND as external preprocessor
  • -U, --undefine=NAME β€” undefine a preprocessor symbol NAME

⏰ Timeout control

one (1) option. she's lowkey powerful tho.

  • --milter-timeout=TIME β€” set MTA connection timeout

πŸ” Informational and debugging options

aka the "what is actually happening" section. ngl this one's long, but every single one matters.

  • --dump-code β€” dump disassembled code
  • --dump-grammar-trace β€” dump grammar traces
  • --dump-lex-trace β€” dump lexical analyzer traces
  • --dump-macros β€” show used Sendmail macros
  • --dump-tree β€” dump parser tree
  • --gacopyz-log=LEVEL β€” set Gacopyz log level
  • --[no-]location-column β€” print location column numbers in compiler diagnostics messages
  • --[no-]stack-trace β€” enable stack traces on runtime errors
  • --[no-]trace β€” trace executed actions
  • --trace-program[=MODULES] β€” enable filter program tracing
  • --xref, --dump-xref β€” produce a cross-reference listing

πŸ› Global debugging settings

  • --debug-level=LEVEL β€” set Mailutils debugging level
  • --[no-]debug-line-info β€” show source info with debugging messages
  • --log-facility=FACILITY β€” output logs to syslog FACILITY
  • -M, --mailer=MAILER β€” use specified URL as the default mailer

🌸 Server configuration modifiers

how she presents herself to the world.

  • --foreground β€” stay in foreground
  • -g, --group=NAME β€” retain the supplementary group NAME when switching to user privileges
  • --pidfile=FILE β€” set pidfile name
  • -S, --source-ip=ADDRESS β€” set source address for TCP connections
  • --single-process β€” run in single-process mode
  • --state-directory=DIR β€” set new program state directory
  • -u, --user=NAME β€” switch to this user privileges after startup

πŸ“ Logging and debugging options

  • -d, --debug=LEVEL β€” set debugging level
  • --log-tag=STRING β€” set the identifier used in syslog messages to STRING
  • --logger=STREAM β€” select logger stream
  • --[no-]source-info β€” debug messages include source information
  • --stderr β€” log to stderr
  • --syslog β€” log to syslog (default, she's a syslog girlie)
  • -X, --[no-]transcript β€” enable transcript of SMTP sessions

πŸ“‚ Configuration handling

  • --config-file=FILE β€” load this configuration file; implies --no-config
  • --config-lint β€” check configuration file syntax and exit
  • --config-verbose β€” verbosely log parsing of the configuration files
  • --no-site-config, --no-config β€” do not load site-wide configuration file
  • --set=PARAM=VALUE β€” set configuration parameter

πŸ’œ Informational options

the "hi I just want to know things" corner.

  • --config-help β€” show configuration file summary
  • --show-config-options β€” show compilation options
  • -?, --help β€” give this help list
  • --usage β€” give a short usage message
  • -V, --version β€” print program version

🫢 heads up bestie: mandatory or optional arguments to long options are also mandatory or optional for any corresponding short options. no cap, that's just how it works.

✍️ AUTHOR

Written by Sergey Poznyakoff. king behavior, honestly. πŸ‘‘


🐞 REPORTING BUGS

Report bugs to <bug-mailfromd@gnu.org.ua>. mailfromd home page: <http://www.gnu.org.ua/software/mailfromd>

not me telling you to email the maintainer but like, do it, they want to know 😭


Copyright Β© 2005-2023 Sergey Poznyakoff License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. like fr fr, no warranty, don't come for her πŸ’€


πŸ‘€ SEE ALSO

The full documentation for mailfromd is maintained as a Texinfo manual. If the info and mailfromd programs are properly installed at your site, the command

info mailfromd

should give you access to the complete manual. go read it, it's giving ✨ educated ✨


and that's the whole page, bestie!! this was mailfromd 9.1, dated December 2025, from the System Administration Utilities corner of the man-verse. slay, stay filtered, and don't forget to read the fine print πŸ’–βœ¨πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from