sendmail. 4th Edition - Helion
ISBN: 978-05-965-5534-4
stron: 1312, Format: ebook
Data wydania: 2007-10-26
Księgarnia: Helion
Cena książki: 169,15 zł (poprzednio: 196,69 zł)
Oszczędzasz: 14% (-27,54 zł)
A classic O'Reilly title since 1993, sendmail now covers Versions 8.10 through 8.14 of this email routing program, including dozens of new features, options, and macros. This edition also takes a more nuts-and-bolts approach than its predecessors. It includes both an administration handbook and a reference guide that provide you with clear options for installing, configuring and managing sendmail's latest versions and companion programs.
The sendmail program has withstood the test of time because of its ability to solve the mail-routing needs of all sites large or small, complex or simple. But it's also difficult to configure and even more difficult to understand. That's why this book has proven valuable since the dawn of email. With it, you will be able to configure the program to meet any need, so that you never again have to call in a sendmail guru to bail you out.
sendmail includes the following sections:
- Some Basics is especially useful for people new to the program. It covers the basic concepts underlying mail delivery and the roles sendmail plays in that delivery
- Administration covers all aspects of handling sendmail, from downloading and installing new releases to managing mailing lists and aliases
- Configuration Reference contains a heavily cross-referenced guide for configuring and tuning sendmail. Every arcane detail of sendmail is listed alphabetically
- Appendices contain more detail about sendmail than you may ever need
This edition also includes new material on SSL and AUTH and a new chapter on Mitlers. If you're interested in what has changed since the last edition, one appendix categorizes the many improvements of sendmail's intervening versions by chapter, complete with references to the appropriate sections and page numbers in the book.
With sendmail, system administrators, programmers, network engineers, and even inexperienced users will be able to match this challenging but necessary utility to the needs of their network.
Osoby które kupowały "sendmail. 4th Edition", wybierały także:
- sendmail Cookbook. Administering, Securing & Spam-Fighting 186,80 zł, (160,65 zł -14%)
- Sendmail. 3rd Edition 176,92 zł, (152,15 zł -14%)
- sendmail. Receptury 49,90 zł
- sendmail 125,00 zł
- sendmail. Leksykon kieszonkowy 9,00 zł
Spis treści
sendmail. 4th Edition eBook -- spis treści
- sendmail, 4th Edition
- Dedication
- Preface
- Changes Since the Previous Edition
- Why This Book Is Necessary
- History
- Thoughts from Eric Allman
- Organization
- Audience and Assumptions
- Unix and sendmail Versions
- Conventions Used in This Book
- Using Code Examples
- Additional Sources of Information
- Other Books, Other Problems
- How to Contact Us
- Safari Books Online
- Acknowledgments
- 1. Some Basics
- Email Basics
- Requests for Comments (RFCs)
- Email and sendmail
- Other MTAs
- Why sendmail Is So Complex
- Basic Parts of sendmail
- The Configuration File
- The Queue
- Aliases and Mailing Lists
- Basic Parts of a Mail Message
- Run sendmail by Hand
- The Header
- The Body
- The Envelope
- Basic Roles of sendmail
- Role in the Filesystem
- Role in the aliases File
- Role in Queue Management
- Role in Local Delivery
- Delivery to a Mailbox
- Delivery Through a Program
- Role in Network Transport
- Role in TCP/IP
- Role in UUCP
- Role in Other Protocols
- Role As a Daemon
- Basic Modes of sendmail
- How to Run sendmail
- Become a mode (-b)
- Daemon mode (-bd)
- Kill and Restart, Beginning with V8.7
- Kill and restart with V8.6
- Kill and restart, very old versions
- If you forget to kill the daemon
- Show Queue Mode (-bp)
- Rebuild Aliases Mode (-bi)
- Verify Mode (-bv)
- Verbose Mode (-v)
- Debugging Mode (-d)
- How to Run sendmail
- The sendmail.cf File
- Configuration Commands
- The version Command
- Comments
- A Quick Tour
- Mail delivery agents
- Macros
- Rules
- Rule sets
- Class macros
- File class macros
- Options
- Headers
- Priority
- Trusted users
- Keyed databases
- Environment variables
- Queues defined
- External filter programs
- I. Administration
- 2. Download, Build, and Install
- Vendor Versus Compiling
- Download the Source
- Whats Where in the Source
- The Top-Level Build Script
- The contrib Directory
- The devtools Directory
- The doc Directory
- The include Directory
- The INSTALL File
- The KNOWNBUGS File
- The libmilter Directory
- The libsm Directory
- The libsmdb Directory
- The libsmutil Directory
- The LICENSE File
- The Makefile File
- The PGPKEYS File
- The README File
- The RELEASE_NOTES File
- The test Directory
- Build sendmail
- The Build Script
- Build with m4
- Run Build
- If You Change Your m4 Build File
- Use libresolv.a
- Badly Defined sys_errlist
- Error at or Near Variable
- Undefined Symbol strtoul
- warning: & before array
- Other Considerations
- Install sendmail
- Add smmsp to /etc/passwd
- Add smmsp to /etc/group
- Modify init Files
- The submit.cf File
- Error /etc/mail Not a Directory
- The MAIL_SETTINGS_DIR mc Macro
- The Wrong Symbolic Link
- Pitfalls
- Build m4 Macro Reference
- APPENDDEF( )
- confBEFORE
- confBLDVARIANT
- confBUILDBIN
- confCC
- confCCLINK
- confCCOPTS
- confCCOPTS_SO
- confCOPY
- confDEPEND_TYPE
- confDEPLIBS
- confDONT_INSTALL_CATMAN
- confEBINDIR
- confENVDEF and conf_prog_ENVDEF
- confFORCE_RMAIL
- confGBIN...
- confHFDIR
- confHFFILE
- confINCDIRS
- confINC...
- confINSTALL
- confINSTALL_RAWMAN
- confLD
- confLDOPTS
- confLDOPTS_SO
- confLIB...
- confLIBDIRS
- confLIBS and conf_prog_LIBS
- confLIBSEARCH
- confLIBSEARCHPATH
- confLN
- confLNOPTS
- confLINKS
- confMAN...
- The formatted source files
- Where to install the manuals
- Adding tags to the manual
- Permissions and ownership of the installed manuals
- Program and arguments used for formatting
- Which macro package to use when formatting
- confMAPDEF
- confMBIN...
- confMKDIR
- confMSPQOWN
- confMSP_QUEUE_DIR
- confMSP_STFILE
- confMTCCOPTS
- confMTLDOPTS
- confNO_HELPFILE_INSTALL
- confNO_MAN_BUILD
- confNO_MAN_INSTALL
- confNO_STATISTICS_INSTALL
- confOBJADD
- confOPTIMIZE
- confRANLIB
- confRANLIBOPTS
- confREQUIRE_LIBSM
- confSBINDIR
- confSBINGRP
- confSBINMODE
- confSBINOWN
- confSHAREDLIB...
- confSHELL
- confSM_OS_HEADER
- confSMOBJADD
- confSMSRCADD
- confSONAME
- conf_prog_OBJADD
- conf_prog_SRCADD
- confSRCDIR
- confSTDIOTYPE
- confSTDIR
- confSTFILE and confSTMODE
- confSTRIP
- confSTRIPOPTS
- confUBINDIR
- confUBINGRP
- confUBINMODE
- confUBINOWN
- PREPENDDEF( )
- 3. Tune sendmail with Compile-Time Macros
- Before You Begin, a Checklist
- The Sleepycat DB Library
- The regex Library
- To Port, Tune, or Debug
- Pitfalls
- Compile-Time Macro Reference
- AUTO_NIS_ALIASES
- BSD4_3
- BSD4_4
- DATA_PROGRESS_TIMEOUT
- DNSMAP
- DSN
- EGD
- ERRLIST_PREDEFINED
- FAST_PID_RECYCLE
- _FFR...
- FORK
- HAS...
- HESIOD
- HES_GETMAILHOST
- IDENTPROTO
- IP_SRCROUTE
- ...IS_BROKEN
- LA_TYPE
- LDAPMAP
- LOG
- MATCHGECOS
- MAX...
- MEMCHUNKSIZE
- MILTER
- MIME7TO8
- MIME8TO7
- NAMED_BIND
- MAP_NSD
- MAP_REGEX
- NDBM
- NEED...
- NET...
- NETINFO
- NEWDB
- NIS
- NISPLUS
- NOFTRUNCATE
- NO_GROUP_SET
- NOTUNIX
- _PATH...
- PH_MAP
- PICKY_HELO_CHECK
- PIPELINING
- PSBUFSIZ
- QUEUE
- QUEUESEGSIZE
- REQUIRES_DIR_FSYNC
- SASL
- SCANF
- SECUREWARE
- SFS_TYPE
- SHARE_V1
- SM_...
- SM_HEAP_CHECK
- SM_CONF_SHM
- SM_CONF_LDAP_INITIALIZE
- SMTP
- SMTPDEBUG
- SMTPLINELIM
- SOCKETMAP
- SPT_TYPE
- STARTTLS
- SUID_ROOT_FILES_OK
- SYSLOG_BUFSIZE
- SYSTEM5
- TCPWRAPPERS
- TLS_NO_RSA
- TOBUFSIZE
- TTYNAME
- ...T
- UDB_DEFAULT_SPEC
- USE_DOUBLE_FORK
- USE_ENVIRON
- USING_NETSCAPE_LDAP
- USERDB
- USESETEUID
- WILDCARD_SHELL
- XDEBUG
- Before You Begin, a Checklist
- 4. Maintain Security with sendmail
- Why root?
- Test seteuid and setreuid
- The Environment
- The E Configuration Command
- SMTP Probes
- SMTP Debug
- SMTP VRFY and EXPN
- The Configuration File
- The F CommandFile Form
- The F CommandProgram Form
- The P= of Delivery Agents
- StatusFile Option and the Statistics File
- Permissions
- Dangerous Write Permissions
- Permissions for :include:
- Permissions for ~/.forward Files
- Recommended Permissions
- Don't Blame sendmail
- The aliases File
- The Alias Database Files
- Forged Mail
- Forging with the Queue Directory
- Forging with SMTP
- Security Features
- Trusted Users
- Declare trusted users (ignored V8.1 through V8.6)
- Security Options
- The DefaultUser option
- The RunAsUser option (V8.8 and above)
- The TrustedUser option (V8.10 and above)
- The ForwardPath option
- The LogLevel option
- The PostmasterCopy option
- The PrivacyOptions option
- The SafeFileEnvironment option
- The TempFileMode and QueueFileMode options
- The /etc/shells File
- Trusted Users
- Other Security Information
- Pitfalls
- Why root?
- 5. Authentication and Encryption
- Support SMTP AUTH
- Get and Install the SASL Library
- Install Sendmail.conf
- Add SASL Support to sendmail
- Test SASL support in sendmail
- Watch authentication in action
- SASL and Your mc File
- Your server requires AUTH
- AUTH realm
- The AuthOptions option
- SASL and Rule Sets
- AUTH Running As a Client
- Authinfo and the access database (V8.12 and later)
- The default-auth-info file (V8.10 and V8.11)
- Additional SASL Help
- Get and Install the SASL Library
- Public Key Cryptography
- Digital Signatures
- Locate the Public Key
- Authentication in Public-Key Systems
- X.509 Certificate Format
- STARTTLS
- Select a Random Number Generator
- SUNWski
- EGD
- PRNGD
- Roll your own
- Digital Certificate Acronyms
- Enable TLS with Build
- Set Up Your Certificates
- Create a certificate
- Revocation lists
- Sources of additional help
- Add STARTTLS Support to Your mc File
- Test STARTTLS
- Macros for Use with STARTTLS
- STARTTLS and the access Database
- The access database and Local_Relay_Auth
- The access database with tls_server and tls_client
- The tls_rcpt rule set
- Disable STARTTLS with the try_tls rule set
- Additional TLS Help
- Select a Random Number Generator
- Pitfalls
- Support SMTP AUTH
- 6. The sendmail Command Line
- Alternative argv[0] Names
- hoststat (V8.8 and Later)
- mailq
- newaliases
- purgestat (V8.8 or Later)
- smtpd
- Command-Line Switches
- List of Recipient Addresses
- Processing the Command Line
- First: Prescanning the Command Line
- Second: Processing Prior to the Switches
- Initialize the environment
- Initialize sendmail macros
- Third: Processing Switches
- Fourth: Reading the Configuration File
- Fifth: Collecting Recipients
- sendmail's exit( ) Status
- EX_CANTCREAT
- EX_CONFIG
- EX_IOERR
- EX_OK
- EX_OSERR
- EX_OSFILE
- EX_SOFTWARE
- EX_TEMPFAIL
- EX_UNAVAILABLE
- EX_USAGE
- Pitfalls
- Alphabetized Command-Line Switches
- -A
- -B
- -b
- -ba
- -bD
- -bd
- -bH
- -bh
- -bi
- -bm
- -bP
- -bp
- -bs
- -bt
- -bv
- -bz
- -C
- -c
- -D
- -d
- -E
- -e
- -F
- -f
- -G
- -h
- -I
- -i
- -J
- -L
- -M
- -m
- -N
- -n
- -O
- -o
- -p
- -Q
- -q
- -R
- -r
- -s
- -T
- -t
- -U
- -V
- -v
- The modified -v verbose switch with the MSP
- -X
- -x
- Alternative argv[0] Names
- 7. How to Handle Spam
- The Local_check_ Rule Sets
- Local_check_relay and check_relay
- Local_check_mail and check_mail
- Local_check_rcpt and check_rcpt
- The check_eom Rule Set
- The check_compat Rule Set
- How DNSBL Works
- FEATURE(dnsbl)
- FEATURE(enhdnsbl)
- Check Headers with Rule Sets
- Virus Screening by Subject
- Check Validity of Received:
- Relaying
- Macros to Allow Relaying
- The RELAY_DOMAIN mc macro
- The RELAY_DOMAIN_FILE mc macro
- FEATURE(loose_relay_check)
- FEATURE(promiscuous_relay)
- FEATURE(relay_based_on_MX)
- FEATURE(relay_entire_domain)
- FEATURE(relay_hosts_only)
- FEATURE(relay_local_from)
- FEATURE(relay_mail_from)
- Risk with FEATURE(nouucp)
- FEATURE(accept_unresolvable_domains)
- FEATURE(accept_unqualified_senders)
- Macros to Allow Relaying
- The access Database
- Enabling the access Database Generally
- Create the access Database
- OK
- RELAY
- REJECT
- DISCARD
- SKIP
- XYZ text
- ERROR:XYZ text
- ERROR:D.S.N:XYZ text
- Finer Control with V8.10
- Rejection Message for REJECT
- Reject per Recipient
- Accept and Reject per Recipient
- FEATURE(compat_check)V8.12 and Later
- Screen by domain and .domain
- Choose Queue Groups Via the access Database
- Screen Based on STARTTLS and AUTH=
- Spam Suppression Features
- FEATURE(badmx)V8.14 and Later
- FEATURE(block_bad_helo)V8.14 and Later
- FEATURE(greet_pause)V8.13 and Later
- FEATURE(mtamark)V8.13 and Later, Experimental
- FEATURE(require_rdns)V8.14 and Later
- FEATURE(use_client_ptr)V8.13 and Later
- Pitfalls
- The Local_check_ Rule Sets
- 8. Test Rule Sets with -bt
- Overview
- Configuration Lines
- Define a Macro with .D
- Add to a Class with .C
- Dump a sendmail Macro or Class
- Dump a Defined Macro with $
- Dump a Class Macro with $=
- Show an Item
- Show Rules in a Rule Set with =S
- Show Delivery Agents with =M
- Complex Actions Made Simple
- Canonify a Host with /canon
- Look Up MX Records with /mx
- Look Up a Database Item with /map
- The aliases database map
- The host map
- The dequote map
- Select Whom to /parse or /try with /tryflags
- Parse an Address with /parse
- Try a Delivery Agent with /try
- Process-Specified Addresses
- Syntax
- The Address
- Rule Set 3 Always Called First with -bt
- The Output
- Add Debugging for Detail
- A Trick
- Batch Rule-Set Testing
- Pitfalls
- 9. DNS and sendmail
- Overview
- Which BIND?
- Make sendmail DNS-Aware
- How sendmail Uses DNS
- Determine the Local Canonical Name
- Probe Network Interfaces
- Look Up a Remote Host's Name
- DNS Blacklist Lookups
- Look Up Addresses for Delivery
- The $[and $] Operators
- Broken IPv6 Name Servers
- Set Up MX Records
- Failover MX Servers Result in Spam
- MX Must Point to Host with an A or AAAA Record
- MX to CNAME Is Illegal
- MX Records Are Nonrecursive
- Wildcard MX Records
- What? They Ignore MX Records?
- Caching MX Records
- Ambiguous MX Records
- How to Use dig
- Look Up a Host by namewith dig(1)
- Reverse Look-Up IP Addresses with dig(1)
- Look Up MX Records with dig(1)
- Use a Different Name Server with dig(1)
- Pitfalls
- Overview
- 10. Build and Use Companion Programs
- The Build Script
- -A
- -c
- -E
- M4=
- MAKE=
- DESTDIR=
- -f
- -I
- -L
- -M
- -m
- -n
- -O
- -Q
- -S
- -v
- The editmap Program
- editmap Command-Line Switches
- -C
- -f
- -N
- -q
- -u
- -x
- editmap Command-Line Switches
- The mail.local Delivery Agent
- Build mail.local
- Set Up sendmail.cf for mail.local
- The mail.local Command-Line Switches
- 7
- -b
- -d
- -D
- -f
- -h
- -l (lowercase L)
- -r
- The mailstats Program
- The statistics File
- Viewing Statistics: mailstats
- Using cron for Daily and Weekly Statistics
- The mailstats Program's Switches
- -c
- -C
- -f
- -o
- -p
- -P
- The makemap Program
- makemap Command-Line Switches
- -c
- -C
- -d
- -D
- -e
- -f
- -l (lowercase L)
- -N
- -o
- -r
- -s
- -t
- -u
- -v
- makemap Command-Line Switches
- The praliases Program
- Some Examples of Using praliases
- -C
- -f
- The rmail Delivery Agent
- The smrsh Program
- Build smrsh
- Configure to Use smrsh
- Populate Its Directory
- How smrsh Works
- The vacation Program
- Build the vacation Program
- Other Uses for vacation
- You are too busy to reply promptly
- Retire users with notification
- Manage your hours
- Exclusions and Assumptions
- The vacation Program's Command-Line Switches
- -a
- -C
- -d
- -f
- -i or -I
- -j
- -l (lowercase L)
- -m
- -R
- -r
- -s
- -t
- -U
- -x
- -z
- Pitfalls
- The Build Script
- 11. Manage the Queue
- Overview of the Queue
- Parts of a Queued Message
- The Queue Identifier
- The Data (Message Body) File: df
- Queue File Locking
- Current-style file locking
- Locks shown when printing the queue
- Locks can get stuck
- The ID Creation File (Obsolete As of V5.62): nf
- The Queue Control File: qf
- The Temporary qf Rewrite Image: tf
- The Transcript File: xf
- Using Multiple Queue Directories
- Multiple Queue Directories
- Printing multiple queue directories
- Processing multiple queue directories
- Using qf, df, and xf Subdirectories
- Handle Deep Queues
- Recover from a Full Queue
- Multiple Queue Directories
- Queue Groups (V8.12 and Later)
- The Default Queue Group
- The Q Configuration Command
- The Flags= (F=) queue-group equate
- The Interval= (I=) queue-group equate
- The Jobs= (J=) queue-group equate
- The Nice= (N=) queue-group equate
- The Path= (P=) queue-group equate
- The recipients= (r=) queue-group equate
- The Runners= (R=) queue-group equate
- How to Declare Queue Groups with the m4 Technique
- The FEATURE(queuegroup) and the access Database
- Rule Set Queue Group Selection
- Queue Group Limitations
- Bogus qf Files
- Badly Formed qf Filename
- Bad qf Owner or Permissions
- Extra Data at End of qf File
- Unknown Control Character in qf File
- Funny Flag Bits in qf File
- Savemail Panic
- Handle Qf Files
- Printing the Queue
- Printing the Queue in Verbose Mode
- Print the Number of Messages in the Queue
- How the Queue Is Processed
- Processing a Single Message
- Cause Queues to Be Processed
- Periodically with -q
- From the Command Line
- Process the queue once: -q
- Combine -v with -q
- Process by identifier/recipient/sender: -q[ISR]
- Process by negated identifier/recipient/sender (V8.12 and later)
- Process by queue group with -qG (V8.12 and later)
- Process the queue via ESMTP ETRN
- Persistent Queue Runners with -qp
- Process Alternative Queues
- Handling a Down Site
- Move mail with qtool.pl
- Move mail with queue groups
- Handling a Down Site
- Queue Quarantining
- Overview of Quarantining
- Quarantine Command-Line Switches
- The -qQ command-line switch
- The -Q command-line switch
- The mailq command's display
- Use Milter to quarantine
- Use the access database to quarantine
- Use rule sets to quarantine
- Log quarantined messages
- Manage quarantined envelopes with qtool.pl
- The qf file's quarantine reason: q line
- Pitfalls
- The qf File Internals
- A line
- B line
- C line
- d line
- D line
- E line
- F line
- H line
- I line
- K line
- M line
- N line
- P line
- q line
- Q line
- r line
- R line
- S line
- T line
- V line
- Z line
- ! line
- $ line
- .line
- 12. Maintain Aliases
- The aliases(5) File
- The aliases(5) File's Location
- Local Must Be Local
- Alias Nonlocal Addresses
- Forms of Alias Delivery
- Delivery to Users
- Delivery to Files
- Delivery Via Programs
- Possible failures
- Write a Delivery Agent Script
- Duplicates Discarded
- Correct exit(2) Values
- Is It Really EX_OK?
- Special Aliases
- The Postmaster Alias
- RFC2142 Common Mailbox Names
- The MAILER-DAEMON Alias
- Plussed Detail Addressing
- Duplicate Entries and Automation
- The aliases Database
- Rebuild the Alias Database
- Check the Right Side of Aliases
- Use Trailing Dots
- Prevent Simultaneous Rebuilds
- No DBM Aliasing
- Prevent Aliasing with -n
- Is an Alias Bad?
- Filtering Recipients with a Shell Script
- Pitfalls
- The aliases(5) File
- 13. Mailing Lists and ~/.forward
- Internal Mailing Lists
- :include: Mailing Lists
- Comments in :include: Lists
- Trade-offs
- Defining a Mailing List Owner
- Exploder Mailing Lists
- Problems with Mailing Lists
- Reply Versus Bounce
- Gateway Lists to News
- A List-Bounced Alias
- Users Ignore list-request
- Precedence: bulk
- X.400 Addresses
- Mail List Etiquette
- Offer Subscription and Management Information
- Keep Messages Small
- Don't Pack Addresses in Headers
- Let Software Do the Job for You
- Maintain a Clear Policy
- Boot Off Offending Members
- Packages That Help
- Majordomo
- Mailman
- ListProcessor
- ListManager
- The User's ~/.forward File
- Unscrambling Forwards
- Forwarding Loops
- Appending to Files
- Piping Through Programs
- Specialty Programs for Use with ~/.forward
- The procmail program
- The slocal program
- Force Requeue on Error
- Pitfalls
- 14. Signals, Transactions, and Syslog
- Signal the Daemon
- SIGTERM
- SIGINT
- SIGKILL
- SIGHUP
- SIGUSR1
- --- open file descriptors: ---
- --- connection cache: ---
- --- ruleset debug_dumpstate returns stat ..., pv: ---
- Log Transactions with -X
- Log with syslog
- syslog(3)
- Tuning syslog.conf
- syslog's Output
- Gathering Statistics from syslog
- message_volume.sh
- Pitfalls
- Other Useful Logging
- Alphabetized syslog Equates
- action=
- arg1=
- bodytype=
- class=
- ctladdr=
- daemon=
- delay=
- dsn=
- from=
- intvl=
- len=
- mailer=
- milter=
- msgid=
- nrcpts=
- ntries=
- pri=
- proto=
- quarantine=
- reject=
- relay=
- ruleset=
- size=
- stat=
- to=
- xdelay=
- Signal the Daemon
- 15. Debug sendmail with -d
- The Syntax of -d
- The Behavior of -d
- Interpret the Output
- The -D Debug File Switch
- Table of All -d Categories
- Pitfalls
- Reference for -d in Numerical Order
- -d0.1
- -d0.4
- -d0.10
- -d0.12
- -d0.13
- -d0.15
- -d0.20
- -d2.1
- -d2.9
- -d4.80
- -d6.1
- -d8.1
- -d8.2
- -d8.3
- -d8.5
- -d8.7
- -d8.8
- -d11.1
- -d11.2
- -d12.1
- -d13.1
- -d20.1
- -d21.1
- -d21.2
- -d22.1
- -d22.11
- -d22.12
- -d25.1
- -d26.1
- -d27.1
- -d27.2
- -d27.3
- -d27.4
- -d27.5
- -d27.8
- -d27.9
- -d28.1
- -d29.1
- -d29.4
- -d31.2
- -d34.1
- -d34.11
- -d35.9
- -d37.1
- -d37.8
- -d38.2
- -d38.3
- -d38.4
- -d38.9
- -d38.10
- -d38.12
- -d38.19
- -d38.20
- -d44.4
- -d44.5
- -d48.2
- -d49.1
- -d52.1
- -d52.100
- -d60.1
- -d99.100
- 2. Download, Build, and Install
- II. Configuration Reference
- 16. Configuration File Overview
- Overall Syntax
- Comments
- V8 Comments
- Continuation Lines
- The V Configuration Command
- The V Configuration Command's Level Part
- The V Configuration Command's Vendor Part
- Pitfalls
- 17. Configure sendmail.cf with m4
- The m4 Preprocessor
- m4 Is Greedy
- m4 and dnl
- m4 and Arguments
- The DOL m4 Macro
- Configure with m4
- The _CF_DIR_ m4 Macro
- The Minimal mc File
- OSTYPE( ) m4 macro
- MAILER( ) m4 macro
- DOMAIN( ) m4 macro
- FEATURE( ) m4 macro
- The Order of mc Lines
- VERSIONID m4 macro
- HACK( ) m4 macro
- m4 Macros by Function
- Options
- Define sendmail Macros
- Rules and Rule Sets
- LOCAL_CONFIG mc macro
- LOCAL_RULE_0 mc macro
- LOCAL_RULE_1 and LOCAL_RULE_2 mc macros
- LOCAL_RULE_3 mc macro
- LOCAL_RULESETS mc macro
- SMART_HOST mc macro
- LOCAL_NET_CONFIG mc macro
- Masquerading
- EXPOSED_USER mc Macro
- EXPOSED_USER_FILE mc macro
- MASQUERADE_AS mc Macro
- MASQUERADE_DOMAIN mc Macro
- MASQUERADE_DOMAIN_FILE mc Macro
- MASQUERADE_EXCEPTION mc Macro
- MASQUERADE_EXCEPTION_FILE mc Macro
- EXPOSED_USER mc Macro
- Relays
- BITNET_RELAY mc Macro
- DECNET_RELAY mc Macro
- FAX_RELAY mc Macro
- LOCAL_RELAY mc Macro
- LOCAL_USER mc Macro
- LUSER_RELAY mc Macro
- MAIL_HUB mc Macro
- UUCP_RELAY mc Macro
- UUCP Support
- uucp-old (a.k.a. uucp)
- uucp-new (a.k.a. suucp)
- uucp-uudom
- uucp-dom
- The LOCAL_UUCP mc Macro
- SITE mc Macro (Obsolete)
- SITECONFIG mc Macro (Obsolete)
- UUCPSMTP mc Macro
- Pitfalls
- Configuration File Feature Reference
- FEATURE(accept_unqualified_senders)
- FEATURE(accept_unresolvable_domains)
- FEATURE(access_db)
- FEATURE(allmasquerade)
- FEATURE(always_add_domain)
- FEATURE(authinfo)
- FEATURE(badmx)
- FEATURE(bestmx_is_local)
- FEATURE(bitdomain)
- FEATURE(blacklist_recipients)
- FEATURE(block_bad_helo)
- FEATURE(compat_check)
- FEATURE(conncontrol)
- conncontrol and delay checks
- Terminate connections with 421
- FEATURE(delay_checks)
- FEATURE(dnsbl)
- FEATURE(domaintable)
- FEATURE(enhdnsbl)
- FEATURE(generics_entire_domain)
- FEATURE(genericstable)
- GENERICS_DOMAIN mc macro
- GENERICS_DOMAIN_FILE mc macro
- FEATURE(greet_pause)
- FEATURE(ldap_routing)
- FEATURE(limited_masquerade)
- FEATURE(local_lmtp)
- FEATURE(local_no_masquerade)
- FEATURE(local_procmail)
- Use another program instead of procmail
- FEATURE(lookupdotdomain)
- FEATURE(loose_relay_check)
- FEATURE(mailertable)
- FEATURE(masquerade_entire_domain)
- FEATURE(masquerade_envelope)
- FEATURE(mtamark)
- FEATURE(msp)
- FEATURE(nocanonify)
- FEATURE(nodns)
- FEATURE(no_default_msa)
- FEATURE(notsticky)
- FEATURE(nouucp)
- FEATURE(nullclient)
- FEATURE(promiscuous_relay)
- FEATURE(preserve_local_plus_detail)
- FEATURE(preserve_luser_host)
- FEATURE(queuegroup)
- FEATURE(ratecontrol)
- ratecontrol and delay checks
- Terminate connections with 421
- FEATURE(rbl)
- FEATURE(redirect)
- FEATURE(relay_based_on_MX)
- FEATURE(relay_entire_domain)
- FEATURE(relay_hosts_only)
- FEATURE(relay_local_from)
- FEATURE(relay_mail_from)
- FEATURE(require_rdns)
- FEATURE(smrsh)
- FEATURE(stickyhost)
- FEATURE(use_client_ptr)
- FEATURE(use_ct_file)
- FEATURE(use_cw_file)
- FEATURE(uucpdomain)
- FEATURE(virtuser_entire_domain)
- FEATURE(virtusertable)
- VIRTUSER_DOMAIN mc macro
- VIRTUSER_DOMAIN_FILE mc macro
- The m4 Preprocessor
- 18. The R (Rules) Configuration Command
- Why Rules?
- The R Configuration Command
- Macros in Rules
- Rules Are Treated Like Addresses
- As of V8.13, rules no longer need to balance
- Backslashes in rules
- Tokenizing Rules
- $-operators Are Tokens
- The Space Character Is Special
- Pasting Addresses Back Together
- The Workspace
- The Behavior of a Rule
- The LHS
- Minimum Matching
- Backup and Retry
- The RHS
- Copy by Position: $digit
- Rewrite Once Prefix: $:
- Rewrite-and-Return Prefix: $@
- Rewrite Through a Rule Set: $>set
- Return a Selection: $#
- Canonicalize Hostname: $[ and $]
- An example of canonicalization
- Default in canonicalization: $:
- Other Operators
- Pitfalls
- Rule Operator Reference
- $&
- $@
- $@
- $@
- $@
- $@
- $:
- $:
- $:
- $:
- $digit
- $=
- $>
- $[ $]
- $( $)
- $-
- $+
- $#
- $#
- $#
- $*
- $~
- $|
- 19. The S (Rule Sets) Configuration Command
- The S Configuration Command
- Rule Set Numbers
- Rule Set Names
- Associate Number with Name
- Macros in Rule Set Names
- Rule Sets and Lists of Rules
- Odds and Ends
- Rule Sets and m4
- The Sequence of Rule Sets
- V8 Enhancements
- The canonify Rule Set 3
- A Special Case: From:<>
- Basic Textual Canonicalization
- Handling Routing Addresses
- Handling Specialty Addresses
- Focusing for @ Syntax
- The final Rule Set 4
- Stripping Trailing Dots
- Restoring Source Routes
- Removing Focus
- Correcting Tags
- The parse Rule Set 0
- Further Processing: $:address
- Selecting S= and R=
- Delivering to Local Recipient
- Forwarding to a Knowledgeable Host
- Handling UUCP Locally
- Forwarding over the Network
- Handling Leftover Local Addresses
- The localaddr Rule Set 5
- The Local_localaddr Hook
- Rule Sets 1 and 2
- Rule Set 1
- Rule Set 2
- Pitfalls
- Policy Rule Set Reference
- check_data
- check_etrn
- check_vrfy and check_expn
- Use check_vrfy to change rejection message
- Use check_vrfy to select addresses to verify
- srv_features
- The S Configuration Command
- 20. The M (Mail Delivery Agent) Configuration Command
- The M Configuration Command
- The Symbolic Delivery Agent Name
- Required Symbolic Names
- The mc Configuration Syntax
- Choose Preferred Agents
- confSMTP_MAILER
- confUUCP_MAILER
- confLOCAL_MAILER
- confRELAY_MAILER
- Tuning Without an Appropriate Keyword
- Create a New mc Delivery Agent
- MAILER_DEFINITIONS
- Choose Preferred Agents
- Delivery Agents by Name
- cyrus
- cyrusv2
- discard
- error
- The $@ dsnstat part when used with the error delivery agent
- The $: part when used with the error delivery agent
- fax
- *file* and *include*
- local and prog
- The local delivery agent
- The prog delivery agent
- mail11
- ph
- pop
- procmail
- qpage
- smtp, etc.
- The smtp delivery agent
- The esmtp delivery agent
- The smtp8 delivery agent
- The dsmtp delivery agent
- The relay delivery agent
- usenet
- uucp
- The LOCAL_UUCP mc macro
- Delivery Agent Equates
- /=(forward slash)
- A=
- How to define A= with your mc configuration
- The use of $h in A=TCP
- The special case of $u in A=
- Deliver to a Unix domain socket
- C=
- D=
- E=
- F=
- The MODIFY_MAILER_FLAGS mc macro
- Pre-V8.10 mc modification of F=
- L=
- M=
- Modify M= using an mc configuration macro
- m=
- Modify m= using an mc configuration macro
- N=
- P=
- Modify P= using an mc configuration macro
- Q=
- R=
- r=
- S=
- T=
- U=
- W=
- How a Delivery Agent Is Executed
- The Fork
- The Child
- Pitfalls
- Delivery Agent F= Flags
- F=%
- F=0 (zero)
- F=1 (one)
- F=2
- F=3
- F=5
- F=6
- F=7
- F=8
- F=9
- F=: (colon)
- F=| (vertical bar)
- F=/ (forward slash)
- F=@
- F=a
- F=A
- F=b
- F=B
- F=c
- F=C
- F=d
- F=D
- F=e
- F=E
- F=f
- F=F
- F=g
- F=h
- F=i
- F=I (uppercase i)
- F=j
- F=k
- F=l (lowercase L)
- F=L
- F=m
- F=M
- F=n
- F=o
- F=p
- F=P
- F=q
- F=r
- F=R
- F=s
- F=S
- F=u
- F=U
- F=w
- F=W
- F=x
- F=X
- F=z
- F=Z
- 21. The D (Define a Macro) Configuration Command
- Preassigned sendmail Macros
- Macros and the System Identity
- Command-Line Definitions
- Syntax of the Command-Line Macro's Text
- Configuration-File Definitions
- Syntax of the Configuration-File Macro's Text
- Required Macros (V8.6 and Earlier)
- Macro Names
- Single-Character Names
- Multicharacter Names
- Macro Expansion: $ and $&
- Macro Expansion Is Recursive
- When Is a Macro Expanded?
- Use Value As Is with $&
- Macro Conditionals: $?, $|, and $.
- Conditionals Can Nest
- Macro Xtext Translations
- Macros with mc Configuration
- Pitfalls
- Alphabetized sendmail Macros
- $_
- $a
- ${addr_type}
- ${alg_bits}
- ${auth_authen}
- ${auth_author}
- ${auth_ssf}
- ${auth_type}
- $b
- ${bodytype}
- $B
- $c
- ${cert_issuer}
- ${cert_md5}
- ${cert_subject}
- ${cipher}
- ${cipher_bits}
- ${client_addr}
- ${client_connections}
- ${client_flags}
- ${client_name}
- ${client_port}
- ${client_ptr}
- ${client_rate}
- ${client_resolve}
- ${cn_issuer}
- ${cn_subject}
- ${currHeader}
- $C
- $d
- ${daemon_addr}
- ${daemon_family}
- ${daemon_flags}
- ${daemon_info}
- ${daemon_name}
- ${daemon_port}
- ${deliveryMode}
- ${dsn_envid}
- ${dsn_notify}
- ${dsn_ret}
- $D
- $e
- ${envid}
- $E
- $f
- $F
- $g
- $h
- ${hdr_name}
- ${hdrlen}
- $H
- $i
- ${if_addr}
- ${if_addr_out}
- ${if_family}
- ${if_family_out}
- ${if_name}
- ${if_name_out}
- $j
- $k
- $l (lowercase L)
- ${load_avg}
- $L
- $m
- ${mail_addr}
- ${mail_host}
- ${mail_mailer}
- ${msg_id}
- ${msg_size}
- $M
- ${MTAHost}
- $n
- ${nbadrcpts}
- ${nrcpts}
- ${ntries}
- $o
- ${opMode}
- $p
- $q
- ${quarantine}
- ${queue_interval}
- $r
- ${rcpt_addr}
- ${rcpt_host}
- ${rcpt_mailer}
- $R
- $s
- ${sendmailMTACluster}
- ${server_addr}
- ${server_name}
- $S
- $t
- ${time}
- ${tls_version}
- ${total_rate}
- $u
- $U
- $v
- ${verify}
- $V
- $w
- $W
- $x
- $X
- $y
- $Y
- $z
- $Z
- Preassigned sendmail Macros
- 22. The C and F (Class Macro) Configuration Commands
- Class Configuration Commands
- The C Class Command
- Append one class to another
- The F Class Command
- scanf(3) variations
- Class via Database-Map Lookups
- Class by replacing files with database lookups in mc macros
- Class via ldap map lookups
- The C Class Command
- Access Classes in Rules
- Matching Any in a Class: $=
- Matching Any Token Not in a Class: $~
- Back Up and Retry
- Class Name Hashing Algorithm
- Classes with mc Configuration
- Internal Class Macros
- Pitfalls
- Alphabetized Class Macros
- $=b
- $={checkMIMEFieldHeaders}
- $={checkMIMEHeaders}
- $={checkMIMETextHeaders}
- $=e
- $=k
- $=m
- $=n
- $={persistentMacros}
- $=q
- $={ResOk}
- $=R
- $={tls} and $={Tls}
- $=s
- $=t
- $=w
- Class Configuration Commands
- 23. The K (Database-Map) Configuration Command
- Enable at Compile Time
- Create Files with makemap
- The K Configuration Command
- The name
- The type
- The args
- The K Command Switches
- -A
- -a
- -D
- -f
- -k
- -l (lowercase L)
- -m
- -N
- -O
- -o
- -q
- -S
- -T
- -t
- -v
- -z
- Use $( and $) in Rules
- Specify a Default with $:
- Specify Numbered Substitution with $@
- $[ and $]: A Special Case
- Database Maps with mc Configuration
- Set a Default Database-Map Type for Features
- Pitfalls
- Alphabetized Database-Map Types
- arith
- btree
- bestmx
- dbm
- dequote
- dns
- DNS database-map -B switch
- DNS database-map -Z switch
- DNS database-map -z switch
- hash
- hesiod
- host
- implicit
- ldap (was ldapx)
- LDAP default schema for aliases includes recursion
- LDAP default schema for classes includes recursion
- The 1 ldap database-map switch
- The -b ldap database-map switch
- The -d ldap database-map switch
- The -H ldap database-map switch
- The -h ldap database-map switch
- The -K ldap database-map switch (V8.14 and later)
- The -k ldap database-map switch
- The -M ldap database-map switch
- The -n ldap database-map switch
- The -P ldap database-map switch
- The -p ldap database-map switch
- The -R ldap database-map switch
- The -r ldap database-map switch
- The -s ldap database-map switch
- The -V ldap database-map switch
- The -v ldap database-map switch
- The -w ldap database-map switch
- The -z ldap database-map switch
- The -Z ldap database-map switch
- FEATURE(ldap_routing)
- LDAPROUTE_DOMAIN and LDAPROUTE_DOMAIN_FILE
- LDAPROUTE_EQUIVALENT and LDAPROUTE_EQUIVALENT_FILE
- macro
- netinfo
- nis
- nisplus
- nsd
- null
- ph
- The -h ph database-map switch
- The -k ph database-map switch
- program
- regex
- The -b regex database-map switch
- The -d regex database-map switch
- The -n regex database-map switch
- The -s regex database-map switch
- sequence
- socket
- stab
- switch
- syslog
- The -L syslog database-map switch
- text
- userdb
- Enable the User Database
- Create the User Database
- A :default outgoing hostname
- user
- Enable at Compile Time
- 24. The O (Options) Configuration Command
- Overview
- Command-Line Options
- Pre-V8.7 Command-Line Option Declarations
- Multicharacter Command-Line Options
- Multicharacter name shorthand
- Appropriateness of Options
- Options That Are Safe
- Configuration File Options
- Pre-V8.7 Configuration File Declarations
- V8.7 Configuration File Declarations
- Options in the mc File
- Alphabetical Table of All Options
- Option Argument Types
- Interrelating Options
- File Locations
- The Queue
- Managing Aliases
- Controlling Machine Load
- Connection Caching
- Problem Solving
- Other Options
- Pitfalls
- Alphabetized Options
- AliasFile
- AliasWait
- AllowBogusHELO
- AuthMaxBits
- AuthMechanisms
- AuthOptions
- AuthRealm
- AutoRebuildAliases
- BadRcptThrottle
- BlankSub
- CACertFile
- CACertPath
- CheckAliases
- CheckpointInterval
- ClassFactor
- ClientCertFile
- ClientKeyFile
- ClientPortOptions
- ColonOkInAddr
- ConnectionCacheSize
- ConnectionCacheTimeout
- ConnectionRateThrottle
- ConnectionRateWindowSize
- ConnectOnlyTo
- ControlSocketName
- CRLFile
- DaemonPortOptions
- DaemonPortOptions=Addr=
- DaemonPortOptions=children= (8.14 and later)
- DaemonPortOptions=delayLA= (8.14 and later)
- DaemonPortOptions=DeliveryMode= (8.14 and later)
- DaemonPortOptions=Family=
- DaemonPortOptions=Listen=
- DaemonPortOptions=Modify=
- DaemonPortOptions=Name=
- DaemonPortOptions=Port=
- DaemonPortOptions=queueLA= (8.14 and later)
- DaemonPortOptions=ReceiveBufSize=
- DaemonPortOptions=refuseLA= (8.14 and later)
- DaemonPortOptions=SendBufSize=
- DataFileBufferSize
- DeadLetterDrop
- DefaultAuthInfo
- DefaultCharSet
- DefaultUser
- DelayLA
- DeliverByMin
- DeliveryMode
- DeliveryMode=background
- DeliveryMode=deferred
- DeliveryMode=interactive
- DeliveryMode=queueonly
- DHParameters
- DialDelay
- DirectSubmissionModifiers
- DontBlameSendmail
- DontBlameSendmail=AssumeSafeChown
- DontBlameSendmail=ClassFileInUnsafeDirPath
- DontBlameSendmail=DontWarnForwardFileInUnsafeDirPath (V8.10 and later)
- DontBlameSendmail=ErrorHeaderInUnsafeDirPath
- DontBlameSendmail=FileDeliveryToHardLink
- DontBlameSendmail=FileDeliveryToSymLink
- DontBlameSendmail=ForwardFileInGroupWritableDirPath
- DontBlameSendmail=ForwardFileInUnsafeDirPath
- DontBlameSendmail=ForwardFileInUnsafeDirPathSafe
- DontBlameSendmail=GroupReadableKeyFile (V8.12 and later)
- DontBlameSendmail=GroupReadableSASLDBFile (V8.12 and later)
- DontBlameSendmail=GroupWritableAliasFile
- DontBlameSendmail=GroupWritableDirPathSafe
- DontBlameSendmail=GroupWritableForwardFile (V8.12 and later)
- DontBlameSendmail=GroupWritableForwardFileSafe
- DontBlameSendmail=GroupWritableIncludeFile (V8.11 and later)
- DontBlameSendmail=GroupWritableIncludeFileSafe
- DontBlameSendmail=GroupWritableSASLDBFile (V8.12 and later)
- DontBlameSendmail=HelpFileInUnsafeDirPath
- DontBlameSendmail=IncludeFileInGroupWritableDirPath
- DontBlameSendmail=IncludeFileInUnsafeDirPath
- DontBlameSendmail=IncludeFileInUnsafeDirPathSafe
- DontBlameSendmail=InsufficientEntropy (V8.11 and later)
- DontBlameSendmail=LinkedAliasFileInWritableDir
- DontBlameSendmail=LinkedClassFileInWritableDir
- DontBlameSendmail=LinkedForwardFileInWritableDir
- DontBlameSendmail=LinkedIncludeFileInWritableDir
- DontBlameSendmail=LinkedMapInWritableDir
- DontBlameSendmail=LinkedServiceSwitchFileInWritableDir
- DontBlameSendmail=MapInUnsafeDirPath
- DontBlameSendmail=NonRootSafeAddr (V8.10 and later)
- DontBlameSendmail=RunProgramInUnsafeDirPath (V8.12 and later)
- DontBlameSendmail=RunWritableProgram (V8.12 and later)
- DontBlameSendmail=Safe
- DontBlameSendmail=TrustStickyBit
- DontBlameSendmail=WorldWritableAliasFile
- DontBlameSendmail=WorldWritableForwardFile (V8.12 and later)
- DontBlameSendmail=WorldWritableIncludeFile (V8.12 and later)
- DontBlameSendmail=WriteMapToHardLink
- DontBlameSendmail=WriteMapToSymLink
- DontBlameSendmail=WriteStatsToHardLink
- DontBlameSendmail=WriteStatsToSymLink
- DontExpandCnames
- DontInitGroups
- DontProbeInterfaces
- DontPruneRoutes
- DoubleBounceAddress
- EightBitMode
- EightBitMode=mimefy
- EightBitMode=pass
- EightBitMode=strict
- ErrorHeader
- ErrorMode
- ErrorMode=e
- ErrorMode=m
- ErrorMode=p
- ErrorMode=q
- ErrorMode=w
- FallbackMXhost
- FallBackSmartHost
- FastSplit
- ForkEachJob
- ForwardPath
- HeloName
- HelpFile
- HoldExpensive
- HostsFile
- HostStatusDirectory
- IgnoreDots
- InputMailFilters
- LDAPDefaultSpec
- LogLevel
- What is logged at LogLevel=0
- MailboxDatabase
- MatchGECOS
- MaxAliasRecursion
- MaxDaemonChildren
- MaxHeadersLength
- MaxHopCount
- MaxMessageSize
- MaxMimeHeaderLength
- MaxNOOPCommands
- MaxQueueChildren
- MaxQueueRunSize
- MaxRecipientsPerMessage
- MaxRunnersPerQueue
- MeToo
- Milter
- Milter.LogLevel
- Milter.macros.connect
- Milter.macros.helo
- Milter.macros.envfrom
- Milter.macros.envrcpt
- Milter.macros.data
- Milter.macros.eoh
- Milter.macros.eom
- MinFreeBlocks
- MinQueueAge
- MustQuoteChars
- NiceQueueRun
- NoRecipientAction
- NoRecipientAction=add-apparently-to
- NoRecipientAction=add-bcc
- NoRecipientAction=add-to
- NoRecipientAction=add-to-undisclosed
- NoRecipientAction=none
- OldStyleHeaders
- OperatorChars
- PidFile
- PostmasterCopy
- PrivacyOptions
- PrivacyOptions=authwarnings
- PrivacyOptions=goaway
- PrivacyOptions=nobodyreturn
- PrivacyOptions=noetrn
- PrivacyOptions=needexpnhelo
- PrivacyOptions=needmailhelo
- PrivacyOptions=needvrfyhelo
- PrivacyOptions=noactualrecipient
- PrivacyOptions=noexpn
- PrivacyOptions=noreceipts
- PrivacyOptions=noverb
- PrivacyOptions=novrfy
- PrivacyOptions=public
- PrivacyOptions=restrictexpand (V8.12 and later)
- PrivacyOptions=restrictmailq
- PrivacyOptions=restrictqrun
- ProcessTitlePrefix
- QueueDirectory
- QueueFactor
- QueueFileMode
- QueueLA
- QueueSortOrder
- QueueSortOrder=host
- QueueSortOrder=priority
- QueueSortOrder=time (V8.8 and later)
- QueueSortOrder=filename (V8.10 and later)
- QueueSortOrder=random (V8.12 and later)
- QueueSortOrder=modtime (V8.12 and later)
- QueueSortOrder=none (V8.13 and later)
- QueueTimeout
- RandFile
- RecipientFactor
- RefuseLA
- RejectLogInterval
- ResolverOptions
- RetryFactor
- RequiresDirFsync
- RrtImpliesDsn
- RunAsUser
- SafeFileEnvironment
- SaveFromLine
- SendMimeErrors
- ServerCertFile
- ServerKeyFile
- ServiceSwitchFile
- SevenBitInput
- SharedMemoryKey
- SharedMemoryKeyFile
- SingleLineFromHeader
- SingleThreadDelivery
- SmtpGreetingMessage
- SoftBounce
- StatusFile
- SuperSafe
- TempFileMode
- Timeout
- Timeout.aconnect (V8.12 and later)
- Timeout.auth (V8.12 and later)
- Timeout.command (V8.6 and later)
- Timeout.connect (V8.6 and later)
- Timeout.control (V8.10 and later)
- Timeout.datablock (V8.6 and later)
- Timeout.datafinal (V8.6 and later)
- Timeout.datainit (V8.6 and later)
- Timeout.fileopen (V8.7 and later)
- Timeout.helo (V8.6 and later)
- Timeout.hoststatus (V8.8 and later)
- Timeout.iconnect (V8.8 and later)
- Timeout.ident (V8.6 and later)
- Timeout.initial (V8.6 and later)
- Timeout.lhlo (V8.12 and later)
- Timeout.mail (V8.6 and later)
- Timeout.misc (V8.6 and later)
- Timeout.queuereturn (V8.7 and later)
- Timeout.queuewarn (V8.7 and later)
- Timeout.quit (V8.6 and later)
- Timeout.rcpt (V8.6 and later)
- Timeout.resolver (V8.10 and later)
- Timeout.rset (V8.6 and later)
- Timeout.starttls (V8.12 and later)
- TimeZoneSpec
- TLSSrvOptions
- TrustedUser
- TryNullMXList
- UnixFromLine
- UnixFromLine in UUCP software
- UnixFromLine with mail files
- UnsafeGroupWrites
- UseErrorsTo
- UseMSP
- UserDatabaseSpec
- Verbose
- XscriptFileBufferSize
- M
- 25. The H (Headers) Configuration Command
- Overview
- Header Names
- Header Field Contents
- Macros in the Header Field
- Escape Character in the Header Field
- Quoted Strings in the Header Field
- Comments in the Header Field
- Balancing special characters
- ?flags? in Header Definitions
- Macros Force Header Inclusion
- Macro-Included Headers Don't Survive Queueing
- Rules Check Header Contents
- Use $>+ to Include RFC2822 Comments
- No balancing with $>+
- Check the header's length
- H* a Default for All Headers
- The check_eoh Rule Set
- Check for missing headers
- Use $>+ to Include RFC2822 Comments
- Header Behavior in conf.c
- H_ACHECK Header Flag (V5 and Later)
- Replace headers with H_ACHECK
- H_BCC Header Flag (V8.7 and Later)
- H_BINDLATE Header Flag (V8.10 and Later)
- H_CHECK Header Flag (V5 and Later)
- H_CTE Header Flag (V8.7 and Later)
- H_CTYPE Header Flag (V8.7 and Later)
- H_DEFAULT Header Flag (V5 and Later)
- H_ENCODABLE Header Flag (V8.8 and Later)
- H_EOH Header Flag (V5 and Later)
- H_ERRORSTO (Was H_ERRSTO) (V8.7 and Later)
- H_FORCE Header Flag (V5 and Later)
- H_FROM Header Flag (V5 and Later)
- H_RCPT Header Flag (V5 and Later)
- H_RECEIPTTO Header Flag (V8.7 and Later)
- H_RESENT Header Flag (V5 and Later)
- H_STRIPCOMM Header Flag (V8.10 and Later)
- H_TRACE Header Flag (V5 and Later)
- H_USER Header Flag (V8.11 and Later)
- H_VALID Header Flag (V5 and Later)
- H_ACHECK Header Flag (V5 and Later)
- Headers and mc Configuration
- Headers by Category
- Recommended Headers
- Sender Headers
- Recipient Headers
- Identification and Control Headers
- Date and Trace Headers
- Other Headers
- MIME Headers
- Forwarding with Re-Sent Headers
- Remove and Re-create the From: Header
- Precedence
- The P Configuration Command
- Pitfalls
- Alphabetized Header Reference
- Apparently-From:
- Apparently-To:
- Auto-Submitted:
- Bcc:
- Cc:
- Comments:
- Content-Description:
- Content-Disposition:
- Content-Id:
- Content-Length:
- Content-Transfer-Encoding:
- Content-Type:
- Date:
- Delivery-Receipt-To:
- Delivered-To:
- Disposition-Notification-To:
- Encrypted:
- Errors-To:
- From:
- Full-Name:
- In-Reply-To:
- Keywords:
- Mail-From:
- Message-ID:
- Message:
- MIME-Version:
- Posted-Date:
- Precedence:
- Priority:
- Received:
- References:
- Reply-To:
- Return-Path:
- Return-Receipt-To:
- Sender:
- Subject:
- Text:
- To:
- Via:
- X-Authentication-Warning:
- X400-Received:
- 26. The X (Milters) Configuration Command
- Create Milter Support
- Pre-V8.13 Enable with -DMILTER
- Create libmilter
- Special Build-Time Support
- SM_CONF_POLL
- MILTER_NO_NAGLE
- Add Configuration Support
- The X Configuration Command
- The X configuration command F= equate
- The X configuration command S= equate
- The X configuration command T= equate
- The InputMailFilters Option
- DaemonPortOptions=InputFilter=
- The SuperSafe Option with Milters
- Root Won't Remove Socket File
- Milter Logging with syslog
- Pass Macros with Milter.macros
- The X Configuration Command
- Build a Milter
- Pitfalls
- smfi_ Routine Reference
- Milter smfi_addheader()
- Milter smfi_addrcpt()
- Milter smfi_addrcpt_par()
- Milter smfi_chgfrom()
- Milter smfi_chgheader()
- Milter smfi_delrcpt()
- Milter smfi_getpriv()
- Milter smfi_getsymval()
- Milter smfi_insheader()
- Milter smfi_main()
- Milter smfi_opensocket()
- Milter smfi_progress()
- Milter smfi_quarantine()
- Milter smfi_register()
- Milter smfi_replacebody()
- Milter smfi_setbacklog()
- Milter smfi_setconn()
- Milter smfi_setdbg()
- Milter smfi_setmlreply()
- Milter smfi_setpriv()
- Milter smfi_setreply()
- V8.13 SMTP 421 and SMFIS_TEMPFAIL
- Milter smfi_setsymlist()
- Milter smfi_settimeout()
- Milter smfi_stop()
- Milter smfi_version()
- xxfi_ Routine Reference
- Milter xxfi_abort()
- Milter xxfi_body()
- Milter xxfi_close()
- Milter xxfi_connect()
- Milter xxfi_data()
- Milter xxfi_envfrom()
- Milter xxfi_envrcpt()
- Milter xxfi_eoh()
- Milter xxfi_eom()
- Milter xxfi_header()
- Milter xxfi_helo()
- Milter xxfi_negotiate()
- Milter xxfi_unknown()
- Create Milter Support
- 16. Configuration File Overview
- III. Appendixes
- A. The mc Configuration Macros and Directives
- B. What's New Since Edition 3
- Chapter 1, Some Basics
- Chapter 2, Download, Build, and Install
- Chapter 3, Tune sendmail with Compile-Time Macros
- Chapter 4, Maintain Security with sendmail
- Chapter 5, Authentication and Encryption
- Chapter 6, The sendmail Command Line
- Chapter 7, How to Handle Spam
- Chapter 8, Test Rule Sets with -bt
- Chapter 9, DNS and sendmail
- Chapter 10, Build and Use Companion Programs
- Chapter 11, Manage the Queue
- Chapter 12, Maintain Aliases
- Chapter 13, Mailing Lists and ~/.forward
- Chapter 14, Signals, Transactions, and Syslog
- Chapter 15, Debug sendmail with -d
- Chapter 16, Configuration File Overview
- Chapter 17, Configure sendmail.cf with m4
- Chapter 18, The R (Rules) Configuration Command
- Chapter 19, The S (Rule Sets) Configuration Command
- Chapter 20, The M (Mail Delivery Agent) Configuration Command
- Chapter 21, The D (Define a Macro) Configuration Command
- Chapter 22, The C and F (Class Macro) Configuration Commands
- Chapter 23, The K (Database-Map) Configuration Command
- Chapter 24, The O (Options) Configuration Command
- Chapter 25, The H (Headers) Configuration Command
- Chapter 26, The X (Milters) Configuration Command
- C. The checkcompat( ) Function
- How checkcompat( ) Works
- Arguments Passed to checkcompat( )
- Global Variables
- How checkcompat( ) Works
- Bibliography
- Publications and Postings
- Index
- About the Authors
- Colophon
- Copyright