---
name: "spamass-milter"
section: "1"
platform: "linux"
package: "spamass-milter"
version: "0.4.0-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/spamass-milter"
---

# spamass-milter(1)

sendmail milter for passing emails through SpamAssassin

## NAME

**spamass-milter** – sendmail milter for passing emails through SpamAssassin

## SYNOPSIS

**spamass-milter** **-p** *socket* \[**-b**\|**-B** *spamaddress*\] \[**-C** **-rejectcode**\] \[**-d** *debugflags*\] \[**-D** *host*\] \[**-e** *defaultdomain*\] \[**-f**\] \[**-i** *networks*\] \[**-I**\] \[**-m**\] \[**-M**\] \[**-P** *pidfile*\] \[**-r** *nn*\] \[**-r** **-rejectmsg**\] \[**-u** *defaultuser*\] \[**-x**\] \[**-S** **-/path/to/sendmail**\] \[**--** *spamc* *flags* *...*\]

## DESCRIPTION

The **spamass-milter** utility is a sendmail milter that checks and modifies incoming email messages with SpamAssassin.

The following options are available:

- **-p** *socket*

  Specifies the pathname of a socket to create for communication with **sendmail**. If it is removed, **sendmail** will not be able to access the milter. This may cause messages to bounce, queue, or be passed through unmiltered, depending on the parameters in **sendmail**'s .cf file.

- **-b** *spamaddress*

  Redirects tagged spam to the specified email address. All envelope recipients are removed, and inserted into the message as ‘X-Spam-Orig-To:’ headers.

- **-B** *spamaddress*

  Same as **-b**, except the original recipients are retained. Only one of **-b** and **-B** may be used.

- **-C** *rejectcode*

  Mail that is rejected is rejected by default with a 5.7.1 code.  This option allows that to be overridden.  See also, -R **-S** option.

- **-d** *debugflags*

  Enables logging.  *debugflags* is a comma-separated list of tokens:

  - func

    Entry and exit of internal functions.

  - misc

    Other non-verbose logging.

  - net

    Lookups of the ignored netblocks list.

  - poll

    Low-level I/O to the child spamc process.

  - rcpt

    Recipient processing.

  - spamc

    High-level I/O to the child spamc process.

  - str

    Calls to field lookup and string comparison functions.

  - uori

    Calls to the update\_or\_insert function.

  - 1

    (historical) Same as  *func,misc*.

  - 2

    (historical) Same as *func,misc,poll*.

  - 3

    (historical) Same as *func,misc,poll,str,uori*.

- **-D** *host*

  Connects to a remote spamd server on  *host*, instead of using one on localhost. This option is deprecated; use  **--** **-d** *host* instead.

- **-e** *defaultdomain*

  Pass the full user@domain address to spamc. The default is to pass only the username part on the assumption that all users are local. This flag is useful if you are using an SQL (or other username) backend with spamassassin and have listed the full address there. If the recipient name has no domain part (if the recipient is on the local machine for example), *defaultdomain* is added. Requires the **-u** flag.

- **-f**

  Causes **spamass-milter** to fork into the background.

- **-i** *networks*

  Ignores messages if the originating IP is in the network(s) listed. The message will be passed through without calling SpamAssassin at all. *networks* is a comma-separated list, where each element can be either an IP address  (nnn.nnn.nnn.nnn), a CIDR network (nnn.nnn.nnn.nnn/nn), or a network/netmask pair (nnn.nnn.nnn.nnn/nnn.nnn.nnn.nnn). Multiple **-i** flags will append to the list. For example, if you list all your internal networks, no outgoing emails will be filtered.

- **-I**

  Ignores messages if the sender has authenticated via SMTP AUTH.

- **-m**

  Disables modification of the  ‘Subject:’ and  ‘Content-Type:’ headers and message body. This is useful when SpamAssassin is configured with ‘defang\_mime 0’ and  ‘report\_header 1’, or when SA is simply used to add headers for postprocessing later. Updating the body through the milter interface can be slow for large messages.

- **-M**

  Like **-m**, but also disables creation of any SpamAssassin ‘X-Spam-\*’ headers as well. Both tagged and untagged mail gets passed through unchanged. To be useful, this option should be used with the **-r**, **-b**, or **-B** flags. If  **-b** is used, the  ‘X-Spam-Orig-To:’ headers will still be added.

- **-P** *pidfile*

  Create the file *pidfile*, containing the processid of the milter.

- **-r** *nn*

  Reject scanned email if it greater than or equal to *nn*. If  *-1*, reject scanned email if SpamAssassin tags it as spam (useful if you are also using the **-u** flag, and users have changed their required\_hits value).

  For example, if you usually use procmail to redirect tagged email into a separate folder just in case of false positives, you can use **-r** *15* and reject flagrant spam outright while still receiving low-scoring messages.

- **-R** *rejecttext*

  Mail that is rejected is rejected with the message "Blocked by SpamAssassin". This option allows the user to call with a different message, instead.   See also, the **-C** option

- **-S** */path/to/sendmail*

  This option is used in conjunction with the -x option to specify a path to sendmail if the default compiled in choice is not satisfactory.

- **-u** *defaultuser*

  Pass the username part of the first recipient to spamc with the  **-u** flag. This allows user preferences files to be used. If the message is addressed to multiple recipients, the username *defaultuser* is passed instead.

  Note that  **spamass-milter** does not know whether an email is incoming or outgoing, so a message from ⟨user1@localdomain.com⟩ to  ⟨user2@yahoo.com⟩ will make  **spamass-milter** pass  **-u** *user2* to spamc.

- **-x**

  Pass the recipient address through  **sendmail** **-bv**, which will perform virtusertable and alias expansion. The resulting username is then passed to spamc. Requires the **-u** flag.  The spamass-milter configuration process does its best to find sendmail, but it is possible to override this compiled-in setting via the

- **--** *spamc* *flags* *...*

  Pass all remaining options to spamc.  This allows you to connect to a remote spamd with **-d** or  **-p**.

## FILES

- */usr/bin/spamc*

  client interface to SpamAssassin

## SEE ALSO

spamassassin(1), spamd(1)

## AUTHORS

Georg C. F. Greve ⟨greve@gnu.org⟩ Dan Nelson ⟨dnelson@allantgroup.com⟩ Todd Kover ⟨kovert@omniscient.com⟩
