#include <ws_symbol_export.h>
#include <glib.h>
#include <stdbool.h>
#include <stdint.h>
Go to the source code of this file.
Definitions for the Wireshark CBOR item encoding API. References: RFC 8949: https://tools.ietf.org/html/rfc8949
Copyright 2017, Malisa Vucinic malis.nosp@m.hav@.nosp@m.gmail.nosp@m..com Copyright 2019-2025, Brian Sipos brian.nosp@m..sip.nosp@m.os@gm.nosp@m.ail..nosp@m.com
Wireshark - Network traffic analyzer By Gerald Combs geral.nosp@m.d@wi.nosp@m.resha.nosp@m.rk.o.nosp@m.rg Copyright 1998 Gerald Combs
SPDX-License-Identifier: LGPL-2.1-or-later
◆ wscbor_enc_array_head()
WS_DLL_PUBLIC void wscbor_enc_array_head |
( |
GByteArray * |
buf, |
|
|
size_t |
len |
|
) |
| |
Add an array header with a definite length.
- Note
- The items which follow this header must agree with the definite length.
- Parameters
-
[in,out] | buf | The buffer to append to. |
| len | The number of items of the array. |
◆ wscbor_enc_boolean()
WS_DLL_PUBLIC void wscbor_enc_boolean |
( |
GByteArray * |
buf, |
|
|
bool |
value |
|
) |
| |
Add an item containing a bool value.
- Parameters
-
[in,out] | buf | The buffer to append to. |
| value | The value to write. |
◆ wscbor_enc_bstr()
WS_DLL_PUBLIC void wscbor_enc_bstr |
( |
GByteArray * |
buf, |
|
|
const uint8_t * |
ptr, |
|
|
size_t |
len |
|
) |
| |
Add an item containing a definite length byte string.
- Parameters
-
[in,out] | buf | The buffer to append to. |
[in] | ptr | The data to write. |
| len | The length of the data to write. This MUST be no longer than the actual size of data. |
◆ wscbor_enc_bstr_bytearray()
WS_DLL_PUBLIC void wscbor_enc_bstr_bytearray |
( |
GByteArray * |
buf, |
|
|
GByteArray * |
src |
|
) |
| |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. This is a shortcut to adding a byte string stolen from an existing array. This can be useful to embed encoded CBOR into a byte string (see CDDL operators ".cbor" and ".cborseq" from Section 3.8.4 of RFC 8610).
- Parameters
-
[in,out] | buf | The buffer to append to. |
[in,out] | src | The buffer to steal from. |
◆ wscbor_enc_int64()
WS_DLL_PUBLIC void wscbor_enc_int64 |
( |
GByteArray * |
buf, |
|
|
int64_t |
value |
|
) |
| |
Add an item containing an unsigned or negative int.
- Parameters
-
[in,out] | buf | The buffer to append to. |
| value | The value to write. |
◆ wscbor_enc_map_head()
WS_DLL_PUBLIC void wscbor_enc_map_head |
( |
GByteArray * |
buf, |
|
|
size_t |
len |
|
) |
| |
Add a map header with a definite length.
- Note
- The items which follow this header must agree with the definite length.
- Parameters
-
[in,out] | buf | The buffer to append to. |
| len | The number of pairs in the map. |
◆ wscbor_enc_null()
WS_DLL_PUBLIC void wscbor_enc_null |
( |
GByteArray * |
buf | ) |
|
Add an item containing a null value.
- Parameters
-
[in,out] | buf | The buffer to append to. |
◆ wscbor_enc_tstr()
WS_DLL_PUBLIC void wscbor_enc_tstr |
( |
GByteArray * |
buf, |
|
|
const char * |
ptr |
|
) |
| |
Add an item containing a definite length text string.
- Parameters
-
[in,out] | buf | The buffer to append to. |
[in] | ptr | The null-terminated text to write. |
◆ wscbor_enc_uint64()
WS_DLL_PUBLIC void wscbor_enc_uint64 |
( |
GByteArray * |
buf, |
|
|
uint64_t |
value |
|
) |
| |
Add an item containing an unsigned int.
- Parameters
-
[in,out] | buf | The buffer to append to. |
| value | The value to write. |
◆ wscbor_enc_undefined()
WS_DLL_PUBLIC void wscbor_enc_undefined |
( |
GByteArray * |
buf | ) |
|
Add an item containing an undefined value.
- Parameters
-
[in,out] | buf | The buffer to append to. |