Mercurial > pidgin.yaz
annotate libpurple/certificate.h @ 22191:3634d27ec6f1
Change purple_markup_html_to_xhtml() to convert <strong> tags to
<span style="font-weight: bold;">, as the latter is what is used
in XEP-0071
http://www.xmpp.org/extensions/xep-0071.html#examples
We use this function in two other places outside of Jabber:
libpurple/log.c and pidgin/plugins/gtkbuddynote.c. I don't think
this change will negatively affect either of them, because the
generated xhtml will only be viewed by Pidgin, and Pidgin
understands the span tag.
Thanks to Thomas Bohn for emailing meebo about this.
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Thu, 24 Jan 2008 05:24:20 +0000 |
parents | a57adf1de9cb |
children | 7f7c89ff5cc7 |
rev | line source |
---|---|
17638
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
1 /** |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
2 * @file certificate.h Public-Key Certificate API |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
3 * @ingroup core |
20800
0077d3b6ecd2
Patch from nix_nix to add some links to signal documentation.
Will Thompson <will.thompson@collabora.co.uk>
parents:
19680
diff
changeset
|
4 * @see @ref certificate-signals |
20875
4511d15a8f80
Doxygen @since tags for libpurple and pidgin.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20800
diff
changeset
|
5 * @since 2.2.0 |
17638
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
6 */ |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
7 |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
8 /* |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
9 * |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
10 * purple |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
11 * |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
12 * Purple is the legal property of its developers, whose names are too numerous |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
13 * to list here. Please refer to the COPYRIGHT file distributed with this |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
14 * source distribution. |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
15 * |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
16 * This program is free software; you can redistribute it and/or modify |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
17 * it under the terms of the GNU General Public License as published by |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
18 * the Free Software Foundation; either version 2 of the License, or |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
19 * (at your option) any later version. |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
20 * |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
21 * This program is distributed in the hope that it will be useful, |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
22 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
23 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
24 * GNU General Public License for more details. |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
25 * |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
26 * You should have received a copy of the GNU General Public License |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
27 * along with this program; if not, write to the Free Software |
19680
44b4e8bd759b
The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
19661
diff
changeset
|
28 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA |
17638
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
29 */ |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
30 |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
31 #ifndef _PURPLE_CERTIFICATE_H |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
32 #define _PURPLE_CERTIFICATE_H |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
33 |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
34 #include <glib.h> |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
35 |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
36 #ifdef __cplusplus |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
37 extern "C" { |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
38 #endif /* __cplusplus */ |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
39 |
18928
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
40 |
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
41 typedef enum |
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
42 { |
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
43 PURPLE_CERTIFICATE_INVALID = 0, |
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
44 PURPLE_CERTIFICATE_VALID = 1 |
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
45 } PurpleCertificateVerificationStatus; |
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
46 |
18189
030a2209ae96
- Style issues
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18188
diff
changeset
|
47 typedef struct _PurpleCertificate PurpleCertificate; |
18970
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
48 typedef struct _PurpleCertificatePool PurpleCertificatePool; |
18189
030a2209ae96
- Style issues
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18188
diff
changeset
|
49 typedef struct _PurpleCertificateScheme PurpleCertificateScheme; |
18928
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
50 typedef struct _PurpleCertificateVerifier PurpleCertificateVerifier; |
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
51 typedef struct _PurpleCertificateVerificationRequest PurpleCertificateVerificationRequest; |
17638
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
52 |
18940
5fa287322a82
- Fill out CertVerifier struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18937
diff
changeset
|
53 /** |
5fa287322a82
- Fill out CertVerifier struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18937
diff
changeset
|
54 * Callback function for the results of a verification check |
5fa287322a82
- Fill out CertVerifier struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18937
diff
changeset
|
55 * @param st Status code |
5fa287322a82
- Fill out CertVerifier struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18937
diff
changeset
|
56 * @param userdata User-defined data |
5fa287322a82
- Fill out CertVerifier struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18937
diff
changeset
|
57 */ |
5fa287322a82
- Fill out CertVerifier struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18937
diff
changeset
|
58 typedef void (*PurpleCertificateVerifiedCallback) |
18953
89b32569890c
- Add purple_certificate_get_fingerprint_sha1
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18952
diff
changeset
|
59 (PurpleCertificateVerificationStatus st, |
18940
5fa287322a82
- Fill out CertVerifier struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18937
diff
changeset
|
60 gpointer userdata); |
5fa287322a82
- Fill out CertVerifier struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18937
diff
changeset
|
61 |
17641
55a0b0a42000
- Exposed the _Certificate struct definition in certificate.h
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17640
diff
changeset
|
62 /** A certificate instance |
55a0b0a42000
- Exposed the _Certificate struct definition in certificate.h
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17640
diff
changeset
|
63 * |
55a0b0a42000
- Exposed the _Certificate struct definition in certificate.h
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17640
diff
changeset
|
64 * An opaque data structure representing a single certificate under some |
55a0b0a42000
- Exposed the _Certificate struct definition in certificate.h
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17640
diff
changeset
|
65 * CertificateScheme |
55a0b0a42000
- Exposed the _Certificate struct definition in certificate.h
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17640
diff
changeset
|
66 */ |
18189
030a2209ae96
- Style issues
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18188
diff
changeset
|
67 struct _PurpleCertificate |
17641
55a0b0a42000
- Exposed the _Certificate struct definition in certificate.h
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17640
diff
changeset
|
68 { |
55a0b0a42000
- Exposed the _Certificate struct definition in certificate.h
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17640
diff
changeset
|
69 /** Scheme this certificate is under */ |
18189
030a2209ae96
- Style issues
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18188
diff
changeset
|
70 PurpleCertificateScheme * scheme; |
17641
55a0b0a42000
- Exposed the _Certificate struct definition in certificate.h
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17640
diff
changeset
|
71 /** Opaque pointer to internal data */ |
55a0b0a42000
- Exposed the _Certificate struct definition in certificate.h
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17640
diff
changeset
|
72 gpointer data; |
55a0b0a42000
- Exposed the _Certificate struct definition in certificate.h
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17640
diff
changeset
|
73 }; |
55a0b0a42000
- Exposed the _Certificate struct definition in certificate.h
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17640
diff
changeset
|
74 |
18970
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
75 /** |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
76 * Database for retrieval or storage of Certificates |
18983
bb4acabd8fac
Documentation
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18982
diff
changeset
|
77 * |
18995
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
78 * More or less a hash table; all lookups and writes are controlled by a string |
18983
bb4acabd8fac
Documentation
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18982
diff
changeset
|
79 * key. |
18970
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
80 */ |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
81 struct _PurpleCertificatePool |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
82 { |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
83 /** Scheme this Pool operates for */ |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
84 gchar *scheme_name; |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
85 /** Internal name to refer to the pool by */ |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
86 gchar *name; |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
87 |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
88 /** User-friendly name for this type |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
89 * ex: N_("SSL Servers") |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
90 * When this is displayed anywhere, it should be i18ned |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
91 * ex: _(pool->fullname) |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
92 */ |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
93 gchar *fullname; |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
94 |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
95 /** Internal pool data */ |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
96 gpointer data; |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
97 |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
98 /** |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
99 * Set up the Pool's internal state |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
100 * |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
101 * Upon calling purple_certificate_register_pool() , this function will |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
102 * be called. May be NULL. |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
103 * @return TRUE if the initialization succeeded, otherwise FALSE |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
104 */ |
18975
172b8d1dc2be
- CertificatePool member functions no longer accept a Pool instance, as Pools are expected to be singletons
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18974
diff
changeset
|
105 gboolean (* init)(void); |
18970
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
106 |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
107 /** |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
108 * Uninit the Pool's internal state |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
109 * |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
110 * Will be called by purple_certificate_unregister_pool() . May be NULL |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
111 */ |
18975
172b8d1dc2be
- CertificatePool member functions no longer accept a Pool instance, as Pools are expected to be singletons
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18974
diff
changeset
|
112 void (* uninit)(void); |
18970
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
113 |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
114 /** Check for presence of a certificate in the pool using unique ID */ |
18974
6b7c234b4984
- cert_in_pool_by_id is now just cert_in_pool; finding the uniqueID of the Certificate wanted is entirely the caller's problem
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18971
diff
changeset
|
115 gboolean (* cert_in_pool)(const gchar *id); |
18970
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
116 /** Retrieve a PurpleCertificate from the pool */ |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
117 PurpleCertificate * (* get_cert)(const gchar *id); |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
118 /** Add a certificate to the pool. Must overwrite any other |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
119 * certificates sharing the same ID in the pool. |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
120 * @return TRUE if the operation succeeded, otherwise FALSE |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
121 */ |
18982
8948cd6bb8bc
- CertificatePool put_cert now accepts an id argument
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18977
diff
changeset
|
122 gboolean (* put_cert)(const gchar *id, PurpleCertificate *crt); |
19049
8cbc110456ac
- Add purple_certificate_pool_delete
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19034
diff
changeset
|
123 /** Delete a certificate from the pool */ |
8cbc110456ac
- Add purple_certificate_pool_delete
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19034
diff
changeset
|
124 gboolean (* delete_cert)(const gchar *id); |
19026
b3acaf46d9ad
- Add pool_get_idlist / pool_destroy_idlist
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19023
diff
changeset
|
125 |
b3acaf46d9ad
- Add pool_get_idlist / pool_destroy_idlist
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19023
diff
changeset
|
126 /** Returns a list of IDs stored in the pool */ |
b3acaf46d9ad
- Add pool_get_idlist / pool_destroy_idlist
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19023
diff
changeset
|
127 GList * (* get_idlist)(void); |
19648
450f4a3c4c0f
- Add purple_reserved fields to various structures.
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19329
diff
changeset
|
128 |
450f4a3c4c0f
- Add purple_reserved fields to various structures.
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19329
diff
changeset
|
129 void (*_purple_reserved1)(void); |
450f4a3c4c0f
- Add purple_reserved fields to various structures.
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19329
diff
changeset
|
130 void (*_purple_reserved2)(void); |
450f4a3c4c0f
- Add purple_reserved fields to various structures.
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19329
diff
changeset
|
131 void (*_purple_reserved3)(void); |
450f4a3c4c0f
- Add purple_reserved fields to various structures.
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19329
diff
changeset
|
132 void (*_purple_reserved4)(void); |
18970
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
133 }; |
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
134 |
17638
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
135 /** A certificate type |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
136 * |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
137 * A CertificateScheme must implement all of the fields in the structure, |
18936
895831f93380
- Documentation correction
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18934
diff
changeset
|
138 * and register it using purple_certificate_register_scheme() |
17638
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
139 * |
17640
945b60f02767
- Fixed a comment
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17638
diff
changeset
|
140 * There may be only ONE CertificateScheme provided for each certificate |
945b60f02767
- Fixed a comment
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17638
diff
changeset
|
141 * type, as specified by the "name" field. |
17638
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
142 */ |
18189
030a2209ae96
- Style issues
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18188
diff
changeset
|
143 struct _PurpleCertificateScheme |
17638
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
144 { |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
145 /** Name of the certificate type |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
146 * ex: "x509", "pgp", etc. |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
147 * This must be globally unique - you may not register more than one |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
148 * CertificateScheme of the same name at a time. |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
149 */ |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
150 gchar * name; |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
151 |
18188
e6271671eb24
- Expose some more functions in the x509 CertificateScheme. Doesn't
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17641
diff
changeset
|
152 /** User-friendly name for this type |
e6271671eb24
- Expose some more functions in the x509 CertificateScheme. Doesn't
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17641
diff
changeset
|
153 * ex: N_("X.509 Certificates") |
18928
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
154 * When this is displayed anywhere, it should be i18ned |
18970
3d63bd78675d
- Add CertificatePool struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18962
diff
changeset
|
155 * ex: _(scheme->fullname) |
18188
e6271671eb24
- Expose some more functions in the x509 CertificateScheme. Doesn't
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17641
diff
changeset
|
156 */ |
e6271671eb24
- Expose some more functions in the x509 CertificateScheme. Doesn't
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17641
diff
changeset
|
157 gchar * fullname; |
e6271671eb24
- Expose some more functions in the x509 CertificateScheme. Doesn't
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17641
diff
changeset
|
158 |
e6271671eb24
- Expose some more functions in the x509 CertificateScheme. Doesn't
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17641
diff
changeset
|
159 /** Imports a certificate from a file |
e6271671eb24
- Expose some more functions in the x509 CertificateScheme. Doesn't
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17641
diff
changeset
|
160 * |
e6271671eb24
- Expose some more functions in the x509 CertificateScheme. Doesn't
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17641
diff
changeset
|
161 * @param filename File to import the certificate from |
e6271671eb24
- Expose some more functions in the x509 CertificateScheme. Doesn't
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17641
diff
changeset
|
162 * @return Pointer to the newly allocated Certificate struct |
e6271671eb24
- Expose some more functions in the x509 CertificateScheme. Doesn't
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17641
diff
changeset
|
163 * or NULL on failure. |
e6271671eb24
- Expose some more functions in the x509 CertificateScheme. Doesn't
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17641
diff
changeset
|
164 */ |
18190
b2d110e9857f
- Eliminate compiler warning
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18189
diff
changeset
|
165 PurpleCertificate * (* import_certificate)(const gchar * filename); |
18188
e6271671eb24
- Expose some more functions in the x509 CertificateScheme. Doesn't
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17641
diff
changeset
|
166 |
18977
31bdbb82de7e
- Add purple_certificate_export and associated libpurple stuff
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18975
diff
changeset
|
167 /** |
31bdbb82de7e
- Add purple_certificate_export and associated libpurple stuff
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18975
diff
changeset
|
168 * Exports a certificate to a file |
31bdbb82de7e
- Add purple_certificate_export and associated libpurple stuff
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18975
diff
changeset
|
169 * |
31bdbb82de7e
- Add purple_certificate_export and associated libpurple stuff
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18975
diff
changeset
|
170 * @param filename File to export the certificate to |
31bdbb82de7e
- Add purple_certificate_export and associated libpurple stuff
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18975
diff
changeset
|
171 * @param crt Certificate to export |
31bdbb82de7e
- Add purple_certificate_export and associated libpurple stuff
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18975
diff
changeset
|
172 * @return TRUE if the export succeeded, otherwise FALSE |
31bdbb82de7e
- Add purple_certificate_export and associated libpurple stuff
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18975
diff
changeset
|
173 * @see purple_certificate_export() |
31bdbb82de7e
- Add purple_certificate_export and associated libpurple stuff
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18975
diff
changeset
|
174 */ |
31bdbb82de7e
- Add purple_certificate_export and associated libpurple stuff
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18975
diff
changeset
|
175 gboolean (* export_certificate)(const gchar *filename, PurpleCertificate *crt); |
31bdbb82de7e
- Add purple_certificate_export and associated libpurple stuff
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18975
diff
changeset
|
176 |
19018
d6f902265076
- Add purple_certificate_copy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19012
diff
changeset
|
177 /** |
d6f902265076
- Add purple_certificate_copy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19012
diff
changeset
|
178 * Duplicates a certificate |
d6f902265076
- Add purple_certificate_copy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19012
diff
changeset
|
179 * |
d6f902265076
- Add purple_certificate_copy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19012
diff
changeset
|
180 * Certificates are generally assumed to be read-only, so feel free to |
d6f902265076
- Add purple_certificate_copy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19012
diff
changeset
|
181 * do any sort of reference-counting magic you want here. If this ever |
d6f902265076
- Add purple_certificate_copy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19012
diff
changeset
|
182 * changes, please remember to change the magic accordingly. |
d6f902265076
- Add purple_certificate_copy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19012
diff
changeset
|
183 * @return Reference to the new copy |
d6f902265076
- Add purple_certificate_copy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19012
diff
changeset
|
184 */ |
d6f902265076
- Add purple_certificate_copy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19012
diff
changeset
|
185 PurpleCertificate * (* copy_certificate)(PurpleCertificate *crt); |
d6f902265076
- Add purple_certificate_copy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19012
diff
changeset
|
186 |
18188
e6271671eb24
- Expose some more functions in the x509 CertificateScheme. Doesn't
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17641
diff
changeset
|
187 /** Destroys and frees a Certificate structure |
e6271671eb24
- Expose some more functions in the x509 CertificateScheme. Doesn't
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17641
diff
changeset
|
188 * |
e6271671eb24
- Expose some more functions in the x509 CertificateScheme. Doesn't
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17641
diff
changeset
|
189 * Destroys a Certificate's internal data structures and calls |
e6271671eb24
- Expose some more functions in the x509 CertificateScheme. Doesn't
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17641
diff
changeset
|
190 * free(crt) |
e6271671eb24
- Expose some more functions in the x509 CertificateScheme. Doesn't
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17641
diff
changeset
|
191 * |
e6271671eb24
- Expose some more functions in the x509 CertificateScheme. Doesn't
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17641
diff
changeset
|
192 * @param crt Certificate instance to be destroyed. It WILL NOT be |
e6271671eb24
- Expose some more functions in the x509 CertificateScheme. Doesn't
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17641
diff
changeset
|
193 * destroyed if it is not of the correct |
e6271671eb24
- Expose some more functions in the x509 CertificateScheme. Doesn't
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17641
diff
changeset
|
194 * CertificateScheme. Can be NULL |
e6271671eb24
- Expose some more functions in the x509 CertificateScheme. Doesn't
William Ehlhardt <williamehlhardt@gmail.com>
parents:
17641
diff
changeset
|
195 */ |
18189
030a2209ae96
- Style issues
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18188
diff
changeset
|
196 void (* destroy_certificate)(PurpleCertificate * crt); |
18934
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
197 |
19076
daa68185a018
- Add purple_certificate_signed_by
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19067
diff
changeset
|
198 /** Find whether "crt" has a valid signature from issuer "issuer" |
daa68185a018
- Add purple_certificate_signed_by
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19067
diff
changeset
|
199 * @see purple_certificate_signed_by() */ |
daa68185a018
- Add purple_certificate_signed_by
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19067
diff
changeset
|
200 gboolean (*signed_by)(PurpleCertificate *crt, PurpleCertificate *issuer); |
18934
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
201 /** |
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
202 * Retrieves the certificate public key fingerprint using SHA1 |
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
203 * |
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
204 * @param crt Certificate instance |
18937
eac58c6caae7
- More documentation
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18936
diff
changeset
|
205 * @return Binary representation of SHA1 hash - must be freed using |
eac58c6caae7
- More documentation
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18936
diff
changeset
|
206 * g_byte_array_free() |
18934
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
207 */ |
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
208 GByteArray * (* get_fingerprint_sha1)(PurpleCertificate *crt); |
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
209 |
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
210 /** |
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
211 * Retrieves a unique certificate identifier |
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
212 * |
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
213 * @param crt Certificate instance |
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
214 * @return Newly allocated string that can be used to uniquely |
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
215 * identify the certificate. |
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
216 */ |
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
217 gchar * (* get_unique_id)(PurpleCertificate *crt); |
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
218 |
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
219 /** |
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
220 * Retrieves a unique identifier for the certificate's issuer |
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
221 * |
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
222 * @param crt Certificate instance |
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
223 * @return Newly allocated string that can be used to uniquely |
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
224 * identify the issuer's certificate. |
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
225 */ |
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
226 gchar * (* get_issuer_unique_id)(PurpleCertificate *crt); |
04be1b885ef3
- Add more to the Certificate struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18933
diff
changeset
|
227 |
18962
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
228 /** |
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
229 * Gets the certificate subject's name |
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
230 * |
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
231 * For X.509, this is the "Common Name" field, as we're only using it |
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
232 * for hostname verification at the moment |
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
233 * |
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
234 * @see purple_certificate_get_subject_name() |
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
235 * |
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
236 * @param crt Certificate instance |
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
237 * @return Newly allocated string with the certificate subject. |
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
238 */ |
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
239 gchar * (* get_subject_name)(PurpleCertificate *crt); |
19006
dc60287ce426
- Add get_activation_time and get_expiration_time to CertificateScheme
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18995
diff
changeset
|
240 |
19008
7fd9bd55f8d0
- Add certificate_check_subject_name and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19007
diff
changeset
|
241 /** |
7fd9bd55f8d0
- Add certificate_check_subject_name and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19007
diff
changeset
|
242 * Check the subject name against that on the certificate |
7fd9bd55f8d0
- Add certificate_check_subject_name and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19007
diff
changeset
|
243 * @see purple_certificate_check_subject_name() |
7fd9bd55f8d0
- Add certificate_check_subject_name and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19007
diff
changeset
|
244 * @return TRUE if it is a match, else FALSE |
7fd9bd55f8d0
- Add certificate_check_subject_name and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19007
diff
changeset
|
245 */ |
7fd9bd55f8d0
- Add certificate_check_subject_name and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19007
diff
changeset
|
246 gboolean (* check_subject_name)(PurpleCertificate *crt, const gchar *name); |
7fd9bd55f8d0
- Add certificate_check_subject_name and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19007
diff
changeset
|
247 |
19067
6c0aad79c4c5
- Change the internal structure of activation/expiration times to match
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19060
diff
changeset
|
248 /** Retrieve the certificate activation/expiration times */ |
6c0aad79c4c5
- Change the internal structure of activation/expiration times to match
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19060
diff
changeset
|
249 gboolean (* get_times)(PurpleCertificate *crt, time_t *activation, time_t *expiration); |
19006
dc60287ce426
- Add get_activation_time and get_expiration_time to CertificateScheme
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18995
diff
changeset
|
250 |
19648
450f4a3c4c0f
- Add purple_reserved fields to various structures.
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19329
diff
changeset
|
251 void (*_purple_reserved1)(void); |
450f4a3c4c0f
- Add purple_reserved fields to various structures.
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19329
diff
changeset
|
252 void (*_purple_reserved2)(void); |
450f4a3c4c0f
- Add purple_reserved fields to various structures.
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19329
diff
changeset
|
253 void (*_purple_reserved3)(void); |
450f4a3c4c0f
- Add purple_reserved fields to various structures.
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19329
diff
changeset
|
254 void (*_purple_reserved4)(void); |
17638
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
255 }; |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
256 |
18928
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
257 /** A set of operations used to provide logic for verifying a Certificate's |
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
258 * authenticity. |
18941
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
259 * |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
260 * A Verifier provider must fill out these fields, then register it using |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
261 * purple_certificate_register_verifier() |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
262 * |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
263 * The (scheme_name, name) value must be unique for each Verifier - you may not |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
264 * register more than one Verifier of the same name for each Scheme |
18928
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
265 */ |
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
266 struct _PurpleCertificateVerifier |
18940
5fa287322a82
- Fill out CertVerifier struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18937
diff
changeset
|
267 { |
5fa287322a82
- Fill out CertVerifier struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18937
diff
changeset
|
268 /** Name of the scheme this Verifier operates on |
18928
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
269 * |
18940
5fa287322a82
- Fill out CertVerifier struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18937
diff
changeset
|
270 * The scheme will be looked up by name when a Request is generated |
5fa287322a82
- Fill out CertVerifier struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18937
diff
changeset
|
271 * using this Verifier |
18928
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
272 */ |
18940
5fa287322a82
- Fill out CertVerifier struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18937
diff
changeset
|
273 gchar *scheme_name; |
18941
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
274 |
18951
11e88e451bfb
- Reorder struct for clarity
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18950
diff
changeset
|
275 /** Name of the Verifier - case insensitive */ |
11e88e451bfb
- Reorder struct for clarity
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18950
diff
changeset
|
276 gchar *name; |
11e88e451bfb
- Reorder struct for clarity
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18950
diff
changeset
|
277 |
18941
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
278 /** |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
279 * Start the verification process |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
280 * |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
281 * To be called from purple_certificate_verify once it has |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
282 * constructed the request. This will use the information in the |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
283 * given VerificationRequest to check the certificate and callback |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
284 * the requester with the verification results. |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
285 * |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
286 * @param vrq Request to process |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
287 */ |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
288 void (* start_verification)(PurpleCertificateVerificationRequest *vrq); |
18947
3c6bf77bf7c4
- Add purple_certificate_verify_destroy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18946
diff
changeset
|
289 |
3c6bf77bf7c4
- Add purple_certificate_verify_destroy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18946
diff
changeset
|
290 /** |
3c6bf77bf7c4
- Add purple_certificate_verify_destroy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18946
diff
changeset
|
291 * Destroy a completed Request under this Verifier |
18952
974d110cf7b1
- libpurple is now responsible for some cleanup and final deletion of a
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18951
diff
changeset
|
292 * The function pointed to here is only responsible for cleaning up |
974d110cf7b1
- libpurple is now responsible for some cleanup and final deletion of a
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18951
diff
changeset
|
293 * whatever PurpleCertificateVerificationRequest::data points to. |
974d110cf7b1
- libpurple is now responsible for some cleanup and final deletion of a
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18951
diff
changeset
|
294 * It should not call free(vrq) |
18947
3c6bf77bf7c4
- Add purple_certificate_verify_destroy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18946
diff
changeset
|
295 * |
3c6bf77bf7c4
- Add purple_certificate_verify_destroy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18946
diff
changeset
|
296 * @param vrq Request to destroy |
3c6bf77bf7c4
- Add purple_certificate_verify_destroy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18946
diff
changeset
|
297 */ |
3c6bf77bf7c4
- Add purple_certificate_verify_destroy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18946
diff
changeset
|
298 void (* destroy_request)(PurpleCertificateVerificationRequest *vrq); |
19648
450f4a3c4c0f
- Add purple_reserved fields to various structures.
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19329
diff
changeset
|
299 |
450f4a3c4c0f
- Add purple_reserved fields to various structures.
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19329
diff
changeset
|
300 void (*_purple_reserved1)(void); |
450f4a3c4c0f
- Add purple_reserved fields to various structures.
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19329
diff
changeset
|
301 void (*_purple_reserved2)(void); |
450f4a3c4c0f
- Add purple_reserved fields to various structures.
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19329
diff
changeset
|
302 void (*_purple_reserved3)(void); |
450f4a3c4c0f
- Add purple_reserved fields to various structures.
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19329
diff
changeset
|
303 void (*_purple_reserved4)(void); |
18928
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
304 }; |
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
305 |
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
306 /** Structure for a single certificate request |
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
307 * |
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
308 * Useful for keeping track of the state of a verification that involves |
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
309 * several steps |
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
310 */ |
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
311 struct _PurpleCertificateVerificationRequest |
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
312 { |
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
313 /** Reference to the verification logic used */ |
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
314 PurpleCertificateVerifier *verifier; |
18941
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
315 /** Reference to the scheme used. |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
316 * |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
317 * This is looked up from the Verifier when the Request is generated |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
318 */ |
18942
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
319 PurpleCertificateScheme *scheme; |
18928
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
320 |
18940
5fa287322a82
- Fill out CertVerifier struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18937
diff
changeset
|
321 /** |
5fa287322a82
- Fill out CertVerifier struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18937
diff
changeset
|
322 * Name to check that the certificate is issued to |
18931
e634122cec47
- purple_ssl_get_peer_certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18928
diff
changeset
|
323 * |
e634122cec47
- purple_ssl_get_peer_certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18928
diff
changeset
|
324 * For X.509 certificates, this is the Common Name |
e634122cec47
- purple_ssl_get_peer_certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18928
diff
changeset
|
325 */ |
e634122cec47
- purple_ssl_get_peer_certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18928
diff
changeset
|
326 gchar *subject_name; |
e634122cec47
- purple_ssl_get_peer_certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18928
diff
changeset
|
327 |
e634122cec47
- purple_ssl_get_peer_certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18928
diff
changeset
|
328 /** List of certificates in the chain to be verified (such as that returned by purple_ssl_get_peer_certificates ) |
18928
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
329 * |
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
330 * This is most relevant for X.509 certificates used in SSL sessions. |
18931
e634122cec47
- purple_ssl_get_peer_certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18928
diff
changeset
|
331 * The list order should be: certificate, issuer, issuer's issuer, etc. |
18928
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
332 */ |
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
333 GList *cert_chain; |
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
334 |
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
335 /** Internal data used by the Verifier code */ |
18940
5fa287322a82
- Fill out CertVerifier struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18937
diff
changeset
|
336 gpointer data; |
5fa287322a82
- Fill out CertVerifier struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18937
diff
changeset
|
337 |
5fa287322a82
- Fill out CertVerifier struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18937
diff
changeset
|
338 /** Function to call with the verification result */ |
5fa287322a82
- Fill out CertVerifier struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18937
diff
changeset
|
339 PurpleCertificateVerifiedCallback cb; |
5fa287322a82
- Fill out CertVerifier struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18937
diff
changeset
|
340 /** Data to pass to the post-verification callback */ |
5fa287322a82
- Fill out CertVerifier struct
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18937
diff
changeset
|
341 gpointer cb_data; |
18928
299022c9b32d
- More API additions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18926
diff
changeset
|
342 }; |
17638
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
343 |
18945
fa42d8fa7873
- Documentation segmentation
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18942
diff
changeset
|
344 /*****************************************************************************/ |
18994
bf23d58ec9c3
- Rearrange certificate.h for better organization
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18989
diff
changeset
|
345 /** @name Certificate Verification Functions */ |
18945
fa42d8fa7873
- Documentation segmentation
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18942
diff
changeset
|
346 /*****************************************************************************/ |
fa42d8fa7873
- Documentation segmentation
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18942
diff
changeset
|
347 /*@{*/ |
fa42d8fa7873
- Documentation segmentation
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18942
diff
changeset
|
348 |
18942
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
349 /** |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
350 * Constructs a verification request and passed control to the specified Verifier |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
351 * |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
352 * It is possible that the callback will be called immediately upon calling |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
353 * this function. Plan accordingly. |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
354 * |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
355 * @param verifier Verification logic to use. |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
356 * @see purple_certificate_find_verifier() |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
357 * |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
358 * @param subject_name Name that should match the first certificate in the |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
359 * chain for the certificate to be valid. Will be strdup'd |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
360 * into the Request struct |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
361 * |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
362 * @param cert_chain Certificate chain to check. If there is more than one |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
363 * certificate in the chain (X.509), the peer's |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
364 * certificate comes first, then the issuer/signer's |
19021
fcca10d0ac7d
- purple_certificate_verify no longer takes possession of the
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19020
diff
changeset
|
365 * certificate, etc. The whole list is duplicated into the |
fcca10d0ac7d
- purple_certificate_verify no longer takes possession of the
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19020
diff
changeset
|
366 * Request struct. |
18942
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
367 * |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
368 * @param cb Callback function to be called with whether the |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
369 * certificate was approved or not. |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
370 * @param cb_data User-defined data for the above. |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
371 */ |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
372 void |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
373 purple_certificate_verify (PurpleCertificateVerifier *verifier, |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
374 const gchar *subject_name, GList *cert_chain, |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
375 PurpleCertificateVerifiedCallback cb, |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
376 gpointer cb_data); |
02102eccc4be
- purple_certificate_verify now takes a Verifier argument, creates its
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18941
diff
changeset
|
377 |
18946
617447a71ab7
- Add certificate_destroy and certificate_destroy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18945
diff
changeset
|
378 /** |
19088
f5802217844d
- Add verify_complete, which should deprecate verify_destroy
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19082
diff
changeset
|
379 * Completes and destroys a VerificationRequest |
f5802217844d
- Add verify_complete, which should deprecate verify_destroy
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19082
diff
changeset
|
380 * |
f5802217844d
- Add verify_complete, which should deprecate verify_destroy
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19082
diff
changeset
|
381 * @param vrq Request to conclude |
f5802217844d
- Add verify_complete, which should deprecate verify_destroy
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19082
diff
changeset
|
382 * @param st Success/failure code to pass to the request's |
f5802217844d
- Add verify_complete, which should deprecate verify_destroy
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19082
diff
changeset
|
383 * completion callback. |
f5802217844d
- Add verify_complete, which should deprecate verify_destroy
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19082
diff
changeset
|
384 */ |
f5802217844d
- Add verify_complete, which should deprecate verify_destroy
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19082
diff
changeset
|
385 void |
f5802217844d
- Add verify_complete, which should deprecate verify_destroy
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19082
diff
changeset
|
386 purple_certificate_verify_complete(PurpleCertificateVerificationRequest *vrq, |
f5802217844d
- Add verify_complete, which should deprecate verify_destroy
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19082
diff
changeset
|
387 PurpleCertificateVerificationStatus st); |
f5802217844d
- Add verify_complete, which should deprecate verify_destroy
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19082
diff
changeset
|
388 |
18994
bf23d58ec9c3
- Rearrange certificate.h for better organization
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18989
diff
changeset
|
389 /*@}*/ |
bf23d58ec9c3
- Rearrange certificate.h for better organization
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18989
diff
changeset
|
390 |
bf23d58ec9c3
- Rearrange certificate.h for better organization
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18989
diff
changeset
|
391 /*****************************************************************************/ |
bf23d58ec9c3
- Rearrange certificate.h for better organization
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18989
diff
changeset
|
392 /** @name Certificate Functions */ |
bf23d58ec9c3
- Rearrange certificate.h for better organization
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18989
diff
changeset
|
393 /*****************************************************************************/ |
bf23d58ec9c3
- Rearrange certificate.h for better organization
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18989
diff
changeset
|
394 /*@{*/ |
bf23d58ec9c3
- Rearrange certificate.h for better organization
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18989
diff
changeset
|
395 |
18947
3c6bf77bf7c4
- Add purple_certificate_verify_destroy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18946
diff
changeset
|
396 /** |
19018
d6f902265076
- Add purple_certificate_copy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19012
diff
changeset
|
397 * Makes a duplicate of a certificate |
d6f902265076
- Add purple_certificate_copy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19012
diff
changeset
|
398 * |
d6f902265076
- Add purple_certificate_copy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19012
diff
changeset
|
399 * @param crt Instance to duplicate |
d6f902265076
- Add purple_certificate_copy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19012
diff
changeset
|
400 * @return Pointer to new instance |
d6f902265076
- Add purple_certificate_copy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19012
diff
changeset
|
401 */ |
d6f902265076
- Add purple_certificate_copy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19012
diff
changeset
|
402 PurpleCertificate * |
d6f902265076
- Add purple_certificate_copy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19012
diff
changeset
|
403 purple_certificate_copy(PurpleCertificate *crt); |
d6f902265076
- Add purple_certificate_copy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19012
diff
changeset
|
404 |
d6f902265076
- Add purple_certificate_copy and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19012
diff
changeset
|
405 /** |
19020
d69355001a6e
- Add purple_certificate_copy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19018
diff
changeset
|
406 * Duplicates an entire list of certificates |
d69355001a6e
- Add purple_certificate_copy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19018
diff
changeset
|
407 * |
d69355001a6e
- Add purple_certificate_copy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19018
diff
changeset
|
408 * @param crt_list List to duplicate |
d69355001a6e
- Add purple_certificate_copy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19018
diff
changeset
|
409 * @return New list copy |
d69355001a6e
- Add purple_certificate_copy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19018
diff
changeset
|
410 */ |
d69355001a6e
- Add purple_certificate_copy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19018
diff
changeset
|
411 GList * |
d69355001a6e
- Add purple_certificate_copy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19018
diff
changeset
|
412 purple_certificate_copy_list(GList *crt_list); |
d69355001a6e
- Add purple_certificate_copy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19018
diff
changeset
|
413 |
d69355001a6e
- Add purple_certificate_copy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19018
diff
changeset
|
414 /** |
18946
617447a71ab7
- Add certificate_destroy and certificate_destroy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18945
diff
changeset
|
415 * Destroys and free()'s a Certificate |
617447a71ab7
- Add certificate_destroy and certificate_destroy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18945
diff
changeset
|
416 * |
617447a71ab7
- Add certificate_destroy and certificate_destroy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18945
diff
changeset
|
417 * @param crt Instance to destroy. May be NULL. |
617447a71ab7
- Add certificate_destroy and certificate_destroy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18945
diff
changeset
|
418 */ |
617447a71ab7
- Add certificate_destroy and certificate_destroy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18945
diff
changeset
|
419 void |
617447a71ab7
- Add certificate_destroy and certificate_destroy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18945
diff
changeset
|
420 purple_certificate_destroy (PurpleCertificate *crt); |
617447a71ab7
- Add certificate_destroy and certificate_destroy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18945
diff
changeset
|
421 |
617447a71ab7
- Add certificate_destroy and certificate_destroy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18945
diff
changeset
|
422 /** |
617447a71ab7
- Add certificate_destroy and certificate_destroy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18945
diff
changeset
|
423 * Destroy an entire list of Certificate instances and the containing list |
617447a71ab7
- Add certificate_destroy and certificate_destroy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18945
diff
changeset
|
424 * |
617447a71ab7
- Add certificate_destroy and certificate_destroy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18945
diff
changeset
|
425 * @param crt_list List of certificates to destroy. May be NULL. |
617447a71ab7
- Add certificate_destroy and certificate_destroy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18945
diff
changeset
|
426 */ |
617447a71ab7
- Add certificate_destroy and certificate_destroy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18945
diff
changeset
|
427 void |
617447a71ab7
- Add certificate_destroy and certificate_destroy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18945
diff
changeset
|
428 purple_certificate_destroy_list (GList * crt_list); |
617447a71ab7
- Add certificate_destroy and certificate_destroy_list
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18945
diff
changeset
|
429 |
18953
89b32569890c
- Add purple_certificate_get_fingerprint_sha1
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18952
diff
changeset
|
430 /** |
19076
daa68185a018
- Add purple_certificate_signed_by
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19067
diff
changeset
|
431 * Check whether 'crt' has a valid signature made by 'issuer' |
daa68185a018
- Add purple_certificate_signed_by
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19067
diff
changeset
|
432 * |
daa68185a018
- Add purple_certificate_signed_by
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19067
diff
changeset
|
433 * @param crt Certificate instance to check signature of |
daa68185a018
- Add purple_certificate_signed_by
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19067
diff
changeset
|
434 * @param issuer Certificate thought to have signed 'crt' |
daa68185a018
- Add purple_certificate_signed_by
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19067
diff
changeset
|
435 * |
daa68185a018
- Add purple_certificate_signed_by
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19067
diff
changeset
|
436 * @return TRUE if 'crt' has a valid signature made by 'issuer', |
daa68185a018
- Add purple_certificate_signed_by
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19067
diff
changeset
|
437 * otherwise FALSE |
20927
3d704e6bd08a
s/@TODO/@todo/ for Doxygen.
Richard Laager <rlaager@wiktel.com>
parents:
20875
diff
changeset
|
438 * @todo Find a way to give the reason (bad signature, not the issuer, etc.) |
19076
daa68185a018
- Add purple_certificate_signed_by
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19067
diff
changeset
|
439 */ |
daa68185a018
- Add purple_certificate_signed_by
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19067
diff
changeset
|
440 gboolean |
daa68185a018
- Add purple_certificate_signed_by
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19067
diff
changeset
|
441 purple_certificate_signed_by(PurpleCertificate *crt, PurpleCertificate *issuer); |
daa68185a018
- Add purple_certificate_signed_by
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19067
diff
changeset
|
442 |
daa68185a018
- Add purple_certificate_signed_by
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19067
diff
changeset
|
443 /** |
19077
8275c3cbc9da
- Add purple_certificate_check_signature_chain
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19076
diff
changeset
|
444 * Check that a certificate chain is valid |
8275c3cbc9da
- Add purple_certificate_check_signature_chain
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19076
diff
changeset
|
445 * |
8275c3cbc9da
- Add purple_certificate_check_signature_chain
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19076
diff
changeset
|
446 * Uses purple_certificate_signed_by() to verify that each PurpleCertificate |
8275c3cbc9da
- Add purple_certificate_check_signature_chain
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19076
diff
changeset
|
447 * in the chain carries a valid signature from the next. A single-certificate |
8275c3cbc9da
- Add purple_certificate_check_signature_chain
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19076
diff
changeset
|
448 * chain is considered to be valid. |
8275c3cbc9da
- Add purple_certificate_check_signature_chain
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19076
diff
changeset
|
449 * |
8275c3cbc9da
- Add purple_certificate_check_signature_chain
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19076
diff
changeset
|
450 * @param chain List of PurpleCertificate instances comprising the chain, |
8275c3cbc9da
- Add purple_certificate_check_signature_chain
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19076
diff
changeset
|
451 * in the order certificate, issuer, issuer's issuer, etc. |
8275c3cbc9da
- Add purple_certificate_check_signature_chain
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19076
diff
changeset
|
452 * @return TRUE if the chain is valid. See description. |
20927
3d704e6bd08a
s/@TODO/@todo/ for Doxygen.
Richard Laager <rlaager@wiktel.com>
parents:
20875
diff
changeset
|
453 * @todo Specify which certificate in the chain caused a failure |
19077
8275c3cbc9da
- Add purple_certificate_check_signature_chain
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19076
diff
changeset
|
454 */ |
8275c3cbc9da
- Add purple_certificate_check_signature_chain
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19076
diff
changeset
|
455 gboolean |
8275c3cbc9da
- Add purple_certificate_check_signature_chain
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19076
diff
changeset
|
456 purple_certificate_check_signature_chain(GList *chain); |
8275c3cbc9da
- Add purple_certificate_check_signature_chain
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19076
diff
changeset
|
457 |
8275c3cbc9da
- Add purple_certificate_check_signature_chain
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19076
diff
changeset
|
458 /** |
18988
4189fc3befba
- Add purple_certificate_import
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18984
diff
changeset
|
459 * Imports a PurpleCertificate from a file |
4189fc3befba
- Add purple_certificate_import
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18984
diff
changeset
|
460 * |
4189fc3befba
- Add purple_certificate_import
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18984
diff
changeset
|
461 * @param scheme Scheme to import under |
4189fc3befba
- Add purple_certificate_import
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18984
diff
changeset
|
462 * @param filename File path to import from |
4189fc3befba
- Add purple_certificate_import
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18984
diff
changeset
|
463 * @return Pointer to a new PurpleCertificate, or NULL on failure |
4189fc3befba
- Add purple_certificate_import
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18984
diff
changeset
|
464 */ |
4189fc3befba
- Add purple_certificate_import
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18984
diff
changeset
|
465 PurpleCertificate * |
18989
43d1ee6a3ed5
- Fixed naming issues in previous revision
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18988
diff
changeset
|
466 purple_certificate_import(PurpleCertificateScheme *scheme, const gchar *filename); |
18988
4189fc3befba
- Add purple_certificate_import
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18984
diff
changeset
|
467 |
4189fc3befba
- Add purple_certificate_import
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18984
diff
changeset
|
468 /** |
18977
31bdbb82de7e
- Add purple_certificate_export and associated libpurple stuff
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18975
diff
changeset
|
469 * Exports a PurpleCertificate to a file |
31bdbb82de7e
- Add purple_certificate_export and associated libpurple stuff
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18975
diff
changeset
|
470 * |
31bdbb82de7e
- Add purple_certificate_export and associated libpurple stuff
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18975
diff
changeset
|
471 * @param filename File to export the certificate to |
31bdbb82de7e
- Add purple_certificate_export and associated libpurple stuff
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18975
diff
changeset
|
472 * @param crt Certificate to export |
31bdbb82de7e
- Add purple_certificate_export and associated libpurple stuff
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18975
diff
changeset
|
473 * @return TRUE if the export succeeded, otherwise FALSE |
31bdbb82de7e
- Add purple_certificate_export and associated libpurple stuff
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18975
diff
changeset
|
474 */ |
31bdbb82de7e
- Add purple_certificate_export and associated libpurple stuff
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18975
diff
changeset
|
475 gboolean |
31bdbb82de7e
- Add purple_certificate_export and associated libpurple stuff
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18975
diff
changeset
|
476 purple_certificate_export(const gchar *filename, PurpleCertificate *crt); |
31bdbb82de7e
- Add purple_certificate_export and associated libpurple stuff
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18975
diff
changeset
|
477 |
31bdbb82de7e
- Add purple_certificate_export and associated libpurple stuff
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18975
diff
changeset
|
478 |
31bdbb82de7e
- Add purple_certificate_export and associated libpurple stuff
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18975
diff
changeset
|
479 /** |
18953
89b32569890c
- Add purple_certificate_get_fingerprint_sha1
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18952
diff
changeset
|
480 * Retrieves the certificate public key fingerprint using SHA1. |
89b32569890c
- Add purple_certificate_get_fingerprint_sha1
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18952
diff
changeset
|
481 * |
89b32569890c
- Add purple_certificate_get_fingerprint_sha1
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18952
diff
changeset
|
482 * @param crt Certificate instance |
89b32569890c
- Add purple_certificate_get_fingerprint_sha1
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18952
diff
changeset
|
483 * @return Binary representation of the hash. You are responsible for free()ing |
89b32569890c
- Add purple_certificate_get_fingerprint_sha1
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18952
diff
changeset
|
484 * this. |
89b32569890c
- Add purple_certificate_get_fingerprint_sha1
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18952
diff
changeset
|
485 * @see purple_base16_encode_chunked() |
89b32569890c
- Add purple_certificate_get_fingerprint_sha1
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18952
diff
changeset
|
486 */ |
89b32569890c
- Add purple_certificate_get_fingerprint_sha1
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18952
diff
changeset
|
487 GByteArray * |
89b32569890c
- Add purple_certificate_get_fingerprint_sha1
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18952
diff
changeset
|
488 purple_certificate_get_fingerprint_sha1(PurpleCertificate *crt); |
89b32569890c
- Add purple_certificate_get_fingerprint_sha1
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18952
diff
changeset
|
489 |
19080
3bdede51c007
- Expose get_unique_id and get_issuer_unique_id through libpurple functions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19077
diff
changeset
|
490 /** |
3bdede51c007
- Expose get_unique_id and get_issuer_unique_id through libpurple functions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19077
diff
changeset
|
491 * Get a unique identifier for the certificate |
3bdede51c007
- Expose get_unique_id and get_issuer_unique_id through libpurple functions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19077
diff
changeset
|
492 * |
3bdede51c007
- Expose get_unique_id and get_issuer_unique_id through libpurple functions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19077
diff
changeset
|
493 * @param crt Certificate instance |
3bdede51c007
- Expose get_unique_id and get_issuer_unique_id through libpurple functions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19077
diff
changeset
|
494 * @return String representing the certificate uniquely. Must be g_free()'ed |
3bdede51c007
- Expose get_unique_id and get_issuer_unique_id through libpurple functions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19077
diff
changeset
|
495 */ |
3bdede51c007
- Expose get_unique_id and get_issuer_unique_id through libpurple functions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19077
diff
changeset
|
496 gchar * |
3bdede51c007
- Expose get_unique_id and get_issuer_unique_id through libpurple functions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19077
diff
changeset
|
497 purple_certificate_get_unique_id(PurpleCertificate *crt); |
3bdede51c007
- Expose get_unique_id and get_issuer_unique_id through libpurple functions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19077
diff
changeset
|
498 |
3bdede51c007
- Expose get_unique_id and get_issuer_unique_id through libpurple functions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19077
diff
changeset
|
499 /** |
3bdede51c007
- Expose get_unique_id and get_issuer_unique_id through libpurple functions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19077
diff
changeset
|
500 * Get a unique identifier for the certificate's issuer |
3bdede51c007
- Expose get_unique_id and get_issuer_unique_id through libpurple functions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19077
diff
changeset
|
501 * |
3bdede51c007
- Expose get_unique_id and get_issuer_unique_id through libpurple functions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19077
diff
changeset
|
502 * @param crt Certificate instance |
3bdede51c007
- Expose get_unique_id and get_issuer_unique_id through libpurple functions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19077
diff
changeset
|
503 * @return String representing the certificate's issuer uniquely. Must be |
3bdede51c007
- Expose get_unique_id and get_issuer_unique_id through libpurple functions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19077
diff
changeset
|
504 * g_free()'ed |
3bdede51c007
- Expose get_unique_id and get_issuer_unique_id through libpurple functions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19077
diff
changeset
|
505 */ |
3bdede51c007
- Expose get_unique_id and get_issuer_unique_id through libpurple functions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19077
diff
changeset
|
506 gchar * |
3bdede51c007
- Expose get_unique_id and get_issuer_unique_id through libpurple functions
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19077
diff
changeset
|
507 purple_certificate_get_issuer_unique_id(PurpleCertificate *crt); |
18962
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
508 |
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
509 /** |
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
510 * Gets the certificate subject's name |
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
511 * |
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
512 * For X.509, this is the "Common Name" field, as we're only using it |
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
513 * for hostname verification at the moment |
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
514 * |
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
515 * @param crt Certificate instance |
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
516 * @return Newly allocated string with the certificate subject. |
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
517 */ |
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
518 gchar * |
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
519 purple_certificate_get_subject_name(PurpleCertificate *crt); |
fcd05c39803e
- Add purple_certificate_get_subject_name and associated libpurple
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18957
diff
changeset
|
520 |
19008
7fd9bd55f8d0
- Add certificate_check_subject_name and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19007
diff
changeset
|
521 /** |
7fd9bd55f8d0
- Add certificate_check_subject_name and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19007
diff
changeset
|
522 * Check the subject name against that on the certificate |
7fd9bd55f8d0
- Add certificate_check_subject_name and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19007
diff
changeset
|
523 * @param crt Certificate instance |
7fd9bd55f8d0
- Add certificate_check_subject_name and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19007
diff
changeset
|
524 * @param name Name to check. |
7fd9bd55f8d0
- Add certificate_check_subject_name and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19007
diff
changeset
|
525 * @return TRUE if it is a match, else FALSE |
7fd9bd55f8d0
- Add certificate_check_subject_name and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19007
diff
changeset
|
526 */ |
7fd9bd55f8d0
- Add certificate_check_subject_name and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19007
diff
changeset
|
527 gboolean |
7fd9bd55f8d0
- Add certificate_check_subject_name and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19007
diff
changeset
|
528 purple_certificate_check_subject_name(PurpleCertificate *crt, const gchar *name); |
7fd9bd55f8d0
- Add certificate_check_subject_name and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19007
diff
changeset
|
529 |
19012
b1090cbfc286
- Add expiration/activation functions for Certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19011
diff
changeset
|
530 /** |
b1090cbfc286
- Add expiration/activation functions for Certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19011
diff
changeset
|
531 * Get the expiration/activation times. |
b1090cbfc286
- Add expiration/activation functions for Certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19011
diff
changeset
|
532 * |
b1090cbfc286
- Add expiration/activation functions for Certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19011
diff
changeset
|
533 * @param crt Certificate instance |
b1090cbfc286
- Add expiration/activation functions for Certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19011
diff
changeset
|
534 * @param activation Reference to store the activation time at. May be NULL |
b1090cbfc286
- Add expiration/activation functions for Certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19011
diff
changeset
|
535 * if you don't actually want it. |
b1090cbfc286
- Add expiration/activation functions for Certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19011
diff
changeset
|
536 * @param expiration Reference to store the expiration time at. May be NULL |
b1090cbfc286
- Add expiration/activation functions for Certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19011
diff
changeset
|
537 * if you don't actually want it. |
b1090cbfc286
- Add expiration/activation functions for Certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19011
diff
changeset
|
538 * @return TRUE if the requested values were obtained, otherwise FALSE. |
b1090cbfc286
- Add expiration/activation functions for Certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19011
diff
changeset
|
539 */ |
b1090cbfc286
- Add expiration/activation functions for Certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19011
diff
changeset
|
540 gboolean |
b1090cbfc286
- Add expiration/activation functions for Certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19011
diff
changeset
|
541 purple_certificate_get_times(PurpleCertificate *crt, time_t *activation, time_t *expiration); |
19008
7fd9bd55f8d0
- Add certificate_check_subject_name and associated machinery
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19007
diff
changeset
|
542 |
18994
bf23d58ec9c3
- Rearrange certificate.h for better organization
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18989
diff
changeset
|
543 /*@}*/ |
bf23d58ec9c3
- Rearrange certificate.h for better organization
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18989
diff
changeset
|
544 |
bf23d58ec9c3
- Rearrange certificate.h for better organization
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18989
diff
changeset
|
545 /*****************************************************************************/ |
bf23d58ec9c3
- Rearrange certificate.h for better organization
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18989
diff
changeset
|
546 /** @name Certificate Pool Functions */ |
bf23d58ec9c3
- Rearrange certificate.h for better organization
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18989
diff
changeset
|
547 /*****************************************************************************/ |
bf23d58ec9c3
- Rearrange certificate.h for better organization
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18989
diff
changeset
|
548 /*@{*/ |
18984
2b4150624cf2
- Add purple_certificate_pool_mkpath helper function
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18983
diff
changeset
|
549 /** |
2b4150624cf2
- Add purple_certificate_pool_mkpath helper function
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18983
diff
changeset
|
550 * Helper function for generating file paths in ~/.purple/certificates for |
2b4150624cf2
- Add purple_certificate_pool_mkpath helper function
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18983
diff
changeset
|
551 * CertificatePools that use them. |
2b4150624cf2
- Add purple_certificate_pool_mkpath helper function
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18983
diff
changeset
|
552 * |
19010
0d4b84820390
- Fix overzealous escaping cause by ancestor revision
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19009
diff
changeset
|
553 * All components will be escaped for filesystem friendliness. |
0d4b84820390
- Fix overzealous escaping cause by ancestor revision
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19009
diff
changeset
|
554 * |
18984
2b4150624cf2
- Add purple_certificate_pool_mkpath helper function
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18983
diff
changeset
|
555 * @param pool CertificatePool to build a path for |
2b4150624cf2
- Add purple_certificate_pool_mkpath helper function
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18983
diff
changeset
|
556 * @param id Key to look up a Certificate by. May be NULL. |
2b4150624cf2
- Add purple_certificate_pool_mkpath helper function
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18983
diff
changeset
|
557 * @return A newly allocated path of the form |
19010
0d4b84820390
- Fix overzealous escaping cause by ancestor revision
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19009
diff
changeset
|
558 * ~/.purple/certificates/scheme_name/pool_name/unique_id |
18984
2b4150624cf2
- Add purple_certificate_pool_mkpath helper function
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18983
diff
changeset
|
559 */ |
2b4150624cf2
- Add purple_certificate_pool_mkpath helper function
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18983
diff
changeset
|
560 gchar * |
2b4150624cf2
- Add purple_certificate_pool_mkpath helper function
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18983
diff
changeset
|
561 purple_certificate_pool_mkpath(PurpleCertificatePool *pool, const gchar *id); |
2b4150624cf2
- Add purple_certificate_pool_mkpath helper function
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18983
diff
changeset
|
562 |
18995
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
563 /** |
19034
8b627694bf4a
- Add purple_certificate_pool_usable to check whether a pool's
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19028
diff
changeset
|
564 * Determines whether a pool can be used. |
8b627694bf4a
- Add purple_certificate_pool_usable to check whether a pool's
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19028
diff
changeset
|
565 * |
8b627694bf4a
- Add purple_certificate_pool_usable to check whether a pool's
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19028
diff
changeset
|
566 * Checks whether the associated CertificateScheme is loaded. |
8b627694bf4a
- Add purple_certificate_pool_usable to check whether a pool's
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19028
diff
changeset
|
567 * |
8b627694bf4a
- Add purple_certificate_pool_usable to check whether a pool's
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19028
diff
changeset
|
568 * @param pool Pool to check |
8b627694bf4a
- Add purple_certificate_pool_usable to check whether a pool's
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19028
diff
changeset
|
569 * |
8b627694bf4a
- Add purple_certificate_pool_usable to check whether a pool's
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19028
diff
changeset
|
570 * @return TRUE if the pool can be used, otherwise FALSE |
8b627694bf4a
- Add purple_certificate_pool_usable to check whether a pool's
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19028
diff
changeset
|
571 */ |
8b627694bf4a
- Add purple_certificate_pool_usable to check whether a pool's
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19028
diff
changeset
|
572 gboolean |
8b627694bf4a
- Add purple_certificate_pool_usable to check whether a pool's
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19028
diff
changeset
|
573 purple_certificate_pool_usable(PurpleCertificatePool *pool); |
8b627694bf4a
- Add purple_certificate_pool_usable to check whether a pool's
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19028
diff
changeset
|
574 |
8b627694bf4a
- Add purple_certificate_pool_usable to check whether a pool's
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19028
diff
changeset
|
575 /** |
19060
c79b54f03f9d
- Add purple_certificate_pool_get_scheme helper function
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19049
diff
changeset
|
576 * Looks up the scheme the pool operates under |
c79b54f03f9d
- Add purple_certificate_pool_get_scheme helper function
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19049
diff
changeset
|
577 * |
c79b54f03f9d
- Add purple_certificate_pool_get_scheme helper function
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19049
diff
changeset
|
578 * @param pool Pool to get the scheme of |
c79b54f03f9d
- Add purple_certificate_pool_get_scheme helper function
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19049
diff
changeset
|
579 * |
c79b54f03f9d
- Add purple_certificate_pool_get_scheme helper function
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19049
diff
changeset
|
580 * @return Pointer to the pool's scheme, or NULL if it isn't loaded. |
c79b54f03f9d
- Add purple_certificate_pool_get_scheme helper function
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19049
diff
changeset
|
581 * @see purple_certificate_pool_usable() |
c79b54f03f9d
- Add purple_certificate_pool_get_scheme helper function
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19049
diff
changeset
|
582 */ |
c79b54f03f9d
- Add purple_certificate_pool_get_scheme helper function
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19049
diff
changeset
|
583 PurpleCertificateScheme * |
c79b54f03f9d
- Add purple_certificate_pool_get_scheme helper function
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19049
diff
changeset
|
584 purple_certificate_pool_get_scheme(PurpleCertificatePool *pool); |
c79b54f03f9d
- Add purple_certificate_pool_get_scheme helper function
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19049
diff
changeset
|
585 |
c79b54f03f9d
- Add purple_certificate_pool_get_scheme helper function
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19049
diff
changeset
|
586 /** |
18995
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
587 * Check for presence of an ID in a pool. |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
588 * @param pool Pool to look in |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
589 * @param id ID to look for |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
590 * @return TRUE if the ID is in the pool, else FALSE |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
591 */ |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
592 gboolean |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
593 purple_certificate_pool_contains(PurpleCertificatePool *pool, const gchar *id); |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
594 |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
595 /** |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
596 * Retrieve a certificate from a pool. |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
597 * @param pool Pool to fish in |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
598 * @param id ID to look up |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
599 * @return Retrieved certificate, or NULL if it wasn't there |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
600 */ |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
601 PurpleCertificate * |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
602 purple_certificate_pool_retrieve(PurpleCertificatePool *pool, const gchar *id); |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
603 |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
604 /** |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
605 * Add a certificate to a pool |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
606 * |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
607 * Any pre-existing certificate of the same ID will be overwritten. |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
608 * |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
609 * @param pool Pool to add to |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
610 * @param id ID to store the certificate with |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
611 * @param crt Certificate to store |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
612 * @return TRUE if the operation succeeded, otherwise FALSE |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
613 */ |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
614 gboolean |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
615 purple_certificate_pool_store(PurpleCertificatePool *pool, const gchar *id, PurpleCertificate *crt); |
47b06daea9d1
- Add pool retrieve, contains, and store functions to certificate API
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18994
diff
changeset
|
616 |
19026
b3acaf46d9ad
- Add pool_get_idlist / pool_destroy_idlist
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19023
diff
changeset
|
617 /** |
19049
8cbc110456ac
- Add purple_certificate_pool_delete
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19034
diff
changeset
|
618 * Remove a certificate from a pool |
8cbc110456ac
- Add purple_certificate_pool_delete
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19034
diff
changeset
|
619 * |
8cbc110456ac
- Add purple_certificate_pool_delete
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19034
diff
changeset
|
620 * @param pool Pool to remove from |
8cbc110456ac
- Add purple_certificate_pool_delete
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19034
diff
changeset
|
621 * @param id ID to remove |
8cbc110456ac
- Add purple_certificate_pool_delete
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19034
diff
changeset
|
622 * @return TRUE if the operation succeeded, otherwise FALSE |
8cbc110456ac
- Add purple_certificate_pool_delete
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19034
diff
changeset
|
623 */ |
8cbc110456ac
- Add purple_certificate_pool_delete
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19034
diff
changeset
|
624 gboolean |
8cbc110456ac
- Add purple_certificate_pool_delete
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19034
diff
changeset
|
625 purple_certificate_pool_delete(PurpleCertificatePool *pool, const gchar *id); |
8cbc110456ac
- Add purple_certificate_pool_delete
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19034
diff
changeset
|
626 |
8cbc110456ac
- Add purple_certificate_pool_delete
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19034
diff
changeset
|
627 /** |
19026
b3acaf46d9ad
- Add pool_get_idlist / pool_destroy_idlist
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19023
diff
changeset
|
628 * Get the list of IDs currently in the pool. |
b3acaf46d9ad
- Add pool_get_idlist / pool_destroy_idlist
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19023
diff
changeset
|
629 * |
b3acaf46d9ad
- Add pool_get_idlist / pool_destroy_idlist
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19023
diff
changeset
|
630 * @param pool Pool to enumerate |
b3acaf46d9ad
- Add pool_get_idlist / pool_destroy_idlist
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19023
diff
changeset
|
631 * @return GList pointing to newly-allocated id strings. Free using |
b3acaf46d9ad
- Add pool_get_idlist / pool_destroy_idlist
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19023
diff
changeset
|
632 * purple_certificate_pool_destroy_idlist() |
b3acaf46d9ad
- Add pool_get_idlist / pool_destroy_idlist
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19023
diff
changeset
|
633 */ |
b3acaf46d9ad
- Add pool_get_idlist / pool_destroy_idlist
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19023
diff
changeset
|
634 GList * |
b3acaf46d9ad
- Add pool_get_idlist / pool_destroy_idlist
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19023
diff
changeset
|
635 purple_certificate_pool_get_idlist(PurpleCertificatePool *pool); |
b3acaf46d9ad
- Add pool_get_idlist / pool_destroy_idlist
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19023
diff
changeset
|
636 |
b3acaf46d9ad
- Add pool_get_idlist / pool_destroy_idlist
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19023
diff
changeset
|
637 /** |
b3acaf46d9ad
- Add pool_get_idlist / pool_destroy_idlist
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19023
diff
changeset
|
638 * Destroys the result given by purple_certificate_pool_get_idlist() |
b3acaf46d9ad
- Add pool_get_idlist / pool_destroy_idlist
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19023
diff
changeset
|
639 * |
b3acaf46d9ad
- Add pool_get_idlist / pool_destroy_idlist
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19023
diff
changeset
|
640 * @param idlist ID List to destroy |
b3acaf46d9ad
- Add pool_get_idlist / pool_destroy_idlist
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19023
diff
changeset
|
641 */ |
b3acaf46d9ad
- Add pool_get_idlist / pool_destroy_idlist
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19023
diff
changeset
|
642 void |
b3acaf46d9ad
- Add pool_get_idlist / pool_destroy_idlist
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19023
diff
changeset
|
643 purple_certificate_pool_destroy_idlist(GList *idlist); |
b3acaf46d9ad
- Add pool_get_idlist / pool_destroy_idlist
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19023
diff
changeset
|
644 |
18945
fa42d8fa7873
- Documentation segmentation
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18942
diff
changeset
|
645 /*@}*/ |
fa42d8fa7873
- Documentation segmentation
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18942
diff
changeset
|
646 |
17638
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
647 /*****************************************************************************/ |
18994
bf23d58ec9c3
- Rearrange certificate.h for better organization
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18989
diff
changeset
|
648 /** @name Certificate Subsystem API */ |
17638
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
649 /*****************************************************************************/ |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
650 /*@{*/ |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
651 |
18950
f78a9efa9eaf
- Add purple_certificate_register_builtins
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18947
diff
changeset
|
652 /** |
18957
9205841eed06
- Certificate system now has init and uninit like other systems
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18953
diff
changeset
|
653 * Initialize the certificate system |
18950
f78a9efa9eaf
- Add purple_certificate_register_builtins
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18947
diff
changeset
|
654 */ |
f78a9efa9eaf
- Add purple_certificate_register_builtins
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18947
diff
changeset
|
655 void |
18957
9205841eed06
- Certificate system now has init and uninit like other systems
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18953
diff
changeset
|
656 purple_certificate_init(void); |
9205841eed06
- Certificate system now has init and uninit like other systems
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18953
diff
changeset
|
657 |
9205841eed06
- Certificate system now has init and uninit like other systems
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18953
diff
changeset
|
658 /** |
9205841eed06
- Certificate system now has init and uninit like other systems
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18953
diff
changeset
|
659 * Un-initialize the certificate system |
9205841eed06
- Certificate system now has init and uninit like other systems
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18953
diff
changeset
|
660 */ |
9205841eed06
- Certificate system now has init and uninit like other systems
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18953
diff
changeset
|
661 void |
9205841eed06
- Certificate system now has init and uninit like other systems
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18953
diff
changeset
|
662 purple_certificate_uninit(void); |
18950
f78a9efa9eaf
- Add purple_certificate_register_builtins
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18947
diff
changeset
|
663 |
19022
1f07f96dc1ce
- Add purple_certificate_get_handle
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19021
diff
changeset
|
664 /** |
1f07f96dc1ce
- Add purple_certificate_get_handle
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19021
diff
changeset
|
665 * Get the Certificate subsystem handle for signalling purposes |
1f07f96dc1ce
- Add purple_certificate_get_handle
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19021
diff
changeset
|
666 */ |
1f07f96dc1ce
- Add purple_certificate_get_handle
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19021
diff
changeset
|
667 gpointer |
1f07f96dc1ce
- Add purple_certificate_get_handle
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19021
diff
changeset
|
668 purple_certificate_get_handle(void); |
1f07f96dc1ce
- Add purple_certificate_get_handle
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19021
diff
changeset
|
669 |
18192
dc7e7b8bdc8c
- Add chunks of the certificate scheme registration interface
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18190
diff
changeset
|
670 /** Look up a registered CertificateScheme by name |
dc7e7b8bdc8c
- Add chunks of the certificate scheme registration interface
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18190
diff
changeset
|
671 * @param name The scheme name. Case insensitive. |
dc7e7b8bdc8c
- Add chunks of the certificate scheme registration interface
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18190
diff
changeset
|
672 * @return Pointer to the located Scheme, or NULL if it isn't found. |
dc7e7b8bdc8c
- Add chunks of the certificate scheme registration interface
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18190
diff
changeset
|
673 */ |
dc7e7b8bdc8c
- Add chunks of the certificate scheme registration interface
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18190
diff
changeset
|
674 PurpleCertificateScheme * |
dc7e7b8bdc8c
- Add chunks of the certificate scheme registration interface
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18190
diff
changeset
|
675 purple_certificate_find_scheme(const gchar *name); |
dc7e7b8bdc8c
- Add chunks of the certificate scheme registration interface
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18190
diff
changeset
|
676 |
19023
eb86ff3ba21a
- Add get_pools, get_verifiers, and get_schemes
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19022
diff
changeset
|
677 /** |
eb86ff3ba21a
- Add get_pools, get_verifiers, and get_schemes
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19022
diff
changeset
|
678 * Get all registered CertificateSchemes |
eb86ff3ba21a
- Add get_pools, get_verifiers, and get_schemes
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19022
diff
changeset
|
679 * |
19028
86403f33720b
- Add dire warnings to the purple_certificate_get_Xs docs
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19026
diff
changeset
|
680 * @return GList pointing to all registered CertificateSchemes . This value |
86403f33720b
- Add dire warnings to the purple_certificate_get_Xs docs
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19026
diff
changeset
|
681 * is owned by libpurple |
19023
eb86ff3ba21a
- Add get_pools, get_verifiers, and get_schemes
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19022
diff
changeset
|
682 */ |
eb86ff3ba21a
- Add get_pools, get_verifiers, and get_schemes
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19022
diff
changeset
|
683 GList * |
eb86ff3ba21a
- Add get_pools, get_verifiers, and get_schemes
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19022
diff
changeset
|
684 purple_certificate_get_schemes(void); |
eb86ff3ba21a
- Add get_pools, get_verifiers, and get_schemes
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19022
diff
changeset
|
685 |
18192
dc7e7b8bdc8c
- Add chunks of the certificate scheme registration interface
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18190
diff
changeset
|
686 /** Register a CertificateScheme with libpurple |
dc7e7b8bdc8c
- Add chunks of the certificate scheme registration interface
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18190
diff
changeset
|
687 * |
dc7e7b8bdc8c
- Add chunks of the certificate scheme registration interface
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18190
diff
changeset
|
688 * No two schemes can be registered with the same name; this function enforces |
dc7e7b8bdc8c
- Add chunks of the certificate scheme registration interface
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18190
diff
changeset
|
689 * that. |
dc7e7b8bdc8c
- Add chunks of the certificate scheme registration interface
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18190
diff
changeset
|
690 * |
dc7e7b8bdc8c
- Add chunks of the certificate scheme registration interface
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18190
diff
changeset
|
691 * @param scheme Pointer to the scheme to register. |
dc7e7b8bdc8c
- Add chunks of the certificate scheme registration interface
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18190
diff
changeset
|
692 * @return TRUE if the scheme was successfully added, otherwise FALSE |
dc7e7b8bdc8c
- Add chunks of the certificate scheme registration interface
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18190
diff
changeset
|
693 */ |
dc7e7b8bdc8c
- Add chunks of the certificate scheme registration interface
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18190
diff
changeset
|
694 gboolean |
dc7e7b8bdc8c
- Add chunks of the certificate scheme registration interface
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18190
diff
changeset
|
695 purple_certificate_register_scheme(PurpleCertificateScheme *scheme); |
dc7e7b8bdc8c
- Add chunks of the certificate scheme registration interface
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18190
diff
changeset
|
696 |
18926
8c4d52bc0319
- Add unregister_scheme
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18192
diff
changeset
|
697 /** Unregister a CertificateScheme from libpurple |
8c4d52bc0319
- Add unregister_scheme
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18192
diff
changeset
|
698 * |
8c4d52bc0319
- Add unregister_scheme
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18192
diff
changeset
|
699 * @param scheme Scheme to unregister. |
8c4d52bc0319
- Add unregister_scheme
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18192
diff
changeset
|
700 * If the scheme is not registered, this is a no-op. |
8c4d52bc0319
- Add unregister_scheme
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18192
diff
changeset
|
701 * |
8c4d52bc0319
- Add unregister_scheme
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18192
diff
changeset
|
702 * @return TRUE if the unregister completed successfully |
8c4d52bc0319
- Add unregister_scheme
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18192
diff
changeset
|
703 */ |
8c4d52bc0319
- Add unregister_scheme
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18192
diff
changeset
|
704 gboolean |
8c4d52bc0319
- Add unregister_scheme
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18192
diff
changeset
|
705 purple_certificate_unregister_scheme(PurpleCertificateScheme *scheme); |
8c4d52bc0319
- Add unregister_scheme
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18192
diff
changeset
|
706 |
18941
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
707 /** Look up a registered PurpleCertificateVerifier by scheme and name |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
708 * @param scheme_name Scheme name. Case insensitive. |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
709 * @param ver_name The verifier name. Case insensitive. |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
710 * @return Pointer to the located Verifier, or NULL if it isn't found. |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
711 */ |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
712 PurpleCertificateVerifier * |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
713 purple_certificate_find_verifier(const gchar *scheme_name, const gchar *ver_name); |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
714 |
19023
eb86ff3ba21a
- Add get_pools, get_verifiers, and get_schemes
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19022
diff
changeset
|
715 /** |
eb86ff3ba21a
- Add get_pools, get_verifiers, and get_schemes
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19022
diff
changeset
|
716 * Get the list of registered CertificateVerifiers |
eb86ff3ba21a
- Add get_pools, get_verifiers, and get_schemes
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19022
diff
changeset
|
717 * |
19028
86403f33720b
- Add dire warnings to the purple_certificate_get_Xs docs
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19026
diff
changeset
|
718 * @return GList of all registered PurpleCertificateVerifier. This value |
86403f33720b
- Add dire warnings to the purple_certificate_get_Xs docs
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19026
diff
changeset
|
719 * is owned by libpurple |
19023
eb86ff3ba21a
- Add get_pools, get_verifiers, and get_schemes
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19022
diff
changeset
|
720 */ |
eb86ff3ba21a
- Add get_pools, get_verifiers, and get_schemes
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19022
diff
changeset
|
721 GList * |
eb86ff3ba21a
- Add get_pools, get_verifiers, and get_schemes
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19022
diff
changeset
|
722 purple_certificate_get_verifiers(void); |
18941
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
723 |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
724 /** |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
725 * Register a CertificateVerifier with libpurple |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
726 * |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
727 * @param vr Verifier to register. |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
728 * @return TRUE if register succeeded, otherwise FALSE |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
729 */ |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
730 gboolean |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
731 purple_certificate_register_verifier(PurpleCertificateVerifier *vr); |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
732 |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
733 /** |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
734 * Unregister a CertificateVerifier with libpurple |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
735 * |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
736 * @param vr Verifier to unregister. |
18971
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
737 * @return TRUE if unregister succeeded, otherwise FALSE |
18941
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
738 */ |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
739 gboolean |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
740 purple_certificate_unregister_verifier(PurpleCertificateVerifier *vr); |
425f494bd1ec
- CertificateVerifier register/unregister/find
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18940
diff
changeset
|
741 |
18971
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
742 /** Look up a registered PurpleCertificatePool by scheme and name |
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
743 * @param scheme_name Scheme name. Case insensitive. |
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
744 * @param pool_name Pool name. Case insensitive. |
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
745 * @return Pointer to the located Pool, or NULL if it isn't found. |
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
746 */ |
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
747 PurpleCertificatePool * |
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
748 purple_certificate_find_pool(const gchar *scheme_name, const gchar *pool_name); |
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
749 |
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
750 /** |
19023
eb86ff3ba21a
- Add get_pools, get_verifiers, and get_schemes
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19022
diff
changeset
|
751 * Get the list of registered Pools |
eb86ff3ba21a
- Add get_pools, get_verifiers, and get_schemes
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19022
diff
changeset
|
752 * |
19028
86403f33720b
- Add dire warnings to the purple_certificate_get_Xs docs
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19026
diff
changeset
|
753 * @return GList of all registered PurpleCertificatePool s. This value |
86403f33720b
- Add dire warnings to the purple_certificate_get_Xs docs
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19026
diff
changeset
|
754 * is owned by libpurple |
19023
eb86ff3ba21a
- Add get_pools, get_verifiers, and get_schemes
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19022
diff
changeset
|
755 */ |
eb86ff3ba21a
- Add get_pools, get_verifiers, and get_schemes
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19022
diff
changeset
|
756 GList * |
eb86ff3ba21a
- Add get_pools, get_verifiers, and get_schemes
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19022
diff
changeset
|
757 purple_certificate_get_pools(void); |
eb86ff3ba21a
- Add get_pools, get_verifiers, and get_schemes
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19022
diff
changeset
|
758 |
eb86ff3ba21a
- Add get_pools, get_verifiers, and get_schemes
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19022
diff
changeset
|
759 /** |
18971
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
760 * Register a CertificatePool with libpurple and call its init function |
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
761 * |
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
762 * @param pool Pool to register. |
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
763 * @return TRUE if the register succeeded, otherwise FALSE |
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
764 */ |
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
765 gboolean |
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
766 purple_certificate_register_pool(PurpleCertificatePool *pool); |
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
767 |
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
768 /** |
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
769 * Unregister a CertificatePool with libpurple and call its uninit function |
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
770 * |
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
771 * @param pool Pool to unregister. |
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
772 * @return TRUE if the unregister succeeded, otherwise FALSE |
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
773 */ |
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
774 gboolean |
898e2bd70f23
- Add find, register, and unregister for CertificatePools
William Ehlhardt <williamehlhardt@gmail.com>
parents:
18970
diff
changeset
|
775 purple_certificate_unregister_pool(PurpleCertificatePool *pool); |
17638
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
776 |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
777 /*@}*/ |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
778 |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
779 |
19329
e93db0c87b26
- Add purple_certificate_display_x509
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19092
diff
changeset
|
780 /** |
e93db0c87b26
- Add purple_certificate_display_x509
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19092
diff
changeset
|
781 * Displays a window showing X.509 certificate information |
e93db0c87b26
- Add purple_certificate_display_x509
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19092
diff
changeset
|
782 * |
e93db0c87b26
- Add purple_certificate_display_x509
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19092
diff
changeset
|
783 * @param crt Certificate under an "x509" Scheme |
20927
3d704e6bd08a
s/@TODO/@todo/ for Doxygen.
Richard Laager <rlaager@wiktel.com>
parents:
20875
diff
changeset
|
784 * @todo Will break on CA certs, as they have no Common Name |
19329
e93db0c87b26
- Add purple_certificate_display_x509
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19092
diff
changeset
|
785 */ |
e93db0c87b26
- Add purple_certificate_display_x509
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19092
diff
changeset
|
786 void |
e93db0c87b26
- Add purple_certificate_display_x509
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19092
diff
changeset
|
787 purple_certificate_display_x509(PurpleCertificate *crt); |
e93db0c87b26
- Add purple_certificate_display_x509
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19092
diff
changeset
|
788 |
21647
a57adf1de9cb
Patch from Florian Quze (the InstantBird dude) to add a search path for
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20927
diff
changeset
|
789 /** |
a57adf1de9cb
Patch from Florian Quze (the InstantBird dude) to add a search path for
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20927
diff
changeset
|
790 * Add a search path for certificates. |
a57adf1de9cb
Patch from Florian Quze (the InstantBird dude) to add a search path for
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20927
diff
changeset
|
791 * |
a57adf1de9cb
Patch from Florian Quze (the InstantBird dude) to add a search path for
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20927
diff
changeset
|
792 * @param path Path to search for certificates. |
a57adf1de9cb
Patch from Florian Quze (the InstantBird dude) to add a search path for
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20927
diff
changeset
|
793 */ |
a57adf1de9cb
Patch from Florian Quze (the InstantBird dude) to add a search path for
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20927
diff
changeset
|
794 void purple_certificate_add_ca_search_path(const char *path); |
19329
e93db0c87b26
- Add purple_certificate_display_x509
William Ehlhardt <williamehlhardt@gmail.com>
parents:
19092
diff
changeset
|
795 |
17638
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
796 #ifdef __cplusplus |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
797 } |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
798 #endif /* __cplusplus */ |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
799 |
668a294f9a72
- Added certificate.[ch] and got them integrated into the build
William Ehlhardt <williamehlhardt@gmail.com>
parents:
diff
changeset
|
800 #endif /* _PURPLE_CERTIFICATE_H */ |