qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 3/4] curl: Add sslverify option


From: Kevin Wolf
Subject: Re: [Qemu-devel] [PATCH 3/4] curl: Add sslverify option
Date: Thu, 15 May 2014 13:33:20 +0200
User-agent: Mutt/1.5.21 (2010-09-15)

Am 15.05.2014 um 01:28 hat Matthew Booth geschrieben:
> This allows qemu to use images over https with a self-signed certificate. It
> defaults to verifying the certificate.
> 
> Signed-off-by: Matthew Booth <address@hidden>
> ---
>  block/curl.c | 11 +++++++++++
>  1 file changed, 11 insertions(+)
> 
> diff --git a/block/curl.c b/block/curl.c
> index 1b9f2f2..43d6646 100644
> --- a/block/curl.c
> +++ b/block/curl.c
> @@ -23,6 +23,7 @@
>   */
>  #include "qemu-common.h"
>  #include "block/block_int.h"
> +#include "qapi/qmp/qbool.h"
>  #include <curl/curl.h>
>  
>  // #define DEBUG
> @@ -69,6 +70,7 @@ static CURLMcode __curl_multi_socket_action(CURLM 
> *multi_handle,
>  
>  #define CURL_BLOCK_OPT_URL       "url"
>  #define CURL_BLOCK_OPT_READAHEAD "readahead"
> +#define CURL_BLOCK_OPT_SSLVERIFY "sslverify"
>  
>  struct BDRVCURLState;
>  
> @@ -106,6 +108,7 @@ typedef struct BDRVCURLState {
>      CURLState states[CURL_NUM_STATES];
>      char *url;
>      size_t readahead_size;
> +    bool sslverify;
>      bool accept_range;
>  } BDRVCURLState;
>  
> @@ -372,6 +375,7 @@ static CURLState *curl_init_state(BDRVCURLState *s)
>              return NULL;
>          }
>          curl_easy_setopt(state->curl, CURLOPT_URL, s->url);
> +        curl_easy_setopt(state->curl, CURLOPT_SSL_VERIFYPEER, s->sslverify);

block/curl.c: In function 'curl_init_state':
block/curl.c:378:1043: error: call to '_curl_easy_setopt_err_long' declared 
with attribute warning: curl_easy_setopt expects a long argument for this 
option [-Werror]
         curl_easy_setopt(state->curl, CURLOPT_SSL_VERIFYPEER, s->sslverify);

Squashing in this hunk:

--- a/block/curl.c
+++ b/block/curl.c
@@ -375,7 +375,8 @@ static CURLState *curl_init_state(BDRVCURLState *s)
             return NULL;
         }
         curl_easy_setopt(state->curl, CURLOPT_URL, s->url);
-        curl_easy_setopt(state->curl, CURLOPT_SSL_VERIFYPEER, s->sslverify);
+        curl_easy_setopt(state->curl, CURLOPT_SSL_VERIFYPEER,
+                         (long) s->sslverify);
         curl_easy_setopt(state->curl, CURLOPT_TIMEOUT, 5);
         curl_easy_setopt(state->curl, CURLOPT_WRITEFUNCTION,
                          (void *)curl_read_cb);

Kevin



reply via email to

[Prev in Thread] Current Thread [Next in Thread]