/* Prefixmailbox_is reserved. */#include <mailutils/mailbox.h>
The
mailbox_tobject is used to hold information and it is an opaque data structure to the user. Functions are provided to retrieve information from the data structure.
mailbox_t url_t
-/var/mail- +---//--->/-----------------\ +-->/-----------\
( alain ) | | url_t *-|---+ | port |
---------- | |-----------------+ | hostname |
( jakob *-)----+ | observer_t *-| | file |
---------- |-----------------+ | ... |
( jeff ) | stream_t | \-----------/
---------- |-----------------|
( sean ) | locker_t |
---------- |-----------------|
| message_t(1) |
|-----------------|
| message_t(2) |
| ...... |
| message_t(n) |
\-----------------/
The function
mailbox_createallocates and initializes mbox. The concrete mailbox type instantiate is based on the scheme of the url name.The return value is
0on success and a code number on error conditions:
MU_ERR_OUT_PTR_NULL- The pointer mbox supplied is
NULL.MU_ERR_NO_HANDLER- The url name supplied is invalid or not supported.
EINVALENOMEM- Not enough memory to allocate resources.
Create a mailbox with
mailbox_create()based on the environment variable MAIL or the string formed by _PATH_MAILDIR/user" or LOGNAME if user is null,
A connection is open, if no stream was provided, a stream is created based on the mbox type. The flag can be OR'ed. See
stream_create()for flag's description.The return value is
0on success and a code number on error conditions:
EAGAINEINPROGRESS- Operation in progress.
EBUSY- Resource busy.
MU_ERROR_INVALID_PARAMETER- mbox is
NULLor flag is invalid.ENOMEM- Not enough memory.
The stream attach to mbox is closed.
The return value is
0on success and a code number on error conditions:
MU_ERROR_INVALID_PARAMETER- mbox is
NULL.
Get the folder.
The return value is
0on success and a code number on error conditions:
MU_ERROR_INVALID_PARAMETER- mbox is
NULL.
Give the uid validity of mbox.
The return value is
0on success and a code number on error conditions:
MU_ERROR_INVALID_PARAMETER- mbox is
NULL.
Give the next predicted uid for mbox.
The return value is
0on success and a code number on error conditions:
MU_ERROR_INVALID_PARAMETER- mbox is
NULL.
Retrieve message number msgno, message is allocated and initialized.
The return value is
0on success and a code number on error conditions:
MU_ERROR_INVALID_PARAMETER- mbox is
NULLor msgno is invalid.ENOMEM- Not enough memory.
The message is appended to the mailbox mbox.
The return value is
0on success and a code number on error conditions:
MU_ERROR_INVALID_PARAMETER- mbox is
NULLor message is invalid.
Give the number of messages in mbox.
The return value is
0on success and a code number on error conditions:
MU_ERROR_INVALID_PARAMETER- mbox is
NULL.
Give the number of recent messages in mbox.
The return value is
0on success and a code number on error conditions:
MU_ERROR_INVALID_PARAMETER- mbox is
NULL.
Give the number of first unseen message in mbox.
The return value is
0on success and a code number on error conditions:
MU_ERROR_INVALID_PARAMETER- mbox is
NULL.
All messages marked for deletion are removed.
The return value is
0on success and a code number on error conditions:
MU_ERROR_INVALID_PARAMETER- mbox is
NULL.
Gives the mbox size.
The return value is
0on success and a code number on error conditions:
MU_ERROR_INVALID_PARAMETER- mbox is
NULL.
Scan the mailbox for new messages starting at message msgno.
The return value is
0on success and a code number on error conditions:
MU_ERROR_INVALID_PARAMETER- mbox is
NULL.ENOMEM- Not enough memory.
The mailbox stream is put in stream.
The return value is
0on success and a code number on error conditions:
MU_ERROR_INVALID_PARAMETER- mbox is invalid or stream is
NULL.
Set the stream connection to use for the mailbox.
The return value is
0on success and a code number on error conditions:
MU_ERROR_INVALID_PARAMETER- mbox or stream is
NULL.
Get the locker_t object.
The return value is
0on success and a code number on error conditions:
MU_ERROR_INVALID_PARAMETER- mbox is
NULL.
Set the type of locking done by the mbox.
The return value is
0on success and a code number on error conditions:
MU_ERROR_INVALID_PARAMETER- mbox is
NULL.
Get the property object. The return value is
0on success and a code number on error conditions:
MU_ERROR_INVALID_PARAMETER- mbox is
NULL.ENOMEM
Gives the constructed url.
The return value is
0on success and a code number on error conditions:
MU_ERROR_INVALID_PARAMETER- mbox is
NULL.
Get a debug object. The return value is
0on success and a code number on error conditions:
MU_ERROR_INVALID_PARAMETER- mbox is
NULL.ENOMEM