From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58009) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Wktuj-0001JE-Nz for qemu-devel@nongnu.org; Thu, 15 May 2014 07:33:35 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Wktud-0007Lt-KN for qemu-devel@nongnu.org; Thu, 15 May 2014 07:33:29 -0400 Received: from mx1.redhat.com ([209.132.183.28]:61053) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Wktud-0007Lm-8r for qemu-devel@nongnu.org; Thu, 15 May 2014 07:33:23 -0400 Received: from int-mx13.intmail.prod.int.phx2.redhat.com (int-mx13.intmail.prod.int.phx2.redhat.com [10.5.11.26]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id s4FBXMQH010948 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Thu, 15 May 2014 07:33:22 -0400 Date: Thu, 15 May 2014 13:33:20 +0200 From: Kevin Wolf Message-ID: <20140515113320.GC3822@noname.redhat.com> References: <1400110123-2692-1-git-send-email-mbooth@redhat.com> <1400110123-2692-3-git-send-email-mbooth@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1400110123-2692-3-git-send-email-mbooth@redhat.com> Subject: Re: [Qemu-devel] [PATCH 3/4] curl: Add sslverify option List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Matthew Booth Cc: qemu-devel@nongnu.org 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 > --- > 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 > > // #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