From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:50332) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WkIff-0000Zn-5z for qemu-devel@nongnu.org; Tue, 13 May 2014 15:47:32 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WkIfa-0001NQ-7I for qemu-devel@nongnu.org; Tue, 13 May 2014 15:47:27 -0400 Received: from mx1.redhat.com ([209.132.183.28]:51828) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WkIfZ-0001NK-Vt for qemu-devel@nongnu.org; Tue, 13 May 2014 15:47:22 -0400 Message-ID: <537276C6.5010308@redhat.com> Date: Tue, 13 May 2014 13:47:18 -0600 From: Eric Blake MIME-Version: 1.0 References: <1399538540-5076-1-git-send-email-mbooth@redhat.com> In-Reply-To: <1399538540-5076-1-git-send-email-mbooth@redhat.com> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="SpiB4Pb4EE8V3HpXCjXDe0t4apfUV4Xdk" Subject: Re: [Qemu-devel] Curl updates List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Matthew Booth , qemu-devel@nongnu.org Cc: kwolf@redhat.com, peter.maydell@linaro.org This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --SpiB4Pb4EE8V3HpXCjXDe0t4apfUV4Xdk Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On 05/08/2014 02:42 AM, Matthew Booth wrote: > [PATCH 1/4] curl: Fix parsing of readahead option from filename > [PATCH 2/4] curl: Add sslverify option > [PATCH 3/4] curl: Add usage documentation >=20 > The first 3 patches are reposted with updates following discussion of t= he option > syntax. With this patch I've decided to break entirely with the previou= s syntax. > Given that option parsing was previously both broken and undocumented, = this is > hopefully a forgivable sin. >=20 > The new syntax is: >=20 > http://user:password@example.com/path?query[opt1=3Dval:opt2=3Dval] >=20 > I've bounded the option block in square brackets as these have no seman= tic > meaning in any of the supported URI formats. Offhand, I'm not liking this. Why not use a completely valid URI, with '.../path?query&opt1=3Dval&opt2=3Dval'? Inventing your own [opt1=3Dval:opt2=3Dval] on top of URI is asking for confusion. Are you trying to support a way to pass a query string to the curl URI, in addition to local options? How often do curl URIs need a query? Is it something where you could use a local option named '.../path?query=3Dfoo=3Dbar' that contains anything to pass on to the raw= uri for curl as '.../path?foo=3Dbar' (that is, ALL query name=3Dvalue pai= rs are local, but you have a name of 'query' whose value can be the URI-encoded string to pass on as the name=3Dvalue pairs for the raw URI that you are passing through)? That would be more consistent so that the option is an actual URI to begin with. > Consequently the user can escape > them if they're unfortunate enough to have a URI which looks like it co= ntains an > option block. >=20 > I decided to separate options with colons rather than commas because co= mmas play > havoc with qemu's command line parsing. There's presumably a way round = this, but > I couldn't guess it and I was too lazy to look it up, so I assume users= would > feel the same. Using ',,' behaves as an escape for any literal comma, when doing qemu command line option parsing. >=20 > As options are now unambigous, invalid options now result in an error. >=20 > [PATCH 4/4] curl: Fix build when curl_multi_socket_action isn't >=20 > The last patch is unrelated. It should fix build against old curl, alth= ough I > don't have an old curl kicking around to test it against. >=20 > I still have a couple of patches in my local tree which: >=20 > * Remove blocking behaviour in curl_open > * Don't send EIO when a read connection hits a timeout >=20 > I'm also planning to add another option for timeout length, and to impl= ement > write support. >=20 > Matt >=20 >=20 >=20 --=20 Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org --SpiB4Pb4EE8V3HpXCjXDe0t4apfUV4Xdk Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 Comment: Public key at http://people.redhat.com/eblake/eblake.gpg Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQEcBAEBCAAGBQJTcnbGAAoJEKeha0olJ0NqpAQIAJ1IXesSyHrFU8xzSM9pyevC IIqHEI/tnqWMnV9hpQ05Bw7Nkb00BJWu1JcMYrgtPfbzcMhd9ASeOdliEGW2ioF5 gZ8is2ZT8XbicV0NUo+dheFZqXMgHayo4S1ZY4jjPF5HLs+m8fZTME7hQfNgwrdt fwf5ssqiuP9a2d0F9Ag/XvIhyCYVwMnIquGGJ6jN7hvz3LbHDBxmV6PobaCOrGMk 0j2N0FxosAiDqZz8AUpz/FNk0eD/XaNPnJ8p+FLluNS2dK1nQY523pydL2hjhoLh qHWTn5jxqLKKv/Z4UhzPEfGYJVjbnj90SGZe6r+8fBXvBSsRrdYLN00RKWDlb+c= =m1zs -----END PGP SIGNATURE----- --SpiB4Pb4EE8V3HpXCjXDe0t4apfUV4Xdk--