Merge branch 'isync_1_2_branch'
This commit is contained in:
commit
1aaf713ffe
|
@ -1529,13 +1529,13 @@ static void imap_open_store_authenticate_p3( imap_store_t *, struct imap_cmd *,
|
|||
#endif
|
||||
static void imap_open_store_authenticate2( imap_store_t * );
|
||||
static void imap_open_store_authenticate2_p2( imap_store_t *, struct imap_cmd *, int );
|
||||
static void imap_open_store_namespace( imap_store_t * );
|
||||
static void imap_open_store_namespace_p2( imap_store_t *, struct imap_cmd *, int );
|
||||
static void imap_open_store_namespace2( imap_store_t * );
|
||||
static void imap_open_store_compress( imap_store_t * );
|
||||
#ifdef HAVE_LIBZ
|
||||
static void imap_open_store_compress_p2( imap_store_t *, struct imap_cmd *, int );
|
||||
#endif
|
||||
static void imap_open_store_namespace( imap_store_t * );
|
||||
static void imap_open_store_namespace_p2( imap_store_t *, struct imap_cmd *, int );
|
||||
static void imap_open_store_namespace2( imap_store_t * );
|
||||
static void imap_open_store_finalize( imap_store_t * );
|
||||
#ifdef HAVE_LIBSSL
|
||||
static void imap_open_store_ssl_bail( imap_store_t * );
|
||||
|
@ -1680,7 +1680,7 @@ imap_open_store_authenticate( imap_store_t *ctx )
|
|||
return;
|
||||
}
|
||||
#endif
|
||||
imap_open_store_namespace( ctx );
|
||||
imap_open_store_compress( ctx );
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2057,9 +2057,35 @@ imap_open_store_authenticate2_p2( imap_store_t *ctx, struct imap_cmd *cmd ATTR_U
|
|||
if (response == RESP_NO)
|
||||
imap_open_store_bail( ctx, FAIL_FINAL );
|
||||
else if (response == RESP_OK)
|
||||
imap_open_store_namespace( ctx );
|
||||
imap_open_store_compress( ctx );
|
||||
}
|
||||
|
||||
static void
|
||||
imap_open_store_compress( imap_store_t *ctx )
|
||||
{
|
||||
#ifdef HAVE_LIBZ
|
||||
if (CAP(COMPRESS_DEFLATE)) {
|
||||
imap_exec( ctx, 0, imap_open_store_compress_p2, "COMPRESS DEFLATE" );
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
imap_open_store_namespace( ctx );
|
||||
}
|
||||
|
||||
#ifdef HAVE_LIBZ
|
||||
static void
|
||||
imap_open_store_compress_p2( imap_store_t *ctx, struct imap_cmd *cmd ATTR_UNUSED, int response )
|
||||
{
|
||||
if (response == RESP_NO) {
|
||||
/* We already reported an error, but it's not fatal to us. */
|
||||
imap_open_store_namespace( ctx );
|
||||
} else if (response == RESP_OK) {
|
||||
socket_start_deflate( &ctx->conn );
|
||||
imap_open_store_namespace( ctx );
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
static void
|
||||
imap_open_store_namespace( imap_store_t *ctx )
|
||||
{
|
||||
|
@ -2075,7 +2101,7 @@ imap_open_store_namespace( imap_store_t *ctx )
|
|||
imap_open_store_namespace2( ctx );
|
||||
return;
|
||||
}
|
||||
imap_open_store_compress( ctx );
|
||||
imap_open_store_finalize( ctx );
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -2105,38 +2131,12 @@ imap_open_store_namespace2( imap_store_t *ctx )
|
|||
ctx->prefix = nsp_1st_ns->val;
|
||||
if (!ctx->delimiter)
|
||||
ctx->delimiter = nfstrdup( nsp_1st_dl->val );
|
||||
imap_open_store_compress( ctx );
|
||||
imap_open_store_finalize( ctx );
|
||||
} else {
|
||||
imap_open_store_bail( ctx, FAIL_FINAL );
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
imap_open_store_compress( imap_store_t *ctx )
|
||||
{
|
||||
#ifdef HAVE_LIBZ
|
||||
if (CAP(COMPRESS_DEFLATE)) { /* XXX make that configurable */
|
||||
imap_exec( ctx, 0, imap_open_store_compress_p2, "COMPRESS DEFLATE" );
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
imap_open_store_finalize( ctx );
|
||||
}
|
||||
|
||||
#ifdef HAVE_LIBZ
|
||||
static void
|
||||
imap_open_store_compress_p2( imap_store_t *ctx, struct imap_cmd *cmd ATTR_UNUSED, int response )
|
||||
{
|
||||
if (response == RESP_NO) {
|
||||
/* We already reported an error, but it's not fatal to us. */
|
||||
imap_open_store_finalize( ctx );
|
||||
} else if (response == RESP_OK) {
|
||||
socket_start_deflate( &ctx->conn );
|
||||
imap_open_store_finalize( ctx );
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
static void
|
||||
imap_open_store_finalize( imap_store_t *ctx )
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue
Block a user