From d6e9e5e0afbe7c0ea7e902fe0df21783a990c05a Mon Sep 17 00:00:00 2001
From: rswindell <>
Date: Fri, 14 Dec 2001 17:59:51 +0000
Subject: [PATCH] Added "default user" feature for "catch-all" e-mail.

---
 src/sbbs3/ctrl/MailCfgDlgUnit.cpp |  4 ++++
 src/sbbs3/ctrl/MailCfgDlgUnit.dfm | 40 +++++++++++++++++++++++--------
 src/sbbs3/ctrl/MailCfgDlgUnit.h   |  2 ++
 3 files changed, 36 insertions(+), 10 deletions(-)

diff --git a/src/sbbs3/ctrl/MailCfgDlgUnit.cpp b/src/sbbs3/ctrl/MailCfgDlgUnit.cpp
index 37dad84c61..cbca03de7c 100644
--- a/src/sbbs3/ctrl/MailCfgDlgUnit.cpp
+++ b/src/sbbs3/ctrl/MailCfgDlgUnit.cpp
@@ -104,6 +104,7 @@ void __fastcall TMailCfgDlg::FormShow(TObject *Sender)
     DeliveryAttemptsEdit->Text
         =AnsiString(MainForm->mail_startup.max_delivery_attempts);
     RescanFreqEdit->Text=AnsiString(MainForm->mail_startup.rescan_frequency);
+    DefaultUserEdit->Text=AnsiString(MainForm->mail_startup.default_user);
 
     DebugTXCheckBox->Checked=MainForm->mail_startup.options
         &MAIL_OPT_DEBUG_TX;
@@ -168,6 +169,9 @@ void __fastcall TMailCfgDlg::OKBtnClick(TObject *Sender)
         =DeliveryAttemptsEdit->Text.ToIntDef(10);
     MainForm->mail_startup.rescan_frequency=RescanFreqEdit->Text.ToIntDef(300);
 
+    sprintf(MainForm->mail_startup.default_user,"%.*s"
+	    ,sizeof(MainForm->mail_startup.default_user)-1
+        ,DefaultUserEdit->Text.c_str());
     sprintf(MainForm->mail_startup.dns_server,"%.*s"
 	    ,sizeof(MainForm->mail_startup.dns_server)-1
         ,DNSServerEdit->Text.c_str());
diff --git a/src/sbbs3/ctrl/MailCfgDlgUnit.dfm b/src/sbbs3/ctrl/MailCfgDlgUnit.dfm
index 237def854c..4a2f990282 100644
--- a/src/sbbs3/ctrl/MailCfgDlgUnit.dfm
+++ b/src/sbbs3/ctrl/MailCfgDlgUnit.dfm
@@ -1,6 +1,6 @@
 object MailCfgDlg: TMailCfgDlg
-  Left = 501
-  Top = 303
+  Left = 635
+  Top = 312
   BorderStyle = bsDialog
   Caption = 'Mail Server Configuration'
   ClientHeight = 303
@@ -164,22 +164,30 @@ object MailCfgDlg: TMailCfgDlg
       ImageIndex = 1
       object SpamFilterLabel: TLabel
         Left = 9
-        Top = 44
+        Top = 76
         Width = 75
-        Height = 16
+        Height = 24
         Caption = 'Spam Filters'
       end
       object TelnetPortLabel: TLabel
         Left = 9
         Top = 12
         Width = 104
-        Height = 26
+        Height = 24
         AutoSize = False
         Caption = 'Listening Port'
       end
+      object DefaultUserLabel: TLabel
+        Left = 9
+        Top = 44
+        Width = 104
+        Height = 24
+        AutoSize = False
+        Caption = 'Default User'
+      end
       object RBLCheckBox: TCheckBox
         Left = 113
-        Top = 44
+        Top = 76
         Width = 57
         Height = 24
         Hint = 'Use Realtime Blackhole List (RBL) Spam Filter'
@@ -190,7 +198,7 @@ object MailCfgDlg: TMailCfgDlg
       end
       object RSSCheckBox: TCheckBox
         Left = 185
-        Top = 44
+        Top = 76
         Width = 56
         Height = 24
         Hint = 'Use Relay Spam Stopper (RSS) Spam Filter'
@@ -201,7 +209,7 @@ object MailCfgDlg: TMailCfgDlg
       end
       object DULCheckBox: TCheckBox
         Left = 256
-        Top = 44
+        Top = 76
         Width = 57
         Height = 24
         Hint = 'Use Dail-up User List (DUL) Spam Filter'
@@ -235,7 +243,7 @@ object MailCfgDlg: TMailCfgDlg
       end
       object DebugHeadersCheckBox: TCheckBox
         Left = 185
-        Top = 76
+        Top = 108
         Width = 146
         Height = 26
         Hint = 'Log all received mail headers (for debugging)'
@@ -244,6 +252,18 @@ object MailCfgDlg: TMailCfgDlg
         ShowHint = True
         TabOrder = 5
       end
+      object DefaultUserEdit: TEdit
+        Left = 113
+        Top = 44
+        Width = 185
+        Height = 24
+        Hint = 
+          'Mail for unknown users will go into this user'#39's mailbox (e.g. "s' +
+          'ysop")'
+        ParentShowHint = False
+        ShowHint = True
+        TabOrder = 6
+      end
     end
     object POP3TabSheet: TTabSheet
       Caption = 'POP3'
@@ -252,7 +272,7 @@ object MailCfgDlg: TMailCfgDlg
         Left = 9
         Top = 12
         Width = 102
-        Height = 26
+        Height = 24
         AutoSize = False
         Caption = 'Listening Port'
       end
diff --git a/src/sbbs3/ctrl/MailCfgDlgUnit.h b/src/sbbs3/ctrl/MailCfgDlgUnit.h
index 43dfef9b89..b340990c19 100644
--- a/src/sbbs3/ctrl/MailCfgDlgUnit.h
+++ b/src/sbbs3/ctrl/MailCfgDlgUnit.h
@@ -106,6 +106,8 @@ __published:
     TEdit *OutboundSoundEdit;
     TButton *OutboundSoundButton;
     TCheckBox *SendMailCheckBox;
+    TLabel *DefaultUserLabel;
+    TEdit *DefaultUserEdit;
     void __fastcall InboundSoundButtonClick(TObject *Sender);
     void __fastcall OutboundSoundButtonClick(TObject *Sender);
     void __fastcall FormShow(TObject *Sender);
-- 
GitLab