diff --git a/src/sbbs3/ctrl/MailCfgDlgUnit.cpp b/src/sbbs3/ctrl/MailCfgDlgUnit.cpp
index c67ad6ce84ef8f0bf57993d6fd697d94b8f32cc2..9c7ff2b8620bfe7f50f258092e39dc718edd5346 100644
--- a/src/sbbs3/ctrl/MailCfgDlgUnit.cpp
+++ b/src/sbbs3/ctrl/MailCfgDlgUnit.cpp
@@ -105,6 +105,8 @@ void __fastcall TMailCfgDlg::FormShow(TObject *Sender)
         =AnsiString(MainForm->mail_startup.max_delivery_attempts);
     RescanFreqEdit->Text=AnsiString(MainForm->mail_startup.rescan_frequency);
     DefaultUserEdit->Text=AnsiString(MainForm->mail_startup.default_user);
+    BLMailFlagEdit->Text=AnsiString(MainForm->mail_startup.dnsbl_flag);
+    BLMailFlagEdit->Enabled=false;
 
     DebugTXCheckBox->Checked=MainForm->mail_startup.options
         &MAIL_OPT_DEBUG_TX;
@@ -120,12 +122,14 @@ void __fastcall TMailCfgDlg::FormShow(TObject *Sender)
     	&MAIL_OPT_ALLOW_RX_BY_NUMBER;
     AllowRelayCheckBox->Checked=MainForm->mail_startup.options
     	&MAIL_OPT_ALLOW_RELAY;
-    RBLCheckBox->Checked=MainForm->mail_startup.options
-    	&MAIL_OPT_USE_RBL;
-    DULCheckBox->Checked=MainForm->mail_startup.options
-    	&MAIL_OPT_USE_DUL;
-    RSSCheckBox->Checked=MainForm->mail_startup.options
-    	&MAIL_OPT_USE_RSS;
+    if(MainForm->mail_startup.options&MAIL_OPT_DNSBL_REFUSE)
+	    BLMailRefuseRadioButton->Checked=true;
+    else if(MainForm->mail_startup.options&MAIL_OPT_DNSBL_IGNORE)
+	    BLMailIgnoreRadioButton->Checked=true;
+	else {
+	    BLMailFlagRadioButton->Checked=true;
+	    BLMailFlagEdit->Enabled=true;
+    }        
     TcpDnsCheckBox->Checked=MainForm->mail_startup.options
     	&MAIL_OPT_USE_TCP_DNS;
     SendMailCheckBox->Checked=
@@ -182,6 +186,8 @@ void __fastcall TMailCfgDlg::OKBtnClick(TObject *Sender)
         ,OutboundSoundEdit->Text.c_str());
     SAFECOPY(MainForm->mail_startup.pop3_sound
         ,POP3SoundEdit->Text.c_str());
+    SAFECOPY(MainForm->mail_startup.dnsbl_flag
+    	,BLMailFlagEdit->Text.c_str());
 
 	if(RelayRadioButton->Checked==true)
     	MainForm->mail_startup.options|=MAIL_OPT_RELAY_TX;
@@ -211,18 +217,12 @@ void __fastcall TMailCfgDlg::OKBtnClick(TObject *Sender)
     	MainForm->mail_startup.options|=MAIL_OPT_ALLOW_RELAY;
     else
 	    MainForm->mail_startup.options&=~MAIL_OPT_ALLOW_RELAY;
-	if(RBLCheckBox->Checked==true)
-    	MainForm->mail_startup.options|=MAIL_OPT_USE_RBL;
-    else
-	    MainForm->mail_startup.options&=~MAIL_OPT_USE_RBL;
-	if(DULCheckBox->Checked==true)
-    	MainForm->mail_startup.options|=MAIL_OPT_USE_DUL;
-    else
-	    MainForm->mail_startup.options&=~MAIL_OPT_USE_DUL;
-	if(RSSCheckBox->Checked==true)
-    	MainForm->mail_startup.options|=MAIL_OPT_USE_RSS;
-    else
-	    MainForm->mail_startup.options&=~MAIL_OPT_USE_RSS;
+	MainForm->mail_startup.options&=
+    	~(MAIL_OPT_DNSBL_IGNORE|MAIL_OPT_DNSBL_REFUSE);
+	if(BLMailIgnoreRadioButton->Checked==true)
+    	MainForm->mail_startup.options|=MAIL_OPT_DNSBL_IGNORE;
+    else if(BLMailRefuseRadioButton->Checked==true)
+    	MainForm->mail_startup.options|=MAIL_OPT_DNSBL_REFUSE;
 	if(HostnameCheckBox->Checked==false)
     	MainForm->mail_startup.options|=MAIL_OPT_NO_HOST_LOOKUP;
     else
