| Wireshark 4.7.0 The Wireshark network protocol analyzer

Loading...
Searching...
No Matches
packet-bpsec.h
1/* packet-bpsec.h
2 * Definitions for Bundle Protocol Version 7 Security (BPSec) dissection
3 * References:
4 * RFC 9172: https://www.rfc-editor.org/rfc/rfc9172.html
5 *
6 * Copyright 2019-2021, Brian Sipos <brian.sipos@gmail.com>
7 *
8 * Wireshark - Network traffic analyzer
9 * By Gerald Combs <gerald@wireshark.org>
10 * Copyright 1998 Gerald Combs
11 *
12 * SPDX-License-Identifier: LGPL-2.1-or-later
13 */
14#ifndef PACKET_BPSEC_H
15#define PACKET_BPSEC_H
16
17#include <ws_symbol_export.h>
18#include <epan/tvbuff.h>
19#include "packet-bpv7.h"
20
21#ifdef __cplusplus
22 extern "C" {
23#endif
24
25/*
26 * A human-friendly name for a security context ID can be registered with
27 * the dissector table "bpsec.ctx". This dissector is used only for its
28 * description and not to actually dissect anything.
29 *
30 * BPSec per-context parameter types and result types are registered with the
31 * dissector table "bpsec.param" and "bpsec.result" respectively.
32 * Both use bpsec_id_t* table keys, to identify both the context and the type
33 * code points.
34 */
35
39 typedef enum {
41 BPSEC_ASB_HAS_PARAMS = 0x01,
42} BpsecAsbFlag;
43
45 typedef struct {
47 int64_t context_id;
49 int64_t type_id;
50} bpsec_id_t;
51
52 typedef struct {
54 bpsec_id_t id;
56 const bp_dissector_data_t *bp;
57} bpsec_dissector_data_t;
58
61WS_DLL_PUBLIC
62 bpsec_id_t * bpsec_id_new(wmem_allocator_t *alloc, int64_t context_id, int64_t type_id);
63
64#ifdef __cplusplus
65}
66#endif
67
68#endif /* PACKET_BPSEC_H */
_wmem_allocator_t
Internal memory allocator interface used by the wmem subsystem.
Definition wmem_allocator.h:34
bp_dissector_data_t
Definition packet-bpv7.h:384
bpsec_dissector_data_t
Definition packet-bpsec.h:52
bpsec_dissector_data_t::bp
const bp_dissector_data_t * bp
Pointer to containing block/bundle context.
Definition packet-bpsec.h:56
bpsec_dissector_data_t::id
bpsec_id_t id
Specific type being dissected.
Definition packet-bpsec.h:54
bpsec_id_t
Parameter/Result dissector lookup.
Definition packet-bpsec.h:45
bpsec_id_t::type_id
int64_t type_id
Parameter/Result ID.
Definition packet-bpsec.h:49
bpsec_id_t::context_id
int64_t context_id
Security context ID.
Definition packet-bpsec.h:47
tvbuff.h