|
|
1.1 ! root 1: object FtpCfgDlg: TFtpCfgDlg ! 2: Left = 779 ! 3: Top = 375 ! 4: BorderStyle = bsDialog ! 5: Caption = 'FTP Server Configuration' ! 6: ClientHeight = 245 ! 7: ClientWidth = 286 ! 8: Color = clBtnFace ! 9: ParentFont = True ! 10: OldCreateOrder = True ! 11: Position = poScreenCenter ! 12: OnShow = FormShow ! 13: DesignSize = ( ! 14: 286 ! 15: 245) ! 16: PixelsPerInch = 96 ! 17: TextHeight = 13 ! 18: object PageControl: TPageControl ! 19: Left = 3 ! 20: Top = 3 ! 21: Width = 278 ! 22: Height = 199 ! 23: ActivePage = PasvTabSheet ! 24: TabIndex = 1 ! 25: TabOrder = 0 ! 26: object GeneralTabSheet: TTabSheet ! 27: Caption = 'General' ! 28: object MaxClientesLabel: TLabel ! 29: Left = 7 ! 30: Top = 86 ! 31: Width = 78 ! 32: Height = 20 ! 33: AutoSize = False ! 34: Caption = 'Max Clients' ! 35: end ! 36: object MaxInactivityLabel: TLabel ! 37: Left = 7 ! 38: Top = 112 ! 39: Width = 78 ! 40: Height = 20 ! 41: AutoSize = False ! 42: Caption = 'Max Inactivity' ! 43: end ! 44: object PortLabel: TLabel ! 45: Left = 7 ! 46: Top = 60 ! 47: Width = 78 ! 48: Height = 20 ! 49: AutoSize = False ! 50: Caption = 'Control Port' ! 51: end ! 52: object InterfaceLabel: TLabel ! 53: Left = 7 ! 54: Top = 34 ! 55: Width = 78 ! 56: Height = 20 ! 57: AutoSize = False ! 58: Caption = 'Interface (IP)' ! 59: end ! 60: object QwkTimeoutLabel: TLabel ! 61: Left = 7 ! 62: Top = 138 ! 63: Width = 78 ! 64: Height = 20 ! 65: AutoSize = False ! 66: Caption = 'QWK Timeout' ! 67: end ! 68: object AutoStartCheckBox: TCheckBox ! 69: Left = 7 ! 70: Top = 10 ! 71: Width = 117 ! 72: Height = 20 ! 73: Hint = 'Automatically start FTP server' ! 74: Caption = 'Auto Startup' ! 75: ParentShowHint = False ! 76: ShowHint = True ! 77: TabOrder = 0 ! 78: end ! 79: object MaxClientsEdit: TEdit ! 80: Left = 85 ! 81: Top = 86 ! 82: Width = 39 ! 83: Height = 21 ! 84: Hint = 'Maximum number of simultaneous clients (default=10)' ! 85: ParentShowHint = False ! 86: ShowHint = True ! 87: TabOrder = 4 ! 88: end ! 89: object MaxInactivityEdit: TEdit ! 90: Left = 85 ! 91: Top = 112 ! 92: Width = 39 ! 93: Height = 21 ! 94: Hint = ! 95: 'Maximum number of seconds of inactivity before disconnect (defau' + ! 96: 'lt=300)' ! 97: ParentShowHint = False ! 98: ShowHint = True ! 99: TabOrder = 5 ! 100: end ! 101: object PortEdit: TEdit ! 102: Left = 85 ! 103: Top = 60 ! 104: Width = 39 ! 105: Height = 21 ! 106: Hint = 'TCP port to use for FTP control connections (default=21)' ! 107: ParentShowHint = False ! 108: ShowHint = True ! 109: TabOrder = 3 ! 110: end ! 111: object NetworkInterfaceEdit: TEdit ! 112: Left = 85 ! 113: Top = 34 ! 114: Width = 156 ! 115: Height = 21 ! 116: Hint = 'Your network adapter'#39's static IP address or blank for <ANY>' ! 117: ParentShowHint = False ! 118: ShowHint = True ! 119: TabOrder = 2 ! 120: end ! 121: object AllowQWKCheckBox: TCheckBox ! 122: Left = 148 ! 123: Top = 60 ! 124: Width = 119 ! 125: Height = 20 ! 126: Hint = 'Allow QWK packet transfers' ! 127: Caption = 'QWK Packets' ! 128: ParentShowHint = False ! 129: ShowHint = True ! 130: TabOrder = 7 ! 131: end ! 132: object LocalFileSysCheckBox: TCheckBox ! 133: Left = 148 ! 134: Top = 86 ! 135: Width = 119 ! 136: Height = 20 ! 137: Hint = ! 138: 'Allow sysop access to local file system (requires sysop password' + ! 139: ')' ! 140: Caption = 'Local File System' ! 141: ParentShowHint = False ! 142: ShowHint = True ! 143: TabOrder = 8 ! 144: end ! 145: object HostnameCheckBox: TCheckBox ! 146: Left = 148 ! 147: Top = 10 ! 148: Width = 119 ! 149: Height = 20 ! 150: Hint = 'Automatically lookup client'#39's hostnames via DNS' ! 151: Caption = 'Hostname Lookup' ! 152: ParentShowHint = False ! 153: ShowHint = True ! 154: TabOrder = 1 ! 155: end ! 156: object DirFilesCheckBox: TCheckBox ! 157: Left = 148 ! 158: Top = 110 ! 159: Width = 125 ! 160: Height = 20 ! 161: Hint = 'Allow users access to files in directory, but not in database' ! 162: Caption = 'Directory File Access' ! 163: ParentShowHint = False ! 164: ShowHint = True ! 165: TabOrder = 9 ! 166: end ! 167: object QwkTimeoutEdit: TEdit ! 168: Left = 85 ! 169: Top = 138 ! 170: Width = 39 ! 171: Height = 21 ! 172: Hint = 'Maximum number of seconds before QWK packet creation timeout' ! 173: ParentShowHint = False ! 174: ShowHint = True ! 175: TabOrder = 6 ! 176: end ! 177: end ! 178: object PasvTabSheet: TTabSheet ! 179: Caption = 'Passive' ! 180: ImageIndex = 4 ! 181: object PasvIpLabel: TLabel ! 182: Left = 7 ! 183: Top = 10 ! 184: Width = 78 ! 185: Height = 20 ! 186: AutoSize = False ! 187: Caption = 'IP Address' ! 188: end ! 189: object PasvPortLabel: TLabel ! 190: Left = 7 ! 191: Top = 36 ! 192: Width = 78 ! 193: Height = 20 ! 194: AutoSize = False ! 195: Caption = 'Port Range' ! 196: end ! 197: object PasvPortThroughLabel: TLabel ! 198: Left = 124 ! 199: Top = 36 ! 200: Width = 13 ! 201: Height = 20 ! 202: Alignment = taCenter ! 203: AutoSize = False ! 204: Caption = '-' ! 205: end ! 206: object PasvIpAddrEdit: TEdit ! 207: Left = 85 ! 208: Top = 10 ! 209: Width = 92 ! 210: Height = 21 ! 211: Hint = 'Your static public IP address or blank for <unspecified>' ! 212: ParentShowHint = False ! 213: ShowHint = True ! 214: TabOrder = 0 ! 215: end ! 216: object PasvPortLowEdit: TEdit ! 217: Left = 85 ! 218: Top = 36 ! 219: Width = 39 ! 220: Height = 21 ! 221: Hint = ! 222: 'Lowest TCP port to use for passive FTP data connections (default' + ! 223: '=1024)' ! 224: ParentShowHint = False ! 225: ShowHint = True ! 226: TabOrder = 1 ! 227: end ! 228: object PasvPortHighEdit: TEdit ! 229: Left = 137 ! 230: Top = 36 ! 231: Width = 39 ! 232: Height = 21 ! 233: Hint = ! 234: 'Highest TCP port to use for passive FTP data connections (defaul' + ! 235: 't=65535)' ! 236: ParentShowHint = False ! 237: ShowHint = True ! 238: TabOrder = 2 ! 239: end ! 240: object PasvIpLookupCheckBox: TCheckBox ! 241: Left = 184 ! 242: Top = 8 ! 243: Width = 73 ! 244: Height = 17 ! 245: Hint = 'Get passive IP address from public hostname (dynamic IP)' ! 246: Caption = 'Lookup' ! 247: ParentShowHint = False ! 248: ShowHint = True ! 249: TabOrder = 3 ! 250: OnClick = PasvIpLookupCheckBoxClick ! 251: end ! 252: end ! 253: object IndexTabSheet: TTabSheet ! 254: Caption = 'Index' ! 255: ImageIndex = 3 ! 256: object HtmlJavaScriptLabel: TLabel ! 257: Left = 7 ! 258: Top = 62 ! 259: Width = 65 ! 260: Height = 20 ! 261: AutoSize = False ! 262: Caption = 'JavaScript' ! 263: end ! 264: object AutoIndexCheckBox: TCheckBox ! 265: Left = 7 ! 266: Top = 10 ! 267: Width = 78 ! 268: Height = 19 ! 269: Hint = 'Automatically generate index files for file descriptions' ! 270: Caption = 'ASCII' ! 271: ParentShowHint = False ! 272: ShowHint = True ! 273: TabOrder = 0 ! 274: OnClick = AutoIndexCheckBoxClick ! 275: end ! 276: object IndexFileNameEdit: TEdit ! 277: Left = 85 ! 278: Top = 10 ! 279: Width = 156 ! 280: Height = 21 ! 281: Hint = 'Name of ASCII index file (default=00index)' ! 282: ParentShowHint = False ! 283: ShowHint = True ! 284: TabOrder = 1 ! 285: end ! 286: object HtmlIndexCheckBox: TCheckBox ! 287: Left = 7 ! 288: Top = 36 ! 289: Width = 78 ! 290: Height = 19 ! 291: Hint = 'Automatically generate HTML index files for file descriptions' ! 292: Caption = 'HTML' ! 293: ParentShowHint = False ! 294: ShowHint = True ! 295: TabOrder = 2 ! 296: OnClick = HtmlIndexCheckBoxClick ! 297: end ! 298: object HtmlFileNameEdit: TEdit ! 299: Left = 85 ! 300: Top = 36 ! 301: Width = 156 ! 302: Height = 21 ! 303: Hint = 'Name of HTML index file (default=00index.html)' ! 304: ParentShowHint = False ! 305: ShowHint = True ! 306: TabOrder = 3 ! 307: end ! 308: object HtmlJavaScriptEdit: TEdit ! 309: Left = 85 ! 310: Top = 62 ! 311: Width = 156 ! 312: Height = 21 ! 313: Hint = 'JavaScript filename to execute to generate HTML index file' ! 314: ParentShowHint = False ! 315: ShowHint = True ! 316: TabOrder = 4 ! 317: end ! 318: end ! 319: object LogTabSheet: TTabSheet ! 320: Caption = 'Log' ! 321: ImageIndex = 1 ! 322: object DebugTxCheckBox: TCheckBox ! 323: Left = 7 ! 324: Top = 34 ! 325: Width = 156 ! 326: Height = 20 ! 327: Hint = 'Log (debug) transmitted FTP responses' ! 328: Caption = 'Transmitted Responses' ! 329: ParentShowHint = False ! 330: ShowHint = True ! 331: TabOrder = 1 ! 332: end ! 333: object CmdLogCheckBox: TCheckBox ! 334: Left = 7 ! 335: Top = 10 ! 336: Width = 156 ! 337: Height = 19 ! 338: Hint = 'Log (debug) all received FTP commands' ! 339: Caption = 'Received Commands' ! 340: ParentShowHint = False ! 341: ShowHint = True ! 342: TabOrder = 0 ! 343: end ! 344: object DebugDataCheckBox: TCheckBox ! 345: Left = 7 ! 346: Top = 59 ! 347: Width = 156 ! 348: Height = 19 ! 349: Hint = 'Log (debug) data channel operations' ! 350: Caption = 'Data Channel Activity' ! 351: ParentShowHint = False ! 352: ShowHint = True ! 353: TabOrder = 2 ! 354: end ! 355: object LogFileCheckBox: TCheckBox ! 356: Left = 7 ! 357: Top = 83 ! 358: Width = 117 ! 359: Height = 20 ! 360: Hint = 'Save log entries to a file (in your DATA directory)' ! 361: Caption = 'Log to Disk' ! 362: ParentShowHint = False ! 363: ShowHint = True ! 364: TabOrder = 3 ! 365: end ! 366: end ! 367: object SoundTabSheet: TTabSheet ! 368: Caption = 'Sound' ! 369: ImageIndex = 2 ! 370: object AnswerSoundLabel: TLabel ! 371: Left = 7 ! 372: Top = 10 ! 373: Width = 65 ! 374: Height = 20 ! 375: AutoSize = False ! 376: Caption = 'Connect' ! 377: end ! 378: object HangupSoundLabel: TLabel ! 379: Left = 7 ! 380: Top = 36 ! 381: Width = 65 ! 382: Height = 20 ! 383: AutoSize = False ! 384: Caption = 'Disconnect' ! 385: end ! 386: object HackAttemptSoundLabel: TLabel ! 387: Left = 7 ! 388: Top = 62 ! 389: Width = 65 ! 390: Height = 20 ! 391: AutoSize = False ! 392: Caption = 'Hack Attempt' ! 393: end ! 394: object AnswerSoundEdit: TEdit ! 395: Left = 85 ! 396: Top = 10 ! 397: Width = 156 ! 398: Height = 24 ! 399: Hint = 'Sound file to play when users connect' ! 400: ParentShowHint = False ! 401: ShowHint = True ! 402: TabOrder = 0 ! 403: end ! 404: object AnswerSoundButton: TButton ! 405: Left = 247 ! 406: Top = 10 ! 407: Width = 20 ! 408: Height = 21 ! 409: Caption = '...' ! 410: TabOrder = 1 ! 411: OnClick = AnswerSoundButtonClick ! 412: end ! 413: object HangupSoundEdit: TEdit ! 414: Left = 85 ! 415: Top = 36 ! 416: Width = 156 ! 417: Height = 24 ! 418: Hint = 'Sound file to play when users disconnect' ! 419: ParentShowHint = False ! 420: ShowHint = True ! 421: TabOrder = 2 ! 422: end ! 423: object HangupSoundButton: TButton ! 424: Left = 247 ! 425: Top = 36 ! 426: Width = 20 ! 427: Height = 21 ! 428: Caption = '...' ! 429: TabOrder = 3 ! 430: OnClick = HangupSoundButtonClick ! 431: end ! 432: object HackAttemptSoundEdit: TEdit ! 433: Left = 85 ! 434: Top = 62 ! 435: Width = 156 ! 436: Height = 24 ! 437: Hint = 'Sound file to play when users disconnect' ! 438: ParentShowHint = False ! 439: ShowHint = True ! 440: TabOrder = 4 ! 441: end ! 442: object HackAttemptSoundButton: TButton ! 443: Left = 247 ! 444: Top = 62 ! 445: Width = 20 ! 446: Height = 21 ! 447: Caption = '...' ! 448: TabOrder = 5 ! 449: OnClick = HackAttemptSoundButtonClick ! 450: end ! 451: end ! 452: end ! 453: object OKBtn: TButton ! 454: Left = 20 ! 455: Top = 211 ! 456: Width = 76 ! 457: Height = 25 ! 458: Anchors = [akLeft, akBottom] ! 459: Caption = 'OK' ! 460: Default = True ! 461: ModalResult = 1 ! 462: TabOrder = 1 ! 463: OnClick = OKBtnClick ! 464: end ! 465: object CancelBtn: TButton ! 466: Left = 104 ! 467: Top = 211 ! 468: Width = 75 ! 469: Height = 25 ! 470: Anchors = [akLeft, akBottom] ! 471: Cancel = True ! 472: Caption = 'Cancel' ! 473: ModalResult = 2 ! 474: TabOrder = 2 ! 475: end ! 476: object ApplyBtn: TButton ! 477: Left = 189 ! 478: Top = 211 ! 479: Width = 76 ! 480: Height = 25 ! 481: Anchors = [akLeft, akBottom] ! 482: Cancel = True ! 483: Caption = 'Apply' ! 484: TabOrder = 3 ! 485: OnClick = OKBtnClick ! 486: end ! 487: object OpenDialog: TOpenDialog ! 488: Filter = 'Wave Files|*.wav' ! 489: Options = [ofHideReadOnly, ofNoChangeDir, ofEnableSizing, ofDontAddToRecent] ! 490: Top = 240 ! 491: end ! 492: end
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.