@@ -300,3 +300,10 @@ void __fastcall TMailCfgDlg::SendMailCheckBoxClick(TObject *Sender)
 }
 //---------------------------------------------------------------------------
 
+
+void __fastcall TMailCfgDlg::BLMailFlagRadioButtonClick(TObject *Sender)
+{
+   	BLMailFlagEdit->Enabled=BLMailFlagRadioButton->Checked;
+}
+//---------------------------------------------------------------------------
+
diff --git a/src/sbbs3/ctrl/MailCfgDlgUnit.dfm b/src/sbbs3/ctrl/MailCfgDlgUnit.dfm
index 607a6e9c1d1dcc6c3007f03b24f849c5d45f83ab..8403966a51b4154fb1d25bf4dbbf7ed3bc071b4e 100644
--- a/src/sbbs3/ctrl/MailCfgDlgUnit.dfm
+++ b/src/sbbs3/ctrl/MailCfgDlgUnit.dfm
@@ -166,12 +166,13 @@ object MailCfgDlg: TMailCfgDlg
     object SMTPTabSheet: TTabSheet
       Caption = 'SMTP'
       ImageIndex = 1
-      object SpamFilterLabel: TLabel
+      object BlacklistedMailLabel: TLabel
         Left = 9
         Top = 76
-        Width = 75
-        Height = 16
-        Caption = 'Spam Filters'
+        Width = 104
+        Height = 24
+        AutoSize = False
+        Caption = 'Blacklisted Mail'
       end
       object TelnetPortLabel: TLabel
         Left = 9
@@ -189,39 +190,6 @@ object MailCfgDlg: TMailCfgDlg
         AutoSize = False
         Caption = 'Default User'
       end
-      object RBLCheckBox: TCheckBox
-        Left = 113
-        Top = 76
-        Width = 57
-        Height = 24
-        Hint = 'Use Realtime Blackhole List (RBL) Spam Filter'
-        Caption = 'RBL'
-        ParentShowHint = False
-        ShowHint = True
-        TabOrder = 3
-      end
-      object RSSCheckBox: TCheckBox
-        Left = 185
-        Top = 76
-        Width = 56
-        Height = 24
-        Hint = 'Use Relay Spam Stopper (RSS) Spam Filter'
-        Caption = 'RSS'
-        ParentShowHint = False
-        ShowHint = True
-        TabOrder = 4
-      end
-      object DULCheckBox: TCheckBox
-        Left = 256
-        Top = 76
-        Width = 57
-        Height = 24
-        Hint = 'Use Dail-up User List (DUL) Spam Filter'
-        Caption = 'DUL'
-        ParentShowHint = False
-        ShowHint = True
-        TabOrder = 5
-      end
       object SMTPPortEdit: TEdit
         Left = 113
         Top = 12
@@ -233,14 +201,14 @@ object MailCfgDlg: TMailCfgDlg
         TabOrder = 0
       end
       object UserNumberCheckBox: TCheckBox
-        Left = 113
-        Top = 108
-        Width = 200
+        Left = 9
+        Top = 130
+        Width = 288
         Height = 24
         Hint = 
-          'Allow mail to be received for users by number (i.e "1@yourbbs.co' +
-          'm")'
-        Caption = 'Allow RX by User Number'
+          'Allow mail to be received for users by number (e.g. "1@yourbbs.c' +
+          'om")'
+        Caption = 'Allow Mail Addressed by User Number'
         ParentShowHint = False
         ShowHint = True
         TabOrder = 1
@@ -254,7 +222,7 @@ object MailCfgDlg: TMailCfgDlg
         Caption = 'Log Headers'
         ParentShowHint = False
         ShowHint = True
-        TabOrder = 6
+        TabOrder = 3
       end
       object DefaultUserEdit: TEdit
         Left = 113
