webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
Macros | Functions
md5.c File Reference
#include <openssl/md5.h>
#include <string.h>
#include <openssl/mem.h>
#include "../digest/md32_common.h"

Macros

#define DATA_ORDER_IS_LITTLE_ENDIAN
 
#define HASH_CTX   MD5_CTX
 
#define HASH_CBLOCK   64
 
#define HASH_UPDATE   MD5_Update
 
#define HASH_TRANSFORM   MD5_Transform
 
#define HASH_FINAL   MD5_Final
 
#define HASH_MAKE_STRING(c, s)
 
#define HASH_BLOCK_DATA_ORDER   md5_block_data_order
 
#define F(b, c, d)   ((((c) ^ (d)) & (b)) ^ (d))
 
#define G(b, c, d)   ((((b) ^ (c)) & (d)) ^ (c))
 
#define H(b, c, d)   ((b) ^ (c) ^ (d))
 
#define I(b, c, d)   (((~(d)) | (b)) ^ (c))
 
#define ROTATE(a, n)   (((a) << (n)) | ((a) >> (32 - (n))))
 
#define R0(a, b, c, d, k, s, t)
 
#define R1(a, b, c, d, k, s, t)
 
#define R2(a, b, c, d, k, s, t)
 
#define R3(a, b, c, d, k, s, t)
 
#define X(i)   XX##i
 

Functions

uint8_tMD5 (const uint8_t *data, size_t len, uint8_t *out)
 
int MD5_Init (MD5_CTX *md5)
 
void md5_block_data_order (uint32_t *state, const uint8_t *data, size_t num)
 

Macro Definition Documentation

◆ DATA_ORDER_IS_LITTLE_ENDIAN

#define DATA_ORDER_IS_LITTLE_ENDIAN

◆ F

#define F (   b,
  c,
  d 
)    ((((c) ^ (d)) & (b)) ^ (d))

◆ G

#define G (   b,
  c,
  d 
)    ((((b) ^ (c)) & (d)) ^ (c))

◆ H

#define H (   b,
  c,
  d 
)    ((b) ^ (c) ^ (d))

◆ HASH_BLOCK_DATA_ORDER

#define HASH_BLOCK_DATA_ORDER   md5_block_data_order

◆ HASH_CBLOCK

#define HASH_CBLOCK   64

◆ HASH_CTX

#define HASH_CTX   MD5_CTX

◆ HASH_FINAL

#define HASH_FINAL   MD5_Final

◆ HASH_MAKE_STRING

#define HASH_MAKE_STRING (   c,
  s 
)
Value:
do { \
uint32_t ll; \
ll = (c)->h[0]; \
HOST_l2c(ll, (s)); \
ll = (c)->h[1]; \
HOST_l2c(ll, (s)); \
ll = (c)->h[2]; \
HOST_l2c(ll, (s)); \
ll = (c)->h[3]; \
HOST_l2c(ll, (s)); \
} while (0)
int ll
Definition: cpp_unittests.cpp:300
int c
Definition: cpp_unittests.cpp:275
GLfloat GLfloat GLfloat GLfloat h
Definition: gl2ext.h:3060
struct A s

◆ HASH_TRANSFORM

#define HASH_TRANSFORM   MD5_Transform

◆ HASH_UPDATE

#define HASH_UPDATE   MD5_Update

◆ I

#define I (   b,
  c,
  d 
)    (((~(d)) | (b)) ^ (c))

◆ R0

#define R0 (   a,
  b,
  c,
  d,
  k,
  s,
  t 
)
Value:
do { \
(a) += ((k) + (t) + F((b), (c), (d))); \
(a) = ROTATE(a, s); \
(a) += (b); \
} while (0)
int c
Definition: cpp_unittests.cpp:275
#define F(b, c, d)
Definition: md5.c:125
bool t
Definition: UpdateContents.py:37
DOMString k
Definition: WebCryptoAPI.idl:122
#define ROTATE(a, n)
Definition: md5.c:130
GLboolean GLboolean GLboolean GLboolean a
Definition: gl2ext.h:306
struct A s
GLboolean GLboolean GLboolean b
Definition: gl2ext.h:306
#define d
Definition: float-mm.c:30

◆ R1

#define R1 (   a,
  b,
  c,
  d,
  k,
  s,
  t 
)
Value:
do { \
(a) += ((k) + (t) + G((b), (c), (d))); \
(a) = ROTATE(a, s); \
(a) += (b); \
} while (0)
int c
Definition: cpp_unittests.cpp:275
bool t
Definition: UpdateContents.py:37
#define G(b, c, d)
Definition: md5.c:126
DOMString k
Definition: WebCryptoAPI.idl:122
#define ROTATE(a, n)
Definition: md5.c:130
GLboolean GLboolean GLboolean GLboolean a
Definition: gl2ext.h:306
struct A s
GLboolean GLboolean GLboolean b
Definition: gl2ext.h:306
#define d
Definition: float-mm.c:30

◆ R2

#define R2 (   a,
  b,
  c,
  d,
  k,
  s,
  t 
)
Value:
do { \
(a) += ((k) + (t) + H((b), (c), (d))); \
(a) = ROTATE(a, s); \
(a) += (b); \
} while (0)
int c
Definition: cpp_unittests.cpp:275
#define H(b, c, d)
Definition: md5.c:127
bool t
Definition: UpdateContents.py:37
DOMString k
Definition: WebCryptoAPI.idl:122
#define ROTATE(a, n)
Definition: md5.c:130
GLboolean GLboolean GLboolean GLboolean a
Definition: gl2ext.h:306
struct A s
GLboolean GLboolean GLboolean b
Definition: gl2ext.h:306
#define d
Definition: float-mm.c:30

◆ R3

#define R3 (   a,
  b,
  c,
  d,
  k,
  s,
  t 
)
Value:
do { \
(a) += ((k) + (t) + I((b), (c), (d))); \
(a) = ROTATE(a, s); \
(a) += (b); \
} while (0)
int c
Definition: cpp_unittests.cpp:275
bool t
Definition: UpdateContents.py:37
DOMString k
Definition: WebCryptoAPI.idl:122
#define ROTATE(a, n)
Definition: md5.c:130
GLboolean GLboolean GLboolean GLboolean a
Definition: gl2ext.h:306
struct A s
GLboolean GLboolean GLboolean b
Definition: gl2ext.h:306
#define I(b, c, d)
Definition: md5.c:128
#define d
Definition: float-mm.c:30

◆ ROTATE

#define ROTATE (   a,
  n 
)    (((a) << (n)) | ((a) >> (32 - (n))))

◆ X

#define X (   i)    XX##i

Function Documentation

◆ MD5()

uint8_t* MD5 ( const uint8_t data,
size_t  len,
uint8_t out 
)

◆ md5_block_data_order()

void md5_block_data_order ( uint32_t state,
const uint8_t data,
size_t  num 
)

◆ MD5_Init()

int MD5_Init ( MD5_CTX md5)