oath_base32_encode man page

oath_base32_encode — API function

Synopsis

#include <oath.h>

int oath_base32_encode(const char * in, size_t inlen, char ** out, size_t * outlen);

Arguments

const char * in
input string with binary data of length inlen
size_t inlen
length of input data in
char ** out
pointer to newly allocated output string of length outlen, or NULL
size_t * outlen
pointer to output variable holding length of out, or NULL

Description

Encode binary data into a string with base32 data.

The in parameter should contain inlen bytes of data to encode. The function allocates a new string in *out to hold the encoded data, and sets *outlen to the length of the data. The output string *out is zero-terminated (ASCII NUL), but the NUL is not counted in *outlen.

If out is NULL, then *outlen will be set to what would have been the length of *out on successful encoding.

If the caller is not interested in knowing the length of the output data out, then outlen may be set to NULL.

It is permitted but useless to have both out and outlen NULL.

Returns

On success OATH_OK (zero) is returned, OATH_BASE32_OVERFLOW is returned if the output would be too large to store, and OATH_MALLOC_ERROR is returned on memory allocation errors.

Since

1.12.0

Reporting Bugs

Report bugs to <oath-toolkit-help@nongnu.org>. liboath home page: http://www.gnu.org/software/liboath/ General help using GNU software: http://www.gnu.org/gethelp/

Info

2.6.1 liboath liboath