Next: , Previous: Mailer, Up: libmailbox



3.1.4 Message

     /* Prefix message_ is reserved. */
     #include <mailutils/message.h>
     

The message_t object is a convenient way to manipulate messages. It encapsulates the envelope_t, the header_t and the body_t.

         mailbox_t
         ----------                   message_t
        (message[1])        +------>+--------------------+
         ----------         |       |  envelope_t        |
        (message[2])        |       |--------------------|
         ----------         |       |  header_t          |
        (message[3])--------+       |--------------------|
         ----------                 |  body_t            |
        (message[n])                |--------------------|
         ----------                 |  attribute_t       |
                                    |--------------------|
                                    |  stream_t          |
                                    +--------------------+
— Function: void message_create (message_t *msg, void *owner)
— Function: void message_destroy (message_t *msg, void *owner)

The resources allocate for msg are freed.

— Function: int message_create_copy (message_t *to, message_t *from)
— Function: void* message_get_owner (message_t msg)
— Function: int message_is_modified (message_t msg)
— Function: int message_clear_modified (message_t msg)
— Function: int message_get_mailbox (message_t msg, mailbox_t *mbox)
— Function: int message_set_mailbox (message_t msg, mailbox_t mbox, void *owner)
— Function: int message_ref (message_t msg)
— Function: int message_get_envelope (message_t msg, envelope_t *envelope)
— Function: int message_set_envelope (message_t msg, envelope_t envelope, void *owner)
— Function: int message_get_header (message_t msg, header_t *header)

Retrieve msg header.

— Function: int message_set_header (message_t msg, header_t header, void *owner)
— Function: int message_get_body (message_t msg, body_t *body)
— Function: int message_set_body (message_t msg, body_t body, void *owner)
— Function: int message_get_stream (message_t msg, stream_t *stream)
— Function: int message_set_stream (message_t msg, stream_t stream, void *owner)
— Function: int message_get_attribute (message_t msg, attribute_t *attribute)
— Function: int message_set_attribute (message_t msg, attribute_t attribute, void *owner)
— Function: int message_get_observable (message_t msg, observable_t *observable)
— Function: int message_is_multipart (message_t msg, int *multi)

Set *multi to non-zero value if msg is multi-part.

— Function: int message_set_is_multipart (message_t msg, int (*_is_multipart) (message_t, int *), void *);
— Function: int message_size (message_t msg, size_t *size)
— Function: int message_set_size (message_t msg, int (*_size) (message_t, size_t *), void *owner)
— Function: int message_lines (message_t msg, size_t *size)
— Function: int message_set_lines (message_t msg, int (*_lines) (message_t, size_t *), void *owner)
— Function: int message_get_num_parts (message_t msg, size_t *nparts)
— Function: int message_set_get_num_parts (message_t msg, int (*_get_num_parts) (message_t, size_t *), void *owner)
— Function: int message_get_part (message_t msg, size_t part, message_t *msg)
— Function: int message_set_get_part (message_t msg, int (*_get_part) (message_t, size_t, message_t *), void *owner)
— Function: int message_get_uidl (message_t msg, char *buffer, size_t buflen, size_t *writen)
— Function: int message_set_uidl (message_t msg, int (*_get_uidl) (message_t, char *, size_t, size_t *), void *owner)
— Function: int message_get_uid (message_t msg, size_t *uid)
— Function: int message_set_uid (message_t msg, int (*_get_uid) (message_t, size_t *), void *owner)
— Function: int message_create_attachment (const char *content_type, const char *encoding, const char *filename, message_t *newmsg)
— Function: int message_save_attachment (message_t msg, const char *filename, void **data)
— Function: int message_encapsulate (message_t msg, message_t *newmsg, void **data)
— Function: int message_unencapsulate (message_t msg, message_t *newmsg, void **data);
— Function: int message_get_attachment_name (message_t msg, char *name, size_t bufsize, size_t *size);
— Function: int message_aget_attachment_name (message_t msg, char **name);
— Function: int message_save_to_mailbox (message_t msg, ticket_t ticket, mu_debug_t debug, const char *toname);