* contrib/hbtip/ccgi.prg
* contrib/hbtip/client.prg
* contrib/hbtip/encb64.prg
* contrib/hbtip/encoder.prg
* contrib/hbtip/encqp.prg
* contrib/hbtip/encurl.prg
* contrib/hbtip/ftpcli.prg
* contrib/hbtip/hbtip.hbp
* contrib/hbtip/hbtip.hbx
* contrib/hbtip/httpcli.prg
* contrib/hbtip/log.prg
* contrib/hbtip/mail.prg
* contrib/hbtip/mime.c
* contrib/hbtip/misc.c
* contrib/hbtip/popcli.prg
* contrib/hbtip/sessid.prg
* contrib/hbtip/smtpcli.prg
* contrib/hbtip/thtml.ch
* contrib/hbtip/thtml.prg
* contrib/hbtip/tip.ch
* contrib/hbtip/url.prg
+ contrib/hbtip/base64u.prg
+ contrib/hbtip/mailassy.prg
* contrib/hbtip/sendmail.prg -> [...]/mailsend.prg
+ contrib/hbtip/WARNING.txt
* contrib/hbtip/tests/base64.prg
* contrib/hbtip/tests/dbtohtml.prg
* contrib/hbtip/tests/dnldftp.prg -> [...]/ftp_dl.prg
* contrib/hbtip/tests/ftpadv.prg -> [...]/ftp_adv.prg
+ contrib/hbtip/tests/email.prg
+ contrib/hbtip/tests/ftp_ul.prg
- contrib/hbtip/tests/gmail.hbp
- contrib/hbtip/tests/gmail.prg
* contrib/hbtip/tests/hbmk.hbm
* contrib/hbtip/tests/httpadv.prg -> [...]/http_adv.prg
* contrib/hbtip/tests/httpcli.prg -> [...]/http_cli.prg
+ contrib/hbtip/tests/http_qry.prg
- contrib/hbtip/tests/loadhtml.prg
+ contrib/hbtip/tests/test.prg
+ contrib/hbtip/tests/url.prg
* synced with 3.4 fork by Viktor Szakats
; the only difference is slightly edited WARNING.txt
- contrib/hbtip/credent.prg
% deleted TIPCredentials() class that was never implemented
; changes above come from vast number of commits in 3.4 repository - many
thanks to Viktor Szakats for maintaining
56 lines
1.1 KiB
Plaintext
56 lines
1.1 KiB
Plaintext
/* TIP Mail - reading and writing multipart mails
|
|
*
|
|
* Test for reading a multipart message (that must already
|
|
* be in its canonical form, that is, line terminator is
|
|
* CRLF and it must have no headers other than SMTP/MIME).
|
|
*/
|
|
|
|
#require "hbtip"
|
|
|
|
PROCEDURE Main( cFileName )
|
|
|
|
LOCAL oMail, cData, i
|
|
|
|
IF ! HB_ISSTRING( cFileName ) .OR. ;
|
|
( cData := hb_MemoRead( cFileName ) ) == ""
|
|
|
|
? "Cannot open", cFileName
|
|
RETURN
|
|
ENDIF
|
|
|
|
oMail := TIPMail():New()
|
|
IF oMail:FromString( cData ) == 0
|
|
? "Malformed mail. Dumping up to where parsed"
|
|
ENDIF
|
|
|
|
? PadC( " HEADERS ", 60, "-" )
|
|
FOR EACH i IN oMail:hHeaders
|
|
? i:__enumKey(), ":", i
|
|
NEXT
|
|
?
|
|
|
|
? PadC( " RECEIVED ", 60, "-" )
|
|
FOR EACH cData IN oMail:aReceived
|
|
? cData
|
|
NEXT
|
|
?
|
|
|
|
? PadC( " BODY ", 60, "-" )
|
|
? oMail:GetBody()
|
|
?
|
|
|
|
DO WHILE oMail:GetAttachment() != NIL
|
|
? PadC( " ATTACHMENT ", 60, "-" )
|
|
? oMail:NextAttachment():GetBody()
|
|
?
|
|
ENDDO
|
|
|
|
? "DONE"
|
|
?
|
|
/* Writing stream */
|
|
#if 0
|
|
OutStd( oMail:ToString() )
|
|
#endif
|
|
|
|
RETURN
|