clib package
This commit is contained in:
48
packages/clib/maildrop/rfc2045/rfc2045xdump.c
Normal file
48
packages/clib/maildrop/rfc2045/rfc2045xdump.c
Normal file
@@ -0,0 +1,48 @@
|
||||
/*
|
||||
** Copyright 1998 - 1999 Double Precision, Inc. See COPYING for
|
||||
** distribution information.
|
||||
*/
|
||||
|
||||
/*
|
||||
** $Id$
|
||||
*/
|
||||
#include <stdio.h>
|
||||
#include "rfc2045.h"
|
||||
|
||||
#define DUMP(s,n) if ( (s) ) { printf("%*s%s: %s\n", level*4, "", n, (s)); }
|
||||
|
||||
/* Extended RFC2045 dump */
|
||||
|
||||
static void dodump(struct rfc2045 *p, int level)
|
||||
{
|
||||
if (!p->isdummy)
|
||||
{
|
||||
printf("%*sMessage start %ld, end %ld, startbody %ld, endbody %ld.\n", level*4,
|
||||
"", (long)p->startpos, (long)p->endpos,
|
||||
(long)p->startbody, (long)p->endbody);
|
||||
DUMP(p->mime_version, "Mime-Version")
|
||||
DUMP(p->content_type, "Content-Type")
|
||||
DUMP(rfc2045_getattr(p->content_type_attr, "charset"),
|
||||
"Charset")
|
||||
DUMP(p->content_transfer_encoding, "Transfer Encoding")
|
||||
DUMP(rfc2045_getattr(p->content_type_attr, "boundary"),
|
||||
"Boundary")
|
||||
DUMP(p->content_disposition, "Content Disposition")
|
||||
DUMP(rfc2045_getattr(p->content_disposition_attr, "name"),
|
||||
"Disposition Name")
|
||||
DUMP(rfc2045_getattr(p->content_disposition_attr, "filename"),
|
||||
"Disposition Filename")
|
||||
}
|
||||
|
||||
for (p=p->firstpart; p; p=p->next)
|
||||
{
|
||||
printf("%*s{\n", level*4, "");
|
||||
dodump(p, level+1);
|
||||
printf("%*s}\n", level*4, "");
|
||||
}
|
||||
}
|
||||
|
||||
void rfc2045_xdump(struct rfc2045 *p)
|
||||
{
|
||||
dodump(p, 0);
|
||||
}
|
Reference in New Issue
Block a user