Macros | Functions | Variables
imap.c File Reference
#include "curl_setup.h"
#include <curl/curl.h>
#include "urldata.h"
#include "sendf.h"
#include "hostip.h"
#include "progress.h"
#include "transfer.h"
#include "escape.h"
#include "http.h"
#include "socks.h"
#include "imap.h"
#include "mime.h"
#include "strtoofft.h"
#include "strcase.h"
#include "vtls/vtls.h"
#include "connect.h"
#include "strerror.h"
#include "select.h"
#include "multiif.h"
#include "url.h"
#include "curl_sasl.h"
#include "warnless.h"
#include "curl_printf.h"
#include "curl_memory.h"
#include "memdebug.h"
Include dependency graph for imap.c:

Go to the source code of this file.

Macros

#define IMAP_RESP_NOT_OK   2
 
#define IMAP_RESP_OK   1
 
#define IMAP_RESP_PREAUTH   3
 
#define imap_to_imaps(x)   Curl_nop_stmt
 

Functions

static char * imap_atom (const char *str, bool escape_only)
 
static CURLcode imap_block_statemach (struct connectdata *conn)
 
static CURLcode imap_connect (struct connectdata *conn, bool *done)
 
static CURLcode imap_continue_authenticate (struct connectdata *conn, const char *resp)
 
static CURLcode imap_disconnect (struct connectdata *conn, bool dead)
 
static CURLcode imap_do (struct connectdata *conn, bool *done)
 
static CURLcode imap_doing (struct connectdata *conn, bool *dophase_done)
 
static CURLcode imap_done (struct connectdata *conn, CURLcode status, bool premature)
 
static CURLcode imap_dophase_done (struct connectdata *conn, bool connected)
 
static bool imap_endofresp (struct connectdata *conn, char *line, size_t len, int *resp)
 
static void imap_get_message (char *buffer, char **outptr)
 
static int imap_getsock (struct connectdata *conn, curl_socket_t *socks, int numsocks)
 
static CURLcode imap_init (struct connectdata *conn)
 
static bool imap_is_bchar (char ch)
 
static bool imap_matchresp (const char *line, size_t len, const char *cmd)
 
static CURLcode imap_multi_statemach (struct connectdata *conn, bool *done)
 
static CURLcode imap_parse_custom_request (struct connectdata *conn)
 
static CURLcode imap_parse_url_options (struct connectdata *conn)
 
static CURLcode imap_parse_url_path (struct connectdata *conn)
 
static CURLcode imap_perform (struct connectdata *conn, bool *connected, bool *dophase_done)
 
static CURLcode imap_perform_append (struct connectdata *conn)
 
static CURLcode imap_perform_authenticate (struct connectdata *conn, const char *mech, const char *initresp)
 
static CURLcode imap_perform_authentication (struct connectdata *conn)
 
static CURLcode imap_perform_capability (struct connectdata *conn)
 
static CURLcode imap_perform_fetch (struct connectdata *conn)
 
static CURLcode imap_perform_list (struct connectdata *conn)
 
static CURLcode imap_perform_login (struct connectdata *conn)
 
static CURLcode imap_perform_logout (struct connectdata *conn)
 
static CURLcode imap_perform_search (struct connectdata *conn)
 
static CURLcode imap_perform_select (struct connectdata *conn)
 
static CURLcode imap_perform_starttls (struct connectdata *conn)
 
static CURLcode imap_perform_upgrade_tls (struct connectdata *conn)
 
static CURLcode imap_regular_transfer (struct connectdata *conn, bool *done)
 
static CURLcode imap_sendf (struct connectdata *conn, const char *fmt,...)
 
static CURLcode imap_setup_connection (struct connectdata *conn)
 
static CURLcode imap_state_append_final_resp (struct connectdata *conn, int imapcode, imapstate instate)
 
static CURLcode imap_state_append_resp (struct connectdata *conn, int imapcode, imapstate instate)
 
static CURLcode imap_state_auth_resp (struct connectdata *conn, int imapcode, imapstate instate)
 
static CURLcode imap_state_capability_resp (struct connectdata *conn, int imapcode, imapstate instate)
 
static CURLcode imap_state_fetch_final_resp (struct connectdata *conn, int imapcode, imapstate instate)
 
static CURLcode imap_state_fetch_resp (struct connectdata *conn, int imapcode, imapstate instate)
 
static CURLcode imap_state_listsearch_resp (struct connectdata *conn, int imapcode, imapstate instate)
 
static CURLcode imap_state_login_resp (struct connectdata *conn, int imapcode, imapstate instate)
 
static CURLcode imap_state_select_resp (struct connectdata *conn, int imapcode, imapstate instate)
 
