Allow "allowed_nets" to be empty, meaning any network is allowed

This commit is contained in:
Jonathon Reinhart
2021-03-13 02:43:08 -05:00
parent ef3f9c8ea0
commit 0503c12ccd
2 changed files with 5 additions and 0 deletions

View File

@@ -20,6 +20,10 @@ func connectionChecker(peer smtpd.Peer) error {
// This can't panic because we only have TCP listeners // This can't panic because we only have TCP listeners
peerIP := peer.Addr.(*net.TCPAddr).IP peerIP := peer.Addr.(*net.TCPAddr).IP
if len(allowedNets) == 0 {
// Special case: empty string means allow everything
return nil
}
for _, allowedNet := range allowedNets { for _, allowedNet := range allowedNets {
if allowedNet.Contains(peerIP) { if allowedNet.Contains(peerIP) {

View File

@@ -31,6 +31,7 @@
;local_forcetls = false ;local_forcetls = false
; Networks that are allowed to send mails to us ; Networks that are allowed to send mails to us
; Defaults to localhost. If set to "", then any address is allowed.
;allowed_nets = 127.0.0.1/8 ::1/128 ;allowed_nets = 127.0.0.1/8 ::1/128
; Regular expression for valid FROM EMail addresses ; Regular expression for valid FROM EMail addresses