--- sbbs/sbbs3/ctrl/mailcfgdlgunit.dfm 2018/04/24 16:39:34 1.1.1.1 +++ sbbs/sbbs3/ctrl/mailcfgdlgunit.dfm 2018/04/24 16:40:47 1.1.1.2 @@ -1,6 +1,6 @@ object MailCfgDlg: TMailCfgDlg - Left = 403 - Top = 140 + Left = 501 + Top = 339 BorderStyle = bsDialog Caption = 'Mail Server Configuration' ClientHeight = 303 @@ -10,6 +10,9 @@ object MailCfgDlg: TMailCfgDlg OldCreateOrder = True Position = poScreenCenter OnShow = FormShow + DesignSize = ( + 352 + 303) PixelsPerInch = 120 TextHeight = 16 object OKBtn: TButton @@ -50,7 +53,8 @@ object MailCfgDlg: TMailCfgDlg Top = 4 Width = 342 Height = 245 - ActivePage = SendMailTabSheet + ActivePage = RelayTabSheet + TabIndex = 4 TabOrder = 3 object GeneralTabSheet: TTabSheet Caption = 'General' @@ -80,6 +84,14 @@ object MailCfgDlg: TMailCfgDlg AutoSize = False Caption = 'Max Inactivity' end + object LinesPerYieldLabel: TLabel + Left = 9 + Top = 140 + Width = 104 + Height = 24 + AutoSize = False + Caption = 'Lines Per Yield' + end object AutoStartCheckBox: TCheckBox Left = 9 Top = 12 @@ -101,7 +113,7 @@ object MailCfgDlg: TMailCfgDlg ' ' ParentShowHint = False ShowHint = True - TabOrder = 1 + TabOrder = 2 end object MaxClientsEdit: TEdit Left = 113 @@ -111,7 +123,7 @@ object MailCfgDlg: TMailCfgDlg Hint = 'Maximum number of simultaneous clients (default=10)' ParentShowHint = False ShowHint = True - TabOrder = 2 + TabOrder = 3 end object MaxInactivityEdit: TEdit Left = 113 @@ -123,7 +135,7 @@ object MailCfgDlg: TMailCfgDlg 'lt=120)' ParentShowHint = False ShowHint = True - TabOrder = 3 + TabOrder = 4 end object HostnameCheckBox: TCheckBox Left = 185 @@ -134,115 +146,177 @@ object MailCfgDlg: TMailCfgDlg Caption = 'Hostname Lookup' ParentShowHint = False ShowHint = True - TabOrder = 4 + TabOrder = 1 end object DebugTXCheckBox: TCheckBox Left = 185 Top = 76 Width = 146 - Height = 26 + Height = 24 Hint = 'Log all transmitted mail commands and responses (for debugging)' - Caption = 'Log TX' + Caption = 'Log Transmissions' ParentShowHint = False ShowHint = True - TabOrder = 5 + TabOrder = 6 end object LogFileCheckBox: TCheckBox Left = 185 - Top = 108 + Top = 140 Width = 146 - Height = 26 + Height = 24 Hint = 'Save log entries to a file (in your DATA directory)' Caption = 'Log to Disk' ParentShowHint = False ShowHint = True - TabOrder = 6 + TabOrder = 7 + end + object LinesPerYieldEdit: TEdit + Left = 113 + Top = 140 + Width = 48 + Height = 24 + Hint = + 'Number of lines of message text sent/received between time-slice' + + ' yields' + ParentShowHint = False + ShowHint = True + TabOrder = 5 + end + object DebugRXCheckBox: TCheckBox + Left = 185 + Top = 108 + Width = 146 + Height = 24 + Hint = 'Log all transmitted mail commands and responses (for debugging)' + Caption = 'Log Responses' + ParentShowHint = False + ShowHint = True + TabOrder = 8 end end object SMTPTabSheet: TTabSheet Caption = 'SMTP' ImageIndex = 1 - object SpamFilterLabel: TLabel - Left = 9 - Top = 44 - Width = 75 - Height = 16 - Caption = 'Spam Filters' - end object TelnetPortLabel: TLabel Left = 9 Top = 12 Width = 104 - Height = 26 + Height = 24 AutoSize = False Caption = 'Listening Port' end - object RBLCheckBox: TCheckBox - Left = 113 + object DefaultUserLabel: TLabel + Left = 9 + Top = 108 + Width = 104 + Height = 24 + AutoSize = False + Caption = 'Default User' + end + object MaxRecipientsLabel: TLabel + Left = 9 Top = 44 - Width = 57 + Width = 104 Height = 24 - Hint = 'Use Realtime Blackhole List (RBL) Spam Filter' - Caption = 'RBL' + AutoSize = False + Caption = 'Max Recipients' + end + object MaxMsgSizeLabel: TLabel + Left = 9 + Top = 76 + Width = 104 + Height = 24 + AutoSize = False + Caption = 'Max Msg Size' + end + object SMTPPortEdit: TEdit + Left = 113 + Top = 12 + Width = 48 + Height = 24 + Hint = 'TCP port number for incoming SMTP connections (default=25)' ParentShowHint = False ShowHint = True TabOrder = 0 end - object RSSCheckBox: TCheckBox + object DebugHeadersCheckBox: TCheckBox Left = 185 - Top = 44 - Width = 56 + Top = 12 + Width = 146 Height = 24 - Hint = 'Use Relay Spam Stopper (RSS) Spam Filter' - Caption = 'RSS' + Hint = 'Log all received mail headers (for debugging)' + Caption = 'Log Headers' ParentShowHint = False ShowHint = True TabOrder = 1 end - object DULCheckBox: TCheckBox - Left = 256 - Top = 44 - Width = 57 + object DefaultUserEdit: TEdit + Left = 113 + Top = 108 + Width = 185 Height = 24 - Hint = 'Use Dail-up User List (DUL) Spam Filter' - Caption = 'DUL' + Hint = + 'Mail for unknown users will go into this user'#39's mailbox (e.g. "s' + + 'ysop")' ParentShowHint = False ShowHint = True - TabOrder = 2 + TabOrder = 3 end - object SMTPPortEdit: TEdit + object AllowRelayCheckBox: TCheckBox + Left = 9 + Top = 143 + Width = 288 + Height = 23 + Hint = 'Allow authenticated users to relay mail through this server' + Caption = 'Allow Authenticated Users to Relay Mail' + ParentShowHint = False + ShowHint = True + TabOrder = 4 + OnClick = AllowRelayCheckBoxClick + end + object MaxRecipientsEdit: TEdit Left = 113 - Top = 12 + Top = 44 Width = 48 Height = 24 - Hint = 'TCP port number for incoming SMTP connections (default=25)' + Hint = 'Maximum number of recipients for a single message' ParentShowHint = False ShowHint = True - TabOrder = 3 + TabOrder = 2 end - object UserNumberCheckBox: TCheckBox - Left = 185 - Top = 12 - Width = 147 + object MaxMsgSizeEdit: TEdit + Left = 113 + Top = 76 + Width = 80 Height = 24 + Hint = 'Maximum received message size (in bytes)' + ParentShowHint = False + ShowHint = True + TabOrder = 5 + end + object AuthViaIpCheckBox: TCheckBox + Left = 9 + Top = 175 + Width = 288 + Height = 23 Hint = - 'Allow mail to be received for users by number (i.e "1@yourbbs.co' + - 'm")' - Caption = 'RX by User Number' + 'Allow SMTP authentication via other protocols (e.g. POP3, Telnet' + + ', etc) for relay' + Caption = 'Allow Authentication via POP3, Telnet, etc.' ParentShowHint = False ShowHint = True - TabOrder = 4 + TabOrder = 6 end - object DebugHeadersCheckBox: TCheckBox + object NotifyCheckBox: TCheckBox Left = 185 - Top = 76 + Top = 44 Width = 146 - Height = 26 - Hint = 'Log all received mail headers (for debugging)' - Caption = 'Log Headers' + Height = 24 + Hint = 'Notify local mail recipients of received e-mails' + Caption = 'Notify Recipients' ParentShowHint = False ShowHint = True - TabOrder = 5 + TabOrder = 7 end end object POP3TabSheet: TTabSheet @@ -252,7 +326,7 @@ object MailCfgDlg: TMailCfgDlg Left = 9 Top = 12 Width = 102 - Height = 26 + Height = 24 AutoSize = False Caption = 'Listening Port' end @@ -293,15 +367,6 @@ object MailCfgDlg: TMailCfgDlg object SendMailTabSheet: TTabSheet Caption = 'SendMail' ImageIndex = 3 - object RelayPortLabel: TLabel - Left = 197 - Top = 172 - Width = 39 - Height = 26 - Alignment = taRightJustify - AutoSize = False - Caption = 'Port' - end object DeliveryAttemptsLabel: TLabel Left = 9 Top = 44 @@ -320,77 +385,62 @@ object MailCfgDlg: TMailCfgDlg AutoSize = False Caption = 'Frequency' end + object DNSServerLabel: TLabel + Left = 9 + Top = 152 + Width = 72 + Height = 16 + Caption = 'DNS Server' + end object DNSRadioButton: TRadioButton Left = 9 - Top = 76 - Width = 104 + Top = 116 + Width = 184 Height = 26 Hint = 'Send mail directly to addressed mail server (requires DNS server' + ' access)' - Caption = 'DNS Server' + Caption = 'Direct Mail Delivery' Checked = True ParentShowHint = False ShowHint = True - TabOrder = 0 + TabOrder = 3 TabStop = True OnClick = DNSRadioButtonClick end object DNSServerEdit: TEdit Left = 113 - Top = 76 + Top = 148 Width = 185 Height = 24 Hint = 'Host name or IP address of your ISP'#39's DNS server' ParentShowHint = False ShowHint = True - TabOrder = 1 + TabOrder = 4 end object TcpDnsCheckBox: TCheckBox Left = 250 - Top = 108 + Top = 180 Width = 65 - Height = 26 + Height = 24 Hint = 'Use TCP packets (instead of UDP) for DNS queries' Caption = 'TCP' ParentShowHint = False ShowHint = True - TabOrder = 2 + TabOrder = 5 end object RelayRadioButton: TRadioButton Left = 9 - Top = 140 - Width = 104 + Top = 84 + Width = 192 Height = 26 Hint = 'Route all mail through an SMTP relay server' - Caption = 'Relay Server' + Caption = 'Use Relay Server' ParentShowHint = False ShowHint = True - TabOrder = 3 + TabOrder = 6 OnClick = DNSRadioButtonClick end - object RelayServerEdit: TEdit - Left = 113 - Top = 140 - Width = 185 - Height = 24 - Hint = - 'Host name or IP address of external SMTP server (for relaying ma' + - 'il)' - ParentShowHint = False - ShowHint = True - TabOrder = 4 - end - object RelayPortEdit: TEdit - Left = 250 - Top = 172 - Width = 48 - Height = 24 - Hint = 'TCP port number for the SMTP relay server (default=25)' - ParentShowHint = False - ShowHint = True - TabOrder = 5 - end object DeliveryAttemptsEdit: TEdit Left = 113 Top = 44 @@ -399,7 +449,7 @@ object MailCfgDlg: TMailCfgDlg Hint = 'Maximum number of delivery attempts' ParentShowHint = False ShowHint = True - TabOrder = 6 + TabOrder = 1 end object RescanFreqEdit: TEdit Left = 250 @@ -409,7 +459,7 @@ object MailCfgDlg: TMailCfgDlg Hint = 'Seconds between message base rescans' ParentShowHint = False ShowHint = True - TabOrder = 7 + TabOrder = 2 end object SendMailCheckBox: TCheckBox Left = 9 @@ -420,10 +470,135 @@ object MailCfgDlg: TMailCfgDlg Caption = 'Enabled' ParentShowHint = False ShowHint = True - TabOrder = 8 + TabOrder = 0 OnClick = SendMailCheckBoxClick end end + object RelayTabSheet: TTabSheet + Caption = 'Relay' + ImageIndex = 6 + object RelayPortLabel: TLabel + Left = 240 + Top = 12 + Width = 33 + Height = 26 + Alignment = taRightJustify + AutoSize = False + Caption = 'Port' + end + object RelayServerLabel: TLabel + Left = 9 + Top = 12 + Width = 40 + Height = 16 + Caption = 'Server' + end + object RelayServerEdit: TEdit + Left = 65 + Top = 12 + Width = 168 + Height = 24 + Hint = + 'Host name or IP address of external SMTP server (for relaying ma' + + 'il)' + ParentShowHint = False + ShowHint = True + TabOrder = 0 + end + object RelayPortEdit: TEdit + Left = 282 + Top = 12 + Width = 39 + Height = 24 + Hint = 'TCP port number for the SMTP relay server (default=25)' + ParentShowHint = False + ShowHint = True + TabOrder = 1 + end + object RelayAuthGroupBox: TGroupBox + Left = 9 + Top = 41 + Width = 320 + Height = 160 + Caption = 'Authentication:' + TabOrder = 2 + object RelayAuthNameLabel: TLabel + Left = 16 + Top = 92 + Width = 80 + Height = 26 + AutoSize = False + Caption = 'Name' + end + object RelayAuthPassLabel: TLabel + Left = 16 + Top = 121 + Width = 80 + Height = 25 + AutoSize = False + Caption = 'Password' + end + object RelayAuthNoneRadioButton: TRadioButton + Left = 16 + Top = 28 + Width = 113 + Height = 24 + Caption = 'None' + Checked = True + TabOrder = 0 + TabStop = True + OnClick = RelayAuthRadioButtonClick + end + object RelayAuthPlainRadioButton: TRadioButton + Left = 169 + Top = 28 + Width = 113 + Height = 24 + Caption = 'Plain' + TabOrder = 1 + OnClick = RelayAuthRadioButtonClick + end + object RelayAuthLoginRadioButton: TRadioButton + Left = 169 + Top = 57 + Width = 113 + Height = 24 + Caption = 'Login' + TabOrder = 2 + OnClick = RelayAuthRadioButtonClick + end + object RelayAuthCramMD5RadioButton: TRadioButton + Left = 16 + Top = 57 + Width = 113 + Height = 24 + Caption = 'CRAM-MD5' + TabOrder = 3 + OnClick = RelayAuthRadioButtonClick + end + object RelayAuthNameEdit: TEdit + Left = 105 + Top = 92 + Width = 185 + Height = 24 + Hint = 'User name to authenticate as' + ParentShowHint = False + ShowHint = True + TabOrder = 4 + end + object RelayAuthPassEdit: TEdit + Left = 105 + Top = 121 + Width = 185 + Height = 24 + Hint = 'Password for authentication' + ParentShowHint = False + PasswordChar = '*' + ShowHint = True + TabOrder = 5 + end + end + end object SoundTabSheet: TTabSheet Caption = 'Sound' ImageIndex = 4 @@ -478,7 +653,7 @@ object MailCfgDlg: TMailCfgDlg Hint = 'Sound file to play when accepting POP3 connections' ParentShowHint = False ShowHint = True - TabOrder = 2 + TabOrder = 4 end object POP3SoundButton: TButton Left = 304 @@ -486,7 +661,7 @@ object MailCfgDlg: TMailCfgDlg Width = 25 Height = 26 Caption = '...' - TabOrder = 3 + TabOrder = 5 OnClick = POP3SoundButtonClick end object OutboundSoundEdit: TEdit @@ -497,7 +672,7 @@ object MailCfgDlg: TMailCfgDlg Hint = 'Sound file to play when sending mail' ParentShowHint = False ShowHint = True - TabOrder = 4 + TabOrder = 2 end object OutboundSoundButton: TButton Left = 304 @@ -505,10 +680,144 @@ object MailCfgDlg: TMailCfgDlg Width = 25 Height = 26 Caption = '...' - TabOrder = 5 + TabOrder = 3 OnClick = OutboundSoundButtonClick end end + object DNSBLTabSheet: TTabSheet + Caption = 'DNSBL' + ImageIndex = 5 + ParentShowHint = False + ShowHint = True + object Label1: TLabel + Left = 128 + Top = 105 + Width = 41 + Height = 16 + Caption = 'Label1' + end + object DNSBLServersButton: TButton + Left = 9 + Top = 9 + Width = 112 + Height = 25 + Hint = 'DNS-based Blacklists' + Caption = 'Blacklists' + TabOrder = 0 + OnClick = DNSBLServersButtonClick + end + object DNSBLGroupBox: TGroupBox + Left = 9 + Top = 41 + Width = 320 + Height = 160 + Caption = 'Mail from Blacklisted Servers:' + ParentShowHint = False + ShowHint = True + TabOrder = 1 + object BLSubjectLabel: TLabel + Left = 16 + Top = 92 + Width = 80 + Height = 26 + AutoSize = False + Caption = 'Subject' + end + object BLHeaderLabel: TLabel + Left = 16 + Top = 121 + Width = 80 + Height = 25 + AutoSize = False + Caption = 'Header' + end + object BLRefuseRadioButton: TRadioButton + Left = 16 + Top = 28 + Width = 153 + Height = 24 + Hint = 'Refuse mail session with blacklisted servers' + Caption = 'Refuse Session' + ParentShowHint = False + ShowHint = True + TabOrder = 0 + OnClick = DNSBLRadioButtonClick + end + object BLIgnoreRadioButton: TRadioButton + Left = 16 + Top = 57 + Width = 161 + Height = 24 + Hint = 'Pretend to receive blacklisted mail' + Caption = 'Silently Ignore' + ParentShowHint = False + ShowHint = True + TabOrder = 2 + OnClick = DNSBLRadioButtonClick + end + object BLBadUserRadioButton: TRadioButton + Left = 169 + Top = 28 + Width = 128 + Height = 24 + Hint = 'Refuse mail address from blacklisted servers' + Caption = 'Refuse Mail' + TabOrder = 1 + OnClick = DNSBLRadioButtonClick + end + object BLTagRadioButton: TRadioButton + Left = 169 + Top = 57 + Width = 96 + Height = 24 + Hint = 'Tag blacklisted mail with header and/or subject' + Caption = 'Tag with:' + ParentShowHint = False + ShowHint = True + TabOrder = 3 + OnClick = DNSBLRadioButtonClick + end + object BLSubjectEdit: TEdit + Left = 105 + Top = 92 + Width = 185 + Height = 24 + Hint = 'Flag to add to subject of DNS-blacklisted mail' + ParentShowHint = False + ShowHint = True + TabOrder = 4 + end + object BLHeaderEdit: TEdit + Left = 105 + Top = 121 + Width = 185 + Height = 24 + Hint = 'Flag to add to subject of DNS-blacklisted mail' + ParentShowHint = False + ShowHint = True + TabOrder = 5 + end + end + object DNSBLExemptionsButton: TButton + Left = 128 + Top = 9 + Width = 113 + Height = 25 + Hint = 'Blacklist Exempted IP addresses' + Caption = 'Exempt IPs' + TabOrder = 2 + OnClick = DNSBLExemptionsButtonClick + end + object BLDebugCheckBox: TCheckBox + Left = 256 + Top = 9 + Width = 73 + Height = 25 + Hint = 'Enable debug logging of DNSBL lookups' + Caption = 'Debug' + TabOrder = 3 + end + end end object OpenDialog: TOpenDialog Filter = 'Wave Files|*.wav'