~ubuntu-branches/ubuntu/wily/trafficserver/wily

« back to all changes in this revision

Viewing changes to lib/ts/ink_base64.h

  • Committer: Package Import Robot
  • Author(s): Adam Conrad
  • Date: 2012-12-17 22:28:16 UTC
  • mfrom: (5.1.8 raring-proposed)
  • Revision ID: package-import@ubuntu.com-20121217222816-7xwjsx5k76zkb63d
Tags: 3.2.0-1ubuntu1
* Revert FreeBSD strerror_r() fixes that give errors with glibc 2.16.
* Apply patch from Konstantinos Margaritis to define barriers on ARM.

Show diffs side-by-side

added added

removed removed

Lines of Context:
23
23
 
24
24
#ifndef _ink_base64_h_
25
25
#define _ink_base64_h_
26
 
#include "ink_apidefs.h"
 
26
 
27
27
/*
28
28
 * Base64 encoding and decoding as according to RFC1521.  Similar to uudecode.
29
29
 * See RFC1521 for specificiation.
36
36
 * responsible for freeing the strings.
37
37
 *
38
38
 */
39
 
 
40
 
// These functions return xmalloc'd memory which caller needs to xfree
41
 
inkcoreapi char *ink_base64_decode(const char *input, int input_len, int *output_len);
42
 
char *ink_base64_encode(const char *input, int input_len, int *output_len);
43
 
char *ink_base64_encode_unsigned(const unsigned char *input, int input_len, int *output_len);
44
 
 
45
 
// Decodes into user supplied buffer.  Returns number of bytes decoded
46
 
inkcoreapi int ink_base64_decode(const char *inBuffer, int outBufSize, unsigned char *outBuffer);
47
 
int ink_base64_uuencode(const char *bufin, int nbytes, unsigned char *outBuffer);
 
39
// Encodes / Decodes into user supplied buffer.  Returns number of bytes decoded
 
40
bool ats_base64_encode(const char *inBuffer, size_t inBufferSize, char *outBuffer, size_t outBufSize, size_t *length);
 
41
bool ats_base64_encode(const unsigned char *inBuffer, size_t inBufferSize, char *outBuffer, size_t outBufSize, size_t *length);
 
42
 
 
43
bool ats_base64_decode(const char *inBuffer, size_t inBufferSize, unsigned char *outBuffer, size_t outBufSize, size_t *length);
 
44
 
 
45
// Little helper functions to calculate minimum required output buffer for encoding/decoding.
 
46
#define ATS_BASE64_ENCODE_DSTLEN(_length) ((_length * 8) / 6 + 4)
 
47
#define ATS_BASE64_DECODE_DSTLEN(_length) (((_length + 3) / 4) * 3)
48
48
 
49
49
#endif