preproc_else
#else "#else"
function_definition (+2158 nodes collapsed)
preproc_ifdef (+68 nodes collapsed)
comment "/**\n Initialize the hash state\n @param md The hash sta"...
function_definition (+119 nodes collapsed)
comment "/**\n Process a block of memory though the hash\n @param m"...
expression_statement
call_expression
identifier "HASH_PROCESS"
argument_list
( "("
identifier "md5_process"
, ","
identifier "s_md5_compress"
, ","
identifier "md5"
, ","
number_literal "64"
) ")"
comment "/**\n Terminate the hash to get the digest\n @param md Th"...
; ""
function_definition (+399 nodes collapsed)
comment "/**\n Self-test the hash\n @return CRYPT_OK if successful, C"...
function_definition
primitive_type "int"
function_declarator
identifier "md5_test"
parameter_list
( "("
parameter_declaration
primitive_type "void"
) ")"
compound_statement
{ "{"
preproc_ifdef
#ifndef "#ifndef"
identifier "LTC_TEST"
return_statement
return "return"
identifier "CRYPT_NOP"
; ";"
preproc_else
#else "#else"
declaration (+348 nodes collapsed)
declaration
primitive_type "int"
identifier "i"
; ";"
declaration
sized_type_specifier
unsigned "unsigned"
primitive_type "char"
array_declarator
identifier "tmp"
[ "["
number_literal "16"
] "]"
; ";"
declaration
type_identifier "hash_state"
identifier "md"
; ";"
for_statement
for "for"
( "("
assignment_expression
identifier "i"
= "="
number_literal "0"
; ";"
binary_expression
field_expression
subscript_expression
identifier "tests"
[ "["
identifier "i"
] "]"
. "."
field_identifier "msg"
!= "!="
null
NULL "NULL"
; ";"
update_expression
identifier "i"
++ "++"
) ")"
compound_statement
{ "{"
expression_statement
call_expression
identifier "md5_init"
argument_list
( "("
pointer_expression
& "&"
identifier "md"
) ")"
; ";"
expression_statement (+49 nodes collapsed)
expression_statement
call_expression
identifier "md5_done"
argument_list
( "("
pointer_expression
& "&"
identifier "md"
, ","
identifier "tmp"
) ")"
; ";"
if_statement
if "if"
parenthesized_expression
( "("
call_expression
identifier "compare_testvector"
argument_list (+41 nodes collapsed)
) ")"
compound_statement
{ "{"
return_statement
return "return"
identifier "CRYPT_FAIL_TESTVECTOR"
; ";"
} "}"
} "}"
return_statement
return "return"
identifier "CRYPT_OK"
; ";"
#endif "#endif"
} "}"
preproc_call
preproc_directive "#undef"
preproc_arg "F"
preproc_call
preproc_directive "#undef"
preproc_arg "G"
preproc_call
preproc_directive "#undef"
preproc_arg "H"
preproc_call
preproc_directive "#undef"
preproc_arg "I"
preproc_call
preproc_directive "#undef"
preproc_arg "FF"
preproc_call
preproc_directive "#undef"
preproc_arg "GG"
preproc_call
preproc_directive "#undef"
preproc_arg "HH"
preproc_call
preproc_directive "#undef"
preproc_arg "II"