#ifndef __MMS_MSG_INCLUDED__ #define __MMS_MSG_INCLUDED__ #include "gwlib/gwlib.h" #include "wap/wsp_headers.h" #include "gwlib/mime.h" #include "mms_strings.h" typedef struct MmsMsg MmsMsg; /* Opaque type. */ extern int mms_validate_address(Octstr *s); /* * mms_frombinary: Parse MMS binary representation, return a Message or NULL. * errors are reported in errors string. * Takes from param which is put in if insert-address is requested. */ extern MmsMsg *mms_frombinary(Octstr *msg, Octstr *from); /* * mms_tobinary: Return binary encoded Mms message */ extern Octstr *mms_tobinary(MmsMsg *msg); extern int mms_messagetype(MmsMsg *msg); /* * Convert Mms Message to standard Mime entity. * Does not recode any of the body parts. */ extern MIMEEntity *mms_tomime(MmsMsg *msg); extern MmsMsg *mms_frommime(MIMEEntity *mime); extern void mms_msgdump(MmsMsg *m, int headers_only); extern void mms_destroy(MmsMsg *msg); /* Make a delivery report message. */ extern MmsMsg *mms_deliveryreport(Octstr *msgid, Octstr *to, time_t date, Octstr *status); /* Return message headers. */ extern List *mms_message_headers(MmsMsg *msg); /* Make a notification message out of this one and the url given. */ extern MmsMsg *mms_notification(MmsMsg *msg, unsigned int msize, Octstr *url, Octstr *transactionid, time_t expiryt); MmsMsg *mms_retrieveconf(MmsMsg *msg, Octstr *transactionid, char *err, char *errtxt, Octstr *opt_from); int mms_remove_headers(MmsMsg *m, char *name); MmsMsg *mms_sendconf(char *errstr, char *msgid, char *transid, int isforward); Octstr *mms_get_header_value(MmsMsg *msg, Octstr *header); int mms_replace_header_value(MmsMsg *msg, char *hname, char *value); int mms_convert_readrec2readorig(MmsMsg *msg); #endif