Wireshark 4.5.0
The Wireshark network protocol analyzer
Loading...
Searching...
No Matches
Typedefs | Functions
secrets.h File Reference
#include <inttypes.h>
#include <stdbool.h>
#include <glib.h>
#include "ws_symbol_export.h"

Go to the source code of this file.

Typedefs

typedef void(* secrets_block_callback_t) (const void *secrets, unsigned size)
 

Functions

void secrets_init (void)
 
void secrets_cleanup (void)
 
WS_DLL_PUBLIC void secrets_wtap_callback (uint32_t secrets_type, const void *secrets, unsigned size)
 
WS_DLL_PUBLIC void secrets_register_type (uint32_t secrets_type, secrets_block_callback_t cb)
 

Detailed Description

Secrets management and processing. Copyright 2018, Peter Wu peter.nosp@m.@lek.nosp@m.enste.nosp@m.yn.n.nosp@m.l

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: GPL-2.0-or-later

Typedef Documentation

◆ secrets_block_callback_t

typedef void(* secrets_block_callback_t) (const void *secrets, unsigned size)

Receives a new block of secrets from an external source (wiretap or files).

Function Documentation

◆ secrets_init()

void secrets_init ( void  )

Interfaces for management and processing of secrets provided by external sources (wiretap, key files, HSMs, etc.). Dissectors can register themselves as consumers of these secrets.

Future idea: provide helper functions to manage external files. Typically these secrets can be erased when the file is truncated or deleted+created. Additionally, these secrets are not tied to the lifetime of a capture file.

Future idea: add a method for dissectors to mark secrets as "in use" such that unused entries can be removed when saving those secrets to file. Intended use case: read large TLS key log file (which is infrequently truncated by the user) and store only the bare minimum keys.

◆ secrets_register_type()

WS_DLL_PUBLIC void secrets_register_type ( uint32_t  secrets_type,
secrets_block_callback_t  cb 
)

Registers a consumer for pcapng Decryption Secrets Block (DSB). Only one dissector can register a type.

Parameters
secrets_typeA Secrets Type as defined in wiretap/secrets-types.h
cbCallback to be invoked for new secrets.

◆ secrets_wtap_callback()

WS_DLL_PUBLIC void secrets_wtap_callback ( uint32_t  secrets_type,
const void *  secrets,
unsigned  size 
)

Callback for the wiretap secrets provider (wtap_new_secrets_callback_t).