Skip to content

Commit

Permalink
imap-send: use cURL automatically when NO_OPENSSL defined
Browse files Browse the repository at this point in the history
If both USE_CURL_FOR_IMAP_SEND and NO_OPENSSL are defined do
not force the user to add --curl to get a working git imap-send
command.

Instead automatically select --curl and warn and ignore the
--no-curl option.  And while we're in there, correct the
warning message when --curl is requested but not supported.

Signed-off-by: Kyle J. McKay <mackyle@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
  • Loading branch information
mackyle authored and gitster committed Mar 10, 2015
1 parent 230c09c commit dcd01ea
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 3 deletions.
3 changes: 2 additions & 1 deletion Documentation/git-imap-send.txt
Expand Up @@ -44,7 +44,8 @@ OPTIONS

--no-curl::
Talk to the IMAP server using git's own IMAP routines instead of
using libcurl.
using libcurl. Ignored if Git was built with the NO_OPENSSL option
set.


CONFIGURATION
Expand Down
17 changes: 15 additions & 2 deletions imap-send.c
Expand Up @@ -34,8 +34,16 @@ typedef void *SSL;
#include "http.h"
#endif

#if defined(USE_CURL_FOR_IMAP_SEND) && defined(NO_OPENSSL)
/* only available option */
#define USE_CURL_DEFAULT 1
#else
/* strictly opt in */
#define USE_CURL_DEFAULT 0
#endif

static int verbosity;
static int use_curl; /* strictly opt in */
static int use_curl = USE_CURL_DEFAULT;

static const char * const imap_send_usage[] = { "git imap-send [-v] [-q] [--[no-]curl] < <mbox>", NULL };

Expand Down Expand Up @@ -1504,9 +1512,14 @@ int main(int argc, char **argv)

#ifndef USE_CURL_FOR_IMAP_SEND
if (use_curl) {
warning("--use-curl not supported in this build");
warning("--curl not supported in this build");
use_curl = 0;
}
#elif defined(NO_OPENSSL)
if (!use_curl) {
warning("--no-curl not supported in this build");
use_curl = 1;
}
#endif

if (!server.port)
Expand Down

0 comments on commit dcd01ea

Please sign in to comment.