OpenVAS Scanner 23.23.1
md4.c File Reference

Unix SMB/CIFS implementation. More...

#include "md4.h"
#include <stdint.h>
#include <string.h>

Macros

#define uint32   uint32_t
#define ROUND1(a, b, c, d, k, s)
#define ROUND2(a, b, c, d, k, s)
#define ROUND3(a, b, c, d, k, s)

Functions

static uint32 F (uint32 X, uint32 Y, uint32 Z)
static uint32 G (uint32 X, uint32 Y, uint32 Z)
static uint32 H (uint32 X, uint32 Y, uint32 Z)
static uint32 lshift (uint32 x, int s)
static void mdfour64_ntlmssp (uint32 *M)
static void copy64_ntlmssp (uint32 *M, const unsigned char *in)
static void copy4_ntlmssp (unsigned char *out, uint32 x)
void mdfour_ntlmssp (unsigned char *out, const unsigned char *in, int n)

Variables

static uint32 A
static uint32 B
static uint32 C
static uint32 D

Detailed Description

Unix SMB/CIFS implementation.

A implementation of MD4 designed for use in the SMB authentication protocol

Macro Definition Documentation

◆ ROUND1

#define ROUND1 ( a,
b,
c,
d,
k,
s )
Value:
a = lshift (a + F (b, c, d) + X[k], s)
static uint32 F(uint32 X, uint32 Y, uint32 Z)
Definition md4.c:31
static uint32 lshift(uint32 x, int s)
Definition md4.c:49

◆ ROUND2

#define ROUND2 ( a,
b,
c,
d,
k,
s )
Value:
a = lshift (a + G (b, c, d) + X[k] + (uint32) 0x5A827999, s)
#define uint32
Definition genrand.c:40
static uint32 G(uint32 X, uint32 Y, uint32 Z)
Definition md4.c:37

◆ ROUND3

#define ROUND3 ( a,
b,
c,
d,
k,
s )
Value:
a = lshift (a + H (b, c, d) + X[k] + (uint32) 0x6ED9EBA1, s)
static uint32 H(uint32 X, uint32 Y, uint32 Z)
Definition md4.c:43

◆ uint32

#define uint32   uint32_t

Function Documentation

◆ copy4_ntlmssp()

void copy4_ntlmssp ( unsigned char * out,
uint32 x )
static

◆ copy64_ntlmssp()

void copy64_ntlmssp ( uint32 * M,
const unsigned char * in )
static

◆ F()

uint32 F ( uint32 X,
uint32 Y,
uint32 Z )
static

◆ G()

uint32 G ( uint32 X,
uint32 Y,
uint32 Z )
static

◆ H()

uint32 H ( uint32 X,
uint32 Y,
uint32 Z )
static

◆ lshift()

uint32 lshift ( uint32 x,
int s )
static

◆ mdfour64_ntlmssp()

void mdfour64_ntlmssp ( uint32 * M)
static

◆ mdfour_ntlmssp()

void mdfour_ntlmssp ( unsigned char * out,
const unsigned char * in,
int n )

Variable Documentation

◆ A

uint32 A
static

◆ B

uint32 B
static

◆ C

uint32 C
static

◆ D

uint32 D
static