libalpm
Arch Linux Package Manager Library
Defines | Functions
base64.h File Reference

Copyright (C) 2006-2010, Brainspark B.V. More...

#include <string.h>
Include dependency graph for base64.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define POLARSSL_ERR_BASE64_BUFFER_TOO_SMALL   -0x0010
 Output buffer too small.
#define POLARSSL_ERR_BASE64_INVALID_CHARACTER   -0x0012
 Invalid character in input.

Functions

int base64_decode (unsigned char *dst, size_t *dlen, const unsigned char *src, size_t slen)
 Decode a base64-formatted buffer.

Detailed Description

Copyright (C) 2006-2010, Brainspark B.V.

This file is part of PolarSSL (http://www.polarssl.org) Lead Maintainer: Paul Bakker <polarssl_maintainer at polarssl.org>

All rights reserved.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.

Definition in file base64.h.


Define Documentation

Output buffer too small.

Definition at line 30 of file base64.h.

Referenced by base64_decode().

Invalid character in input.

Definition at line 31 of file base64.h.

Referenced by base64_decode().


Function Documentation

int base64_decode ( unsigned char *  dst,
size_t *  dlen,
const unsigned char *  src,
size_t  slen 
)

Decode a base64-formatted buffer.

Parameters:
dstdestination buffer
dlensize of the buffer
srcsource buffer
slenamount of data to be decoded
Returns:
0 if successful, POLARSSL_ERR_BASE64_BUFFER_TOO_SMALL, or POLARSSL_ERR_BASE64_INVALID_DATA if the input data is not correct. *dlen is always updated to reflect the amount of data that has (or would have) been written.
Note:
Call this function with *dlen = 0 to obtain the required buffer size in *dlen

Definition at line 135 of file base64.c.

References POLARSSL_ERR_BASE64_BUFFER_TOO_SMALL, and POLARSSL_ERR_BASE64_INVALID_CHARACTER.