IdRegister.pas 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653
  1. {
  2. $Project$
  3. $Workfile$
  4. $Revision$
  5. $DateUTC$
  6. $Id$
  7. This file is part of the Indy (Internet Direct) project, and is offered
  8. under the dual-licensing agreement described on the Indy website.
  9. (http://www.indyproject.org/)
  10. Copyright:
  11. (c) 1993-2005, Chad Z. Hower and the Indy Pit Crew. All rights reserved.
  12. }
  13. {
  14. $Log$
  15. }
  16. {
  17. Rev 1.51 3/28/2005 1:12:36 PM JPMugaas
  18. Package build errors.
  19. Rev 1.50 2/10/2005 2:24:40 PM JPMugaas
  20. Minor Restructures for some new UnixTime Service components.
  21. Rev 1.49 12/12/2004 20:26:16 ANeillans
  22. Fixed compile error
  23. Rev 1.48 12/10/2004 4:57:52 PM DSiders
  24. Added TIdIPAddrMon to Misc pallette.
  25. Rev 1.47 11/14/2004 10:30:10 PM JPMugaas
  26. FSP added.
  27. Rev 1.46 10/22/2004 7:24:14 AM Joerg
  28. Fix .NET bitmaps again after previous checkin.
  29. Rev 1.45 10/22/2004 1:43:58 PM BGooijen
  30. Removed IdHL7 from palette
  31. Rev 1.42 6/15/2004 5:51:56 PM JPMugaas
  32. Added Compressor class for ZLibEx.
  33. Rev 1.41 3/8/2004 10:08:52 AM JPMugaas
  34. IdDICT now compiles with new code. IdDICT now added to palette.
  35. Rev 1.40 3/3/2004 6:51:22 PM JPMugaas
  36. TIdHTTPProxyServer added to servers tab.
  37. Rev 1.39 2/29/2004 1:36:08 PM JPMugaas
  38. Hack for missing property editor.
  39. Rev 1.38 10/02/2004 12:53:20 ANeillans
  40. IdCoreResourceStrings renamed to IdResourceStringsCore
  41. Rev 1.37 2/3/2004 4:29:14 PM JPMugaas
  42. Should compile.
  43. Rev 1.36 2/2/2004 5:04:04 PM JPMugaas
  44. IdMappedFTP now works in DotNET.
  45. Rev 1.35 2/2/2004 4:28:54 PM JPMugaas
  46. Recased IdMappedPOP3. Added some MappedPort components to DotNET because
  47. those now compile.
  48. Rev 1.34 2/1/2004 3:37:34 PM JPMugaas
  49. Updated for unit change I made. I forgot to fix this, sorry.
  50. Rev 1.33 1/31/2004 4:26:58 PM JPMugaas
  51. Updated with package move for FTP materials and fixed for DotNET.
  52. Rev 1.32 1/25/2004 3:23:20 PM JPMugaas
  53. IdSASLList dropped.
  54. Rev 1.31 1/4/2004 12:39:16 AM BGooijen
  55. Added TIdFTPServer
  56. Rev 1.30 11/22/2003 11:53:08 PM BGooijen
  57. Icons for DotNet
  58. Rev 1.29 11/11/2003 7:03:48 PM BGooijen
  59. DotNet
  60. Rev 1.28 2003.10.19 1:35:46 PM czhower
  61. Moved Borland define to .inc
  62. Rev 1.27 2003.10.17 6:19:50 PM czhower
  63. Temporarily commented out FTPServer.
  64. Rev 1.26 2003.10.14 1:27:58 PM czhower
  65. DotNet
  66. Rev 1.25 10/12/2003 1:49:58 PM BGooijen
  67. Changed comment of last checkin
  68. Rev 1.24 10/12/2003 1:43:42 PM BGooijen
  69. Changed IdCompilerDefines.inc to Core\IdCompilerDefines.inc
  70. Rev 1.23 9/20/2003 04:33:08 PM JPMugaas
  71. Removed reference to IdThreadComponent from In the protcols packages. It
  72. should be in the core package.
  73. Rev 1.22 9/19/2003 04:27:08 PM JPMugaas
  74. Removed IdFTPServer so Indy can compile with Kudzu's new changes.
  75. Rev 1.21 9/16/2003 11:58:12 PM JPMugaas
  76. Updated packages with TIdSocksServer and IdHL7.
  77. Rev 1.20 7/13/2003 06:28:56 PM JPMugaas
  78. Added TIdCompressorBorZLib to palette for HTTP compression (gzip, deflate).
  79. Rev 1.19 6/16/2003 09:53:26 PM JPMugaas
  80. IdIMAP4 now added back into the packages.
  81. Rev 1.18 6/15/2003 03:26:06 PM JPMugaas
  82. Renamed IdDirectSMTP to IdSMTPRelay.
  83. Rev 1.17 6/2/2003 01:59:34 AM JPMugaas
  84. Temporarily removed IMAP4.
  85. Rev 1.16 5/11/2003 05:33:32 AM JPMugaas
  86. Rev 1.15 5/10/2003 10:11:22 PM JPMugaas
  87. Added S/Key SASL mechanism.
  88. Rev 1.14 10/5/2003 10:26:42 AM SGrobety
  89. CRAM-MD5 added
  90. Rev 1.13 5/7/2003 04:38:22 AM JPMugaas
  91. IMAP4 added back.
  92. Rev 1.12 4/23/2003 05:16:20 PM JPMugaas
  93. Temporarily removed IMAP4. That unit does not compile.
  94. Rev 1.11 4/10/2003 02:43:44 PM JPMugaas
  95. Fixed compile error.
  96. Rev 1.10 4/10/2003 4:36:54 PM BGooijen
  97. Added TIdServerCompressionIntercept
  98. Rev 1.9 3/22/2003 11:11:26 PM BGooijen
  99. Added TIdServerInterceptLogEvent and TIdServerInterceptLogFile
  100. Rev 1.8 3/13/2003 11:06:26 AM JPMugaas
  101. Classes were renamed in OpenSSL unit.
  102. Rev 1.7 2/24/2003 10:16:40 PM JPMugaas
  103. Removed IdSocksServer from unit.
  104. Rev 1.6 2/24/2003 08:15:28 AM JPMugaas
  105. IOHandlerSSL included.
  106. Rev 1.5 2/6/2003 03:18:24 AM JPMugaas
  107. Updated components that compile with Indy 10.
  108. Rev 1.4 1/9/2003 07:19:18 AM JPMugaas
  109. Temporarily removed Tunnel components until we can get them working with the
  110. Context class.
  111. Rev 1.3 12/16/2002 03:34:40 AM JPMugaas
  112. Added OTP SASL mechanism to palette.
  113. Rev 1.2 12/15/2002 05:50:16 PM JPMugaas
  114. SMTP and IMAP4 compile. IdPOP3, IdFTP, IMAP4, and IdSMTP now restored in
  115. IdRegister.
  116. Rev 1.1 12/7/2002 06:43:24 PM JPMugaas
  117. These should now compile except for Socks server. IPVersion has to be a
  118. property someplace for that.
  119. Rev 1.0 11/13/2002 07:58:56 AM JPMugaas
  120. }
  121. unit IdRegister;
  122. interface
  123. {$i IdCompilerDefines.inc}
  124. uses
  125. Classes;
  126. // Procs
  127. procedure Register;
  128. implementation
  129. uses
  130. IdDsnResourceStrings,
  131. {$IFDEF FPC}
  132. LResources,
  133. {$ENDIF}
  134. IdBlockCipherIntercept,
  135. IdChargenServer,
  136. IdChargenUDPServer,
  137. IdCoderBinHex4,
  138. IdCoderMIME,
  139. IdCoderQuotedPrintable,
  140. IdCoderUUE,
  141. IdCoderXXE,
  142. {$IFDEF USE_ZLIB_UNIT}
  143. IdCompressorZLib,
  144. IdCompressionIntercept,
  145. {$ENDIF}
  146. IdConnectThroughHttpProxy,
  147. IdCookieManager,
  148. IdDateTimeStamp,
  149. IdDayTime,
  150. IdDayTimeServer,
  151. IdDayTimeUDP,
  152. IdDayTimeUDPServer,
  153. IdDICT,
  154. IdDICTServer,
  155. IdDiscardServer,
  156. IdDiscardUDPServer,
  157. IdDNSResolver,
  158. IdDNSServer,
  159. IdDsnCoreResourceStrings,
  160. IdEcho,
  161. IdEchoServer,
  162. IdEchoUDP,
  163. IdEchoUDPServer,
  164. IdFinger,
  165. IdFingerServer,
  166. IdFSP,
  167. IdFTP,
  168. IdFTPServer,
  169. IdGopher,
  170. IdGopherServer,
  171. IdHL7,
  172. IdHTTP,
  173. IdHTTPProxyServer,
  174. IdHTTPServer,
  175. IdIPAddrMon,
  176. IdIdent,
  177. IdIdentServer,
  178. IdIMAP4,
  179. IdIMAP4Server,
  180. IdIPWatch,
  181. IdIRC,
  182. IdIrcServer,
  183. IdLPR,
  184. IdMailBox,
  185. IdMappedFTP,
  186. IdMappedPortTCP,
  187. IdMappedTelnet,
  188. IdMappedPOP3,
  189. IdMappedPortUDP,
  190. IdMessage,
  191. IdMessageCoderMIME,
  192. IdMessageCoderYenc,
  193. IdNetworkCalculator,
  194. IdNNTP,
  195. IdNNTPServer,
  196. IdPOP3,
  197. IdPOP3Server,
  198. IdQotd,
  199. IdQotdServer,
  200. IdQOTDUDP,
  201. IdQOTDUDPServer,
  202. IdResourceStringsProtocols,
  203. IdRexec,
  204. IdRexecServer,
  205. IdRSH,
  206. IdRSHServer,
  207. IdSASLAnonymous,
  208. IdSASLDigest,
  209. IdSASLExternal,
  210. IdSASLLogin,
  211. IdSASLOAuth,
  212. IdSASLOTP,
  213. IdSASLPlain,
  214. IdSASLSKey,
  215. IdSASL_CRAM_MD5,
  216. IdSASL_CRAM_SHA1,
  217. IdServerInterceptLogEvent,
  218. IdServerInterceptLogFile,
  219. IdSMTP,
  220. IdSMTPRelay,
  221. IdSMTPServer,
  222. IdSNMP,
  223. IdSNPP,
  224. IdSNTP,
  225. IdSocksServer,
  226. {$IFDEF USE_OPENSSL}
  227. IdSSLOpenSSL,
  228. {$ENDIF}
  229. IdSysLog,
  230. IdSysLogMessage,
  231. IdSysLogServer,
  232. IdSystat,
  233. IdSystatServer,
  234. IdSystatUDP,
  235. IdSystatUDPServer,
  236. IdTelnet,
  237. IdTelnetServer,
  238. IdTime,
  239. IdTimeServer,
  240. IdTimeUDP,
  241. IdTimeUDPServer,
  242. IdTrivialFTP,
  243. IdTrivialFTPServer,
  244. //TODO: IdTunnelMaster,
  245. //TODO: IdTunnelSlave,
  246. IdUnixTime,
  247. IdUnixTimeServer,
  248. IdUnixTimeUDP,
  249. IdUnixTimeUDPServer,
  250. IdUserAccounts,
  251. IdUserPassProvider,
  252. IdVCard,
  253. IdWebDAV,
  254. IdWhois,
  255. IdWhoIsServer;
  256. {$IFNDEF FPC}
  257. {$IFDEF BORLAND}
  258. {$R IdRegister.dcr}
  259. {$ELSE}
  260. {$R IdRegisterCool.dcr}
  261. {$ENDIF}
  262. {$ENDIF}
  263. procedure Register;
  264. begin
  265. {$IFNDEF FPC}
  266. RegisterComponents(RSRegIndyClients, [
  267. TIdDayTime,
  268. TIdDayTimeUDP,
  269. TIdDICT,
  270. TIdDNSResolver,
  271. TIdEcho,
  272. TIdEchoUDP,
  273. TIdFinger,
  274. TIdFSP,
  275. TIdFTP,
  276. TIdGopher,
  277. TIdHTTP,
  278. TIdIdent,
  279. TIdIMAP4,
  280. TIdIRC,
  281. TIdLPR,
  282. TIdNNTP,
  283. TIdPOP3,
  284. TIdQOTD,
  285. TIdQOTDUDP,
  286. TIdRexec,
  287. TIdRSH,
  288. TIdSMTP,
  289. TIdSMTPRelay,
  290. TIdSNMP,
  291. TIdSNPP,
  292. TIdSNTP,
  293. TIdSysLog,
  294. TIdSystat,
  295. TIdSystatUDP,
  296. TIdTelnet,
  297. TIdTime,
  298. TIdTimeUDP,
  299. TIdTrivialFTP,
  300. TIdUnixTime,
  301. TIdUnixTimeUDP,
  302. TIdWebDAV,
  303. TIdWhois]);
  304. RegisterComponents(RSRegIndyServers, [
  305. TIdChargenServer,
  306. TIdChargenUDPServer,
  307. TIdDayTimeServer,
  308. TIdDayTimeUDPServer,
  309. TIdDICTServer,
  310. TIdDISCARDServer,
  311. TIdDiscardUDPServer,
  312. TIdDNSServer,
  313. TIdECHOServer,
  314. TIdEchoUDPServer,
  315. TIdFingerServer,
  316. TIdFTPServer,
  317. TIdGopherServer,
  318. TIdHTTPProxyServer,
  319. TIdHTTPServer,
  320. TIdIdentServer,
  321. TIdIMAP4Server,
  322. TIdIRCServer,
  323. TIdMappedFTP,
  324. TIdMappedPOP3,
  325. TIdMappedPortTCP,
  326. TIdMappedPortUDP,
  327. TIdMappedTelnet,
  328. TIdNNTPServer,
  329. TIdPOP3Server,
  330. TIdQOTDServer,
  331. TIdQotdUDPServer,
  332. TIdRexecServer,
  333. TIdRSHServer,
  334. TIdSMTPServer,
  335. TIdSocksServer,
  336. TIdSyslogServer,
  337. TIdSystatServer,
  338. TIdSystatUDPServer,
  339. TIdTelnetServer,
  340. TIdTimeServer,
  341. TIdTimeUDPServer,
  342. TIdTrivialFTPServer,
  343. //TODO: TIdTunnelMaster,
  344. //TODO: TIdTunnelSlave,
  345. TIdUnixTimeServer,
  346. TIdUnixTimeUDPServer,
  347. TIdWhoIsServer
  348. ]);
  349. RegisterComponents(RSRegIndyIntercepts, [
  350. TIdBlockCipherIntercept,
  351. TIdServerBlockCipherIntercept,
  352. {$IFDEF USE_ZLIB_UNIT}
  353. TIdCompressionIntercept,
  354. TIdServerCompressionIntercept,
  355. {$ENDIF}
  356. TIdServerInterceptLogEvent,
  357. TIdServerInterceptLogFile
  358. ]);
  359. {$IFDEF USE_OPENSSL}
  360. RegisterComponents(RSRegIndyIOHandlers, [
  361. TIdServerIOHandlerSSLOpenSSL,
  362. TIdSSLIOHandlerSocketOpenSSL
  363. ]);
  364. {$ENDIF}
  365. RegisterComponents(RSRegSASL, [
  366. TIdSASLAnonymous,
  367. TIdSASLCRAMMD5,
  368. TIdSASLCRAMSHA1,
  369. TIdSASLDigest,
  370. TIdSASLExternal,
  371. TIdSASLLogin,
  372. TIdSASLOAuth10A,
  373. TIdSASLOAuth2Bearer,
  374. TIdSASLOTP,
  375. TIdSASLPlain,
  376. TIdSASLSKey,
  377. TIdSASLXOAuth2,
  378. TIdUserPassProvider
  379. ]);
  380. RegisterComponents(RSRegIndyMisc, [
  381. TIdConnectThroughHttpProxy,
  382. TIdCompressorZLib,
  383. TIdCookieManager,
  384. TIdEncoderBinHex4,
  385. TIdEncoderMIME,
  386. TIdEncoderUUE,
  387. TIdEncoderXXE,
  388. TIdEncoderQuotedPrintable,
  389. TIdDateTimeStamp,
  390. TIdDecoderBinHex4,
  391. TIdDecoderMIME,
  392. TIdDecoderUUE,
  393. TIdDecoderXXE,
  394. TIdDecoderQuotedPrintable,
  395. TIdIPWatch,
  396. TIdIPAddrMon,
  397. TIdHL7,
  398. TIdMailBox,
  399. TIdMessage,
  400. TIdMessageDecoderMIME,
  401. TIdMessageEncoderMIME,
  402. TIdMessageDecoderYenc,
  403. TIdMessageEncoderYenc,
  404. TIdNetworkCalculator,
  405. TIdSysLogMessage,
  406. TIdUserManager,
  407. TIdVCard
  408. ]);
  409. {$ELSE}
  410. //FreePascal Lazarus Registration
  411. RegisterComponents(RSRegIndyClients+ RSProtam, [
  412. //
  413. TIdDayTime,
  414. TIdDayTimeUDP,
  415. TIdDICT,
  416. TIdDNSResolver,
  417. TIdEcho,
  418. TIdEchoUDP,
  419. TIdFinger,
  420. TIdFSP,
  421. TIdFTP,
  422. TIdGopher,
  423. TIdHTTP,
  424. TIdIdent,
  425. TIdIMAP4,
  426. TIdIRC,
  427. TIdLPR]);
  428. RegisterComponents(RSRegIndyClients+RSProtnz, [
  429. TIdNNTP,
  430. TIdPOP3,
  431. TIdQOTD,
  432. TIdQOTDUDP,
  433. TIdRexec,
  434. TIdRSH,
  435. TIdSMTP,
  436. TIdSMTPRelay,
  437. TIdSNMP,
  438. TIdSNPP,
  439. TIdSNTP,
  440. TIdSysLog,
  441. TIdSystat,
  442. TIdSystatUDP,
  443. TIdTelnet,
  444. TIdTime,
  445. TIdTimeUDP,
  446. TIdTrivialFTP,
  447. TIdUnixTime,
  448. TIdUnixTimeUDP,
  449. TIdWebDAV,
  450. TIdWhois]);
  451. RegisterComponents(RSRegIndyServers+RSProtam, [
  452. TIdChargenServer,
  453. TIdChargenUDPServer,
  454. TIdDayTimeServer,
  455. TIdDayTimeUDPServer,
  456. TIdDICTServer,
  457. TIdDISCARDServer,
  458. TIdDiscardUDPServer,
  459. TIdDNSServer,
  460. TIdECHOServer,
  461. TIdEchoUDPServer,
  462. TIdFingerServer,
  463. TIdFTPServer,
  464. TIdGopherServer,
  465. TIdHTTPProxyServer,
  466. TIdHTTPServer,
  467. TIdIdentServer,
  468. TIdIMAP4Server,
  469. TIdIRCServer]);
  470. RegisterComponents(RSRegIndyServers+RSProtnz, [
  471. TIdNNTPServer,
  472. TIdPOP3Server,
  473. TIdQOTDServer,
  474. TIdQotdUDPServer,
  475. TIdRexecServer,
  476. TIdRSHServer,
  477. TIdSMTPServer,
  478. TIdSocksServer,
  479. TIdSyslogServer,
  480. TIdSystatServer,
  481. TIdSystatUDPServer,
  482. TIdTelnetServer,
  483. TIdTimeServer,
  484. TIdTimeUDPServer,
  485. TIdTrivialFTPServer,
  486. //TODO: TIdTunnelMaster,
  487. //TODO: TIdTunnelSlave,
  488. TIdUnixTimeServer,
  489. TIdUnixTimeUDPServer,
  490. TIdWhoIsServer]);
  491. RegisterComponents(RSRegIndyServers+RSMappedPort,[
  492. TIdMappedFTP,
  493. TIdMappedPOP3,
  494. TIdMappedPortTCP,
  495. TIdMappedPortUDP,
  496. TIdMappedTelnet]);
  497. RegisterComponents(RSRegIndyIntercepts+RSProt, [
  498. {$IFDEF USE_ZLIB_UNIT}
  499. TIdCompressionIntercept,
  500. TIdServerCompressionIntercept,
  501. {$ENDIF}
  502. TIdBlockCipherIntercept,
  503. TIdServerBlockCipherIntercept,
  504. TIdServerInterceptLogEvent,
  505. TIdServerInterceptLogFile
  506. ]);
  507. RegisterComponents(RSRegSASL+RSProt, [
  508. TIdSASLAnonymous,
  509. TIdSASLCRAMMD5,
  510. TIdSASLCRAMSHA1,
  511. TIdSASLDigest,
  512. TIdSASLExternal,
  513. TIdSASLLogin,
  514. TIdSASLOAuth10A,
  515. TIdSASLOAuth2Bearer,
  516. TIdSASLOTP,
  517. TIdSASLPlain,
  518. TIdSASLSKey,
  519. TIdSASLXOAuth2,
  520. TIdUserPassProvider
  521. ]);
  522. {$IFDEF USE_OPENSSL}
  523. RegisterComponents(RSRegIndyIOHandlers+RSProt, [
  524. TIdServerIOHandlerSSLOpenSSL,
  525. TIdSSLIOHandlerSocketOpenSSL
  526. ]);
  527. {$ENDIF}
  528. RegisterComponents(RSRegIndyMisc+RSProt, [
  529. TIdConnectThroughHttpProxy,
  530. {$IFDEF USE_ZLIB_UNIT}
  531. TIdCompressorZLib,
  532. {$ENDIF}
  533. TIdCookieManager,
  534. TIdDateTimeStamp,
  535. TIdIPWatch,
  536. TIdIPAddrMon,
  537. TIdHL7,
  538. TIdMailBox,
  539. TIdMessage,
  540. TIdNetworkCalculator,
  541. TIdSysLogMessage,
  542. TIdUserManager,
  543. TIdVCard
  544. ]);
  545. RegisterComponents(RSRegIndyMisc+RSProt + RSEncoder, [
  546. TIdEncoderMIME,
  547. TIdEncoderUUE,
  548. TIdEncoderXXE,
  549. TIdEncoderQuotedPrintable,
  550. TIdMessageEncoderMIME,
  551. TIdMessageEncoderYenc
  552. ]);
  553. RegisterComponents(RSRegIndyMisc+RSProt + RSDecoder, [
  554. TIdDecoderMIME,
  555. TIdDecoderUUE,
  556. TIdDecoderXXE,
  557. TIdDecoderQuotedPrintable,
  558. TIdMessageDecoderMIME,
  559. TIdMessageDecoderYenc
  560. ]);
  561. {$ENDIF}
  562. end;
  563. {$IFDEF FPC}
  564. initialization
  565. {$i IdRegister.lrs}
  566. {$ENDIF}
  567. end.