gnutls_pem_base64_decode — API function


#include <gnutls/gnutls.h>
int gnutls_pem_base64_decode( const char * header,
  const gnutls_datum_t * b64_data,
  unsigned char * result,
  size_t * result_size);


const char * header

A null terminated string with the PEM header (eg. CERTIFICATE)

const gnutls_datum_t * b64_data

contain the encoded data

unsigned char * result

the place where decoded data will be copied

size_t * result_size

holds the size of the result


This function will decode the given encoded data. If the header given is non null this function will search for "−−−−−BEGIN header" and decode only this part. Otherwise it will decode the first PEM packet found.


On success GNUTLS_E_SUCCESS (0) is returned, GNUTLS_E_SHORT_MEMORY_BUFFER is returned if the buffer given is not long enough, or 0 on success.


Report bugs to <>.

General guidelines for reporting bugs:

GnuTLS home page:


The full documentation for gnutls is maintained as a Texinfo manual. If the info and gnutls programs are properly installed at your site, the command

info gnutls

should give you access to the complete manual. As an alternative you may obtain the manual from:


Copyright © 2001-2013 Free Software Foundation, Inc..

Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.