diff libpurple/certificate.c @ 32414:7ceb5ca4b323

Add a function for retrieving the raw DER representation of a certification.
author Elliott Sales de Andrade <qulogic@pidgin.im>
date Fri, 23 Dec 2011 01:09:13 +0000
parents 1bcedeb32bb4
children 298080cecdc5
line wrap: on
line diff
--- a/libpurple/certificate.c	Thu Dec 22 23:57:38 2011 +0000
+++ b/libpurple/certificate.c	Fri Dec 23 01:09:13 2011 +0000
@@ -499,6 +499,24 @@
 	return (scheme->get_times)(crt, activation, expiration);
 }
 
+GByteArray *
+purple_certificate_get_der_data(PurpleCertificate *crt)
+{
+	PurpleCertificateScheme *scheme;
+	GByteArray *data;
+
+	g_return_val_if_fail(crt, NULL);
+	g_return_val_if_fail(crt->scheme, NULL);
+
+	scheme = crt->scheme;
+
+	g_return_val_if_fail(scheme->get_der_data, NULL);
+
+	data = (scheme->get_der_data)(crt);
+
+	return data;
+}
+
 gchar *
 purple_certificate_pool_mkpath(PurpleCertificatePool *pool, const gchar *id)
 {