---
name: "spamlogd"
section: "8"
platform: "openbsd"
package: "man"
version: "8.0-current-20261101"
release: "OpenBSD 8.0-current (2026-11-01)"
platforms: ["openbsd"]
url: "https://new.carta.tech/spamlogd"
---

# spamlogd(8)

spamd whitelist updating daemon

## NAME

**spamlogd** – spamd whitelist updating daemon

## SYNOPSIS

**spamlogd** \[**-DI**\] \[**-i** *interface*\] \[**-l** *pflog\_interface*\] \[**-W** *whiteexp*\] \[**-Y** *synctarget*\]

## DESCRIPTION

**spamlogd** manipulates the [spamd(8)](/spamd/8.md) database in */var/db/spamd* used for greylisting. **spamlogd** updates the */var/db/spamd* whitelist entries whenever a connection to port 25 is logged to the [pflog(4)](/pflog/4.md) interface. The source addresses of inbound connections are whitelisted when seen by **spamlogd** to ensure that their entries in */var/db/spamd* do not expire if the connecting host continues to send legitimate mail. The destination addresses of outbound connections are whitelisted when seen by **spamlogd** so that replies to outbound mail may be received without initial greylisting delays. Greylisting is explained more fully in [spamd(8)](/spamd/8.md).

The options are as follows:

- **-D**

  Debugging mode. **spamlogd** does not disassociate from the controlling terminal.

- **-I**

  Specify that **spamlogd** is only to whitelist inbound SMTP connections. By default **spamlogd** will whitelist the source of inbound SMTP connections, and the target of outbound SMTP connections.

- **-i** *interface*

  Specify a network interface on which packets must arrive. The default is to watch for connections logged from all interfaces.

- **-l** *pflog\_interface*

  Specify a [pflog(4)](/pflog/4.md) interface to listen for connection notifications. The default is to watch for connections logged on “pflog0”.

- **-W** *whiteexp*

  Adjust the time for *whiteexp* in hours. The default is 864 hours (approximately 36 days); maximum is 2160 hours (approximately 90 days).

- **-Y** *synctarget*

  Add a target to receive synchronisation messages; see SYNCHRONISATION below. This option can be specified multiple times.

It is important to log any connections to and from the real MTA in order for **spamlogd** to update the whitelist entries. See [spamd(8)](/spamd/8.md) for an example ruleset for logging such connections.

**spamlogd** sends log messages to [syslogd(8)](/syslogd/8.md) using facility *daemon*. **spamlogd** will log each connection it sees at level LOG\_DEBUG.

## SYNCHRONISATION

**spamlogd** supports realtime synchronisation of whitelist states by sending the information it updates to a number of [spamd(8)](/spamd/8.md) daemons running on multiple machines. To enable synchronisation, use the command line option **-Y** to specify the machines to which **spamlogd** will send messages when it updates the state information. For more information, see [spamd(8)](/spamd/8.md).

## FILES

*/var/db/spamd*

## SEE ALSO

[syslog(3)](/syslog/3.md), [pflog(4)](/pflog/4.md), [spamd.conf(5)](/spamd.conf/5.md), [pflogd(8)](/pflogd/8.md), [spamd(8)](/spamd/8.md), [spamd-setup(8)](/spamd-setup/8.md), [spamdb(8)](/spamdb/8.md), [syslogd(8)](/syslogd/8.md), [tcpdump(8)](/tcpdump/8.md)

## HISTORY

The **spamlogd** command first appeared in OpenBSD 3.5.
