Commit 3b8d7fdd authored by Yang Tse's avatar Yang Tse
Browse files

Client certificate ENG file type requires OpenSSL 0.9.7 or newer
parent 0e80f0e4
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -364,7 +364,7 @@ int cert_stuff(struct connectdata *conn,
      }
      break;
    case SSL_FILETYPE_ENGINE:
#ifdef HAVE_OPENSSL_ENGINE_H
#if defined(HAVE_OPENSSL_ENGINE_H) && defined(ENGINE_CTRL_GET_CMD_FROM_NAME)
      {
        if(data->state.engine) {
          const char *cmd_name = "LOAD_CERT_CTRL";
@@ -376,14 +376,13 @@ int cert_stuff(struct connectdata *conn,
          params.cert_id = cert_file;
          params.cert = NULL;

#ifdef ENGINE_CTRL_GET_CMD_FROM_NAME
          /* Does the engine supports LOAD_CERT_CTRL ? */
          if (!ENGINE_ctrl(data->state.engine, ENGINE_CTRL_GET_CMD_FROM_NAME,
                           0, (void *)cmd_name, NULL)) {
            failf(data, "ssl engine does not support loading certificates");
            return 0;
          }
#endif

          /* Load the certificate from the engine */
          if (!ENGINE_ctrl_cmd(data->state.engine, cmd_name,
                               0, &params, NULL, 1)) {