OpenVAS Scanner 23.23.1
hmacmd5.h File Reference

Unix SMB/CIFS implementation. HMAC MD5 code for use in NTLMv2. More...

#include "md5.h"

Go to the source code of this file.

Data Structures

struct  HMACMD5Context

Macros

#define uchar   unsigned char
#define ZERO_STRUCT(x)
#define uint16   unsigned short
#define UCS2_SHIFT   0
#define UCS2_CHAR(c)

Typedefs

typedef uint16 smb_ucs2_t

Functions

void hmac_md5_init_limK_to_64 (const uchar *key, int key_len, HMACMD5Context *ctx)
 The microsoft version of hmac_md5 initialisation.
void hmac_md5_update (const uchar *text, int text_len, HMACMD5Context *ctx)
 Update hmac_md5 "inner" buffer.
void hmac_md5_final (uchar *digest, HMACMD5Context *ctx)
 Finish off hmac_md5 "inner" buffer and generate outer one.
void hmac_md5 (uchar key[16], uchar *data, int data_len, uchar *digest)
 Function to calculate an HMAC MD5 digest from data. Use the microsoft hmacmd5 init method because the key is 16 bytes.

Detailed Description

Unix SMB/CIFS implementation. HMAC MD5 code for use in NTLMv2.

taken direct from rfc2104 implementation and modified for suitable use for ntlmv2.

Macro Definition Documentation

◆ uchar

#define uchar   unsigned char

◆ UCS2_CHAR

#define UCS2_CHAR ( c)
Value:
((c) << UCS2_SHIFT)
#define UCS2_SHIFT
Definition hmacmd5.h:57

◆ UCS2_SHIFT

#define UCS2_SHIFT   0

◆ uint16

#define uint16   unsigned short

◆ ZERO_STRUCT

#define ZERO_STRUCT ( x)
Value:
memset ((char *) &(x), 0, sizeof (x))

Typedef Documentation

◆ smb_ucs2_t

typedef uint16 smb_ucs2_t

Function Documentation

◆ hmac_md5()

void hmac_md5 ( uchar key[16],
uchar * data,
int data_len,
uchar * digest )

Function to calculate an HMAC MD5 digest from data. Use the microsoft hmacmd5 init method because the key is 16 bytes.

◆ hmac_md5_final()

void hmac_md5_final ( uchar * digest,
HMACMD5Context * ctx )

Finish off hmac_md5 "inner" buffer and generate outer one.

◆ hmac_md5_init_limK_to_64()

void hmac_md5_init_limK_to_64 ( const uchar * key,
int key_len,
HMACMD5Context * ctx )

The microsoft version of hmac_md5 initialisation.

◆ hmac_md5_update()

void hmac_md5_update ( const uchar * text,
int text_len,
HMACMD5Context * ctx )

Update hmac_md5 "inner" buffer.