Wireshark  4.3.0
The Wireshark network protocol analyzer
Macros | Functions
wsgcrypt.h File Reference
#include <wireshark.h>
#include <gcrypt.h>

Go to the source code of this file.

Macros

#define HASH_MD5_LENGTH   16
 
#define HASH_SHA1_LENGTH   20
 
#define HASH_SHA2_224_LENGTH   28
 
#define HASH_SHA2_256_LENGTH   32
 
#define HASH_SHA2_384_LENGTH   48
 
#define HASH_SHA2_512_LENGTH   64
 

Functions

WS_DLL_PUBLIC gcry_error_t ws_hmac_buffer (int algo, void *digest, const void *buffer, size_t length, const void *key, size_t keylen)
 
WS_DLL_PUBLIC gcry_error_t ws_cmac_buffer (int algo, void *digest, const void *buffer, size_t length, const void *key, size_t keylen)
 
WS_DLL_PUBLIC void crypt_des_ecb (uint8_t *output, const uint8_t *buffer, const uint8_t *key56)
 
WS_DLL_PUBLIC size_t rsa_decrypt_inplace (const unsigned len, unsigned char *data, gcry_sexp_t pk, bool pkcs1_padding, char **err)
 
WS_DLL_PUBLIC gcry_error_t hkdf_expand (int hashalgo, const uint8_t *prk, unsigned prk_len, const uint8_t *info, unsigned info_len, uint8_t *out, unsigned out_len)
 

Detailed Description

Wrapper around libgcrypt's include file gcrypt.h. For libgcrypt 1.5.0, including gcrypt.h directly brings up lots of compiler warnings about deprecated definitions. Try to work around these warnings to ensure a clean build with -Werror.

Wireshark - Network traffic analyzer By Gerald Combs geral.nosp@m.d@wi.nosp@m.resha.nosp@m.rk.o.nosp@m.rg Copyright 2007 Gerald Combs

SPDX-License-Identifier: GPL-2.0-or-later

Function Documentation

◆ hkdf_expand()

WS_DLL_PUBLIC gcry_error_t hkdf_expand ( int  hashalgo,
const uint8_t *  prk,
unsigned  prk_len,
const uint8_t *  info,
unsigned  info_len,
uint8_t *  out,
unsigned  out_len 
)

RFC 5869 HMAC-based Extract-and-Expand Key Derivation Function (HKDF): HKDF-Expand(PRK, info, L) -> OKM

Parameters
hashalgo[in] Libgcrypt hash algorithm identifier.
prk[in] Pseudo-random key.
prk_len[in] Length of prk.
info[in] Optional context (can be NULL if info_len is zero).
info_len[in] Length of info.
out[out] Output keying material.
out_len[in] Size of output keying material.
Returns
0 on success and an error code otherwise.