diff --git a/CHANGES b/CHANGES index 5595e6ad7..57ed167d6 100644 --- a/CHANGES +++ b/CHANGES @@ -1604,4 +1604,5 @@ * Remove password requirement for uninstalling apps and users * Hosting provider edition * Enforce limits in mail container +* Fix crash when using unauthenticated relay diff --git a/src/mail.js b/src/mail.js index 8d3052398..feb1eb531 100644 --- a/src/mail.js +++ b/src/mail.js @@ -596,13 +596,14 @@ function createMailConfig(mailFqdn, callback) { const enableRelay = relay.provider !== 'cloudron-smtp' && relay.provider !== 'noop', host = relay.host || '', port = relay.port || 25, + authType = relay.username ? 'plain' : '', username = relay.username || '', password = relay.password || ''; if (!enableRelay) return; if (!safe.fs.appendFileSync(paths.ADDON_CONFIG_DIR + '/mail/smtp_forward.ini', - `[${domain.domain}]\nenable_outbound=true\nhost=${host}\nport=${port}\nenable_tls=true\nauth_type=plain\nauth_user=${username}\nauth_pass=${password}\n\n`, 'utf8')) { + `[${domain.domain}]\nenable_outbound=true\nhost=${host}\nport=${port}\nenable_tls=true\nauth_type=${authType}\nauth_user=${username}\nauth_pass=${password}\n\n`, 'utf8')) { return callback(new Error('Could not create mail var file:' + safe.error.message)); } });