<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>117256</bug_id>
          
          <creation_ts>2013-06-05 07:47:56 -0700</creation_ts>
          <short_desc>[curl] Add implementation for HTTP PUT method</short_desc>
          <delta_ts>2013-06-13 06:59:34 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>117300</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Peter Gal">galpeter</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>kbalazs</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>897416</commentid>
    <comment_count>0</comment_count>
    <who name="Peter Gal">galpeter</who>
    <bug_when>2013-06-05 07:47:56 -0700</bug_when>
    <thetext>Currently it is not possible to issue PUT request whit the curl network backend. The function is there but it has only a notImplemented() line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897417</commentid>
    <comment_count>1</comment_count>
      <attachid>203850</attachid>
    <who name="Peter Gal">galpeter</who>
    <bug_when>2013-06-05 07:49:14 -0700</bug_when>
    <thetext>Created attachment 203850
proposed implementation</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897418</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-06-05 07:51:08 -0700</bug_when>
    <thetext>Attachment 203850 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCore/platform/network/curl/ResourceHandleManager.cpp&apos;]&quot; exit_code: 1
Source/WebCore/platform/network/curl/ResourceHandleManager.cpp:546:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WebCore/platform/network/curl/ResourceHandleManager.cpp:548:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WebCore/platform/network/curl/ResourceHandleManager.cpp:589:  Tests for true/false, null/non-null, and zero/non-zero should all be done without equality comparisons.  [readability/comparison_to_zero] [5]
Source/WebCore/ChangeLog:1:  ChangeLog entry has no bug number  [changelog/bugnumber] [5]
Total errors found: 4 in 2 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897421</commentid>
    <comment_count>3</comment_count>
      <attachid>203852</attachid>
    <who name="Peter Gal">galpeter</who>
    <bug_when>2013-06-05 07:55:12 -0700</bug_when>
    <thetext>Created attachment 203852
stylefixed implementation</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897554</commentid>
    <comment_count>4</comment_count>
      <attachid>203852</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2013-06-05 14:23:54 -0700</bug_when>
    <thetext>Comment on attachment 203852
stylefixed implementation

View in context: https://bugs.webkit.org/attachment.cgi?id=203852&amp;action=review

Looks very good.  I had a couple of things I&apos;d like you to cleanup before we land.  Thanks!

&gt; Source/WebCore/platform/network/curl/ResourceHandleManager.cpp:484
&gt; + */

We don&apos;t usually add header comments like these. We prefer to have the function/method name describe what the method does.

&gt; Source/WebCore/platform/network/curl/ResourceHandleManager.cpp:556
&gt; + */

Comment is unecessary

&gt; Source/WebCore/platform/network/curl/ResourceHandleManager.cpp:574
&gt; + */

Comment is unecessary

&gt; Source/WebCore/platform/network/curl/ResourceHandleManager.cpp:586
&gt; +    Vector&lt;FormDataElement&gt; elements = job-&gt;firstRequest().httpBody()-&gt;elements();

I don&apos;t think this Vector is needed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897570</commentid>
    <comment_count>5</comment_count>
    <who name="Peter Gal">galpeter</who>
    <bug_when>2013-06-05 15:01:58 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 203852 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=203852&amp;action=review
&gt; 
&gt; Looks very good.  I had a couple of things I&apos;d like you to cleanup before we land.  Thanks!
&gt; 
&gt; &gt; Source/WebCore/platform/network/curl/ResourceHandleManager.cpp:484
&gt; &gt; + */
&gt; 
&gt; We don&apos;t usually add header comments like these. We prefer to have the function/method name describe what the method does.
&gt; 
&gt; &gt; Source/WebCore/platform/network/curl/ResourceHandleManager.cpp:556
&gt; &gt; + */
&gt; 
&gt; Comment is unecessary
&gt; 
&gt; &gt; Source/WebCore/platform/network/curl/ResourceHandleManager.cpp:574
&gt; &gt; + */
&gt; 
&gt; Comment is unecessary

Okay, will remove these.

&gt; 
&gt; &gt; Source/WebCore/platform/network/curl/ResourceHandleManager.cpp:586
&gt; &gt; +    Vector&lt;FormDataElement&gt; elements = job-&gt;firstRequest().httpBody()-&gt;elements();
&gt; 
&gt; I don&apos;t think this Vector is needed.

Yeah that&apos;s true, I&apos;ve missed it sorry.

I&apos;ll update the patch in a few minutes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897572</commentid>
    <comment_count>6</comment_count>
      <attachid>203885</attachid>
    <who name="Peter Gal">galpeter</who>
    <bug_when>2013-06-05 15:12:46 -0700</bug_when>
    <thetext>Created attachment 203885
patch with fixes

This patch should include the requested changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897633</commentid>
    <comment_count>7</comment_count>
      <attachid>203885</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2013-06-05 21:07:35 -0700</bug_when>
    <thetext>Comment on attachment 203885
patch with fixes

Looks great! r=me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897639</commentid>
    <comment_count>8</comment_count>
      <attachid>203885</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-06-05 21:28:04 -0700</bug_when>
    <thetext>Comment on attachment 203885
patch with fixes

Clearing flags on attachment: 203885

