1. 12 May, 2016 3 commits
    • Cory Benfield's avatar
      http2: Add space between colon and header value · 0761a51e
      Cory Benfield authored
      curl's representation of HTTP/2 responses involves transforming the
      response to a format that is similar to HTTP/1.1. Prior to this change,
      curl would do this by separating header names and values with only a
      colon, without introducing a space after the colon.
      
      While this is technically a valid way to represent a HTTP/1.1 header
      block, it is much more common to see a space following the colon. This
      change introduces that space, to ensure that incautious tools are safely
      able to parse the header block.
      
      This also ensures that the difference between the HTTP/1.1 and HTTP/2
      response layout is as minimal as possible.
      
      Bug: https://github.com/curl/curl/issues/797
      
      Closes #798
      Fixes #797
      0761a51e
    • Kamil Dudka's avatar
      openssl: fix compile-time warning in Curl_ossl_check_cxn() · ea06ad2e
      Kamil Dudka authored
      ... introduced in curl-7_48_0-293-g2968c839:
      
      Error: COMPILER_WARNING:
      lib/vtls/openssl.c: scope_hint: In function ‘Curl_ossl_check_cxn’
      lib/vtls/openssl.c:767:15: warning: conversion to ‘int’ from ‘ssize_t’
      may alter its value [-Wconversion]
      ea06ad2e
    • Jay Satiro's avatar
      openssl: stricter connection check function · 2968c839
      Jay Satiro authored
      - In the case of recv error, limit returning 'connection still in place'
      to EINPROGRESS, EAGAIN and EWOULDBLOCK.
      
      This is an improvement on the parent commit which changed the openssl
      connection check to use recv MSG_PEEK instead of SSL_peek.
      
      Ref: https://github.com/curl/curl/commit/856baf5#comments
      2968c839
  2. 10 May, 2016 1 commit
    • Anders Bakken's avatar
      TLS: SSL_peek is not a const operation · 856baf5a
      Anders Bakken authored
      Calling SSL_peek can cause bytes to be read from the raw socket which in
      turn can upset the select machinery that determines whether there's data
      available on the socket.
      
      Since Curl_ossl_check_cxn only tries to determine whether the socket is
      alive and doesn't actually need to see the bytes SSL_peek seems like
      the wrong function to call.
      
      We're able to occasionally reproduce a connect timeout due to this
      bug. What happens is that Curl doesn't know to call SSL_connect again
      after the peek happens since data is buffered in the SSL buffer and thus
      select won't fire for this socket.
      
      Closes #795
      856baf5a
  3. 09 May, 2016 1 commit
    • Daniel Stenberg's avatar
      TLS: move the ALPN/NPN enable bits to the connection · f6767f54
      Daniel Stenberg authored
      Only protocols that actually have a protocol registered for ALPN and NPN
      should try to get that negotiated in the TLS handshake. That is only
      HTTPS (well, http/1.1 and http/2) right now. Previously ALPN and NPN
      would wrongly be used in all handshakes if libcurl was built with it
      enabled.
      
      Reported-by: Jay Satiro
      
      Fixes #789
      f6767f54
  4. 08 May, 2016 2 commits
  5. 05 May, 2016 1 commit
  6. 03 May, 2016 1 commit
  7. 02 May, 2016 5 commits
  8. 01 May, 2016 13 commits
  9. 29 Apr, 2016 8 commits
  10. 28 Apr, 2016 5 commits