A bunch of typo correction from Thomas.
Showing
21 changed files
with
97 additions
and
92 deletions
1 | @example | 1 | @example |
2 | @code{/* Prefix @emph{address_} is reserve */} | 2 | @code{/* Prefix @emph{address_} is reserved */} |
3 | @code{#include <mailutils/address.h>} | 3 | @code{#include <mailutils/address.h>} |
4 | 4 | ||
5 | @end example | 5 | @end example |
... | @@ -91,7 +91,7 @@ The @var{addr} is destroyed. | ... | @@ -91,7 +91,7 @@ The @var{addr} is destroyed. |
91 | 91 | ||
92 | @deftypefun int address_get_email (address_t *@var{addr}, size_t @var{no}, char* @var{buf}, size_t @var{len}, size_t* @var{n}) | 92 | @deftypefun int address_get_email (address_t *@var{addr}, size_t @var{no}, char* @var{buf}, size_t @var{len}, size_t* @var{n}) |
93 | 93 | ||
94 | Acesses the @var{no}th email address component of the address list. This | 94 | Accesses the @var{no}th email address component of the address list. This |
95 | address is the plain email address, correctly quoted, suitable for | 95 | address is the plain email address, correctly quoted, suitable for |
96 | using in an smtp dialog, for example, or as the address part of | 96 | using in an smtp dialog, for example, or as the address part of |
97 | a contact book entry. | 97 | a contact book entry. |
... | @@ -105,7 +105,7 @@ The return value is @code{0} on success and a code number on error conditions: | ... | @@ -105,7 +105,7 @@ The return value is @code{0} on success and a code number on error conditions: |
105 | 105 | ||
106 | @deftypefun int address_get_personal (address_t *@var{addr}, size_t @var{no}, char* @var{buf}, size_t @var{len}, size_t* @var{n}) | 106 | @deftypefun int address_get_personal (address_t *@var{addr}, size_t @var{no}, char* @var{buf}, size_t @var{len}, size_t* @var{n}) |
107 | 107 | ||
108 | Acesses the display-name describing the @var{no}th email address. This | 108 | Accesses the display-name describing the @var{no}th email address. This |
109 | display-name is optional, so may not be present. If it is not present, but | 109 | display-name is optional, so may not be present. If it is not present, but |
110 | there is an RFC822 comment after the address, that comment will be | 110 | there is an RFC822 comment after the address, that comment will be |
111 | returned as the personal phrase, as this is a common usage of the comment | 111 | returned as the personal phrase, as this is a common usage of the comment |
... | @@ -127,7 +127,7 @@ The return value is @code{0} on success and a code number on error conditions: | ... | @@ -127,7 +127,7 @@ The return value is @code{0} on success and a code number on error conditions: |
127 | 127 | ||
128 | @deftypefun int address_get_comments (address_t *@var{addr}, size_t @var{no}, char* @var{buf}, size_t @var{len}, size_t* @var{n}) | 128 | @deftypefun int address_get_comments (address_t *@var{addr}, size_t @var{no}, char* @var{buf}, size_t @var{len}, size_t* @var{n}) |
129 | 129 | ||
130 | Acesses the comments extracted while parsing the @var{no}th email address. | 130 | Accesses the comments extracted while parsing the @var{no}th email address. |
131 | These comments have no defined meaning, and are not currently collected. | 131 | These comments have no defined meaning, and are not currently collected. |
132 | 132 | ||
133 | The return value is @code{0} on success and a code number on error conditions: | 133 | The return value is @code{0} on success and a code number on error conditions: |
... | @@ -140,7 +140,7 @@ The return value is @code{0} on success and a code number on error conditions: | ... | @@ -140,7 +140,7 @@ The return value is @code{0} on success and a code number on error conditions: |
140 | 140 | ||
141 | @deftypefun int address_get_email (address_t *@var{addr}, size_t @var{no}, char* @var{buf}, size_t @var{len}, size_t* @var{n}) | 141 | @deftypefun int address_get_email (address_t *@var{addr}, size_t @var{no}, char* @var{buf}, size_t @var{len}, size_t* @var{n}) |
142 | 142 | ||
143 | Acesses the email addr-spec extracted while | 143 | Accesses the email addr-spec extracted while |
144 | parsing the @var{no}th email address. This will be @code{0} | 144 | parsing the @var{no}th email address. This will be @code{0} |
145 | length for a unix-mbox. | 145 | length for a unix-mbox. |
146 | 146 | ||
... | @@ -153,7 +153,7 @@ The return value is @code{0} on success and a code number on error conditions: | ... | @@ -153,7 +153,7 @@ The return value is @code{0} on success and a code number on error conditions: |
153 | 153 | ||
154 | @deftypefun int address_get_local_part (address_t *@var{addr}, size_t @var{no}, char* @var{buf}, size_t @var{len}, size_t* @var{n}) | 154 | @deftypefun int address_get_local_part (address_t *@var{addr}, size_t @var{no}, char* @var{buf}, size_t @var{len}, size_t* @var{n}) |
155 | 155 | ||
156 | Acesses the local-part of an email addr-spec extracted while | 156 | Accesses the local-part of an email addr-spec extracted while |
157 | parsing the @var{no}th email address. | 157 | parsing the @var{no}th email address. |
158 | 158 | ||
159 | The return value is @code{0} on success and a code number on error conditions: | 159 | The return value is @code{0} on success and a code number on error conditions: |
... | @@ -165,7 +165,7 @@ The return value is @code{0} on success and a code number on error conditions: | ... | @@ -165,7 +165,7 @@ The return value is @code{0} on success and a code number on error conditions: |
165 | 165 | ||
166 | @deftypefun int address_get_domain (address_t *@var{addr}, size_t @var{no}, char* @var{buf}, size_t @var{len}, size_t* @var{n}) | 166 | @deftypefun int address_get_domain (address_t *@var{addr}, size_t @var{no}, char* @var{buf}, size_t @var{len}, size_t* @var{n}) |
167 | 167 | ||
168 | Acesses the domain of an email addr-spec extracted while | 168 | Accesses the domain of an email addr-spec extracted while |
169 | parsing the @var{no}th email address. This will be @code{0} | 169 | parsing the @var{no}th email address. This will be @code{0} |
170 | length for a unix-mbox. | 170 | length for a unix-mbox. |
171 | 171 | ||
... | @@ -178,7 +178,7 @@ The return value is @code{0} on success and a code number on error conditions: | ... | @@ -178,7 +178,7 @@ The return value is @code{0} on success and a code number on error conditions: |
178 | 178 | ||
179 | @deftypefun int address_get_route (address_t *@var{addr}, size_t @var{no}, char* @var{buf}, size_t @var{len}, size_t* @var{n}) | 179 | @deftypefun int address_get_route (address_t *@var{addr}, size_t @var{no}, char* @var{buf}, size_t @var{len}, size_t* @var{n}) |
180 | 180 | ||
181 | Acesses the route of an email addr-spec extracted while | 181 | Accesses the route of an email addr-spec extracted while |
182 | parsing the @var{no}th email address. This is a rarely used RFC822 address | 182 | parsing the @var{no}th email address. This is a rarely used RFC822 address |
183 | syntax, but is legal in SMTP as well. The entire route is returned as | 183 | syntax, but is legal in SMTP as well. The entire route is returned as |
184 | a string, those wishing to parse it should look at <mailutils/parse822.h>. | 184 | a string, those wishing to parse it should look at <mailutils/parse822.h>. | ... | ... |
1 | @example | 1 | @example |
2 | @code{/* Prefix @emph{auth_} is reserve */} | 2 | @code{/* Prefix @emph{auth_} is reserved */} |
3 | @code{#include <mailutils/auth.h>} | 3 | @code{#include <mailutils/auth.h>} |
4 | 4 | ||
5 | @end example | 5 | @end example |
6 | 6 | ||
7 | There are many ways to authenticate to a server, to be flexible the | 7 | There are many ways to authenticate to a server. To be flexible the |
8 | authentication process is provided by two objects @code{auth_t} and | 8 | authentication process is provided by two objects @code{auth_t} and |
9 | @code{ticket_t}. The @code{auth_t} can implement different protocol like | 9 | @code{ticket_t}. The @code{auth_t} can implement different protocol like |
10 | APOP, MD5-AUTH, One Time Passwd etc .. By default if a mailbox | 10 | APOP, MD5-AUTH, One Time Passwd etc .. By default if a mailbox |
11 | does not understand or know how to authenticate it falls back to | 11 | does not understand or know how to authenticate it falls back to |
12 | user/passwd authentication. The @code{ticket_t} is away to | 12 | user/passwd authentication. The @code{ticket_t} is a way for |
13 | Mailboxes and Mailers provide a way to authenticate when the URL does not | 13 | Mailboxes and Mailers provide a way to authenticate when the URL does not |
14 | contain enough information. The default action is to call function | 14 | contain enough information. The default action is to call the function |
15 | @code{auth_authenticate} who will get the @emph{user} and @emph{passwd} | 15 | @code{auth_authenticate} which will get the @emph{user} and @emph{passwd} |
16 | if not set, this function can be override by a custom method. | 16 | if not set, this function can be overriden by a custom method. |
17 | 17 | ||
18 | @deftypefun int auth_create (auth_t *@var{pauth}, void *@var{owner}) | 18 | @deftypefun int auth_create (auth_t *@var{pauth}, void *@var{owner}) |
19 | @end deftypefun | 19 | @end deftypefun | ... | ... |
... | @@ -16,10 +16,10 @@ | ... | @@ -16,10 +16,10 @@ |
16 | 16 | ||
17 | @end menu | 17 | @end menu |
18 | 18 | ||
19 | Where ever the mail is and whatever format it is store in, the same operations | 19 | Whereever the mail is and whatever format it is stored in, the same operations |
20 | to manipulate emails are common. To unified the C API, GNU mailutils offers | 20 | to manipulate emails are common. To unified the C API, GNU mailutils offers |
21 | an heteroclite set of objects that work in aggregation to do operations on | 21 | a heteroclite set of objects that work in aggregation to do operations on |
22 | emails. Each object do a specific task and delegate non related tasks to | 22 | emails. Each object do a specific task and delegates non related tasks to |
23 | others. The object comes alive by specifying a @emph{URL} parameter when | 23 | others. The object comes alive by specifying a @emph{URL} parameter when |
24 | created, it will indicate the storage format or protocol | 24 | created, it will indicate the storage format or protocol |
25 | (POP3, IMAP4, MH, MAILDIR, etc ..). | 25 | (POP3, IMAP4, MH, MAILDIR, etc ..). | ... | ... |
1 | @example | 1 | @example |
2 | @code{/* Prefix @emph{mailbox_} is reserve */} | 2 | @code{/* Prefix @emph{mailbox_} is reserved */} |
3 | @code{#include <mailutils/mailbox.h>} | 3 | @code{#include <mailutils/mailbox.h>} |
4 | 4 | ||
5 | @end example | 5 | @end example |
6 | 6 | ||
7 | @deftp {Data Type} mailbox_t | 7 | @deftp {Data Type} mailbox_t |
8 | The @code{mailbox_t} object is used to hold information and it is an opaque | 8 | The @code{mailbox_t} object is used to hold information and it is an opaque |
9 | data structure to the user. Functions are provided to retrieve the information. | 9 | data structure to the user. Functions are provided to retrieve information |
10 | from the data structure. | ||
10 | @end deftp | 11 | @end deftp |
11 | @example | 12 | @example |
12 | @group | 13 | @group |
... | @@ -64,9 +65,9 @@ Not enough memory to allocate resources. | ... | @@ -64,9 +65,9 @@ Not enough memory to allocate resources. |
64 | @end deftypefun | 65 | @end deftypefun |
65 | 66 | ||
66 | @deftypefun int mailbox_create_default (mailbox_t *@var{pmbox}, const char *@var{name}) | 67 | @deftypefun int mailbox_create_default (mailbox_t *@var{pmbox}, const char *@var{name}) |
67 | The environment variable @emph{$MAIL} or the string formed by | 68 | Create a mailbox with @code{mailbox_create ()} based on the environment |
69 | variable @emph{$MAIL} or the string formed by | ||
68 | @emph{_PATH_MAILDIR}/@var{user}" or @emph{$LOGNAME} if @var{user} is null, | 70 | @emph{_PATH_MAILDIR}/@var{user}" or @emph{$LOGNAME} if @var{user} is null, |
69 | for a default mailbox and calls @code{mailbox_create}. | ||
70 | @end deftypefun | 71 | @end deftypefun |
71 | 72 | ||
72 | @deftypefun void mailbox_destroy (mailbox_t *@var{pmbox}) | 73 | @deftypefun void mailbox_destroy (mailbox_t *@var{pmbox}) | ... | ... |
... | @@ -104,7 +104,7 @@ This document was produced for version @value{VERSION} of @sc{gnu} | ... | @@ -104,7 +104,7 @@ This document was produced for version @value{VERSION} of @sc{gnu} |
104 | @end ifinfo | 104 | @end ifinfo |
105 | @menu | 105 | @menu |
106 | * Introduction:: GNU @sc{mailutils} | 106 | * Introduction:: GNU @sc{mailutils} |
107 | * C API:: C API. | 107 | * Concrete API:: Concrete API. |
108 | * Framework:: Framework. | 108 | * Framework:: Framework. |
109 | * Programs:: Programs. | 109 | * Programs:: Programs. |
110 | * Reporting Bugs:: Reporting Bugs. | 110 | * Reporting Bugs:: Reporting Bugs. |
... | @@ -114,7 +114,7 @@ This document was produced for version @value{VERSION} of @sc{gnu} | ... | @@ -114,7 +114,7 @@ This document was produced for version @value{VERSION} of @sc{gnu} |
114 | 114 | ||
115 | @end menu | 115 | @end menu |
116 | 116 | ||
117 | @node Introduction, C API, Top, Top | 117 | @node Introduction, Concrete API, Top, Top |
118 | @comment node-name, next, previous, up | 118 | @comment node-name, next, previous, up |
119 | @chapter Introduction | 119 | @chapter Introduction |
120 | @cindex Introduction | 120 | @cindex Introduction |
... | @@ -217,14 +217,14 @@ Misc | ... | @@ -217,14 +217,14 @@ Misc |
217 | @cite{Internet Email Protocols a Developer's Guide by Kevin Johnson} | 217 | @cite{Internet Email Protocols a Developer's Guide by Kevin Johnson} |
218 | @end itemize | 218 | @end itemize |
219 | 219 | ||
220 | @node C API, Framework, Introduction, Top | 220 | @node Concrete API, Framework, Introduction, Top |
221 | @comment node-name, next, previous, up | 221 | @comment node-name, next, previous, up |
222 | @chapter C API | 222 | @chapter Concrete API |
223 | @cindex C API | 223 | @cindex Concrete API |
224 | 224 | ||
225 | @include c-api.texi | 225 | @include c-api.texi |
226 | 226 | ||
227 | @node Framework, Programs, C API, Top | 227 | @node Framework, Programs, Concrete API, Top |
228 | @comment node-name, next, previous, up | 228 | @comment node-name, next, previous, up |
229 | @chapter Framework | 229 | @chapter Framework |
230 | @cindex Framework | 230 | @cindex Framework | ... | ... |
1 | @example | 1 | @example |
2 | @code{/* Prefix @emph{pop3_} is reserve */} | 2 | @code{/* Prefix @emph{pop3_} is reserved */} |
3 | @code{#include <mailutils/pop3.h>} | 3 | @code{#include <mailutils/pop3.h>} |
4 | 4 | ||
5 | @end example | 5 | @end example |
6 | 6 | ||
7 | The Post Office Protocol Version 3 (POP3) purpose is to permit a client to | 7 | The Post Office Protocol Version 3 (POP3) purpose is to permit a client to |
8 | download a maildrop from a remote server. It does not provide complexe or | 8 | download a maildrop from a remote server. It does not provide complex or |
9 | extensive operation on the maildrop. | 9 | extensive operation on the maildrop. |
10 | 10 | ||
11 | @example | 11 | @example |
... | @@ -45,7 +45,7 @@ Capa (extension) | ... | @@ -45,7 +45,7 @@ Capa (extension) |
45 | Auth (extension) | 45 | Auth (extension) |
46 | @end itemize | 46 | @end itemize |
47 | 47 | ||
48 | When the client successfully authenticate the server acquires an exclusive | 48 | When the client successfully authenticates the server acquires an exclusive |
49 | access lock on the mailbox and holds it the entire duration of the session. | 49 | access lock on the mailbox and holds it the entire duration of the session. |
50 | The POP3 session enters The TRANSACTION State and the client may issues | 50 | The POP3 session enters The TRANSACTION State and the client may issues |
51 | commands to access the mailbox: | 51 | commands to access the mailbox: |
... | @@ -80,36 +80,36 @@ and closes the TCP connection. | ... | @@ -80,36 +80,36 @@ and closes the TCP connection. |
80 | @cindex pop3_t | 80 | @cindex pop3_t |
81 | 81 | ||
82 | An opaque structure @emph{pop3_t} is use as a handle for the session, it is | 82 | An opaque structure @emph{pop3_t} is use as a handle for the session, it is |
83 | allocate and initiliaze by calling @code{pop3_create ()}. All Functions will | 83 | allocated and initiliazed by calling @code{pop3_create ()}. All Functions will |
84 | wait for a reply from the POP3 server before returning. The duration of | 84 | wait for a reply from the POP3 server before returning. The duration of |
85 | the waiting can be set by calling @code{pop3_set_timeout ()}, the default | 85 | the wait can be set by calling @code{pop3_set_timeout ()}, the default |
86 | is 10 minutes@footnote{@strong{Caution:} Although the @cite{RFC 1939} | 86 | is 10 minutes@footnote{@strong{Caution:} Although the @cite{RFC 1939} |
87 | specifies that the minimum default timeout is ten minutes many servers has | 87 | specifies that the minimum default timeout is ten minutes many servers has |
88 | shorter idle period, care should be taken to at least send a | 88 | shorter idle period, care should be taken to at least send a |
89 | @code{pop3_noop ()} between lengthy period of times.}. Once a succesfull | 89 | @code{pop3_noop ()} between lengthy period of times.}. Once a succesfull |
90 | connection is establish with @code{pop3_open ()}, two builtin authentications | 90 | connection is established with @code{pop3_open ()}, two builtin authentications |
91 | are provided @code{pop3_apop ()} or @code{pop3_user ()}, @code{pop3_pass ()}. | 91 | are provided @code{pop3_apop ()} or @code{pop3_user ()}, @code{pop3_pass ()}. |
92 | The @code{pop3_stat ()} and @code{pop3_list ()} functions can be use to get the | 92 | The @code{pop3_stat ()} and @code{pop3_list ()} functions can be use to get the |
93 | messages count and sizes. Downloading of messages are done via a stream | 93 | number and size of messages. Downloading of messages is done via a stream |
94 | provided by @code{pop3_retr ()} or @code{pop3_top ()}@footnote{ | 94 | provided by @code{pop3_retr ()} or @code{pop3_top ()}@footnote{ |
95 | @strong{Caution:} Some Internet Service Providers do not permit to leave mail | 95 | @strong{Caution:} Some Internet Service Providers do not permit to leave mail |
96 | on server and the message will be deleted once downloaded.}. | 96 | on server and the message will be deleted once downloaded.}. |
97 | The @code{stream_t} should be | 97 | The @code{stream_t} should be destroyed to indicate to the library that the |
98 | destroy to indicate to the library that the action is finish. POP3 only | 98 | action is finished. POP3 only provide a single channel for operation, it |
99 | provide a single channel for operation, it means only one operation can be | 99 | means only one operation can be done at a time, all the functions will return |
100 | done at a time, all the functions will return MU_ERROR_OPERATION_IN_PROGRESS | 100 | MU_ERROR_OPERATION_IN_PROGRESS if call during another operation. The |
101 | if call during another operation. The functions @code{pop3_list_all ()}, | 101 | functions @code{pop3_list_all ()}, |
102 | @code{pop3_uidl_all ()} and @code{pop3_capa ()} give an @code{iterator_t}, | 102 | @code{pop3_uidl_all ()} and @code{pop3_capa ()} return an @code{iterator_t}, |
103 | when iterating @code{iterator_current ()} will give an object that should | 103 | when iterating @code{iterator_current ()} will return an object that should |
104 | be cast appropriatly and @code{free ()} by the caller, the @code{iterator_t} | 104 | be cast appropriatly and @code{free ()}'ed by the caller, the @code{iterator_t} |
105 | must also be destroy, @code{iterator_destroy ()}. | 105 | must also be destroyed, @code{iterator_destroy ()}. |
106 | 106 | ||
107 | @subsubsection Initialisation | 107 | @subsubsection Initialisation |
108 | @cindex POP3 Initialisation | 108 | @cindex POP3 Initialisation |
109 | 109 | ||
110 | @deftypefun int pop3_create (pop3_t *) | 110 | @deftypefun int pop3_create (pop3_t *) |
111 | 111 | ||
112 | A valid @code{pop3_t} handle must be create first. | 112 | A valid @code{pop3_t} handle must be created first. |
113 | 113 | ||
114 | @table @code | 114 | @table @code |
115 | @item MU_ERROR_NO_MEMORY | 115 | @item MU_ERROR_NO_MEMORY |
... | @@ -119,15 +119,15 @@ A valid @code{pop3_t} handle must be create first. | ... | @@ -119,15 +119,15 @@ A valid @code{pop3_t} handle must be create first. |
119 | 119 | ||
120 | @deftypefun void pop3_destroy (pop3_t *) | 120 | @deftypefun void pop3_destroy (pop3_t *) |
121 | 121 | ||
122 | When the POP3 session is finished, the structure must be free to reclaim | 122 | When the POP3 session is finished, the structure must be @code{free ()}'ed to reclaim |
123 | memory. | 123 | memory. |
124 | @end deftypefun | 124 | @end deftypefun |
125 | 125 | ||
126 | @deftypefun int pop3_open (pop3_t, const char *@var{host}, unsigned port, int @var{flags}) | 126 | @deftypefun int pop3_open (pop3_t, const char *@var{host}, unsigned port, int @var{flags}) |
127 | 127 | ||
128 | A connection is establish by calling @code{pop3d_open()}. If non-blocking | 128 | A connection is established by calling @code{pop3d_open()}. If non-blocking |
129 | the function should be recall until the return value is no MU_ERROR_TRY_AGAIN | 129 | the function should be recalled until the return value is not |
130 | or MU_ERROR_IN_PROGRESS. | 130 | MU_ERROR_TRY_AGAIN or MU_ERROR_IN_PROGRESS. |
131 | 131 | ||
132 | @table @code | 132 | @table @code |
133 | @item MU_ERROR_NO_MEMORY | 133 | @item MU_ERROR_NO_MEMORY |
... | @@ -141,10 +141,10 @@ or MU_ERROR_IN_PROGRESS. | ... | @@ -141,10 +141,10 @@ or MU_ERROR_IN_PROGRESS. |
141 | @end table | 141 | @end table |
142 | @end deftypefun | 142 | @end deftypefun |
143 | 143 | ||
144 | @deftypefun int pop3_set_carrier (pop3_t, stream_t @var{carrier}); | 144 | @deftypefun int pop3_set_stream (pop3_t, stream_t @var{carrier}); |
145 | 145 | ||
146 | A connection may have been started elsewhere, in this case the @code{stream_t} | 146 | A connection may have been started elsewhere, in this case the @code{stream_t} |
147 | object is set on the @code{pop3_t} handle. | 147 | object is set in the @code{pop3_t} handle. |
148 | 148 | ||
149 | @table @code | 149 | @table @code |
150 | @item MU_ERROR_INVALID_PARAMETER | 150 | @item MU_ERROR_INVALID_PARAMETER |
... | @@ -152,6 +152,10 @@ object is set on the @code{pop3_t} handle. | ... | @@ -152,6 +152,10 @@ object is set on the @code{pop3_t} handle. |
152 | @end deftypefun | 152 | @end deftypefun |
153 | 153 | ||
154 | @deftypefun int pop3_get_carrier (pop3_t, stream_t *@var{carrier}); | 154 | @deftypefun int pop3_get_carrier (pop3_t, stream_t *@var{carrier}); |
155 | |||
156 | Fill in the @code{stream_t} object with the stream form the @code{pop3_t} | ||
157 | handle. | ||
158 | |||
155 | @table @code | 159 | @table @code |
156 | @item MU_ERROR_INVALID_PARAMETER | 160 | @item MU_ERROR_INVALID_PARAMETER |
157 | @item MU_ERROR_NO_MEMORY | 161 | @item MU_ERROR_NO_MEMORY |
... | @@ -168,7 +172,7 @@ use of POP3, for example checking for new mail, it is the prefered | ... | @@ -168,7 +172,7 @@ use of POP3, for example checking for new mail, it is the prefered |
168 | authentication. It reduces the risk of passwd capture. The @var{user} | 172 | authentication. It reduces the risk of passwd capture. The @var{user} |
169 | and the shared @var{secret} are pass to @code{pop3_apop ()}, the MD5 digest | 173 | and the shared @var{secret} are pass to @code{pop3_apop ()}, the MD5 digest |
170 | is calculated by applying the timestamp given by the server in the greeting | 174 | is calculated by applying the timestamp given by the server in the greeting |
171 | followed by the @var{secret} and a @emph{APOP user digest} command is send. | 175 | followed by the @var{secret} and @emph{APOP user digest} command is send. |
172 | 176 | ||
173 | @table @code | 177 | @table @code |
174 | @item MU_ERROR_INVALID_PARAMETER | 178 | @item MU_ERROR_INVALID_PARAMETER |
... | @@ -185,8 +189,8 @@ followed by the @var{secret} and a @emph{APOP user digest} command is send. | ... | @@ -185,8 +189,8 @@ followed by the @var{secret} and a @emph{APOP user digest} command is send. |
185 | @deftypefun int pop3_auth (pop3_t, const char *@var{auth}) | 189 | @deftypefun int pop3_auth (pop3_t, const char *@var{auth}) |
186 | 190 | ||
187 | To allow the use of mechanism such as @emph{SASL}, @cite{RFC 2449}, extended | 191 | To allow the use of mechanism such as @emph{SASL}, @cite{RFC 2449}, extended |
188 | POP3 mechanism whith AUTH. It permits the client to choose an alternate | 192 | POP3 mechanism with AUTH. It permits the client to choose an alternate |
189 | way of authenticate. @strong{Caution:} The @code{pop_auth()} is a simple | 193 | way of authenticating. @strong{Caution:} The @code{pop_auth()} is a simple |
190 | cover function that sends @emph{AUTH auth}, functions @code{pop3_sendline}, | 194 | cover function that sends @emph{AUTH auth}, functions @code{pop3_sendline}, |
191 | @code{pop3_readline}, @code{pop3_response} or the pop3 stream | 195 | @code{pop3_readline}, @code{pop3_response} or the pop3 stream |
192 | @code{pop3_get_carrier ()} should be use appropriately to deal with the | 196 | @code{pop3_get_carrier ()} should be use appropriately to deal with the |
... | @@ -204,13 +208,13 @@ challenges. | ... | @@ -204,13 +208,13 @@ challenges. |
204 | @subsubsection Capa | 208 | @subsubsection Capa |
205 | @cindex POP3 Capa | 209 | @cindex POP3 Capa |
206 | 210 | ||
207 | @deftypefun int pop3_capa (pop3_t, iterator_t *) | 211 | @deftypefun int pop3_capa (pop3_t, iterator_t *@var{iterator}) |
208 | 212 | ||
209 | The CAPA command is send to the sever and the list of capabilities is | 213 | The CAPA command is send to the sever and the list of capabilities is |
210 | return in an @var{iterator}. The @code{iterator_current ()} should be cast | 214 | return in an @var{iterator}. The @code{iterator_current ()} should be cast |
211 | to a @code{char **} and the string should be free by the caller. | 215 | to a @code{char **} and the string should be @code{free ()}'ed by the caller. |
212 | @strong{Caution:} The iterator must be destroy after use, it will discard | 216 | @strong{Caution:} The iterator must be destroy after use, it will discard |
213 | any remaining response from CAPA and clear the way for new operations. | 217 | any remaining responses from CAPA and clear the way for new operations. |
214 | 218 | ||
215 | @table @code | 219 | @table @code |
216 | @item MU_ERROR_INVALID_PARAMETER | 220 | @item MU_ERROR_INVALID_PARAMETER |
... | @@ -247,12 +251,12 @@ void print_capabilities (pop3_t pop3) | ... | @@ -247,12 +251,12 @@ void print_capabilities (pop3_t pop3) |
247 | 251 | ||
248 | @end deftypefun | 252 | @end deftypefun |
249 | 253 | ||
250 | @subsubsection Dele | 254 | @subsubsection DELE |
251 | @cindex POP3 Dele | 255 | @cindex POP3 DELE |
252 | 256 | ||
253 | @deftypefun int pop3_dele (pop3_t, unsigned @var{msgno}) | 257 | @deftypefun int pop3_dele (pop3_t, unsigned @var{msgno}) |
254 | 258 | ||
255 | Sends A Dele to the servers who will mark the @var{msgno} for deletion. | 259 | Sends a DELE to the servers who will mark the @var{msgno} for deletion. |
256 | The @var{msgno} may not refer to a message already marked deleted. | 260 | The @var{msgno} may not refer to a message already marked deleted. |
257 | If successfull any future reference to @var{msgno} in other operations will | 261 | If successfull any future reference to @var{msgno} in other operations will |
258 | be an error, unless unmarked by RSET. | 262 | be an error, unless unmarked by RSET. |
... | @@ -267,13 +271,13 @@ be an error, unless unmarked by RSET. | ... | @@ -267,13 +271,13 @@ be an error, unless unmarked by RSET. |
267 | 271 | ||
268 | @end deftypefun | 272 | @end deftypefun |
269 | 273 | ||
270 | @subsubsection List | 274 | @subsubsection LIST |
271 | @cindex POP3 List | 275 | @cindex POP3 LIST |
272 | @cindex struct pop3_list | 276 | @cindex struct pop3_list |
273 | 277 | ||
274 | @deftypefun int pop3_list (pop3_t, unsigned @var{msgno}, size_t *@var{size}) | 278 | @deftypefun int pop3_list (pop3_t, unsigned @var{msgno}, size_t *@var{size}) |
275 | 279 | ||
276 | Sends a List for a specific @var{msgno} and returns the @var{size}. | 280 | Sends a LIST for a specific @var{msgno} and returns the @var{size}. |
277 | 281 | ||
278 | @table @code | 282 | @table @code |
279 | @item MU_ERROR_INVALID_PARAMETER | 283 | @item MU_ERROR_INVALID_PARAMETER |
... | @@ -284,12 +288,12 @@ Sends a List for a specific @var{msgno} and returns the @var{size}. | ... | @@ -284,12 +288,12 @@ Sends a List for a specific @var{msgno} and returns the @var{size}. |
284 | @end table | 288 | @end table |
285 | @end deftypefun | 289 | @end deftypefun |
286 | 290 | ||
287 | @deftypefun int pop3_list_all (pop3_t, unsigned @var{msgno}, iterator_t *) | 291 | @deftypefun int pop3_list_all (pop3_t, unsigned @var{msgno}, iterator_t *@var{iterator}) |
288 | 292 | ||
289 | Sends A LIST with no argument to the server. The @var{iterator} must be | 293 | Sends A LIST with no argument to the server. The @var{iterator} must be |
290 | destroy after use, it will discard any remaining response from LIST and | 294 | destroy after use, it will discard any remaining response from LIST and |
291 | clear the way for new operations. The @code{iterator_current ()} returns | 295 | clear the way for new operations. The @code{iterator_current ()} returns |
292 | a @code{struct pop3_list *} that must be @code{free ()}. | 296 | a @code{struct pop3_list *} that must be @code{free ()}'ed. |
293 | 297 | ||
294 | @example | 298 | @example |
295 | struct pop3_list | 299 | struct pop3_list |
... | @@ -371,7 +375,7 @@ Sends the PASS, to authenticate after the USER command. | ... | @@ -371,7 +375,7 @@ Sends the PASS, to authenticate after the USER command. |
371 | 375 | ||
372 | @deftypefun int pop3_quit (pop3_t) | 376 | @deftypefun int pop3_quit (pop3_t) |
373 | 377 | ||
374 | Enter the UPDATE state. The server will delet all mesages marked | 378 | Enter the UPDATE state. The server will delete all messages marked |
375 | deleted before closing the connection. | 379 | deleted before closing the connection. |
376 | 380 | ||
377 | @table @code | 381 | @table @code |
... | @@ -388,9 +392,9 @@ deleted before closing the connection. | ... | @@ -388,9 +392,9 @@ deleted before closing the connection. |
388 | 392 | ||
389 | @deftypefun int pop3_retr (pop3_t, unsigned @var{msgno}, stream_t *) | 393 | @deftypefun int pop3_retr (pop3_t, unsigned @var{msgno}, stream_t *) |
390 | 394 | ||
391 | If successfull a @code{stream_t} is created to allow dowloading of the message, | 395 | If successfull a @code{stream_t} is created to allow downloading of the message, |
392 | byte-stuff lines or handle internally, CRLFs are converted to LF. All other | 396 | byte-stuff lines or handle internally, CRLFs are converted to LF. All other |
393 | operations will failed until the stream is destroyed by the caller. | 397 | operations will fail until the stream is destroyed by the caller. |
394 | 398 | ||
395 | @table @code | 399 | @table @code |
396 | @item MU_ERROR_INVALID_PARAMETER | 400 | @item MU_ERROR_INVALID_PARAMETER |
... | @@ -406,7 +410,7 @@ operations will failed until the stream is destroyed by the caller. | ... | @@ -406,7 +410,7 @@ operations will failed until the stream is destroyed by the caller. |
406 | 410 | ||
407 | @deftypefun int pop3_rset (pop3_t) | 411 | @deftypefun int pop3_rset (pop3_t) |
408 | 412 | ||
409 | Sends a RSET to unmarked the messages maked deleted. | 413 | Sends a RSET to unmark the messages marked as deleted. |
410 | 414 | ||
411 | @table @code | 415 | @table @code |
412 | @item MU_ERROR_INVALID_PARAMETER | 416 | @item MU_ERROR_INVALID_PARAMETER |
... | @@ -422,8 +426,8 @@ Sends a RSET to unmarked the messages maked deleted. | ... | @@ -422,8 +426,8 @@ Sends a RSET to unmarked the messages maked deleted. |
422 | 426 | ||
423 | @deftypefun int pop3_stat (pop3_t, unsigned @var{msgno}, unsigned *@var{msg_count}, size_t *@var{size}) | 427 | @deftypefun int pop3_stat (pop3_t, unsigned @var{msgno}, unsigned *@var{msg_count}, size_t *@var{size}) |
424 | 428 | ||
425 | Call a drop listing for the maildrop. The number of messages in the mailbox | 429 | The number of messages in the mailbox and the size of the mailbox in octets. |
426 | and the size of the mailbox in octets. @strong{Caution:} The size is in RFC | 430 | @strong{Caution:} The size is in RFC |
427 | 822 where line termination is CRLF, messages marked as deleted are not counted | 431 | 822 where line termination is CRLF, messages marked as deleted are not counted |
428 | in either total. | 432 | in either total. |
429 | 433 | ||
... | @@ -459,8 +463,8 @@ operations will failed until the stream is destroyed by the caller. | ... | @@ -459,8 +463,8 @@ operations will failed until the stream is destroyed by the caller. |
459 | 463 | ||
460 | @deftypefun int pop3_uidl (pop3_t, unsigned @var{msgno}, char **@var{uidl}) | 464 | @deftypefun int pop3_uidl (pop3_t, unsigned @var{msgno}, char **@var{uidl}) |
461 | 465 | ||
462 | The Uniq Identifier is return in @var{uidl}, the string must be free, | 466 | The Uniq Identifier is return in @var{uidl}, the string must be |
463 | by the caller. | 467 | @code{free ()}'ed, by the caller. |
464 | 468 | ||
465 | @table @code | 469 | @table @code |
466 | @item MU_ERROR_INVALID_PARAMETER | 470 | @item MU_ERROR_INVALID_PARAMETER |
... | @@ -474,8 +478,8 @@ by the caller. | ... | @@ -474,8 +478,8 @@ by the caller. |
474 | @deftypefun int pop3_uidl_all (pop3_t, iterator_t *) | 478 | @deftypefun int pop3_uidl_all (pop3_t, iterator_t *) |
475 | 479 | ||
476 | An @code{iterator_t} object is return to iterate through the response and | 480 | An @code{iterator_t} object is return to iterate through the response and |
477 | must be destroy by the caller. The @code{iterator_current ()} is a | 481 | must be destroyed by the caller. The @code{iterator_current ()} is a |
478 | @code{char **} that must be @code{free ()} by the caller. | 482 | @code{char **} that must be @code{free ()}'ed by the caller. |
479 | 483 | ||
480 | @table @code | 484 | @table @code |
481 | @item MU_ERROR_INVALID_PARAMETER | 485 | @item MU_ERROR_INVALID_PARAMETER |
... | @@ -507,7 +511,7 @@ Sends the User command. | ... | @@ -507,7 +511,7 @@ Sends the User command. |
507 | @deftypefun int pop3_writeline (pop3_t, const char *@var{format}, ...); | 511 | @deftypefun int pop3_writeline (pop3_t, const char *@var{format}, ...); |
508 | 512 | ||
509 | Copy in the internal buffer of @code{pop3_t} the string, @code{pop3_send ()} | 513 | Copy in the internal buffer of @code{pop3_t} the string, @code{pop3_send ()} |
510 | should be call later to flush the string to POP3 server. | 514 | should be called later to flush the string to the POP3 server. |
511 | 515 | ||
512 | @table @code | 516 | @table @code |
513 | @item MU_ERROR_INVALID_PARAMETER | 517 | @item MU_ERROR_INVALID_PARAMETER |
... | @@ -545,7 +549,7 @@ int pop3_sendline (pop3_t pop3, const char *line) | ... | @@ -545,7 +549,7 @@ int pop3_sendline (pop3_t pop3, const char *line) |
545 | 549 | ||
546 | @deftypefun int pop3_send (pop3_t, const char *@var{cmd}); | 550 | @deftypefun int pop3_send (pop3_t, const char *@var{cmd}); |
547 | 551 | ||
548 | Flushes out the strings int the @code{pop3_t} internal buffer to the channel. | 552 | Flushes out the strings in the @code{pop3_t} internal buffer to the channel. |
549 | 553 | ||
550 | @table @code | 554 | @table @code |
551 | @item MU_ERROR_INVALID_PARAMETER | 555 | @item MU_ERROR_INVALID_PARAMETER | ... | ... |
1 | @example | 1 | @example |
2 | @code{/* Prefix @emph{sendmail_} is reserve */} | 2 | @code{/* Prefix @emph{sendmail_} is reserved */} |
3 | @code{#include <mailutils/sendmail.h>} | 3 | @code{#include <mailutils/sendmail.h>} |
4 | 4 | ||
5 | @end example | 5 | @end example |
6 | 6 | ||
7 | Spawning Sedmail daemon to deliver mail. Not implemented. | 7 | Spawning Sendmail daemon to deliver mail. Not implemented. | ... | ... |
-
Please register or sign in to post a comment