joined identical conditional blocks
"extern" shouldn't be used for definitions
fix unsigned check
fix datatype mismatches
add missing type specifier
fix datatype mismatches
return after the warning, to fix uninitialized salt usage
fix some datatype mismatches
move to size_t where zend_string is used internally
proper dllexport