diff --git a/base64encode.c b/base64encode.c index 4c5eb5f..aae23b6 100644 --- a/base64encode.c +++ b/base64encode.c @@ -8,6 +8,7 @@ This is part of the libb64 project, and has been placed in the public domain. For details, see http://sourceforge.net/projects/libb64 */ +#include #include #include "base64encode.h" @@ -22,7 +23,7 @@ char base64_encode_value(uint8_t value) { return encoding[value]; } -int base64_encode_update(base64_encodestate *S, const uint8_t *data, uint64_t datalen, char *encoded) { +ptrdiff_t base64_encode_update(base64_encodestate *S, const uint8_t *data, uint64_t datalen, char *encoded) { char *encoded_begin = encoded; const uint8_t *currbyte = data; const uint8_t *data_end = data + datalen; @@ -71,7 +72,7 @@ int base64_encode_update(base64_encodestate *S, const uint8_t *data, uint64_t da return encoded - encoded_begin; } -int base64_encode_final(base64_encodestate *S, char *encoded) { +ptrdiff_t base64_encode_final(base64_encodestate *S, char *encoded) { char *encoded_begin = encoded; switch (S->step) { @@ -91,8 +92,8 @@ int base64_encode_final(base64_encodestate *S, char *encoded) { return encoded - encoded_begin; } -int base64_encode(const uint8_t *data, uint64_t datalen, char *encoded) { - int c = 0; +ptrdiff_t base64_encode(const uint8_t *data, uint64_t datalen, char *encoded) { + ptrdiff_t c = 0; base64_encodestate S; base64_encode_init(&S); diff --git a/base64encode.h b/base64encode.h index 2140053..8267884 100644 --- a/base64encode.h +++ b/base64encode.h @@ -11,6 +11,7 @@ For details, see http://sourceforge.net/projects/libb64 #ifndef BASE64_ENCODE_H #define BASE64_ENCODE_H +#include #include typedef enum { @@ -24,8 +25,8 @@ typedef struct { void base64_encode_init(base64_encodestate *); char base64_encode_value(uint8_t); -int base64_encode_update(base64_encodestate *, const uint8_t *, uint64_t, char *); -int base64_encode_final(base64_encodestate *, char *); -int base64_encode(const uint8_t *, uint64_t, char *); +ptrdiff_t base64_encode_update(base64_encodestate *, const uint8_t *, uint64_t, char *); +ptrdiff_t base64_encode_final(base64_encodestate *, char *); +ptrdiff_t base64_encode(const uint8_t *, uint64_t, char *); #endif /* BASE64_ENCODE_H */