static CURLcode imap_state_servergreet_resp (struct connectdata *conn, int imapcode, imapstate instate)
 
static CURLcode imap_state_starttls_resp (struct connectdata *conn, int imapcode, imapstate instate)
 
static CURLcode imap_statemach_act (struct connectdata *conn)
 
static void state (struct connectdata *conn, imapstate newstate)
 

Variables

const struct Curl_handler Curl_handler_imap
 
static const struct SASLproto saslimap
 

Macro Definition Documentation

#define IMAP_RESP_NOT_OK   2

Definition at line 167 of file imap.c.

#define IMAP_RESP_OK   1

Definition at line 166 of file imap.c.

#define IMAP_RESP_PREAUTH   3

Definition at line 168 of file imap.c.

#define imap_to_imaps (   x)    Curl_nop_stmt

Definition at line 192 of file imap.c.

Function Documentation

static char * imap_atom ( const char *  str,
bool  escape_only 
)
static

Definition at line 1758 of file imap.c.

static CURLcode imap_block_statemach ( struct connectdata conn)
static

Definition at line 1348 of file imap.c.

static CURLcode imap_connect ( struct connectdata conn,
bool done 
)
static

Definition at line 1391 of file imap.c.

static CURLcode imap_continue_authenticate ( struct connectdata conn,
const char *  resp 
)
static

Definition at line 545 of file imap.c.

static CURLcode imap_disconnect ( struct connectdata conn,
bool  dead 
)
static

Definition at line 1601 of file imap.c.

static CURLcode imap_do ( struct connectdata conn,
bool done 
)
static

Definition at line 1573 of file imap.c.

static CURLcode imap_doing ( struct connectdata conn,
bool dophase_done 
)
static

Definition at line 1643 of file imap.c.

static CURLcode imap_done ( struct connectdata conn,
CURLcode  status,
bool  premature 
)
static

Definition at line 1440 of file imap.c.

static CURLcode imap_dophase_done ( struct connectdata conn,
bool  connected 
)
static

Definition at line 1629 of file imap.c.

static bool imap_endofresp ( struct connectdata conn,
char *  line,
size_t  len,
int *  resp 
)
static

Definition at line 243 of file imap.c.

static void imap_get_message ( char *  buffer,
char **  outptr 
)
static

Definition at line 345 of file imap.c.

static int imap_getsock ( struct connectdata conn,
curl_socket_t socks,
int  numsocks 
)
static

Definition at line 1375 of file imap.c.

static CURLcode imap_init ( struct connectdata conn)
static

Definition at line 1361 of file imap.c.

static bool imap_is_bchar ( char  ch)
static

Definition at line 1842 of file imap.c.

static bool imap_matchresp ( const char *  line,
size_t  len,
const char *  cmd 
)
static

Definition at line 205 of file imap.c.

static CURLcode imap_multi_statemach ( struct connectdata conn,
bool done 
)
static

Definition at line 1331 of file imap.c.

static CURLcode imap_parse_custom_request ( struct connectdata conn)
static

Definition at line 2062 of file imap.c.

static CURLcode imap_parse_url_options ( struct connectdata conn)
static

Definition at line 1879 of file imap.c.

static CURLcode imap_parse_url_path ( struct connectdata conn)
static

Definition at line 1931 of file imap.c.

static CURLcode imap_perform ( struct connectdata conn,
bool connected,
bool dophase_done 
)
static

Definition at line 1502 of file imap.c.

static CURLcode imap_perform_append ( struct connectdata conn)
static

Definition at line 709 of file imap.c.

static CURLcode imap_perform_authenticate ( struct connectdata conn,
const char *  mech,
const char *  initresp 
)
static

Definition at line 521 of file imap.c.

static CURLcode imap_perform_authentication ( struct connectdata conn)
static

Definition at line 561 of file imap.c.

static CURLcode imap_perform_capability ( struct connectdata conn)
static

Definition at line 413 of file imap.c.

static CURLcode imap_perform_fetch ( struct connectdata conn)
static

Definition at line 675 of file imap.c.

static CURLcode imap_perform_list ( struct connectdata conn)
static

Definition at line 600 of file imap.c.

static CURLcode imap_perform_login ( struct connectdata conn)
static

Definition at line 483 of file imap.c.

static CURLcode imap_perform_logout ( struct connectdata conn)
static

Definition at line 806 of file imap.c.

static CURLcode imap_perform_search ( struct connectdata conn)
static

Definition at line 780 of file imap.c.

static CURLcode imap_perform_select ( struct connectdata conn)
static

Definition at line 635 of file imap.c.

static CURLcode imap_perform_starttls ( struct connectdata conn)
static

