lighttpd1.4/src/ls-hpack
Glenn Strauss 5a694281da [core] ls-hpack optimizations
define LSHPACK_DEC_HTTP1X_OUTPUT 0
  lighttpd does not require HTTP/1.1 output compat from HPACK decoder
  ("field-name: value\r\n")

define NDEBUG (in ls-hpack/lshpack.c)
  lighttpd spends upwards of 20% total lighttpd CPU time in HPACK
  encode/decode in h2load test on static file over cleartext (not TLS)
  Defining NDEBUG eliminates some asserts() and results in a small
  but measurable reduction in CPU usage
2020-10-11 12:19:26 -04:00
..
deps/xxhash [core] link in ls-hpack (EXPERIMENTAL) 2020-10-11 11:43:06 -04:00
LICENSE [core] link in ls-hpack (EXPERIMENTAL) 2020-10-11 11:43:06 -04:00
README.md [core] link in ls-hpack (EXPERIMENTAL) 2020-10-11 11:43:06 -04:00
huff-tables.h [core] link in ls-hpack (EXPERIMENTAL) 2020-10-11 11:43:06 -04:00
lshpack.c [core] ls-hpack optimizations 2020-10-11 12:19:26 -04:00
lshpack.h [core] ls-hpack optimizations 2020-10-11 12:19:26 -04:00
lsxpack_header.h [core] link in ls-hpack (EXPERIMENTAL) 2020-10-11 11:43:06 -04:00

README.md

Build Status Build Status Build status

LS-HPACK: LiteSpeed HPACK Library

Description

LS-HPACK provides functionality to encode and decode HTTP headers using HPACK compression mechanism specified in RFC 7541.

Documentation

The API is documented in include/lshpack.h. To see usage examples, see the unit tests.

Requirements

To build LS-HPACK, you need CMake. The library uses XXHASH at runtime.

Platforms

The library has been tested on the following platforms:

  • Linux
  • FreeBSD
  • Windows

Copyright (c) 2018 - 2020 LiteSpeed Technologies Inc