ne_ssl_certificate *ne_ssl_cert_read(const char *filename);
int ne_ssl_cert_write(const ne_ssl_certificate *cert, const char *filename);
ne_ssl_certificate *ne_ssl_cert_import(const char *data);
char *ne_ssl_cert_export(const ne_ssl_certificate *cert);
The ne_ssl_cert_write function writes a certificate to a file using the PEM encoding. The ne_ssl_cert_export function returns a base64-encoded NUL-terminated string representing the certificate. This string is malloc-allocated and should be destroyed using free by the caller.
The ne_ssl_cert_read function reads a certificate from a PEM-encoded file, and returns a certificate object. The ne_ssl_cert_import function returns a certificate object from a base64-encoded string, data, as returned by ne_ssl_cert_export. The certificate object returned by these functions should be destroyed using ne_ssl_cert_free after use.
ne_ssl_cert_read returns NULL if a certificate could not be read from the file. ne_ssl_cert_write returns non-zero if the certificate could not be written to the file. ne_ssl_cert_export always returns a NUL-terminated string, and never NULL. ne_ssl_cert_import returns NULL if the string was not a valid base64-encoded certificate.
The string produced by ne_ssl_cert_export is the base64 encoding of the DER representation of the certificate. The file written by ne_ssl_cert_write uses the PEM format: this is the base64 encoding of the DER representation with newlines every 64 characters, and start and end marker lines.
Joe Orton <email@example.com>
The man pages ne_ssl_cert_export(3), ne_ssl_cert_import(3) and ne_ssl_cert_write(3) are aliases of ne_ssl_cert_read(3).