Synopsis
#define             XMLSEC_BASE64_LINESIZE
int                 xmlSecBase64GetDefaultLineSize      (void);
void                xmlSecBase64SetDefaultLineSize      (int columns);
xmlSecBase64CtxPtr  xmlSecBase64CtxCreate               (int encode,
                                                         int columns);
void                xmlSecBase64CtxDestroy              (xmlSecBase64CtxPtr ctx);
int                 xmlSecBase64CtxInitialize           (xmlSecBase64CtxPtr ctx,
                                                         int encode,
                                                         int columns);
void                xmlSecBase64CtxFinalize             (xmlSecBase64CtxPtr ctx);
int                 xmlSecBase64CtxUpdate               (xmlSecBase64CtxPtr ctx,
                                                         const xmlSecByte *in,
                                                         xmlSecSize inSize,
                                                         xmlSecByte *out,
                                                         xmlSecSize outSize);
int                 xmlSecBase64CtxFinal                (xmlSecBase64CtxPtr ctx,
                                                         xmlSecByte *out,
                                                         xmlSecSize outSize);
xmlChar*            xmlSecBase64Encode                  (const xmlSecByte *buf,
                                                         xmlSecSize len,
                                                         int columns);
int                 xmlSecBase64Decode                  (const xmlChar *str,
                                                         xmlSecByte *buf,
                                                         xmlSecSize len);
 
Details
XMLSEC_BASE64_LINESIZE
#define XMLSEC_BASE64_LINESIZE                          64
The default maximum base64 encoded line size.
 
xmlSecBase64GetDefaultLineSize ()
int                 xmlSecBase64GetDefaultLineSize      (void);
Gets the current default line size.
 
xmlSecBase64SetDefaultLineSize ()
void                xmlSecBase64SetDefaultLineSize      (int columns);
Sets the current default line size.
 
xmlSecBase64CtxCreate ()
xmlSecBase64CtxPtr  xmlSecBase64CtxCreate               (int encode,
                                                         int columns);
Allocates and initializes new base64 context.
| encode: |              the encode/decode flag (1 - encode, 0 - decode) | 
| columns: |             the max line length. | 
| Returns : |  a pointer to newly created xmlSecBase64Ctx structure
or NULL if an error occurs. | 
 
xmlSecBase64CtxDestroy ()
void                xmlSecBase64CtxDestroy              (xmlSecBase64CtxPtr ctx);
Destroys base64 context.
| ctx: |                 the pointer to xmlSecBase64Ctx structure. | 
 
xmlSecBase64CtxInitialize ()
int                 xmlSecBase64CtxInitialize           (xmlSecBase64CtxPtr ctx,
                                                         int encode,
                                                         int columns);
Initializes new base64 context.
| ctx: |                 the pointer to xmlSecBase64Ctx structure, | 
| encode: |              the encode/decode flag (1 - encode, 0 - decode) | 
| columns: |             the max line length. | 
| Returns : |  0 on success and a negative value otherwise. | 
 
xmlSecBase64CtxFinalize ()
void                xmlSecBase64CtxFinalize             (xmlSecBase64CtxPtr ctx);
Frees all the resources allocated by ctx.
| ctx: |                 the pointer to xmlSecBase64Ctx structure, | 
 
xmlSecBase64CtxUpdate ()
int                 xmlSecBase64CtxUpdate               (xmlSecBase64CtxPtr ctx,
                                                         const xmlSecByte *in,
                                                         xmlSecSize inSize,
                                                         xmlSecByte *out,
                                                         xmlSecSize outSize);
Encodes or decodes the next piece of data from input buffer.
| ctx: |                 the pointer to xmlSecBase64Ctx structure | 
| in: |                  the input buffer | 
| inSize: |              the input buffer size | 
| out: |                 the output buffer | 
| outSize: |             the output buffer size | 
| Returns : |  the number of bytes written to output buffer or
-1 if an error occurs. | 
 
xmlSecBase64CtxFinal ()
int                 xmlSecBase64CtxFinal                (xmlSecBase64CtxPtr ctx,
                                                         xmlSecByte *out,
                                                         xmlSecSize outSize);
Encodes or decodes the last piece of data stored in the context
and finalizes the result.
| ctx: |                 the pointer to xmlSecBase64Ctx structure | 
| out: |                 the output buffer | 
| outSize: |             the output buffer size | 
| Returns : |  the number of bytes written to output buffer or
-1 if an error occurs. | 
 
xmlSecBase64Encode ()
xmlChar*            xmlSecBase64Encode                  (const xmlSecByte *buf,
                                                         xmlSecSize len,
                                                         int columns);
Encodes the data from input buffer and allocates the string for the result.
The caller is responsible for freeing returned buffer using
xmlFree() function.
| buf: |                 the input buffer. | 
| len: |                 the input buffer size. | 
| columns: |             the output max line length (if 0 then no line breaks
                     would be inserted) | 
| Returns : |  newly allocated string with base64 encoded data
or NULL if an error occurs. | 
 
xmlSecBase64Decode ()
int                 xmlSecBase64Decode                  (const xmlChar *str,
                                                         xmlSecByte *buf,
                                                         xmlSecSize len);
Decodes input base64 encoded string and puts result into
the output buffer.
| str: |                 the input buffer with base64 encoded string | 
| buf: |                 the output buffer | 
| len: |                 the output buffer size | 
| Returns : |  the number of bytes written to the output buffer or
a negative value if an error occurs |