Skip to content
  1. Feb 02, 2016
    • Daniel Stenberg's avatar
      dotdot: allow an empty input string too · 41ae9f71
      Daniel Stenberg authored
      It isn't used by the code in current conditions but for safety it seems
      sensible to at least not crash on such input.
      
      Extended unit test 1395 to verify this too as well as a plain "/" input.
      41ae9f71
  2. Jan 29, 2016
  3. Jan 28, 2016
  4. Jan 26, 2016
  5. Jan 18, 2016
    • Jay Satiro's avatar
      mbedtls: Fix pinned key return value on fail · d58ba66e
      Jay Satiro authored
      - Switch from verifying a pinned public key in a callback during the
      certificate verification to inline after the certificate verification.
      
      The callback method had three problems:
      
      1. If a pinned public key didn't match, CURLE_SSL_PINNEDPUBKEYNOTMATCH
      was not returned.
      
      2. If peer certificate verification was disabled the pinned key
      verification did not take place as it should.
      
      3. (related to #2) If there was no certificate of depth 0 the callback
      would not have checked the pinned public key.
      
      Though all those problems could have been fixed it would have made the
      code more complex. Instead we now verify inline after the certificate
      verification in mbedtls_connect_step2.
      
      Ref: http://curl.haxx.se/mail/lib-2016-01/0047.html
      Ref: https://github.com/bagder/curl/pull/601
      d58ba66e
  6. Jan 15, 2016
  7. Jan 14, 2016
  8. Jan 11, 2016
    • Daniel Stenberg's avatar
      ConnectionExists: only do pipelining/multiplexing when asked · 13b6d3b7
      Daniel Stenberg authored
      When an HTTP/2 upgrade request fails (no protocol switch), it would
      previously detect that as still possible to pipeline on (which is
      acorrect) and do that when PIPEWAIT was enabled even if pipelining was
      not explictily enabled.
      
      It should only pipelined if explicitly asked to.
      
      Closes #584
      13b6d3b7
    • Mohammad AlSaleh's avatar
      lib: Prefix URLs with lower-case protocol names/schemes · 3d209b5f
      Mohammad AlSaleh authored
      Before this patch, if a URL does not start with the protocol
      name/scheme, effective URLs would be prefixed with upper-case protocol
      names/schemes. This behavior might not be expected by library users or
      end users.
      
      For example, if `CURLOPT_DEFAULT_PROTOCOL` is set to "https". And the
      URL is "hostname/path". The effective URL would be
      "HTTPS://hostname/path" instead of "https://hostname/path
      
      ".
      
      After this patch, effective URLs would be prefixed with a lower-case
      protocol name/scheme.
      
      Closes #597
      
      Signed-off-by: default avatarMohammad AlSaleh <CE.Mohammad.AlSaleh@gmail.com>
      3d209b5f
  9. Jan 10, 2016
  10. Jan 09, 2016
  11. Jan 08, 2016
  12. Jan 07, 2016
  13. Jan 05, 2016
  14. Dec 23, 2015
  15. Dec 16, 2015
  16. Dec 15, 2015
    • Tatsuhiro Tsujikawa's avatar
      http2: Support trailer fields · 15cb03ad
      Tatsuhiro Tsujikawa authored
      This commit adds trailer support in HTTP/2.  In HTTP/1.1, chunked
      encoding must be used to send trialer fields.  HTTP/2 deprecated any
      trandfer-encoding, including chunked.  But trailer fields are now
      always available.
      
      Since trailer fields are relatively rare these days (gRPC uses them
      extensively though), allocating buffer for trailer fields is done when
      we detect that HEADERS frame containing trailer fields is started.  We
      use Curl_add_buffer_* functions to buffer all trailers, just like we
      do for regular header fields.  And then deliver them when stream is
      closed.  We have to be careful here so that all data are delivered to
      upper layer before sending trailers to the application.
      
      We can deliver trailer field one by one using NGHTTP2_ERR_PAUSE
      mechanism, but current method is far more simple.
      
      Another possibility is use chunked encoding internally for HTTP/2
      traffic.  I have not tested it, but it could add another overhead.
      
      Closes #564
      15cb03ad
    • Jay Satiro's avatar
      x509asn1: Fix host altname verification · 6c2c0196
      Jay Satiro authored
      - In Curl_verifyhost check all altnames in the certificate.
      
      Prior to this change only the first altname was checked. Only the GSKit
      SSL backend was affected by this bug.
      
      Bug: http://curl.haxx.se/mail/lib-2015-12/0062.html
      Reported-by: John Kohl
      6c2c0196
  17. Dec 14, 2015
  18. Dec 13, 2015
  19. Dec 10, 2015
  20. Dec 08, 2015
  21. Dec 07, 2015