@@ -269,15 +237,61 @@ object MailCfgDlg: TMailCfgDlg
         TabOrder = 2
       end
       object AllowRelayCheckBox: TCheckBox
-        Left = 113
-        Top = 140
-        Width = 198
+        Left = 9
+        Top = 162
+        Width = 288
         Height = 24
         Hint = 'Allow mail to be relayed for authenticated users'
-        Caption = 'Allow Authenticated Relay'
+        Caption = 'Allow Authenticated Users to Relay Mail'
+        ParentShowHint = False
+        ShowHint = True
+        TabOrder = 4
+      end
+      object BLMailFlagRadioButton: TRadioButton
+        Left = 112
+        Top = 76
+        Width = 57
+        Height = 24
+        Hint = 'Flag DNS-blacklisted mail with an X-RBL header'
+        Caption = 'Flag'
+        ParentShowHint = False
+        ShowHint = True
+        TabOrder = 5
+        OnClick = BLMailFlagRadioButtonClick
+      end
+      object BLMailIgnoreRadioButton: TRadioButton
+        Left = 176
+        Top = 76
+        Width = 57
+        Height = 24
+        Hint = 'Pretend to receive DNS-blacklisted mail '
+        Caption = 'Ignore'
+        ParentShowHint = False
+        ShowHint = True
+        TabOrder = 6
+        OnClick = BLMailFlagRadioButtonClick
+      end
+      object BLMailRefuseRadioButton: TRadioButton
+        Left = 248
+        Top = 76
+        Width = 73
+        Height = 24
+        Hint = 'Refuse mail session with DNS-blacklisted servers'
+        Caption = 'Refuse'
         ParentShowHint = False
         ShowHint = True
         TabOrder = 7
+        OnClick = BLMailFlagRadioButtonClick
+      end
+      object BLMailFlagEdit: TEdit
+        Left = 113
+        Top = 100
+        Width = 185
+        Height = 24
+        Hint = 'Flag to add to subject of DNS-blacklisted mail'
+        ParentShowHint = False
+        ShowHint = True
+        TabOrder = 8
       end
     end
     object POP3TabSheet: TTabSheet
diff --git a/src/sbbs3/ctrl/MailCfgDlgUnit.h b/src/sbbs3/ctrl/MailCfgDlgUnit.h
index 633f977a2de38edcd52e90db20bfa2f58b339bcb..243c62d09b00f3e8ed35439209132ec5f48f9b13 100644
--- a/src/sbbs3/ctrl/MailCfgDlgUnit.h
+++ b/src/sbbs3/ctrl/MailCfgDlgUnit.h
@@ -67,10 +67,7 @@ __published:
     TLabel *MaxInactivityLabel;
     TEdit *MaxInactivityEdit;
     TTabSheet *SMTPTabSheet;
-    TLabel *SpamFilterLabel;
-    TCheckBox *RBLCheckBox;
-    TCheckBox *RSSCheckBox;
-    TCheckBox *DULCheckBox;
+	TLabel *BlacklistedMailLabel;
     TLabel *TelnetPortLabel;
     TEdit *SMTPPortEdit;
     TCheckBox *UserNumberCheckBox;
@@ -109,6 +106,10 @@ __published:
     TLabel *DefaultUserLabel;
     TEdit *DefaultUserEdit;
 	TCheckBox *AllowRelayCheckBox;
+	TRadioButton *BLMailFlagRadioButton;
+	TRadioButton *BLMailIgnoreRadioButton;
+	TRadioButton *BLMailRefuseRadioButton;
+	TEdit *BLMailFlagEdit;
     void __fastcall InboundSoundButtonClick(TObject *Sender);
     void __fastcall OutboundSoundButtonClick(TObject *Sender);
     void __fastcall FormShow(TObject *Sender);
@@ -117,6 +118,7 @@ __published:
 	void __fastcall DNSRadioButtonClick(TObject *Sender);
 	void __fastcall POP3EnabledCheckBoxClick(TObject *Sender);
     void __fastcall SendMailCheckBoxClick(TObject *Sender);
+	void __fastcall BLMailFlagRadioButtonClick(TObject *Sender);
 private:
 public:
 	virtual __fastcall TMailCfgDlg(TComponent* AOwner);