Add nghttp2 - HTTP/2 C Library component
This commit is contained in:
parent
e8ced5143a
commit
7ba75e760e
|
@ -4,3 +4,6 @@
|
||||||
[submodule "cbor/tinycbor"]
|
[submodule "cbor/tinycbor"]
|
||||||
path = cbor/tinycbor
|
path = cbor/tinycbor
|
||||||
url = https://github.com/intel/tinycbor.git
|
url = https://github.com/intel/tinycbor.git
|
||||||
|
[submodule "nghttp/nghttp2"]
|
||||||
|
path = nghttp/nghttp2
|
||||||
|
url = https://github.com/nghttp2/nghttp2.git
|
||||||
|
|
|
@ -0,0 +1,29 @@
|
||||||
|
set(srcs
|
||||||
|
"nghttp2/lib/nghttp2_buf.c"
|
||||||
|
"nghttp2/lib/nghttp2_callbacks.c"
|
||||||
|
"nghttp2/lib/nghttp2_debug.c"
|
||||||
|
"nghttp2/lib/nghttp2_frame.c"
|
||||||
|
"nghttp2/lib/nghttp2_hd.c"
|
||||||
|
"nghttp2/lib/nghttp2_hd_huffman.c"
|
||||||
|
"nghttp2/lib/nghttp2_hd_huffman_data.c"
|
||||||
|
"nghttp2/lib/nghttp2_helper.c"
|
||||||
|
"nghttp2/lib/nghttp2_http.c"
|
||||||
|
"nghttp2/lib/nghttp2_map.c"
|
||||||
|
"nghttp2/lib/nghttp2_mem.c"
|
||||||
|
"nghttp2/lib/nghttp2_npn.c"
|
||||||
|
"nghttp2/lib/nghttp2_option.c"
|
||||||
|
"nghttp2/lib/nghttp2_outbound_item.c"
|
||||||
|
"nghttp2/lib/nghttp2_pq.c"
|
||||||
|
"nghttp2/lib/nghttp2_priority_spec.c"
|
||||||
|
"nghttp2/lib/nghttp2_queue.c"
|
||||||
|
"nghttp2/lib/nghttp2_rcbuf.c"
|
||||||
|
"nghttp2/lib/nghttp2_session.c"
|
||||||
|
"nghttp2/lib/nghttp2_stream.c"
|
||||||
|
"nghttp2/lib/nghttp2_submit.c"
|
||||||
|
"nghttp2/lib/nghttp2_version.c")
|
||||||
|
|
||||||
|
idf_component_register(SRCS "${srcs}"
|
||||||
|
INCLUDE_DIRS port/include nghttp2/lib/includes
|
||||||
|
PRIV_INCLUDE_DIRS port/private_include)
|
||||||
|
|
||||||
|
target_compile_definitions(${COMPONENT_LIB} PUBLIC "-DHAVE_CONFIG_H")
|
|
@ -0,0 +1 @@
|
||||||
|
nghttp2/COPYING
|
|
@ -0,0 +1 @@
|
||||||
|
nghttp2/README.rst
|
|
@ -0,0 +1,5 @@
|
||||||
|
version: "1.41.0"
|
||||||
|
description: "nghttp2 - HTTP/2 C Library"
|
||||||
|
url: https://github.com/espressif/idf-extra-components/tree/master/nghttp
|
||||||
|
dependencies:
|
||||||
|
idf: ">=5.0"
|
|
@ -0,0 +1 @@
|
||||||
|
Subproject commit 8f7b008b158e12de0e58247afd170f127dbb6456
|
|
@ -0,0 +1,42 @@
|
||||||
|
/*
|
||||||
|
* nghttp2 - HTTP/2 C Library
|
||||||
|
*
|
||||||
|
* Copyright (c) 2012, 2013 Tatsuhiro Tsujikawa
|
||||||
|
*
|
||||||
|
* Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
* a copy of this software and associated documentation files (the
|
||||||
|
* "Software"), to deal in the Software without restriction, including
|
||||||
|
* without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
* distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
* permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
* the following conditions:
|
||||||
|
*
|
||||||
|
* The above copyright notice and this permission notice shall be
|
||||||
|
* included in all copies or substantial portions of the Software.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||||
|
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||||
|
* LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||||
|
* OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||||
|
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
#ifndef NGHTTP2VER_H
|
||||||
|
#define NGHTTP2VER_H
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @macro
|
||||||
|
* Version number of the nghttp2 library release
|
||||||
|
*/
|
||||||
|
#define NGHTTP2_VERSION "v1.22.0"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @macro
|
||||||
|
* Numerical representation of the version number of the nghttp2 library
|
||||||
|
* release. This is a 24 bit number with 8 bits for major number, 8 bits
|
||||||
|
* for minor and 8 bits for patch. Version 1.2.3 becomes 0x010203.
|
||||||
|
*/
|
||||||
|
#define NGHTTP2_VERSION_NUM 0x012200
|
||||||
|
|
||||||
|
#endif /* NGHTTP2VER_H */
|
|
@ -0,0 +1,29 @@
|
||||||
|
#ifndef __HAVE_CONFIG_H_
|
||||||
|
#define __HAVE_CONFIG_H_
|
||||||
|
|
||||||
|
#define _U_
|
||||||
|
|
||||||
|
#define SIZEOF_INT_P 2
|
||||||
|
|
||||||
|
#include "stdio.h"
|
||||||
|
#include "stdlib.h"
|
||||||
|
#include "string.h"
|
||||||
|
|
||||||
|
#if (!defined(nghttp_unlikely))
|
||||||
|
#define nghttp_unlikely(Expression) !!(Expression)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define nghttp_ASSERT(Expression) do{if (!(Expression)) printf("%d\n", __LINE__);}while(0)
|
||||||
|
|
||||||
|
#define CU_ASSERT(a) nghttp_ASSERT(a)
|
||||||
|
#define CU_ASSERT_FATAL(a) nghttp_ASSERT(a)
|
||||||
|
|
||||||
|
#define NGHTTP_PLATFORM_HTONS(_n) ((uint16_t)((((_n) & 0xff) << 8) | (((_n) >> 8) & 0xff)))
|
||||||
|
#define NGHTTP_PLATFORM_HTONL(_n) ((uint32_t)( (((_n) & 0xff) << 24) | (((_n) & 0xff00) << 8) | (((_n) >> 8) & 0xff00) | (((_n) >> 24) & 0xff) ))
|
||||||
|
|
||||||
|
#define htons(x) NGHTTP_PLATFORM_HTONS(x)
|
||||||
|
#define ntohs(x) NGHTTP_PLATFORM_HTONS(x)
|
||||||
|
#define htonl(x) NGHTTP_PLATFORM_HTONL(x)
|
||||||
|
#define ntohl(x) NGHTTP_PLATFORM_HTONL(x)
|
||||||
|
|
||||||
|
#endif // __HAVE_CONFIG_H_
|
Loading…
Reference in New Issue