Committed r151255: &lt;http://trac.webkit.org/changeset/151255&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897640</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-06-05 21:28:06 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897717</commentid>
    <comment_count>10</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2013-06-06 04:07:19 -0700</bug_when>
    <thetext>Do we have a master bug for the ongoing work of getting the curl backend alive? It would be useful.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897721</commentid>
    <comment_count>11</comment_count>
    <who name="Peter Gal">galpeter</who>
    <bug_when>2013-06-06 04:21:05 -0700</bug_when>
    <thetext>(In reply to comment #10)
&gt; Do we have a master bug for the ongoing work of getting the curl backend alive? It would be useful.

I didn&apos;t created a bug for it and I don&apos;t remember seeing it. So I&apos;ll create one and will it for the upcoming curl fixes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897723</commentid>
    <comment_count>12</comment_count>
    <who name="Peter Gal">galpeter</who>
    <bug_when>2013-06-06 04:21:42 -0700</bug_when>
    <thetext>(In reply to comment #11)
&gt; (In reply to comment #10)
&gt; &gt; Do we have a master bug for the ongoing work of getting the curl backend alive? It would be useful.
&gt; 
&gt; I didn&apos;t created a bug for it and I don&apos;t remember seeing it. So I&apos;ll create one and will it for the upcoming curl fixes.

 &quot;will it&quot; -&gt; &quot;will use it&quot;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>203850</attachid>
            <date>2013-06-05 07:49:14 -0700</date>
            <delta_ts>2013-06-05 07:55:12 -0700</delta_ts>
            <desc>proposed implementation</desc>
            <filename>curl_http_put_fix.patch</filename>
            <type>text/plain</type>
            <size>6276</size>
            <attacher name="Peter Gal">galpeter</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAwOGE5ZWJlLi5iM2E4ZjNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTgg
QEAKKzIwMTMtMDYtMDUgIFBldGVyIEdhbCAgPGdhbHBldGVyQGluZi51LXN6ZWdlZC5odT4KKwor
ICAgICAgICBbY3VybF0gQWRkIGltcGxlbWVudGF0aW9uIGZvciBIVFRQIFBVVCBtZXRob2QuCisg
ICAgICAgIE5lZWQgdGhlIGJ1ZyBVUkwgKE9PUFMhKS4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMsIGNvdmVyZWQgYnkgZXhpc3Rp
bmcgdGVzdHMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwvUmVzb3VyY2VIYW5k
bGVNYW5hZ2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmdldEZvcm1TaXplKToKKyAgICAgICAg
KFdlYkNvcmU6OnNldHVwRm9ybURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6UmVzb3VyY2VIYW5k
bGVNYW5hZ2VyOjpzZXR1cFBVVCk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZU1h
bmFnZXI6OnNldHVwUE9TVCk6CisKIDIwMTMtMDYtMDUgIENocmlzdG9waGUgRHVtZXogIDxjaC5k
dW1lekBzaXNhLnNhbXN1bmcuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQgYnVpbGQgZml4IHdo
ZW4gQ0hBTk5FTF9NRVNTQUdJTkcgaXMgZGlzYWJsZWQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvUmVzb3VyY2VIYW5kbGVNYW5hZ2VyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZU1hbmFnZXIu
Y3BwCmluZGV4IDI1N2I1NzAuLmFiNjg5N2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZU1hbmFnZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZU1hbmFnZXIuY3Bw
CkBAIC03LDYgKzcsNyBAQAogICogQ29weXJpZ2h0IChDKSAyMDA4IE51YW50aSBMdGQuCiAgKiBD
b3B5cmlnaHQgKEMpIDIwMDkgQXBwY2VsZXJhdG9yIEluYy4KICAqIENvcHlyaWdodCAoQykgMjAw
OSBCcmVudCBGdWxnaGFtIDxiZnVsZ2hhbUB3ZWJraXQub3JnPgorICogQ29weXJpZ2h0IChDKSAy
MDEzIFBldGVyIEdhbCA8Z2FscGV0ZXJAaW5mLnUtc3plZ2VkLmh1PiwgVW5pdmVyc2l0eSBvZiBT
emVnZWQKICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CkBAIC00Nzks
NDIgKzQ4MCwyNyBAQCB2b2lkIFJlc291cmNlSGFuZGxlTWFuYWdlcjo6cmVtb3ZlRnJvbUN1cmwo
UmVzb3VyY2VIYW5kbGUqIGpvYikKICAgICBqb2ItPmRlcmVmKCk7CiB9CiAKLXZvaWQgUmVzb3Vy
Y2VIYW5kbGVNYW5hZ2VyOjpzZXR1cFBVVChSZXNvdXJjZUhhbmRsZSosIHN0cnVjdCBjdXJsX3Ns
aXN0KiopCisvKiBHZXQgdGhlIG51bWJlciBvZiBlbGVtZW50cyBpbiB0aGUgZm9ybQorICovCitz
dGF0aWMgaW5saW5lIHNpemVfdCBnZXRGb3JtU2l6ZShSZXNvdXJjZUhhbmRsZSogam9iKQogewot
ICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgaWYgKCFqb2ItPmZpcnN0UmVxdWVzdCgpLmh0dHBC
b2R5KCkpCisgICAgICAgIHJldHVybiAwOworCisgICAgVmVjdG9yPEZvcm1EYXRhRWxlbWVudD4g
ZWxlbWVudHMgPSBqb2ItPmZpcnN0UmVxdWVzdCgpLmh0dHBCb2R5KCktPmVsZW1lbnRzKCk7Cisg
ICAgcmV0dXJuIGVsZW1lbnRzLnNpemUoKTsKIH0KIAotLyogQ2FsY3VsYXRlIHRoZSBsZW5ndGgg
b2YgdGhlIFBPU1QuCi0gICBGb3JjZSBjaHVua2VkIGRhdGEgdHJhbnNmZXIgaWYgc2l6ZSBvZiBm
aWxlcyBjYW4ndCBiZSBvYnRhaW5lZC4KKy8qIEluaXRpYWxpemUgdGhlIGN1cmwgaGFuZGxlIHdp
dGggdGhlIGZvcm0gaW5mb3JtYXRpb24uCiAgKi8KLXZvaWQgUmVzb3VyY2VIYW5kbGVNYW5hZ2Vy
OjpzZXR1cFBPU1QoUmVzb3VyY2VIYW5kbGUqIGpvYiwgc3RydWN0IGN1cmxfc2xpc3QqKiBoZWFk
ZXJzKQorc3RhdGljIHZvaWQgc2V0dXBGb3JtRGF0YShSZXNvdXJjZUhhbmRsZSogam9iLCBDVVJM
b3B0aW9uIHNpemVPcHRpb24sIHN0cnVjdCBjdXJsX3NsaXN0KiogaGVhZGVycykKIHsKICAgICBS
ZXNvdXJjZUhhbmRsZUludGVybmFsKiBkID0gam9iLT5nZXRJbnRlcm5hbCgpOwotICAgIGN1cmxf
ZWFzeV9zZXRvcHQoZC0+bV9oYW5kbGUsIENVUkxPUFRfUE9TVCwgVFJVRSk7Ci0gICAgY3VybF9l
YXN5X3NldG9wdChkLT5tX2hhbmRsZSwgQ1VSTE9QVF9QT1NURklFTERTSVpFLCAwKTsKLQotICAg
IGlmICgham9iLT5maXJzdFJlcXVlc3QoKS5odHRwQm9keSgpKQotICAgICAgICByZXR1cm47Ci0K
ICAgICBWZWN0b3I8Rm9ybURhdGFFbGVtZW50PiBlbGVtZW50cyA9IGpvYi0+Zmlyc3RSZXF1ZXN0
KCkuaHR0cEJvZHkoKS0+ZWxlbWVudHMoKTsKICAgICBzaXplX3QgbnVtRWxlbWVudHMgPSBlbGVt
ZW50cy5zaXplKCk7Ci0gICAgaWYgKCFudW1FbGVtZW50cykKLSAgICAgICAgcmV0dXJuOwogCi0g
ICAgLy8gRG8gbm90IHN0cmVhbSBmb3Igc2ltcGxlIFBPU1QgZGF0YQotICAgIGlmIChudW1FbGVt
ZW50cyA9PSAxKSB7Ci0gICAgICAgIGpvYi0+Zmlyc3RSZXF1ZXN0KCkuaHR0cEJvZHkoKS0+Zmxh
dHRlbihkLT5tX3Bvc3RCeXRlcyk7Ci0gICAgICAgIGlmIChkLT5tX3Bvc3RCeXRlcy5zaXplKCkg
IT0gMCkgewotICAgICAgICAgICAgY3VybF9lYXN5X3NldG9wdChkLT5tX2hhbmRsZSwgQ1VSTE9Q
VF9QT1NURklFTERTSVpFLCBkLT5tX3Bvc3RCeXRlcy5zaXplKCkpOwotICAgICAgICAgICAgY3Vy
bF9lYXN5X3NldG9wdChkLT5tX2hhbmRsZSwgQ1VSTE9QVF9QT1NURklFTERTLCBkLT5tX3Bvc3RC
eXRlcy5kYXRhKCkpOwotICAgICAgICB9Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0KLSAgICAv
LyBPYnRhaW4gdGhlIHRvdGFsIHNpemUgb2YgdGhlIFBPU1QKICAgICAvLyBUaGUgc2l6ZSBvZiBh
IGN1cmxfb2ZmX3QgY291bGQgYmUgZGlmZmVyZW50IGluIFdlYktpdCBhbmQgaW4gY1VSTCBkZXBl
bmRpbmcgb24KLSAgICAvLyBjb21waWxhdGlvbiBmbGFncyBvZiBib3RoLiBGb3IgQ1VSTE9QVF9Q
T1NURklFTERTSVpFX0xBUkdFIHdlIGhhdmUgdG8gcGFzcyB0aGUKLSAgICAvLyByaWdodCBzaXpl
IG9yIHJhbmRvbSBkYXRhIHdpbGwgYmUgdXNlZCBhcyB0aGUgc2l6ZS4KKyAgICAvLyBjb21waWxh
dGlvbiBmbGFncyBvZiBib3RoLgogICAgIHN0YXRpYyBpbnQgZXhwZWN0ZWRTaXplT2ZDdXJsT2Zm
VCA9IDA7CiAgICAgaWYgKCFleHBlY3RlZFNpemVPZkN1cmxPZmZUKSB7CiAgICAgICAgIGN1cmxf
dmVyc2lvbl9pbmZvX2RhdGEgKmluZm9EYXRhID0gY3VybF92ZXJzaW9uX2luZm8oQ1VSTFZFUlNJ
T05fTk9XKTsKQEAgLTUzMCw2ICs1MTYsNyBAQCB2b2lkIFJlc291cmNlSGFuZGxlTWFuYWdlcjo6
c2V0dXBQT1NUKFJlc291cmNlSGFuZGxlKiBqb2IsIHN0cnVjdCBjdXJsX3NsaXN0KiogaAogI3By
YWdtYSB3YXJuaW5nKGRpc2FibGU6IDQzMDcpCiAjZW5kaWYKICAgICBzdGF0aWMgY29uc3QgbG9u
ZyBsb25nIG1heEN1cmxPZmZUID0gKDFMTCA8PCAoZXhwZWN0ZWRTaXplT2ZDdXJsT2ZmVCAqIDgg
LSAxKSkgLSAxOworICAgIC8vIE9idGFpbiB0aGUgdG90YWwgc2l6ZSBvZiB0aGUgZm9ybSBkYXRh
CiAgICAgY3VybF9vZmZfdCBzaXplID0gMDsKICAgICBib29sIGNodW5rZWRUcmFuc2ZlciA9IGZh
bHNlOwogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbnVtRWxlbWVudHM7IGkrKykgewpAQCAt
NTU2LDE1ICs1NDMsNTkgQEAgdm9pZCBSZXNvdXJjZUhhbmRsZU1hbmFnZXI6OnNldHVwUE9TVChS
ZXNvdXJjZUhhbmRsZSogam9iLCBzdHJ1Y3QgY3VybF9zbGlzdCoqIGgKICAgICAgICAgKmhlYWRl
cnMgPSBjdXJsX3NsaXN0X2FwcGVuZCgqaGVhZGVycywgIlRyYW5zZmVyLUVuY29kaW5nOiBjaHVu
a2VkIik7CiAgICAgZWxzZSB7CiAgICAgICAgIGlmIChzaXplb2YobG9uZyBsb25nKSA9PSBleHBl
Y3RlZFNpemVPZkN1cmxPZmZUKQotICAgICAgICAgIGN1cmxfZWFzeV9zZXRvcHQoZC0+bV9oYW5k
bGUsIENVUkxPUFRfUE9TVEZJRUxEU0laRV9MQVJHRSwgKGxvbmcgbG9uZylzaXplKTsKKyAgICAg
ICAgICBjdXJsX2Vhc3lfc2V0b3B0KGQtPm1faGFuZGxlLCBzaXplT3B0aW9uLCAobG9uZyBsb25n
KXNpemUpOwogICAgICAgICBlbHNlCi0gICAgICAgICAgY3VybF9lYXN5X3NldG9wdChkLT5tX2hh
bmRsZSwgQ1VSTE9QVF9QT1NURklFTERTSVpFX0xBUkdFLCAoaW50KXNpemUpOworICAgICAgICAg
IGN1cmxfZWFzeV9zZXRvcHQoZC0+bV9oYW5kbGUsIHNpemVPcHRpb24sIChpbnQpc2l6ZSk7CiAg
ICAgfQogCiAgICAgY3VybF9lYXN5X3NldG9wdChkLT5tX2hhbmRsZSwgQ1VSTE9QVF9SRUFERlVO
Q1RJT04sIHJlYWRDYWxsYmFjayk7CiAgICAgY3VybF9lYXN5X3NldG9wdChkLT5tX2hhbmRsZSwg
Q1VSTE9QVF9SRUFEREFUQSwgam9iKTsKIH0KIAorLyogUHJlcGFyZSB0aGUgcmVxdWVzdCBmb3Ig
YSBQVVQuCisgKi8KK3ZvaWQgUmVzb3VyY2VIYW5kbGVNYW5hZ2VyOjpzZXR1cFBVVChSZXNvdXJj
ZUhhbmRsZSogam9iLCBzdHJ1Y3QgY3VybF9zbGlzdCoqIGhlYWRlcnMpCit7CisgICAgUmVzb3Vy
Y2VIYW5kbGVJbnRlcm5hbCogZCA9IGpvYi0+Z2V0SW50ZXJuYWwoKTsKKyAgICBjdXJsX2Vhc3lf
c2V0b3B0KGQtPm1faGFuZGxlLCBDVVJMT1BUX1VQTE9BRCwgVFJVRSk7CisgICAgY3VybF9lYXN5
X3NldG9wdChkLT5tX2hhbmRsZSwgQ1VSTE9QVF9JTkZJTEVTSVpFLCAwKTsKKworICAgIC8vIERp
c2FibGUgdGhlIEV4cGVjdDogMTAwIGNvbnRpbnVlIGhlYWRlcgorICAgICpoZWFkZXJzID0gY3Vy
bF9zbGlzdF9hcHBlbmQoKmhlYWRlcnMsICJFeHBlY3Q6Iik7CisKKyAgICBzaXplX3QgbnVtRWxl
bWVudHMgPSBnZXRGb3JtU2l6ZShqb2IpOworICAgIGlmICghbnVtRWxlbWVudHMpCisgICAgICAg
IHJldHVybjsKKworICAgIHNldHVwRm9ybURhdGEoam9iLCBDVVJMT1BUX0lORklMRVNJWkVfTEFS
R0UsIGhlYWRlcnMpOworfQorCisvKiBQcmVwYXJlIHRoZSByZXF1ZXN0IGZvciBhIFBPU1QuCisg
Ki8KK3ZvaWQgUmVzb3VyY2VIYW5kbGVNYW5hZ2VyOjpzZXR1cFBPU1QoUmVzb3VyY2VIYW5kbGUq
IGpvYiwgc3RydWN0IGN1cmxfc2xpc3QqKiBoZWFkZXJzKQoreworICAgIFJlc291cmNlSGFuZGxl
SW50ZXJuYWwqIGQgPSBqb2ItPmdldEludGVybmFsKCk7CisgICAgY3VybF9lYXN5X3NldG9wdChk
LT5tX2hhbmRsZSwgQ1VSTE9QVF9QT1NULCBUUlVFKTsKKyAgICBjdXJsX2Vhc3lfc2V0b3B0KGQt
Pm1faGFuZGxlLCBDVVJMT1BUX1BPU1RGSUVMRFNJWkUsIDApOworCisgICAgc2l6ZV90IG51bUVs
ZW1lbnRzID0gZ2V0Rm9ybVNpemUoam9iKTsKKyAgICBpZiAoIW51bUVsZW1lbnRzKQorICAgICAg
ICByZXR1cm47CisKKyAgICAvLyBEbyBub3Qgc3RyZWFtIGZvciBzaW1wbGUgUE9TVCBkYXRhCisg
ICAgVmVjdG9yPEZvcm1EYXRhRWxlbWVudD4gZWxlbWVudHMgPSBqb2ItPmZpcnN0UmVxdWVzdCgp
Lmh0dHBCb2R5KCktPmVsZW1lbnRzKCk7CisgICAgaWYgKG51bUVsZW1lbnRzID09IDEpIHsKKyAg
ICAgICAgam9iLT5maXJzdFJlcXVlc3QoKS5odHRwQm9keSgpLT5mbGF0dGVuKGQtPm1fcG9zdEJ5
dGVzKTsKKyAgICAgICAgaWYgKGQtPm1fcG9zdEJ5dGVzLnNpemUoKSAhPSAwKSB7CisgICAgICAg
ICAgICBjdXJsX2Vhc3lfc2V0b3B0KGQtPm1faGFuZGxlLCBDVVJMT1BUX1BPU1RGSUVMRFNJWkUs
IGQtPm1fcG9zdEJ5dGVzLnNpemUoKSk7CisgICAgICAgICAgICBjdXJsX2Vhc3lfc2V0b3B0KGQt
Pm1faGFuZGxlLCBDVVJMT1BUX1BPU1RGSUVMRFMsIGQtPm1fcG9zdEJ5dGVzLmRhdGEoKSk7Cisg
ICAgICAgIH0KKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIHNldHVwRm9ybURhdGEoam9i
LCBDVVJMT1BUX1BPU1RGSUVMRFNJWkVfTEFSR0UsIGhlYWRlcnMpOworfQorCiB2b2lkIFJlc291
cmNlSGFuZGxlTWFuYWdlcjo6YWRkKFJlc291cmNlSGFuZGxlKiBqb2IpCiB7CiAgICAgLy8gd2Ug
Y2FuIGJlIGNhbGxlZCBmcm9tIHdpdGhpbiBjdXJsLCBzbyB0byBhdm9pZCByZS1lbnRyYW5jeSBp
c3N1ZXMK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>203852</attachid>
            <date>2013-06-05 07:55:12 -0700</date>
            <delta_ts>2013-06-05 15:12:46 -0700</delta_ts>
            <desc>stylefixed implementation</desc>
            <filename>curl_http_put_fix.patch</filename>
            <type>text/plain</type>
            <size>6296</size>
            <attacher name="Peter Gal">galpeter</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAwOGE5ZWJlLi5hY2U4ZTg3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTgg
QEAKKzIwMTMtMDYtMDUgIFBldGVyIEdhbCAgPGdhbHBldGVyQGluZi51LXN6ZWdlZC5odT4KKwor
ICAgICAgICBbY3VybF0gQWRkIGltcGxlbWVudGF0aW9uIGZvciBIVFRQIFBVVCBtZXRob2QuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTcyNTYKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVz
dHMsIGNvdmVyZWQgYnkgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3
b3JrL2N1cmwvUmVzb3VyY2VIYW5kbGVNYW5hZ2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Omdl
dEZvcm1TaXplKToKKyAgICAgICAgKFdlYkNvcmU6OnNldHVwRm9ybURhdGEpOgorICAgICAgICAo
V2ViQ29yZTo6UmVzb3VyY2VIYW5kbGVNYW5hZ2VyOjpzZXR1cFBVVCk6CisgICAgICAgIChXZWJD
b3JlOjpSZXNvdXJjZUhhbmRsZU1hbmFnZXI6OnNldHVwUE9TVCk6CisKIDIwMTMtMDYtMDUgIENo
cmlzdG9waGUgRHVtZXogIDxjaC5kdW1lekBzaXNhLnNhbXN1bmcuY29tPgogCiAgICAgICAgIFVu
cmV2aWV3ZWQgYnVpbGQgZml4IHdoZW4gQ0hBTk5FTF9NRVNTQUdJTkcgaXMgZGlzYWJsZWQuCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvUmVzb3VyY2VI
YW5kbGVNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9S
ZXNvdXJjZUhhbmRsZU1hbmFnZXIuY3BwCmluZGV4IDI1N2I1NzAuLjJmMDFjMzUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZU1h
bmFnZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9SZXNv
dXJjZUhhbmRsZU1hbmFnZXIuY3BwCkBAIC03LDYgKzcsNyBAQAogICogQ29weXJpZ2h0IChDKSAy
MDA4IE51YW50aSBMdGQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDkgQXBwY2VsZXJhdG9yIEluYy4K
ICAqIENvcHlyaWdodCAoQykgMjAwOSBCcmVudCBGdWxnaGFtIDxiZnVsZ2hhbUB3ZWJraXQub3Jn
PgorICogQ29weXJpZ2h0IChDKSAyMDEzIFBldGVyIEdhbCA8Z2FscGV0ZXJAaW5mLnUtc3plZ2Vk
Lmh1PiwgVW5pdmVyc2l0eSBvZiBTemVnZWQKICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgog
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CkBAIC00NzksNDIgKzQ4MCwyNyBAQCB2b2lkIFJlc291cmNlSGFuZGxlTWFu
YWdlcjo6cmVtb3ZlRnJvbUN1cmwoUmVzb3VyY2VIYW5kbGUqIGpvYikKICAgICBqb2ItPmRlcmVm
KCk7CiB9CiAKLXZvaWQgUmVzb3VyY2VIYW5kbGVNYW5hZ2VyOjpzZXR1cFBVVChSZXNvdXJjZUhh
bmRsZSosIHN0cnVjdCBjdXJsX3NsaXN0KiopCisvKiBHZXQgdGhlIG51bWJlciBvZiBlbGVtZW50
cyBpbiB0aGUgZm9ybQorICovCitzdGF0aWMgaW5saW5lIHNpemVfdCBnZXRGb3JtU2l6ZShSZXNv
dXJjZUhhbmRsZSogam9iKQogewotICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgaWYgKCFqb2It
PmZpcnN0UmVxdWVzdCgpLmh0dHBCb2R5KCkpCisgICAgICAgIHJldHVybiAwOworCisgICAgVmVj
dG9yPEZvcm1EYXRhRWxlbWVudD4gZWxlbWVudHMgPSBqb2ItPmZpcnN0UmVxdWVzdCgpLmh0dHBC
b2R5KCktPmVsZW1lbnRzKCk7CisgICAgcmV0dXJuIGVsZW1lbnRzLnNpemUoKTsKIH0KIAotLyog
Q2FsY3VsYXRlIHRoZSBsZW5ndGggb2YgdGhlIFBPU1QuCi0gICBGb3JjZSBjaHVua2VkIGRhdGEg
dHJhbnNmZXIgaWYgc2l6ZSBvZiBmaWxlcyBjYW4ndCBiZSBvYnRhaW5lZC4KKy8qIEluaXRpYWxp
emUgdGhlIGN1cmwgaGFuZGxlIHdpdGggdGhlIGZvcm0gaW5mb3JtYXRpb24uCiAgKi8KLXZvaWQg
UmVzb3VyY2VIYW5kbGVNYW5hZ2VyOjpzZXR1cFBPU1QoUmVzb3VyY2VIYW5kbGUqIGpvYiwgc3Ry
dWN0IGN1cmxfc2xpc3QqKiBoZWFkZXJzKQorc3RhdGljIHZvaWQgc2V0dXBGb3JtRGF0YShSZXNv
dXJjZUhhbmRsZSogam9iLCBDVVJMb3B0aW9uIHNpemVPcHRpb24sIHN0cnVjdCBjdXJsX3NsaXN0
KiogaGVhZGVycykKIHsKICAgICBSZXNvdXJjZUhhbmRsZUludGVybmFsKiBkID0gam9iLT5nZXRJ
bnRlcm5hbCgpOwotICAgIGN1cmxfZWFzeV9zZXRvcHQoZC0+bV9oYW5kbGUsIENVUkxPUFRfUE9T
VCwgVFJVRSk7Ci0gICAgY3VybF9lYXN5X3NldG9wdChkLT5tX2hhbmRsZSwgQ1VSTE9QVF9QT1NU
RklFTERTSVpFLCAwKTsKLQotICAgIGlmICgham9iLT5maXJzdFJlcXVlc3QoKS5odHRwQm9keSgp
KQotICAgICAgICByZXR1cm47Ci0KICAgICBWZWN0b3I8Rm9ybURhdGFFbGVtZW50PiBlbGVtZW50
cyA9IGpvYi0+Zmlyc3RSZXF1ZXN0KCkuaHR0cEJvZHkoKS0+ZWxlbWVudHMoKTsKICAgICBzaXpl
X3QgbnVtRWxlbWVudHMgPSBlbGVtZW50cy5zaXplKCk7Ci0gICAgaWYgKCFudW1FbGVtZW50cykK
LSAgICAgICAgcmV0dXJuOwogCi0gICAgLy8gRG8gbm90IHN0cmVhbSBmb3Igc2ltcGxlIFBPU1Qg
ZGF0YQotICAgIGlmIChudW1FbGVtZW50cyA9PSAxKSB7Ci0gICAgICAgIGpvYi0+Zmlyc3RSZXF1
ZXN0KCkuaHR0cEJvZHkoKS0+ZmxhdHRlbihkLT5tX3Bvc3RCeXRlcyk7Ci0gICAgICAgIGlmIChk
LT5tX3Bvc3RCeXRlcy5zaXplKCkgIT0gMCkgewotICAgICAgICAgICAgY3VybF9lYXN5X3NldG9w
dChkLT5tX2hhbmRsZSwgQ1VSTE9QVF9QT1NURklFTERTSVpFLCBkLT5tX3Bvc3RCeXRlcy5zaXpl
KCkpOwotICAgICAgICAgICAgY3VybF9lYXN5X3NldG9wdChkLT5tX2hhbmRsZSwgQ1VSTE9QVF9Q
T1NURklFTERTLCBkLT5tX3Bvc3RCeXRlcy5kYXRhKCkpOwotICAgICAgICB9Ci0gICAgICAgIHJl
dHVybjsKLSAgICB9Ci0KLSAgICAvLyBPYnRhaW4gdGhlIHRvdGFsIHNpemUgb2YgdGhlIFBPU1QK
ICAgICAvLyBUaGUgc2l6ZSBvZiBhIGN1cmxfb2ZmX3QgY291bGQgYmUgZGlmZmVyZW50IGluIFdl
YktpdCBhbmQgaW4gY1VSTCBkZXBlbmRpbmcgb24KLSAgICAvLyBjb21waWxhdGlvbiBmbGFncyBv
ZiBib3RoLiBGb3IgQ1VSTE9QVF9QT1NURklFTERTSVpFX0xBUkdFIHdlIGhhdmUgdG8gcGFzcyB0
aGUKLSAgICAvLyByaWdodCBzaXplIG9yIHJhbmRvbSBkYXRhIHdpbGwgYmUgdXNlZCBhcyB0aGUg
c2l6ZS4KKyAgICAvLyBjb21waWxhdGlvbiBmbGFncyBvZiBib3RoLgogICAgIHN0YXRpYyBpbnQg
ZXhwZWN0ZWRTaXplT2ZDdXJsT2ZmVCA9IDA7CiAgICAgaWYgKCFleHBlY3RlZFNpemVPZkN1cmxP
ZmZUKSB7CiAgICAgICAgIGN1cmxfdmVyc2lvbl9pbmZvX2RhdGEgKmluZm9EYXRhID0gY3VybF92
ZXJzaW9uX2luZm8oQ1VSTFZFUlNJT05fTk9XKTsKQEAgLTUzMCw2ICs1MTYsNyBAQCB2b2lkIFJl
c291cmNlSGFuZGxlTWFuYWdlcjo6c2V0dXBQT1NUKFJlc291cmNlSGFuZGxlKiBqb2IsIHN0cnVj
dCBjdXJsX3NsaXN0KiogaAogI3ByYWdtYSB3YXJuaW5nKGRpc2FibGU6IDQzMDcpCiAjZW5kaWYK
ICAgICBzdGF0aWMgY29uc3QgbG9uZyBsb25nIG1heEN1cmxPZmZUID0gKDFMTCA8PCAoZXhwZWN0
ZWRTaXplT2ZDdXJsT2ZmVCAqIDggLSAxKSkgLSAxOworICAgIC8vIE9idGFpbiB0aGUgdG90YWwg
c2l6ZSBvZiB0aGUgZm9ybSBkYXRhCiAgICAgY3VybF9vZmZfdCBzaXplID0gMDsKICAgICBib29s
IGNodW5rZWRUcmFuc2ZlciA9IGZhbHNlOwogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbnVt
RWxlbWVudHM7IGkrKykgewpAQCAtNTU2LDE1ICs1NDMsNTkgQEAgdm9pZCBSZXNvdXJjZUhhbmRs
ZU1hbmFnZXI6OnNldHVwUE9TVChSZXNvdXJjZUhhbmRsZSogam9iLCBzdHJ1Y3QgY3VybF9zbGlz
dCoqIGgKICAgICAgICAgKmhlYWRlcnMgPSBjdXJsX3NsaXN0X2FwcGVuZCgqaGVhZGVycywgIlRy
YW5zZmVyLUVuY29kaW5nOiBjaHVua2VkIik7CiAgICAgZWxzZSB7CiAgICAgICAgIGlmIChzaXpl
b2YobG9uZyBsb25nKSA9PSBleHBlY3RlZFNpemVPZkN1cmxPZmZUKQotICAgICAgICAgIGN1cmxf
ZWFzeV9zZXRvcHQoZC0+bV9oYW5kbGUsIENVUkxPUFRfUE9TVEZJRUxEU0laRV9MQVJHRSwgKGxv
bmcgbG9uZylzaXplKTsKKyAgICAgICAgICAgIGN1cmxfZWFzeV9zZXRvcHQoZC0+bV9oYW5kbGUs
IHNpemVPcHRpb24sIChsb25nIGxvbmcpc2l6ZSk7CiAgICAgICAgIGVsc2UKLSAgICAgICAgICBj
dXJsX2Vhc3lfc2V0b3B0KGQtPm1faGFuZGxlLCBDVVJMT1BUX1BPU1RGSUVMRFNJWkVfTEFSR0Us
IChpbnQpc2l6ZSk7CisgICAgICAgICAgICBjdXJsX2Vhc3lfc2V0b3B0KGQtPm1faGFuZGxlLCBz
aXplT3B0aW9uLCAoaW50KXNpemUpOwogICAgIH0KIAogICAgIGN1cmxfZWFzeV9zZXRvcHQoZC0+
bV9oYW5kbGUsIENVUkxPUFRfUkVBREZVTkNUSU9OLCByZWFkQ2FsbGJhY2spOwogICAgIGN1cmxf
ZWFzeV9zZXRvcHQoZC0+bV9oYW5kbGUsIENVUkxPUFRfUkVBRERBVEEsIGpvYik7CiB9CiAKKy8q
IFByZXBhcmUgdGhlIHJlcXVlc3QgZm9yIGEgUFVULgorICovCit2b2lkIFJlc291cmNlSGFuZGxl
TWFuYWdlcjo6c2V0dXBQVVQoUmVzb3VyY2VIYW5kbGUqIGpvYiwgc3RydWN0IGN1cmxfc2xpc3Qq
KiBoZWFkZXJzKQoreworICAgIFJlc291cmNlSGFuZGxlSW50ZXJuYWwqIGQgPSBqb2ItPmdldElu
dGVybmFsKCk7CisgICAgY3VybF9lYXN5X3NldG9wdChkLT5tX2hhbmRsZSwgQ1VSTE9QVF9VUExP
QUQsIFRSVUUpOworICAgIGN1cmxfZWFzeV9zZXRvcHQoZC0+bV9oYW5kbGUsIENVUkxPUFRfSU5G
SUxFU0laRSwgMCk7CisKKyAgICAvLyBEaXNhYmxlIHRoZSBFeHBlY3Q6IDEwMCBjb250aW51ZSBo
ZWFkZXIKKyAgICAqaGVhZGVycyA9IGN1cmxfc2xpc3RfYXBwZW5kKCpoZWFkZXJzLCAiRXhwZWN0
OiIpOworCisgICAgc2l6ZV90IG51bUVsZW1lbnRzID0gZ2V0Rm9ybVNpemUoam9iKTsKKyAgICBp
ZiAoIW51bUVsZW1lbnRzKQorICAgICAgICByZXR1cm47CisKKyAgICBzZXR1cEZvcm1EYXRhKGpv
YiwgQ1VSTE9QVF9JTkZJTEVTSVpFX0xBUkdFLCBoZWFkZXJzKTsKK30KKworLyogUHJlcGFyZSB0
aGUgcmVxdWVzdCBmb3IgYSBQT1NULgorICovCit2b2lkIFJlc291cmNlSGFuZGxlTWFuYWdlcjo6
c2V0dXBQT1NUKFJlc291cmNlSGFuZGxlKiBqb2IsIHN0cnVjdCBjdXJsX3NsaXN0KiogaGVhZGVy
cykKK3sKKyAgICBSZXNvdXJjZUhhbmRsZUludGVybmFsKiBkID0gam9iLT5nZXRJbnRlcm5hbCgp
OworICAgIGN1cmxfZWFzeV9zZXRvcHQoZC0+bV9oYW5kbGUsIENVUkxPUFRfUE9TVCwgVFJVRSk7
CisgICAgY3VybF9lYXN5X3NldG9wdChkLT5tX2hhbmRsZSwgQ1VSTE9QVF9QT1NURklFTERTSVpF
LCAwKTsKKworICAgIHNpemVfdCBudW1FbGVtZW50cyA9IGdldEZvcm1TaXplKGpvYik7CisgICAg
aWYgKCFudW1FbGVtZW50cykKKyAgICAgICAgcmV0dXJuOworCisgICAgLy8gRG8gbm90IHN0cmVh
bSBmb3Igc2ltcGxlIFBPU1QgZGF0YQorICAgIFZlY3RvcjxGb3JtRGF0YUVsZW1lbnQ+IGVsZW1l
bnRzID0gam9iLT5maXJzdFJlcXVlc3QoKS5odHRwQm9keSgpLT5lbGVtZW50cygpOworICAgIGlm
IChudW1FbGVtZW50cyA9PSAxKSB7CisgICAgICAgIGpvYi0+Zmlyc3RSZXF1ZXN0KCkuaHR0cEJv
ZHkoKS0+ZmxhdHRlbihkLT5tX3Bvc3RCeXRlcyk7CisgICAgICAgIGlmIChkLT5tX3Bvc3RCeXRl
cy5zaXplKCkpIHsKKyAgICAgICAgICAgIGN1cmxfZWFzeV9zZXRvcHQoZC0+bV9oYW5kbGUsIENV
UkxPUFRfUE9TVEZJRUxEU0laRSwgZC0+bV9wb3N0Qnl0ZXMuc2l6ZSgpKTsKKyAgICAgICAgICAg
IGN1cmxfZWFzeV9zZXRvcHQoZC0+bV9oYW5kbGUsIENVUkxPUFRfUE9TVEZJRUxEUywgZC0+bV9w
b3N0Qnl0ZXMuZGF0YSgpKTsKKyAgICAgICAgfQorICAgICAgICByZXR1cm47CisgICAgfQorCisg
ICAgc2V0dXBGb3JtRGF0YShqb2IsIENVUkxPUFRfUE9TVEZJRUxEU0laRV9MQVJHRSwgaGVhZGVy
cyk7Cit9CisKIHZvaWQgUmVzb3VyY2VIYW5kbGVNYW5hZ2VyOjphZGQoUmVzb3VyY2VIYW5kbGUq
IGpvYikKIHsKICAgICAvLyB3ZSBjYW4gYmUgY2FsbGVkIGZyb20gd2l0aGluIGN1cmwsIHNvIHRv
IGF2b2lkIHJlLWVudHJhbmN5IGlzc3Vlcwo=
</data>
<flag name="review"
          id="225309"
          type_id="1"
          status="-"
          setter="bfulgham"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>203885</attachid>
            <date>2013-06-05 15:12:46 -0700</date>
            <delta_ts>2013-06-05 21:28:04 -0700</delta_ts>
            <desc>patch with fixes</desc>
            <filename>curl_http_put_fix_2.patch</filename>
            <type>text/plain</type>
            <size>6052</size>
            <attacher name="Peter Gal">galpeter</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAwOGE5ZWJlLi5hY2U4ZTg3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTgg
QEAKKzIwMTMtMDYtMDUgIFBldGVyIEdhbCAgPGdhbHBldGVyQGluZi51LXN6ZWdlZC5odT4KKwor
ICAgICAgICBbY3VybF0gQWRkIGltcGxlbWVudGF0aW9uIGZvciBIVFRQIFBVVCBtZXRob2QuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTcyNTYKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVz
dHMsIGNvdmVyZWQgYnkgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3
b3JrL2N1cmwvUmVzb3VyY2VIYW5kbGVNYW5hZ2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Omdl
dEZvcm1TaXplKToKKyAgICAgICAgKFdlYkNvcmU6OnNldHVwRm9ybURhdGEpOgorICAgICAgICAo
V2ViQ29yZTo6UmVzb3VyY2VIYW5kbGVNYW5hZ2VyOjpzZXR1cFBVVCk6CisgICAgICAgIChXZWJD
b3JlOjpSZXNvdXJjZUhhbmRsZU1hbmFnZXI6OnNldHVwUE9TVCk6CisKIDIwMTMtMDYtMDUgIENo
cmlzdG9waGUgRHVtZXogIDxjaC5kdW1lekBzaXNhLnNhbXN1bmcuY29tPgogCiAgICAgICAgIFVu
cmV2aWV3ZWQgYnVpbGQgZml4IHdoZW4gQ0hBTk5FTF9NRVNTQUdJTkcgaXMgZGlzYWJsZWQuCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvUmVzb3VyY2VI
YW5kbGVNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9S
ZXNvdXJjZUhhbmRsZU1hbmFnZXIuY3BwCmluZGV4IDI1N2I1NzAuLjZlMDg4ZjEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZU1h
bmFnZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9SZXNv
dXJjZUhhbmRsZU1hbmFnZXIuY3BwCkBAIC03LDYgKzcsNyBAQAogICogQ29weXJpZ2h0IChDKSAy
MDA4IE51YW50aSBMdGQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDkgQXBwY2VsZXJhdG9yIEluYy4K
ICAqIENvcHlyaWdodCAoQykgMjAwOSBCcmVudCBGdWxnaGFtIDxiZnVsZ2hhbUB3ZWJraXQub3Jn
PgorICogQ29weXJpZ2h0IChDKSAyMDEzIFBldGVyIEdhbCA8Z2FscGV0ZXJAaW5mLnUtc3plZ2Vk
Lmh1PiwgVW5pdmVyc2l0eSBvZiBTemVnZWQKICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgog
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CkBAIC00NzksNDIgKzQ4MCwyMyBAQCB2b2lkIFJlc291cmNlSGFuZGxlTWFu
YWdlcjo6cmVtb3ZlRnJvbUN1cmwoUmVzb3VyY2VIYW5kbGUqIGpvYikKICAgICBqb2ItPmRlcmVm
KCk7CiB9CiAKLXZvaWQgUmVzb3VyY2VIYW5kbGVNYW5hZ2VyOjpzZXR1cFBVVChSZXNvdXJjZUhh
bmRsZSosIHN0cnVjdCBjdXJsX3NsaXN0KiopCitzdGF0aWMgaW5saW5lIHNpemVfdCBnZXRGb3Jt
RWxlbWVudHNDb3VudChSZXNvdXJjZUhhbmRsZSogam9iKQogewotICAgIG5vdEltcGxlbWVudGVk
KCk7CisgICAgaWYgKCFqb2ItPmZpcnN0UmVxdWVzdCgpLmh0dHBCb2R5KCkpCisgICAgICAgIHJl
dHVybiAwOworCisgICAgVmVjdG9yPEZvcm1EYXRhRWxlbWVudD4gZWxlbWVudHMgPSBqb2ItPmZp
cnN0UmVxdWVzdCgpLmh0dHBCb2R5KCktPmVsZW1lbnRzKCk7CisgICAgcmV0dXJuIGVsZW1lbnRz
LnNpemUoKTsKIH0KIAotLyogQ2FsY3VsYXRlIHRoZSBsZW5ndGggb2YgdGhlIFBPU1QuCi0gICBG
b3JjZSBjaHVua2VkIGRhdGEgdHJhbnNmZXIgaWYgc2l6ZSBvZiBmaWxlcyBjYW4ndCBiZSBvYnRh
aW5lZC4KLSAqLwotdm9pZCBSZXNvdXJjZUhhbmRsZU1hbmFnZXI6OnNldHVwUE9TVChSZXNvdXJj
ZUhhbmRsZSogam9iLCBzdHJ1Y3QgY3VybF9zbGlzdCoqIGhlYWRlcnMpCitzdGF0aWMgdm9pZCBz
ZXR1cEZvcm1EYXRhKFJlc291cmNlSGFuZGxlKiBqb2IsIENVUkxvcHRpb24gc2l6ZU9wdGlvbiwg
c3RydWN0IGN1cmxfc2xpc3QqKiBoZWFkZXJzKQogewogICAgIFJlc291cmNlSGFuZGxlSW50ZXJu
YWwqIGQgPSBqb2ItPmdldEludGVybmFsKCk7Ci0gICAgY3VybF9lYXN5X3NldG9wdChkLT5tX2hh
bmRsZSwgQ1VSTE9QVF9QT1NULCBUUlVFKTsKLSAgICBjdXJsX2Vhc3lfc2V0b3B0KGQtPm1faGFu
ZGxlLCBDVVJMT1BUX1BPU1RGSUVMRFNJWkUsIDApOwotCi0gICAgaWYgKCFqb2ItPmZpcnN0UmVx
dWVzdCgpLmh0dHBCb2R5KCkpCi0gICAgICAgIHJldHVybjsKLQogICAgIFZlY3RvcjxGb3JtRGF0
YUVsZW1lbnQ+IGVsZW1lbnRzID0gam9iLT5maXJzdFJlcXVlc3QoKS5odHRwQm9keSgpLT5lbGVt
ZW50cygpOwogICAgIHNpemVfdCBudW1FbGVtZW50cyA9IGVsZW1lbnRzLnNpemUoKTsKLSAgICBp
ZiAoIW51bUVsZW1lbnRzKQotICAgICAgICByZXR1cm47CiAKLSAgICAvLyBEbyBub3Qgc3RyZWFt
IGZvciBzaW1wbGUgUE9TVCBkYXRhCi0gICAgaWYgKG51bUVsZW1lbnRzID09IDEpIHsKLSAgICAg
ICAgam9iLT5maXJzdFJlcXVlc3QoKS5odHRwQm9keSgpLT5mbGF0dGVuKGQtPm1fcG9zdEJ5dGVz
KTsKLSAgICAgICAgaWYgKGQtPm1fcG9zdEJ5dGVzLnNpemUoKSAhPSAwKSB7Ci0gICAgICAgICAg
ICBjdXJsX2Vhc3lfc2V0b3B0KGQtPm1faGFuZGxlLCBDVVJMT1BUX1BPU1RGSUVMRFNJWkUsIGQt
Pm1fcG9zdEJ5dGVzLnNpemUoKSk7Ci0gICAgICAgICAgICBjdXJsX2Vhc3lfc2V0b3B0KGQtPm1f
aGFuZGxlLCBDVVJMT1BUX1BPU1RGSUVMRFMsIGQtPm1fcG9zdEJ5dGVzLmRhdGEoKSk7Ci0gICAg
ICAgIH0KLSAgICAgICAgcmV0dXJuOwotICAgIH0KLQotICAgIC8vIE9idGFpbiB0aGUgdG90YWwg
c2l6ZSBvZiB0aGUgUE9TVAogICAgIC8vIFRoZSBzaXplIG9mIGEgY3VybF9vZmZfdCBjb3VsZCBi
ZSBkaWZmZXJlbnQgaW4gV2ViS2l0IGFuZCBpbiBjVVJMIGRlcGVuZGluZyBvbgotICAgIC8vIGNv
bXBpbGF0aW9uIGZsYWdzIG9mIGJvdGguIEZvciBDVVJMT1BUX1BPU1RGSUVMRFNJWkVfTEFSR0Ug
d2UgaGF2ZSB0byBwYXNzIHRoZQotICAgIC8vIHJpZ2h0IHNpemUgb3IgcmFuZG9tIGRhdGEgd2ls
bCBiZSB1c2VkIGFzIHRoZSBzaXplLgorICAgIC8vIGNvbXBpbGF0aW9uIGZsYWdzIG9mIGJvdGgu
CiAgICAgc3RhdGljIGludCBleHBlY3RlZFNpemVPZkN1cmxPZmZUID0gMDsKICAgICBpZiAoIWV4
cGVjdGVkU2l6ZU9mQ3VybE9mZlQpIHsKICAgICAgICAgY3VybF92ZXJzaW9uX2luZm9fZGF0YSAq
aW5mb0RhdGEgPSBjdXJsX3ZlcnNpb25faW5mbyhDVVJMVkVSU0lPTl9OT1cpOwpAQCAtNTMwLDYg
KzUxMiw3IEBAIHZvaWQgUmVzb3VyY2VIYW5kbGVNYW5hZ2VyOjpzZXR1cFBPU1QoUmVzb3VyY2VI
YW5kbGUqIGpvYiwgc3RydWN0IGN1cmxfc2xpc3QqKiBoCiAjcHJhZ21hIHdhcm5pbmcoZGlzYWJs
ZTogNDMwNykKICNlbmRpZgogICAgIHN0YXRpYyBjb25zdCBsb25nIGxvbmcgbWF4Q3VybE9mZlQg
PSAoMUxMIDw8IChleHBlY3RlZFNpemVPZkN1cmxPZmZUICogOCAtIDEpKSAtIDE7CisgICAgLy8g
T2J0YWluIHRoZSB0b3RhbCBzaXplIG9mIHRoZSBmb3JtIGRhdGEKICAgICBjdXJsX29mZl90IHNp
emUgPSAwOwogICAgIGJvb2wgY2h1bmtlZFRyYW5zZmVyID0gZmFsc2U7CiAgICAgZm9yIChzaXpl
X3QgaSA9IDA7IGkgPCBudW1FbGVtZW50czsgaSsrKSB7CkBAIC01NTYsMTUgKzUzOSw1NCBAQCB2
b2lkIFJlc291cmNlSGFuZGxlTWFuYWdlcjo6c2V0dXBQT1NUKFJlc291cmNlSGFuZGxlKiBqb2Is
IHN0cnVjdCBjdXJsX3NsaXN0KiogaAogICAgICAgICAqaGVhZGVycyA9IGN1cmxfc2xpc3RfYXBw
ZW5kKCpoZWFkZXJzLCAiVHJhbnNmZXItRW5jb2Rpbmc6IGNodW5rZWQiKTsKICAgICBlbHNlIHsK
ICAgICAgICAgaWYgKHNpemVvZihsb25nIGxvbmcpID09IGV4cGVjdGVkU2l6ZU9mQ3VybE9mZlQp
Ci0gICAgICAgICAgY3VybF9lYXN5X3NldG9wdChkLT5tX2hhbmRsZSwgQ1VSTE9QVF9QT1NURklF
TERTSVpFX0xBUkdFLCAobG9uZyBsb25nKXNpemUpOworICAgICAgICAgICAgY3VybF9lYXN5X3Nl
dG9wdChkLT5tX2hhbmRsZSwgc2l6ZU9wdGlvbiwgKGxvbmcgbG9uZylzaXplKTsKICAgICAgICAg
ZWxzZQotICAgICAgICAgIGN1cmxfZWFzeV9zZXRvcHQoZC0+bV9oYW5kbGUsIENVUkxPUFRfUE9T
VEZJRUxEU0laRV9MQVJHRSwgKGludClzaXplKTsKKyAgICAgICAgICAgIGN1cmxfZWFzeV9zZXRv
cHQoZC0+bV9oYW5kbGUsIHNpemVPcHRpb24sIChpbnQpc2l6ZSk7CiAgICAgfQogCiAgICAgY3Vy
bF9lYXN5X3NldG9wdChkLT5tX2hhbmRsZSwgQ1VSTE9QVF9SRUFERlVOQ1RJT04sIHJlYWRDYWxs
YmFjayk7CiAgICAgY3VybF9lYXN5X3NldG9wdChkLT5tX2hhbmRsZSwgQ1VSTE9QVF9SRUFEREFU
QSwgam9iKTsKIH0KIAordm9pZCBSZXNvdXJjZUhhbmRsZU1hbmFnZXI6OnNldHVwUFVUKFJlc291
cmNlSGFuZGxlKiBqb2IsIHN0cnVjdCBjdXJsX3NsaXN0KiogaGVhZGVycykKK3sKKyAgICBSZXNv
dXJjZUhhbmRsZUludGVybmFsKiBkID0gam9iLT5nZXRJbnRlcm5hbCgpOworICAgIGN1cmxfZWFz
eV9zZXRvcHQoZC0+bV9oYW5kbGUsIENVUkxPUFRfVVBMT0FELCBUUlVFKTsKKyAgICBjdXJsX2Vh
c3lfc2V0b3B0KGQtPm1faGFuZGxlLCBDVVJMT1BUX0lORklMRVNJWkUsIDApOworCisgICAgLy8g
RGlzYWJsZSB0aGUgRXhwZWN0OiAxMDAgY29udGludWUgaGVhZGVyCisgICAgKmhlYWRlcnMgPSBj
dXJsX3NsaXN0X2FwcGVuZCgqaGVhZGVycywgIkV4cGVjdDoiKTsKKworICAgIHNpemVfdCBudW1F
bGVtZW50cyA9IGdldEZvcm1FbGVtZW50c0NvdW50KGpvYik7CisgICAgaWYgKCFudW1FbGVtZW50
cykKKyAgICAgICAgcmV0dXJuOworCisgICAgc2V0dXBGb3JtRGF0YShqb2IsIENVUkxPUFRfSU5G
SUxFU0laRV9MQVJHRSwgaGVhZGVycyk7Cit9CisKK3ZvaWQgUmVzb3VyY2VIYW5kbGVNYW5hZ2Vy
OjpzZXR1cFBPU1QoUmVzb3VyY2VIYW5kbGUqIGpvYiwgc3RydWN0IGN1cmxfc2xpc3QqKiBoZWFk
ZXJzKQoreworICAgIFJlc291cmNlSGFuZGxlSW50ZXJuYWwqIGQgPSBqb2ItPmdldEludGVybmFs
KCk7CisgICAgY3VybF9lYXN5X3NldG9wdChkLT5tX2hhbmRsZSwgQ1VSTE9QVF9QT1NULCBUUlVF
KTsKKyAgICBjdXJsX2Vhc3lfc2V0b3B0KGQtPm1faGFuZGxlLCBDVVJMT1BUX1BPU1RGSUVMRFNJ
WkUsIDApOworCisgICAgc2l6ZV90IG51bUVsZW1lbnRzID0gZ2V0Rm9ybUVsZW1lbnRzQ291bnQo
am9iKTsKKyAgICBpZiAoIW51bUVsZW1lbnRzKQorICAgICAgICByZXR1cm47CisKKyAgICAvLyBE
byBub3Qgc3RyZWFtIGZvciBzaW1wbGUgUE9TVCBkYXRhCisgICAgaWYgKG51bUVsZW1lbnRzID09
IDEpIHsKKyAgICAgICAgam9iLT5maXJzdFJlcXVlc3QoKS5odHRwQm9keSgpLT5mbGF0dGVuKGQt
Pm1fcG9zdEJ5dGVzKTsKKyAgICAgICAgaWYgKGQtPm1fcG9zdEJ5dGVzLnNpemUoKSkgeworICAg
ICAgICAgICAgY3VybF9lYXN5X3NldG9wdChkLT5tX2hhbmRsZSwgQ1VSTE9QVF9QT1NURklFTERT
SVpFLCBkLT5tX3Bvc3RCeXRlcy5zaXplKCkpOworICAgICAgICAgICAgY3VybF9lYXN5X3NldG9w
dChkLT5tX2hhbmRsZSwgQ1VSTE9QVF9QT1NURklFTERTLCBkLT5tX3Bvc3RCeXRlcy5kYXRhKCkp
OworICAgICAgICB9CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBzZXR1cEZvcm1EYXRh
KGpvYiwgQ1VSTE9QVF9QT1NURklFTERTSVpFX0xBUkdFLCBoZWFkZXJzKTsKK30KKwogdm9pZCBS
ZXNvdXJjZUhhbmRsZU1hbmFnZXI6OmFkZChSZXNvdXJjZUhhbmRsZSogam9iKQogewogICAgIC8v
IHdlIGNhbiBiZSBjYWxsZWQgZnJvbSB3aXRoaW4gY3VybCwgc28gdG8gYXZvaWQgcmUtZW50cmFu
Y3kgaXNzdWVzCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>