Francois Piette wrote: >> Hopefully Francois likes the idea of having >> such a 'multi-listen-server' in ICS? > > Sure ! > The best implementation would have been to add it to TWSocketServer > in a way multiple port/IP are simply added and the remaining stay > almost the same.
That would have made both implementation and component use realy more complicated. My goal was to make it easier to use, so I did not derive from TWSocket in order to get rid of all those pointless properties and events when you just need a listener. The Object Inspector now looks very cleaned up :) Though it breaks backward compatibility a little bit it should be simple and painless to upgrade most existing projects. Current snapshot is downloadable here: http://www.duodata.de/misc/delphi/MultiListenServer-20071211.zip (Binary demos are included as well) If you signal green light I will port FTP and HTTP servers as well, SSL included. BTW: Anybody is invited to test, to give feedback or to improve the new server component. It also uses a client pool (conditional compiled) that should speed up accepting new connections slightly. -- Arno Garrels [TeamICS] http://www.overbyte.be/eng/overbyte/teamics.html > > -- > [EMAIL PROTECTED] > Author of ICS (Internet Component Suite, freeware) > Author of MidWare (Multi-tier framework, freeware) > http://www.overbyte.be > > ----- Original Message ----- > From: "Arno Garrels" <[EMAIL PROTECTED]> > To: "ICS support mailing" <[email protected]> > Sent: Monday, December 10, 2007 10:05 PM > Subject: Re: [twsocket] New V6 beta FTP client and server components > > >> Angus, >> >> Many thanks for this huge contribution! >> I'm currently working on the server that listens on multiple >> IP addresses and ports simultaneously, so I guess we can soon >> merge our code :) Hopefully Francois likes the idea of having >> such a 'multi-listen-server' in ICS? >> >> -- >> Arno Garrels [TeamICS] >> http://www.overbyte.be/eng/overbyte/teamics.html >> >> >> >> Angus Robertson - Magenta Systems Ltd wrote: >>> For those interested in the ICS V6 FTP client and server >>> components, a zip may be downloaded from the ICS page at my web >>> site: >>> >>> http://www.magsys.co.uk/delphi/magics.asp >>> >>> This zip includes ICS V6 units updated since the last official beta >>> on 14 November 2007, also executable versions of the various test >>> programs to avoid needing to rebuild them all. All these units are >>> subject to changes before being officially published as part of ICS >>> V6. >>> >>> Introduction >>> ------------ >>> >>> New versions of the ICS V6 FTP server and client components both >>> support the following FTP command and features: >>> >>> One Time Passwords (OTP) to avoid clear text passwords being sent. >>> CLNT command to tell server what software the client is using. >>> ALLO command to check if sufficient disk space for an upload. >>> COMB command to ask the server to combine two or more partial files. >>> SITE PSWD command to change the account password. >>> SITE EXEC command to execute a program. >>> SITE MSG command to send a message to the server. >>> SITE INDEX command to recursively list file names only. >>> SITE ZONE command to check the time zone of file time stamps. >>> SITE DMLSD -R command similar to MLSD but recursively option. >>> SITE CMLSD command similar to SITE DMLSD but uses control channel. >>> (note SITE DMLSD/CMLSD are currently only supported by ICS) >>> XMD5 command similar to MD5 but with start and end positions. >>> XCRC command now has start and end positions. >>> >>> The FTP server alone supports the following FTP command and >>> features: >>> >>> Timeouts to close sockets on inactivity. >>> MODE Z command to compress uploads and downloads for speed. >>> OPTS command to configure compress levels. >>> Upload and download counters and performance. >>> Buffered I/O for performance. >>> >>> There is also a new test FTP server that uses TSocketServer, >>> which will be evolving into another FTP server that is able >>> to listen on multiple IP addresses and ports simultaneously. >>> >>> The FTP server and client test programs have been updated to >>> support all the new commands. >>> >>> A few simple examples of the new commands follow: >>> >>> (One Time Password - note the server controls whether OTPs are >>> supported, but can still accept plain text passwords for >>> compatibility) >>>> USER angusadmin < 331 Response to otp-md5 999 oxlz2wenq5co required >>>> for angusadmin. PASS FELL MOB CHUG DANE GONG DUD >>> < 230 User angusadmin logged in. >>> >>> Internet Component Suite TFtpServer V1.54 and later (with SSL) >>> (note some features only announced if enabled in the server and >>> with events assigned) >>> 211-Extensions supported: >>> SIZE >>> REST STREAM >>> MDTM >>> MDTM YYYYMMDDHHMMSS[+-TZ] filename >>> MLST size*;type*;perm*;create*;modify*; >>> MFMT >>> MD5 >>> XCRC "filename" start end >>> XMD5 "filename" start end >>> CLNT >>> SITE INDEX;ZONE;MSG;EXEC;PSWD;CMLSD;DMLSD >>> COMB >>> MODE Z >>> AUTH TLS;SSL;TLS-P;TLS-C >>> CCC >>> PROT C;P; >>> PBSZ >>> 211 END >>> >>>> ALLO 75159323624 >>> < 501 Insufficient disk space, only 65843810304 bytes available >>> >>>> ALLO 6588 >>> < 200 ALLO OK, 65843732480 bytes available >>> >>>> CLNT DUN Manager Beta Release 3.5 - 23rd November 2007 >>> < 200 Noted. >>> >>>> SITE ZONE >>> < 210 UTC+0 >>> >>>> SITE PSWD susan fred >>> < 230 Password changed okay. >>> >>>> SITE PSWD fred fred >>> < 432 Password not changed, old and new passwords cannot be >>> identical. >>> >>>> SITE MSG Hello >>> < 200 Message received okay. >>> >>>> XMD5 "download/alldepots/all/30=page-022864.zip" 500 12345 >>> < 250 6828FAD88DE20F6AD5AB5BEB7E7E0950 >>> >>>> XCRC "download/alldepots/all/30=page-022864.zip" 500 12345 >>> < 250 AEDD6E7B >>> >>>> SITE CMLSD -R >>> < 250-Listing >>> < >>> size=87284;type=file;perm=fdrwa;create=20071119100609;modify=2006112919013 >>> 5; /vmp-20061129.log >>> < >>> size=37256;type=file;perm=fdrwa;create=20071119100609;modify=2006113019570 >>> 8; /vmp-20061130.log >>> < >>> size=18785;type=file;perm=fdrwa;create=20070716105754;modify=2007071610575 >>> 4; /archmon/PC19==20070716-115754.zip >>> < >>> size=67489;type=file;perm=fdrwa;create=20070718115746;modify=2007071811574 >>> 6; /archmon/PC19==20070718-125746.zip >>> < >>> size=40207;type=file;perm=fdrwa;create=20070810085724;modify=2007081008572 >>> 4; /archmon/PC19==20070810-095724.zip >>> < >>> size=1011267;type=file;perm=fdrwa;create=20070303023249;modify=20050622130 >>> 524; /downinst/99=inst-all-900179.zip >>> < >>> size=8531099;type=file;perm=fdrwa;create=20070810085721;modify=20070809184 >>> 912; /download/30=page-023447.zip >>> < >>> size=16741088;type=file;perm=fdrwa;create=20070810085748;modify=2007080921 >>> 5304; /download/30=page-024098.zip >>> < >>> size=1390239;type=file;perm=fdrwa;create=20070303023533;modify=20060520164 >>> 806; /download/40=inst-all-900211.zip >>> < >>> size=155689;type=file;perm=fdrwa;create=20070303023533;modify=200708092315 >>> 24; /download/vehinfiles.zip >>> < 211 END >>> >>>> PORT 192,168,1,119,17,94 >>> < 200 Port command successful. >>>> SITE DMLSD -R >>> < 150 Opening data connection for directory list. >>> < 226 File sent ok >>> ! 20.0Kbytes received/sent in 0 milliseconds >>> Server Returned 184 Line(s), Bytes 20,469 for Directory: >>> /d:/ceyedxfer/ >>> > size=19;type=file;perm=fdrwa;create=20070303021115;modify=20031020183413; > /$banner.txt >>> size=21;type=file;perm=fdrwa;create=20070303021115;modify=20031020183413; >>> /$goodbye.txt >>> size=52;type=file;perm=fdrwa;create=20070303021115;modify=20031020183413; >>> /$welcome.txt >>> size=56522;type=file;perm=fdrwa;create=20071104171106;modify=2007110417110 >>> 6; /archive/PC19==20071104-171106.zip >>> size=12802;type=file;perm=fdrwa;create=20071106112604;modify=2007110611260 >>> 5; /archive/PC19==20071106-112604.zip >>> size=100681;type=file;perm=fdrwa;create=20071109120900;modify=200711091209 >>> 00; /archive/PC19==20071109-120900.zip >>> size=42701;type=file;perm=fdrwa;create=20071115105655;modify=2007111510565 >>> 5; /archive/PC19==20071115-105655.zip >>> size=597472;type=file;perm=fdrwa;create=20071123184613;modify=200701081807 >>> 22; /test/xfersrc/xfersrc20.zip >>> size=604026;type=file;perm=fdrwa;create=20071123184613;modify=200708171727 >>> 04; /test/xfersrc/xfersrc21.zip >>> size=21;type=file;perm=fdrwa;create=20070303021555;modify=20031023154243; >>> /users/$goodbye.txt >>> Files listed OK, total found 184 took 0 secs >>> >>> Angus >> -- >> To unsubscribe or change your settings for TWSocket mailing list >> please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket >> Visit our website at http://www.overbyte.be -- To unsubscribe or change your settings for TWSocket mailing list please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket Visit our website at http://www.overbyte.be
