This is C we're talking about. Functions that return void cannot fail
only if they're used correctly. Incorrect inputs can still trigger
undefined behaviour. In this sense, those functions _can_ fail.
Returning void should be an obvious enough hint that the function
requires no error handling. At least it is if you're familiar enough
with C. (If one is not, one is not qualified to use a crypto library in
an unsafe language.)
An unqualified "cannot fail" give any more information than `void`, and
may even mislead some users. Better stay on the safe side.
.El
.Sh RETURN VALUES
These functions return nothing.
-They cannot fail.
.Sh EXAMPLES
This example shows how to hash a password with the recommended baseline
parameters:
This is considered a good default.
.Sh RETURN VALUES
These functions return nothing.
-They cannot fail.
.Sh EXAMPLES
Hashing a message all at once:
.Bd -literal -offset indent
.El
.Sh RETURN VALUES
This function returns nothing.
-It cannot fail.
.Sh EXAMPLES
Simple hash:
.Bd -literal -offset indent
random stream as that would destroy confidentiality.
.Sh RETURN VALUES
These functions return nothing.
-They cannot fail.
.Sh EXAMPLES
Simple encryption:
.Bd -literal -offset indent
.Pp
.Fn crypto_key_exchange_public_key
returns nothing.
-It cannot fail.
.Sh EXAMPLES
Generate a public key from a randomly generated secret key:
.Bd -literal -offset indent
and
.Fn crypto_lock_aead
return nothing.
-They cannot fail.
.Fn crypto_unlock
and
.Fn crypto_unlock_aead
and
.Fn crypto_lock_final
return nothing.
-They cannot fail.
.Pp
.Fn crypto_unlock_final
returns 0 on success or -1 if the message was corrupted.
yields the message authentication code.
.Sh RETURN VALUES
These functions return nothing.
-They cannot fail.
.Sh EXAMPLES
To authenticate a message:
.Bd -literal -offset indent
and
.Fn crypto_sign
return nothing.
-They cannot fail.
.Pp
.Fn crypto_check
returns 0 for legitimate messages and -1 for forgeries.
and
.Fn crypto_check_update
return nothing.
-They cannot fail.
.Pp
.Fn crypto_check_final
returns 0 for legitimate messages and -1 for forgeries.
for instructions on how to lock down memory on common operating systems.
.Sh RETURN VALUES
This function returns nothing.
-It cannot fail.
.Sh SEE ALSO
.Xr intro 3monocypher