X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=lib-mime%2Fmime-types.h;h=513f121d2d39bdf9165df2e894015d0ac501d693;hp=9d4d70e9efb8ecc0c54db570e4dff3fb08d9f7a7;hb=2c56b665394c80195b976537e608b690947fcb14;hpb=a5074c20c3873e4a1fbfea551b07bd1c867a9def diff --git a/lib-mime/mime-types.h b/lib-mime/mime-types.h index 9d4d70e..513f121 100644 --- a/lib-mime/mime-types.h +++ b/lib-mime/mime-types.h @@ -60,7 +60,7 @@ enum { ENCQUOTEDPRINTABLE, ENCBASE64, ENCBINARY, - ENCUUENCODED + ENCUUENCODED, }; /* Content-Disposition values */ @@ -82,12 +82,14 @@ typedef struct address_t { } address_t; DO_INIT(address_t, address); -void address_wipe(address_t *); +static inline void address_wipe(address_t *addr) { + p_delete(&addr->personal); + p_delete(&addr->mailbox); +} DO_NEW(address_t, address); DO_DELETE(address_t, address); -DO_SLIST(address_t, address); - +DO_SLIST(address_t, address, address_delete); /****************************************************************************/ /* rfc822 header parameters */ @@ -99,6 +101,16 @@ typedef struct parameter { struct parameter *next; } PARAMETER; +DO_INIT(PARAMETER, parameter); +static inline void parameter_wipe(PARAMETER *param) { + p_delete(¶m->attribute); + p_delete(¶m->value); +} + +DO_NEW(PARAMETER, parameter); +DO_DELETE(PARAMETER, parameter); +DO_SLIST(PARAMETER, parameter, parameter_delete); + /****************************************************************************/ /* rfc822 envelopes */ @@ -128,13 +140,18 @@ typedef struct envelope_t { char *x_comment_to; #endif BUFFER *spam; - LIST *references; /* message references (in reverse order) */ - LIST *in_reply_to; /* in-reply-to header content */ - LIST *userhdrs; /* user defined headers */ + string_list_t *references; /* message references (in reverse order) */ + string_list_t *in_reply_to; /* in-reply-to header content */ + string_list_t *userhdrs; /* user defined headers */ unsigned int irt_changed:1; /* In-Reply-To changed to link/break threads */ unsigned int refs_changed:1; /* References changed to break thread */ } ENVELOPE; +DO_INIT(ENVELOPE, envelope); +void envelope_wipe(ENVELOPE*); + +DO_NEW(ENVELOPE, envelope); +DO_DELETE(ENVELOPE, envelope); /****************************************************************************/ /* rfc822 content-* */ @@ -304,7 +321,7 @@ see: crypt.h pgplib.h, smime.h */ short attach_total; #ifdef MIXMASTER - LIST *chain; + string_list_t *chain; #endif int refno; /* message number on server */ @@ -313,4 +330,10 @@ see: crypt.h pgplib.h, smime.h */ char *maildir_flags; /* unknown maildir flags */ } HEADER; +DO_INIT(HEADER, header); +void header_wipe(HEADER *); + +DO_NEW(HEADER, header); +DO_DELETE(HEADER, header); + #endif /* MUTT_LIB_MIME_MIME_TYPES_H */