Commit e6e8b144 authored by Steve Holme's avatar Steve Holme
Browse files

tool_cfgable: Removed list_engine flag from config structure

In preparation for separating the global config options from the per
operation config options, reworked the list engines code to not use a
member variable in the Configurable structure.
parent b914e7ed
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -120,7 +120,6 @@ struct Configurable {
  char *pubkey;
  char *hostpubmd5;
  char *engine;
  bool list_engines;
  bool crlf;
  char *customrequest;
  char *krblevel;
+4 −3
Original line number Diff line number Diff line
@@ -1310,7 +1310,7 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
      case 'f': /* crypto engine */
        GetStr(&config->engine, nextarg);
        if(config->engine && curlx_raw_equal(config->engine,"list"))
          config->list_engines = TRUE;
          return PARAM_ENGINES_REQUESTED;
        break;
      case 'g': /* CA info PEM file */
        /* CA cert directory */
@@ -1819,7 +1819,7 @@ ParameterError parse_args(struct Configurable *config, int argc,
    orig_opt = argv[i];

    if(curlx_strequal(":", argv[i]) &&
       ((config->url_list && config->url_list->url) || config->list_engines)) {
       (config->url_list && config->url_list->url)) {

      /* Allocate the next config */
      config->next = malloc(sizeof(struct Configurable));
@@ -1865,7 +1865,8 @@ ParameterError parse_args(struct Configurable *config, int argc,
    }
  }

  if(result && result != PARAM_HELP_REQUESTED) {
  if(result && result != PARAM_HELP_REQUESTED &&
     result != PARAM_ENGINES_REQUESTED) {
    const char *reason = param2text(result);

    if(!curlx_strequal(":", orig_opt))
+1 −0
Original line number Diff line number Diff line
@@ -30,6 +30,7 @@ typedef enum {
  PARAM_REQUIRES_PARAMETER,
  PARAM_BAD_USE,
  PARAM_HELP_REQUESTED,
  PARAM_ENGINES_REQUESTED,
  PARAM_GOT_EXTRA_PARAMETER,
  PARAM_BAD_NUMERIC,
  PARAM_NEGATIVE_NUMERIC,
+6 −7
Original line number Diff line number Diff line
@@ -1826,14 +1826,13 @@ CURLcode operate(struct Configurable *config, int argc, argv_item_t argv[])
    /* Parse the command line arguments */
    ParameterError res = parse_args(config, argc, argv);
    if(res) {
      if(res != PARAM_HELP_REQUESTED)
        result = CURLE_FAILED_INIT;
      else
      result = CURLE_OK;
    }

      /* Check if we were asked to list the SSL engines */
    else if(config->list_engines) {
      if(res == PARAM_ENGINES_REQUESTED)
        tool_list_engines(config->easy);
      else if(res != PARAM_HELP_REQUESTED)
        result = CURLE_FAILED_INIT;
    }
    /* Perform the main operations */
    else {
+3 −2
Original line number Diff line number Diff line
@@ -5,7 +5,7 @@
 *                            | (__| |_| |  _ <| |___
 *                             \___|\___/|_| \_\_____|
 *
 * Copyright (C) 1998 - 2013, Daniel Stenberg, <daniel@haxx.se>, et al.
 * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
 *
 * This software is licensed as described in the file COPYING, which
 * you should have received as part of this distribution. The terms
@@ -230,7 +230,8 @@ int parseconfig(const char *filename,
        if(!strcmp(filename, "-")) {
          filename = (char *)"<stdin>";
        }
        if(PARAM_HELP_REQUESTED != res) {
        if(res != PARAM_HELP_REQUESTED &&
           res != PARAM_ENGINES_REQUESTED) {
          const char *reason = param2text(res);
          warnf(config, "%s:%d: warning: '%s' %s\n",
                filename, lineno, option, reason);