Log warning when deprecated ListenPort is used
authorMegaBrutal <code+git@megabrutal.com>
Mon, 15 Oct 2018 17:00:00 +0000 (19:00 +0200)
committerMegaBrutal <code+git@megabrutal.com>
Mon, 15 Oct 2018 17:00:00 +0000 (19:00 +0200)
Added a nice warning message to notify users to use ListenAddress
instead of ListenPort. The warning is triggered when the config has
no ListenAddress declaration, but a ListenPort setting is present.

Also replaced the slash with a backslash in the error message that
warns about missing "Server\Name" setting.

modified:   MgSMTP.pas

MgSMTP.pas

index 2fbc6ce69199c010e47968615d6fc165b3d763f8..79821d9ca761c9eff4a5676df38ee630d9f24813 100644 (file)
@@ -179,13 +179,18 @@ begin
             SpoolManager:=     TSpoolManager.Create(Config);
             PolicyManager:=    TPolicyManager.Create(Config);
 
+            AddDevComment(Logger);
+
+            if (Config.ReadString('Server', 'ListenAddress', '') = '')
+            and (Config.ReadString('Server', 'ListenPort', '') <> '') then
+               Logger.AddStdLine('WARNING! Server\ListenPort is deprecated. Use ListenAddress instead!');
+
             if Config.ReadBool('Spool', 'KeepProcessedEnvelopes', false)
             or Config.ReadBool('Spool', 'KeepProcessedEMails', false) then
                if not DirectoryExists('processed') then CreateDir('processed');
 
             Config.Free;
 
-            AddDevComment(Logger);
             Logger.AddStdLine('Primary server name: ' + MainServerConfig.Name);
             Logger.AddStdLine('FCrDNS policy: ' + FCrDNSPolicyToStr(PolicyManager.FCrDNSPolicy));
             if MailboxManager.DomainSpecific then
@@ -231,7 +236,7 @@ begin
          end
          else begin
             Config.Free;
-            Out.writeln('Error: Server/Name is a mandatory configuration entry.'#13#10
+            Out.writeln('Error: Server\Name is a mandatory configuration entry.'#13#10
                + 'Please configure the application properly, refer to the manual.');
             ReportSvcStatus(SERVICE_STOPPED, 2, 0);
          end;