Browse Source

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

Jonathon Reinhart 4 years ago
parent
commit
0503c12ccd
2 changed files with 5 additions and 0 deletions
  1. 4 0
      main.go
  2. 1 0
      smtprelay.ini

+ 4 - 0
main.go

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

+ 1 - 0
smtprelay.ini

@@ -31,6 +31,7 @@
 ;local_forcetls = false
 
 ; 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
 
 ; Regular expression for valid FROM EMail addresses