summaryrefslogtreecommitdiffstats
path: root/checksetup.pl
diff options
context:
space:
mode:
Diffstat (limited to 'checksetup.pl')
-rwxr-xr-xchecksetup.pl20
1 files changed, 20 insertions, 0 deletions
diff --git a/checksetup.pl b/checksetup.pl
index 99000abc8..ac60ff63a 100755
--- a/checksetup.pl
+++ b/checksetup.pl
@@ -112,6 +112,8 @@
# $answer{'ADMIN_PASSWORD'} = 'fooey';
# $answer{'ADMIN_REALNAME'} = 'Joel Peshkin';
#
+# $answer{'SMTP_SERVER'} = 'mail.mydomain.net';
+#
#
# Note: Only information that supersedes defaults from LocalVar()
# function calls needs to be specified in this file.
@@ -1280,6 +1282,24 @@ if (@oldparams) {
close PARAMFILE;
}
+# Set maildeliverymethod to SMTP and prompt for SMTP server
+# if running on Windows and set to sendmail (Mail::Mailer doesn't
+# support sendmail on Windows)
+if ($^O =~ /MSWin32/i && Param('maildeliverymethod') eq 'sendmail') {
+ print "\nBugzilla requires an SMTP server to function on Windows.\n" .
+ "Please enter your SMTP server's hostname: ";
+ my $smtp = $answer{'SMTP_SERVER'}
+ || ($silent && die("cant preload SMTP_SERVER"))
+ || <STDIN>;
+ chomp $smtp;
+ if (!$smtp) {
+ print "\nWarning: No SMTP Server provided, defaulting to localhost\n";
+ $smtp = 'localhost';
+ }
+ SetParam('maildeliverymethod', 'smtp');
+ SetParam('smtpserver', $smtp);
+}
+
# WriteParams will only write out still-valid entries
WriteParams();