nghttp2

nghttp2 - HTTP/2 C Library and tools

OTHER License

Stars
4.5K
Committers
152

Bot releases are hidden (Show)

nghttp2 - nghttp2 v0.7.4

Published by tatsuhiro-t over 9 years ago

  • Implements h2-14 protocol (http://tools.ietf.org/html/draft-ietf-httpbis-http2-14)
  • Implements HPACK 09 (http://tools.ietf.org/html/draft-ietf-httpbis-header-compression-09)
  • Handle situation where request HEADERS in queue is reset by RST_STREAM
  • Make nghttp2_session_get_stream_user_data work inside nghttp2_on_frame_not_send_callback
  • Make default min frame payload size to 16K
  • Fix bug that client may send PROTOCOL_ERROR upon canceled push stream
  • Treat first SETTINGS bearing ACK as connection error
  • examples/client: Send SETTINGS
  • nghttp: Don't request already pushed resources
  • nghttp: Rewrite statistics output with -s option
  • nghttpd: Handle return value from server.run()
  • nghttpd: Fix multiple push configuration does not work
  • nghttpx: Cancel backend request when frontend HTTP/1 connection is lost
  • nghttpx: Support server push using Link header field; --no-server-push to disable this.
  • nghttpx: Rewrite :authority and host header field; --no-host-rewrite to disable this.
  • nghttpx: Fix busy loop when HTTP/2 backend reset after connection established
  • nghttpx: Use TCP_DEFER_ACCEPT if available
  • nghttpx: Accept s or ms as unit for argument
  • h2load: Add request stats (time for request min, max, mean and sd)
  • Add bash_completion files for nghttp, nghttpd, nghttpx and h2load
nghttp2 - nghttp2 v0.7.3

Published by tatsuhiro-t over 9 years ago

The changes made in v0.7.2 are listed below for convenience:

  • Add nghttp2_submit_shutdown_notice() API function for server to tell client that server started graceful shutdown
  • Add nghttp2_session_get_last_proc_stream_id() API function.
  • nghttpx: Add --tls-ctx-per-worker option
  • nghttpx: Add --backend-response-buffer option
  • nghttpx: Add --backend-request-buffer option
  • nghttpx: Fix TLS write limit does not work
  • nghttpd, nghttpx: Issue RST_STREAM if content-length is invalid
  • nghttp, nghttpd, nghttpx: Allow units (k, m, and g) for options which take metavar SIZE
  • src: Define NOTHREADS to 1 if thread_local keyword is not available
  • Add integration tests for nghttpx using golang testing framework
nghttp2 - nghttp2 v0.7.2

Published by tatsuhiro-t over 9 years ago

  • Implements h2-14 protocol (http://tools.ietf.org/html/draft-ietf-httpbis-http2-14)
  • Implements HPACK 09 (http://tools.ietf.org/html/draft-ietf-httpbis-header-compression-09)
  • Add nghttp2_submit_shutdown_notice() API function for server to tell client that server started graceful shutdown
  • Add nghttp2_session_get_last_proc_stream_id() API function.
  • nghttpx: Add --tls-ctx-per-worker option
  • nghttpx: Add --backend-response-buffer option
  • nghttpx: Add --backend-request-buffer option
  • nghttpx: Fix TLS write limit does not work
  • nghttpd, nghttpx: Issue RST_STREAM if content-length is invalid
  • nghttp, nghttpd, nghttpx: Allow units (k, m, and g) for options which take metavar SIZE
  • src: Define NOTHREADS to 1 if thread_local keyword is not available
  • Add integration tests for nghttpx using golang testing framework
nghttp2 - nghttp2 v0.7.1

Published by tatsuhiro-t almost 10 years ago

nghttp2 - nghttp2 v0.7.0

Published by tatsuhiro-t almost 10 years ago

  • Implements h2-14 protocol (http://tools.ietf.org/html/draft-ietf-httpbis-http2-14)
  • Implements HPACK 09 (http://tools.ietf.org/html/draft-ietf-httpbis-header-compression-09)
  • Support custom memory allocator. See nghttp2_mem struct.
  • Add nghttp2_session_{set,get}_next_stream_id API function
  • asio-lib: Put ${AM_CPPFLAGS} before ${BOOST_CPPFLAGS}
  • nghttp, nghttpd, nghttpx, h2load: Use libev instead of libevent
  • nghttpx: Fix --backend-http-proxy-uri does not work
  • nghttpx: Limit # of downstream connections per host when h2 proxy is used. See --backend-http1-connections-per-hsot.
  • nghttpx: --backend-connections-per-frontend was renamed as --backend-http1-connections-per-frontend
  • nghttpx: Support multiple HTTP/1 backend addresses
  • nghttpx: Fix bug SPDY upstream requires content-length if no FIN in SYN_STREAM
  • nghttp: Add --dep-idle option to create anchor idle node for dependency
  • nghttp, nghttpd: Print stream ID in priority field as dep_stream_id
  • nghttp, h2load: Use recommended ciphers and assign sane SSL_CTX options
  • nghttp, nghttpx, nghttpd, h2load: Support h2-16 in NPN/ALPN
  • nghttp: copy the request entity to temporary file if the source is stdin and if it is not a regular file. Contributed by Kazuho Oku
nghttp2 - nghttp2 v0.6.7

Published by tatsuhiro-t almost 10 years ago

  • Implements h2-14 protocol (http://tools.ietf.org/html/draft-ietf-httpbis-http2-14)
  • Implements HPACK 09 (http://tools.ietf.org/html/draft-ietf-httpbis-header-compression-09)
  • Merged draft-16 features. Framing is binary compatible with draft-14, so we still use h2-14 for interop.
  • Initialize frame header for upgrade SETTINGS frame
  • Allow PRIORITY frame at anytime
  • Robust GOAWAY handling
  • tiny-nghttpd: Fix memory leak
  • asio: Add http2::backlog API function
  • nghttpx: Disable spdy/3 and spdy/2 by default
  • nghttpx: Add configurable access logging format
  • nghttp: Add -r, --har option to output HTTP transactions in HAR format
  • nghttp: Add --no-dep option to disable sending priority hints to server
  • h2load: Support ALPN
  • python: Add client Python bindings
nghttp2 - nghttp2 v0.6.6

Published by tatsuhiro-t almost 10 years ago

  • Implements h2-14 protocol (http://tools.ietf.org/html/draft-ietf-httpbis-http2-14)
  • Implements HPACK 09 (http://tools.ietf.org/html/draft-ietf-httpbis-header-compression-09)
  • Merged draft-15 features. Framing is binary compatible with draft-14, so we still use h2-14 for interop.
  • Fix heap-use-after-free bug in priority handling code
  • Fix some other bugs in priority code
  • nghttp: -v option now can be accepted several times to increase verbosity
  • nghttpx: Add NOTICE log level, which is now default.
  • nghttpx: Fix doc so that WARN is right log level name, WARNING was typo.
  • nghttpx: Implement dynamic TLS record size
  • h2load: Print SSL/TLS cipher name and parameters
nghttp2 - nghttp2 v0.6.5

Published by tatsuhiro-t almost 10 years ago

nghttp2 - nghttp2 v0.6.4

Published by tatsuhiro-t about 10 years ago

nghttp2 - nghttp2 v0.6.3

Published by tatsuhiro-t about 10 years ago

nghttp2 - nghttp2 v0.6.2

Published by tatsuhiro-t about 10 years ago

  • Implements h2-14 protocol (http://tools.ietf.org/html/draft-ietf-httpbis-http2-14)
  • Implements HPACK 09 (http://tools.ietf.org/html/draft-ietf-httpbis-header-compression-09)
  • Fix memory leak
  • Add nghttp2_option_set_recv_client_preface() function
  • Add NGHTTP2_ERR_BAD_PREFACE library error code
  • Move Makefile.msvc to lib directory
  • Add experimental libnghttp2_asio C++ library, which is high level toolkit to build HTTP/2 server easily.
    It depends on Boost::Asio and Boost::Thread libraries.
  • Fixed nghttp2_stream_resume_deferred_data() so that it does not fail if data is deferred by flow control
  • Faster processing incoming connection level WINDOW_UPDATE
  • Add examples/tiny-nghttpd, lighter faster version of nghttpd.
nghttp2 - nghttp2 v0.6.1

Published by tatsuhiro-t about 10 years ago

nghttp2 - nghttp2 v0.6.0

Published by tatsuhiro-t about 10 years ago

nghttp2 - nghttp2 v0.5.1

Published by tatsuhiro-t about 10 years ago

nghttp2 - nghttp2 v0.5.0

Published by tatsuhiro-t over 10 years ago

nghttp2 - nghttp2 v0.4.1

Published by tatsuhiro-t over 10 years ago

  • Implements h2-12 protocol (http://tools.ietf.org/html/draft-ietf-httpbis-http2-12)

  • Implements HPACK 07 (http://tools.ietf.org/html/draft-ietf-httpbis-header-compression-07)

  • nghttpx: Set timeout to underlying bufferevent

    Setting write timeout to filter bufferevent does not work as
    intended. It timeouts even when there is no data to write.

  • Call on_data_chunk_recv_callback only when stream is active

  • h2load: Use std::async to dispatch parallel jobs

  • nghttpx: Treat '*' in parameter of --frontend as
    wildcard explicitly

  • nghttpd, nghttpx: Check END_STREAM flag in HEADERS other than
    request

  • nghttpx: Make --npn-list option work in ALPN

  • Handle the case where jemalloc is available without linking
    extra library

nghttp2 - nghttp2 v0.4.0

Published by tatsuhiro-t over 10 years ago

nghttp2 - nghttp2 v0.3.2

Published by tatsuhiro-t over 10 years ago

nghttp2 - nghttp2 v0.3.1

Published by tatsuhiro-t over 10 years ago

  • Implements HTTP-draft-09/2.0 protocol (http://tools.ietf.org/html/draft-ietf-httpbis-http2-09)
  • Out-of-tree build for doc and python
  • Fix on_frame_recv_callback called multiple times if CONTINUATION is involved
  • Include sphinx theme in distribution
  • Fix premature header block is not treated as connection error
  • Fix incoming CONTINUATION payload length is not considered in callback
  • Fix inflater memory leak
  • doc: Add man pages for nghttp, nghttpd and nghttpx.
    Patch from Dave Beckett
nghttp2 - nghttp2 v0.3.0

Published by tatsuhiro-t over 10 years ago