Definition at line 437 of file imap.c.

static CURLcode imap_perform_upgrade_tls ( struct connectdata conn)
static

Definition at line 456 of file imap.c.

static CURLcode imap_regular_transfer ( struct connectdata conn,
bool done 
)
static

Definition at line 1667 of file imap.c.

static CURLcode imap_sendf ( struct connectdata conn,
const char *  fmt,
  ... 
)
static

Definition at line 1717 of file imap.c.

static CURLcode imap_setup_connection ( struct connectdata conn)
static

Definition at line 1693 of file imap.c.

static CURLcode imap_state_append_final_resp ( struct connectdata conn,
int  imapcode,
imapstate  instate 
)
static

Definition at line 1221 of file imap.c.

static CURLcode imap_state_append_resp ( struct connectdata conn,
int  imapcode,
imapstate  instate 
)
static

Definition at line 1195 of file imap.c.

static CURLcode imap_state_auth_resp ( struct connectdata conn,
int  imapcode,
imapstate  instate 
)
static

Definition at line 953 of file imap.c.

static CURLcode imap_state_capability_resp ( struct connectdata conn,
int  imapcode,
imapstate  instate 
)
static

Definition at line 842 of file imap.c.

static CURLcode imap_state_fetch_final_resp ( struct connectdata conn,
int  imapcode,
imapstate  instate 
)
static

Definition at line 1177 of file imap.c.

static CURLcode imap_state_fetch_resp ( struct connectdata conn,
int  imapcode,
imapstate  instate 
)
static

Definition at line 1081 of file imap.c.

static CURLcode imap_state_listsearch_resp ( struct connectdata conn,
int  imapcode,
imapstate  instate 
)
static

Definition at line 1008 of file imap.c.

static CURLcode imap_state_login_resp ( struct connectdata conn,
int  imapcode,
imapstate  instate 
)
static

Definition at line 987 of file imap.c.

static CURLcode imap_state_select_resp ( struct connectdata conn,
int  imapcode,
imapstate  instate 
)
static

Definition at line 1034 of file imap.c.

static CURLcode imap_state_servergreet_resp ( struct connectdata conn,
int  imapcode,
imapstate  instate 
)
static

Definition at line 820 of file imap.c.

static CURLcode imap_state_starttls_resp ( struct connectdata conn,
int  imapcode,
imapstate  instate 
)
static

Definition at line 929 of file imap.c.

static CURLcode imap_statemach_act ( struct connectdata conn)
static

Definition at line 1238 of file imap.c.

static void state ( struct connectdata conn,
imapstate  newstate 
)
static

Definition at line 374 of file imap.c.

Variable Documentation

const struct Curl_handler Curl_handler_imap
Initial value:
= {
"IMAP",
}
static CURLcode imap_setup_connection(struct connectdata *conn)
Definition: imap.c:1693
#define CURLPROTO_IMAP
Definition: curl.h:856
static CURLcode imap_do(struct connectdata *conn, bool *done)
Definition: imap.c:1573
#define PORT_IMAP
Definition: urldata.h:39
static CURLcode imap_disconnect(struct connectdata *conn, bool dead)
Definition: imap.c:1601
static CURLcode imap_multi_statemach(struct connectdata *conn, bool *done)
Definition: imap.c:1331
#define ZERO_NULL
Definition: curlx.c:131
static CURLcode imap_connect(struct connectdata *conn, bool *done)
Definition: imap.c:1391
static CURLcode imap_done(struct connectdata *conn, CURLcode status, bool premature)
Definition: imap.c:1440
static int imap_getsock(struct connectdata *conn, curl_socket_t *socks, int numsocks)
Definition: imap.c:1375
static CURLcode imap_doing(struct connectdata *conn, bool *dophase_done)
Definition: imap.c:1643
#define PROTOPT_URLOPTIONS
Definition: urldata.h:717
#define PROTOPT_CLOSEACTION
Definition: urldata.h:702

Definition at line 117 of file imap.c.

const struct SASLproto saslimap
static
Initial value:
= {
"imap",
'+',
0,
}
static CURLcode imap_continue_authenticate(struct connectdata *conn, const char *resp)
Definition: imap.c:545
#define IMAP_RESP_OK
Definition: imap.c:166
static CURLcode imap_perform_authenticate(struct connectdata *conn, const char *mech, const char *initresp)
Definition: imap.c:521
static void imap_get_message(char *buffer, char **outptr)
Definition: imap.c:345

Definition at line 171 of file imap.c.



rc_tagdetect_client
Author(s): Monika Florek-Jasinska , Raphael Schaller
autogenerated on Sat Feb 13 2021 03:42:17