Wireshark 4.5.0
The Wireshark network protocol analyzer
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
packet-http2.h
1/* packet-http2.h
2 * Routines for HTTP/2 dissection
3 *
4 * Wireshark - Network traffic analyzer
5 * By Gerald Combs <gerald@wireshark.org>
6 * Copyright 1998 Gerald Combs
7 *
8 * SPDX-License-Identifier: GPL-2.0-or-later
9 */
10#ifndef __PACKET_HTTP2_H__
11#define __PACKET_HTTP2_H__
12
13#ifdef __cplusplus
14extern "C" {
15#endif /* __cplusplus */
16
17/* http2 standard headers */
18#define HTTP2_HEADER_CONTENT_ENCODING "content-encoding"
19#define HTTP2_HEADER_STATUS ":status"
20#define HTTP2_HEADER_STATUS_PARTIAL_CONTENT "206"
21#define HTTP2_HEADER_METHOD ":method"
22#define HTTP2_HEADER_METHOD_CONNECT "CONNECT"
23#define HTTP2_HEADER_TRANSFER_ENCODING "transfer-encoding"
24#define HTTP2_HEADER_PATH ":path"
25#define HTTP2_HEADER_LOCATION "location"
26#define HTTP2_HEADER_AUTHORITY ":authority"
27#define HTTP2_HEADER_SCHEME ":scheme"
28#define HTTP2_HEADER_CONTENT_TYPE "content-type"
29#define HTTP2_HEADER_UNKNOWN "<unknown>"
30/* http2 for grpc */
31#define HTTP2_HEADER_GRPC_ENCODING "grpc-encoding"
32
33int dissect_http2_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U_ );
34
54const char* http2_get_header_value(packet_info *pinfo, const char* name, bool the_other_direction);
55
61uint32_t http2_get_stream_id(packet_info *pinfo);
62
67void
68http2_set_stream_imsi(packet_info *pinfo, char* imsi);
69
74const char*
75http2_get_stream_imsi(packet_info *pinfo);
76
81void
82http2_add_referenceid_imsi(char* referenceid, const char* imsi);
83
87char*
88http2_get_imsi_from_referenceid(const char* referenceid);
89
94WS_DLL_PUBLIC bool
95http2_get_stream_id_le(unsigned streamid, unsigned sub_stream_id, unsigned *sub_stream_id_out);
96
101WS_DLL_PUBLIC bool
102http2_get_stream_id_ge(unsigned streamid, unsigned sub_stream_id, unsigned *sub_stream_id_out);
103
104WS_DLL_PUBLIC void
105dissect_http2_settings_ext(tvbuff_t* tvb, packet_info* pinfo _U_, proto_tree* http2_tree, unsigned offset);
106
107#ifdef __cplusplus
108}
109#endif /* __cplusplus */
110
111#endif
112
113/*
114 * Editor modelines - https://www.wireshark.org/tools/modelines.html
115 *
116 * Local variables:
117 * c-basic-offset: 4
118 * tab-width: 8
119 * indent-tabs-mode: nil
120 * End:
121 *
122 * vi: set shiftwidth=4 tabstop=8 expandtab:
123 * :indentSize=4:tabSize=8:noTabs=true:
124 */
Definition packet_info.h:43
Definition proto.h:907
Definition tvbuff-int.h:35