#
# Initialize.
#
#msg_verbose 1
smtpd_delay_reject 0
mynetworks 127.0.0.0/8,168.100.3.0/28
mydestination porcupine.org
relay_domains porcupine.org
helo foobar

#
# DNSWL (by IP address)
#

# Allowlist overrides reject.
client_restrictions permit_dnswl_client,wild.porcupine.org,reject
client spike.porcupine.org 168.100.3.2

# Allowlist does not fire - reject.
client_restrictions permit_dnswl_client,porcupine.org,reject
client spike.porcupine.org 168.100.3.2

# Allowlist does not override reject_unauth_destination.
client_restrictions permit
recipient_restrictions permit_dnswl_client,wild.porcupine.org,reject_unauth_destination
# Unauthorized destination - reject.
rcpt rname@rdomain
# Authorized destination - accept.
rcpt wietse@porcupine.org

#
# RHSWL (by domain name)
#

# Allowlist overrides reject.
client_restrictions permit_rhswl_client,dnswl.porcupine.org,reject
# Non-allowlisted client name - reject.
client spike.porcupine.org 168.100.3.2
# Allowlisted client name - accept.
client example.tld 168.100.3.2

# Allowlist does not override reject_unauth_destination.
client_restrictions permit
recipient_restrictions permit_rhswl_client,dnswl.porcupine.org,reject_unauth_destination
# Non-allowlisted client name.
client spike.porcupine.org 168.100.3.2
# Unauthorized destination - reject.
rcpt rname@rdomain
# Authorized destination - accept.
rcpt wietse@porcupine.org
# Allowlisted client name.
client example.tld 168.100.3.2
# Unauthorized destination - reject.
rcpt rname@rdomain
# Authorized destination - accept.
rcpt wietse@porcupine.org
# Numeric TLD - dunno.
rcpt wietse@12345
rcpt wietse@12345.porcupine.org
rcpt wietse@porcupine.12345
