Changes for version 1.03 - 2015-07-09

  • reworked enqueue() method, implemented enqueue_raw()
  • return error when CONTINUATION frames interrupted by other frames
  • check length of RST_STREAM and WINDOW_UPDATE frames
  • implemented validation rules for settings SETTINGS_ENABLE_PUSH and SETTINGS_INITIAL_WINDOW_SIZE
  • update flow control window size on active streams when receive SETTINGS_INITIAL_WINDOW_SIZE
  • fixed bug: now send ack on empty settings
  • fixed bug: flow control window for sended frames used to be initialized with wrong value
  • strict validation of headers
  • check for explicit content-length header to match size of received DATA frames
  • control for maximum concurent streams
  • fixed tests

Modules

HTTP/2 protocol implementation (RFC 7540)
HTTP/2 client
HTTP/2 server

Provides

in lib/Protocol/HTTP2/Connection.pm
in lib/Protocol/HTTP2/Constants.pm
in lib/Protocol/HTTP2/Frame.pm
in lib/Protocol/HTTP2/Frame/Continuation.pm
in lib/Protocol/HTTP2/Frame/Data.pm
in lib/Protocol/HTTP2/Frame/Goaway.pm
in lib/Protocol/HTTP2/Frame/Headers.pm
in lib/Protocol/HTTP2/Frame/Ping.pm
in lib/Protocol/HTTP2/Frame/Priority.pm
in lib/Protocol/HTTP2/Frame/Push_promise.pm
in lib/Protocol/HTTP2/Frame/Rst_stream.pm
in lib/Protocol/HTTP2/Frame/Settings.pm
in lib/Protocol/HTTP2/Frame/Window_update.pm
in lib/Protocol/HTTP2/HeaderCompression.pm
in lib/Protocol/HTTP2/Huffman.pm
in lib/Protocol/HTTP2/HuffmanCodes.pm
in lib/Protocol/HTTP2/Server.pm
in lib/Protocol/HTTP2/StaticTable.pm
in lib/Protocol/HTTP2/Stream.pm
in lib/Protocol/HTTP2/Trace.pm
in lib/Protocol/HTTP2/Upgrade.pm