From ce96f256004d018cd27eda3543d11313d469c2f0 Mon Sep 17 00:00:00 2001 From: "David M. Syzdek" Date: Wed, 6 Jul 2022 01:48:19 -0800 Subject: libbindle: adding data encoding/decoding functions --- include/bindle.h | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) (limited to 'include') diff --git a/include/bindle.h b/include/bindle.h index 1df829d..efbbbe4 100644 --- a/include/bindle.h +++ b/include/bindle.h @@ -139,6 +139,15 @@ #define BNDL_ARRAY_MASK ( BNDL_ARRAY_MASK_ACTION | BNDL_ARRAY_MASK_DUPS ) ///< mask of all sorted array options +// encoding methods +#define BNDL_NONE 0 +#define BNDL_BASE32 1 +#define BNDL_BASE32HEX 2 +#define BNDL_BASE64 3 +#define BNDL_HEX 4 +#define BNDL_CROCKFORD 5 + + ////////////////// // // // Data Types // @@ -303,6 +312,49 @@ bindle_debug( ... ); +//---------------------// +// encoding prototypes // +//---------------------// +#pragma mark encoding prototypes + +_BINDLE_F ssize_t +bindle_decode( + int method, + void * dst, + size_t s, + const char * src, + size_t n ); + + +_BINDLE_F ssize_t +bindle_decode_size( + int method, + size_t n ); + + +_BINDLE_F ssize_t +bindle_encode( + int method, + char * dst, + size_t s, + const void * src, + size_t n, + int nopad ); + + +_BINDLE_F ssize_t +bindle_encode_size( + int method, + size_t n ); + + +_BINDLE_F ssize_t +bindle_encoding_verify( + int method, + const char * src, + size_t n ); + + //-----------------// // file prototypes // //-----------------// -- cgit v1.2.3