diff libpurple/certificate.c @ 18995:47b06daea9d1

- Add pool retrieve, contains, and store functions to certificate API - Minor doc clarification
author William Ehlhardt <williamehlhardt@gmail.com>
date Sun, 08 Jul 2007 00:42:01 +0000
parents 33fb4930ad2b
children 24fc5ca67afc
line wrap: on
line diff
--- a/libpurple/certificate.c	Sun Jul 08 00:25:11 2007 +0000
+++ b/libpurple/certificate.c	Sun Jul 08 00:42:01 2007 +0000
@@ -204,6 +204,38 @@
 	return path;
 }
 
+gboolean
+purple_certificate_pool_contains(PurpleCertificatePool *pool, const gchar *id)
+{
+	g_return_val_if_fail(pool, FALSE);
+	g_return_val_if_fail(id, FALSE);
+	g_return_val_if_fail(pool->cert_in_pool, FALSE);
+
+	return (pool->cert_in_pool)(id);
+}
+
+PurpleCertificate *
+purple_certificate_pool_retrieve(PurpleCertificatePool *pool, const gchar *id)
+{
+	g_return_val_if_fail(pool, NULL);
+	g_return_val_if_fail(id, NULL);
+	g_return_val_if_fail(pool->get_cert, NULL);
+
+	return (pool->get_cert)(id);
+}
+
+gboolean
+purple_certificate_pool_store(PurpleCertificatePool *pool, const gchar *id, PurpleCertificate *crt)
+{
+	g_return_val_if_fail(pool, FALSE);
+	g_return_val_if_fail(id, FALSE);
+	g_return_val_if_fail(pool->put_cert, FALSE);
+
+	/* TODO: Should we check about scheme matches here or make that
+	   someone else's problem? */
+
+	return (pool->put_cert)(id, crt);
+}	
 
 /****************************************************************************/
 /* Builtin Verifiers, Pools, etc.                                           */