* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Author: François PIETTE
Object: TPop3Client class implements the POP3 protocol
(RFC-1225, RFC-1939)
EMail: francois.piette@ping.be francois.piette@rtfm.be
WebSite: http://www.rtfm.be/fpiette
Creation: 03 october 1997
Version: 1.15
Support: Use twsocket@rtfm.be mailing list. See website for details.
Legal issues: Copyright (C) 1997 by François PIETTE
This software is provided 'as-is', without any express or
implied warranty. In no event will the author be held liable
for any damages arising from the use of this software.
Permission is granted to anyone to use this software for any
purpose, including commercial applications, and to alter it
and redistribute it freely, subject to the following
restrictions:
1. The origin of this software must not be misrepresented,
you must not claim that you wrote the original software.
If you use this software in a product, an acknowledgment
in the product documentation would be appreciated but is
not required.
2. Altered source versions must be plainly marked as such, and
must not be misrepresented as being the original software.
3. This notice may not be removed or altered from any source
distribution.
Updates:
Sept 09, 1997 Modified TOP to be able to request 0 lines (bug reported by
damien@jetman.demon.co.uk)
Oct 10, 1997 V1.10. Published ProtocolState property, made TOP command
complies with RFC-1939 as suggested by damien@jetman.demon.co.uk
Implemented the UIDL command.
Oct 11, 1997 V1.11 Implemented the APOP command, but not tested because no
server available to test it.
Made internal error message look like POP3 error messages (-ERR)
Oct 28, 1997 V1.12 Modified TWSocket to handle line buffer overflow and
TPop3Client to handle that in GetMultiLine.
Jan 10, 1998 V1.13 Made FWSocket accessible with a read only property. This
eases DNSLookup without a supplementary TWSocket.
Added a Port property.
Apr 01, 1998 V1.14 Adapted for BCB V3
May 05, 1998 V1.15 Changed GetMultiLine to correctly handle double dots at
line start.
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * TPop3Client -
Register - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
TPop3Display
TPop3Method
TPop3State
Pop3CliVersion
procedure Register;
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
TPop3Display = procedure(Sender: TObject; Msg : String) of object
TPop3Method = function : boolean of object
TPop3State = (pop3Disconnected, pop3WaitingUser, pop3WaitingPass, pop3Transaction, pop3Update);
Pop3CliVersion = 115
Enable partial boolean evaluation } {$T-} { Untyped pointers } {$IFNDEF VER80} { Not for Delphi 1 } {$J+} { Allow typed constant to be modified } {$ENDIF