diff libpurple/certificate.h @ 18947:3c6bf77bf7c4

- Add purple_certificate_verify_destroy and associated machinery
author William Ehlhardt <williamehlhardt@gmail.com>
date Sat, 23 Jun 2007 20:34:07 +0000
parents 617447a71ab7
children f78a9efa9eaf
line wrap: on
line diff
--- a/libpurple/certificate.h	Sat Jun 23 19:47:58 2007 +0000
+++ b/libpurple/certificate.h	Sat Jun 23 20:34:07 2007 +0000
@@ -49,13 +49,11 @@
 
 /**
  * Callback function for the results of a verification check
- * @param vrq      Request structure operated on
  * @param st       Status code
  * @param userdata User-defined data
  */
 typedef void (*PurpleCertificateVerifiedCallback)
-		(PurpleCertificateVerificationRequest *vrq,
-		 PurpleCertificateVerificationStatus,
+		(PurpleCertificateVerificationStatus,
 		 gpointer userdata);
 							  
 /** A certificate instance
@@ -189,6 +187,13 @@
 	 * @param vrq      Request to process
 	 */
 	void (* start_verification)(PurpleCertificateVerificationRequest *vrq);
+
+	/**
+	 * Destroy a completed Request under this Verifier
+	 *
+	 * @param vrq       Request to destroy
+	 */
+	void (* destroy_request)(PurpleCertificateVerificationRequest *vrq);
 };
 
 /** Structure for a single certificate request
@@ -263,6 +268,15 @@
 			   gpointer cb_data);
 
 /**
+ * Disposes of a VerificationRequest once it is complete
+ *
+ * @param vrq           Request to destroy. Will be free()'d.
+ *                      The certificate chain involved will also be destroyed.
+ */
+void
+purple_certificate_verify_destroy (PurpleCertificateVerificationRequest *vrq);
+
+/**
  * Destroys and free()'s a Certificate
  *
  * @param crt        Instance to destroy. May be NULL.