libalpm
Arch Linux Package Manager Library
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.

Macros

#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/.

Macro Definition Documentation

◆ POLARSSL_ERR_BASE64_BUFFER_TOO_SMALL

#define POLARSSL_ERR_BASE64_BUFFER_TOO_SMALL   -0x0010

Output buffer too small.

Referenced by base64_decode().

◆ POLARSSL_ERR_BASE64_INVALID_CHARACTER

#define POLARSSL_ERR_BASE64_INVALID_CHARACTER   -0x0012

Invalid character in input.

Referenced by base64_decode().

Function Documentation

◆ base64_decode()

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

References base64_dec_map, POLARSSL_ERR_BASE64_BUFFER_TOO_SMALL, and POLARSSL_ERR_BASE64_INVALID_CHARACTER.

Referenced by alpm_decode_signature().