Wireshark 4.5.0
The Wireshark network protocol analyzer
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
Public Attributes | List of all members
edhoc_state_t Struct Reference

State of one or more sessions within a conversation. More...

#include <packet-edhoc.h>

Public Attributes

conversation_tconv
 Parent conversation for these sessions.
 
bool prepend_cid
 An indicator of whether a CID is expected to be prepended.
 
wmem_list_tsession_list
 Sessions in this state, values are edhoc_session_t *.
 
wmem_tree_tsession_map
 Sessions organized by frame number ranges which they cover.
 

Detailed Description

State of one or more sessions within a conversation.

The EDHOC message dissectors are expected to be used embedded within another protocol, and are registered as media types defined RFC 9528 for off-the-shelf use within HTTP and CoAP protocols.

When embedding EDHOC, the outer protocol needs to:

  1. Construct a new EDHOC session state using edhoc_state_new()
  2. Call into the "edhoc" dissector using the state as user data.
  3. Inspect the session state to see which messages have been processed so far and take protocol-specific action.
  4. Allow the session state to expire when the capture file is closed, or call edhoc_state_free() as needed.

Additionally, the External Authorization Data (EAD) labels can be registered with the dissector table "edhoc.ead" using int64_t * keys (but only non-negative values). These registrations always use the unsigned form of the label, which the EDHOC dissector computes by taking the absoute value of the actual label. Each EAD sub-dissector will be passed the edhoc_session_t * as its user data.


The documentation for this struct was generated from the following file: