It's unfortunate that we can't both tell users to wipe keys and illustrate which arguments are inputs and which ones are outputs at the same time, but that's just how it is.
Other TODO: password on the page for argon2i is uninitialized, and honestly there's something to be said there (since you're not guaranteed that char* -> uint8_t* is a safe cast, though usually in practice it is since uint8_t is normally an alias of unsigned char, but there's no guarantee in the C standard as far as I know).
It's unfortunate that we can't both tell users to wipe keys and illustrate which arguments are inputs and which ones are outputs at the same time, but that's just how it is.
Other TODO:
password
on the page for argon2i is uninitialized, and honestly there's something to be said there (since you're not guaranteed thatchar*
->uint8_t*
is a safe cast, though usually in practice it is sinceuint8_t
is normally an alias ofunsigned char
, but there's no guarantee in the C standard as far as I know).