libpurple/sslconn.h

Thu, 06 Feb 2014 16:19:47 +0530

author
Ankit Vani <a@nevitus.org>
date
Thu, 06 Feb 2014 16:19:47 +0530
branch
gtkdoc-conversion
changeset 35467
975ae62dd895
parent 35466
e259e75f1c6f
child 35468
65e7b4566de4
permissions
-rw-r--r--

Fix cross-references and some other warnings

20147
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
1 /* purple
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
2 *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
3 * Purple is the legal property of its developers, whose names are too numerous
8046
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 7274
diff changeset
4 * to list here. Please refer to the COPYRIGHT file distributed with this
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 7274
diff changeset
5 * source distribution.
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
6 *
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
7 * This program is free software; you can redistribute it and/or modify
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
8 * it under the terms of the GNU General Public License as published by
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
9 * the Free Software Foundation; either version 2 of the License, or
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
10 * (at your option) any later version.
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
11 *
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
12 * This program is distributed in the hope that it will be useful,
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
15 * GNU General Public License for more details.
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
16 *
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
17 * You should have received a copy of the GNU General Public License
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
18 * along with this program; if not, write to the Free Software
19859
71d37b57eff2 The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 18487
diff changeset
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
20 */
35442
84e906df98dd Add section blocks for purple-socket.h to xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35403
diff changeset
21 /**
84e906df98dd Add section blocks for purple-socket.h to xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35403
diff changeset
22 * SECTION:sslconn
84e906df98dd Add section blocks for purple-socket.h to xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35403
diff changeset
23 * @section_id: libpurple-sslconn
84e906df98dd Add section blocks for purple-socket.h to xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35403
diff changeset
24 * @short_description: <filename>sslconn.h</filename>
84e906df98dd Add section blocks for purple-socket.h to xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35403
diff changeset
25 * @title: SSL API
84e906df98dd Add section blocks for purple-socket.h to xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35403
diff changeset
26 */
84e906df98dd Add section blocks for purple-socket.h to xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35403
diff changeset
27
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
28 #ifndef _PURPLE_SSLCONN_H_
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
29 #define _PURPLE_SSLCONN_H_
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
30
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
31 /**
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
32 * PurpleSslErrorType:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
33 *
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
34 * Possible SSL errors.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
35 */
7274
42ec5f56e32a [gaim-migrate @ 7851]
Christian Hammond <chipx86@chipx86.com>
parents: 6783
diff changeset
36 typedef enum
42ec5f56e32a [gaim-migrate @ 7851]
Christian Hammond <chipx86@chipx86.com>
parents: 6783
diff changeset
37 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
38 PURPLE_SSL_HANDSHAKE_FAILED = 1,
18474
7f5cf3fa528d - Add PURPLE_SSL_CERTIFICATE_INVALID error code
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18464
diff changeset
39 PURPLE_SSL_CONNECT_FAILED = 2,
7f5cf3fa528d - Add PURPLE_SSL_CERTIFICATE_INVALID error code
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18464
diff changeset
40 PURPLE_SSL_CERTIFICATE_INVALID = 3
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
41 } PurpleSslErrorType;
7274
42ec5f56e32a [gaim-migrate @ 7851]
Christian Hammond <chipx86@chipx86.com>
parents: 6783
diff changeset
42
20443
7487bb69ae76 Create purple_connection_ssl_error(), which converts a PurpleSslErrorType
Will Thompson <resiak@pidgin.im>
parents: 20147
diff changeset
43 #include "certificate.h"
7487bb69ae76 Create purple_connection_ssl_error(), which converts a PurpleSslErrorType
Will Thompson <resiak@pidgin.im>
parents: 20147
diff changeset
44 #include "proxy.h"
7487bb69ae76 Create purple_connection_ssl_error(), which converts a PurpleSslErrorType
Will Thompson <resiak@pidgin.im>
parents: 20147
diff changeset
45
7487bb69ae76 Create purple_connection_ssl_error(), which converts a PurpleSslErrorType
Will Thompson <resiak@pidgin.im>
parents: 20147
diff changeset
46 #define PURPLE_SSL_DEFAULT_PORT 443
7487bb69ae76 Create purple_connection_ssl_error(), which converts a PurpleSslErrorType
Will Thompson <resiak@pidgin.im>
parents: 20147
diff changeset
47
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
48 typedef struct _PurpleSslConnection PurpleSslConnection;
35466
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
49 typedef struct _PurpleSslOps PurpleSslOps;
6738
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
50
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
51 typedef void (*PurpleSslInputFunction)(gpointer, PurpleSslConnection *,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
52 PurpleInputCondition);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
53 typedef void (*PurpleSslErrorFunction)(PurpleSslConnection *, PurpleSslErrorType,
7274
42ec5f56e32a [gaim-migrate @ 7851]
Christian Hammond <chipx86@chipx86.com>
parents: 6783
diff changeset
54 gpointer);
6738
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
55
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
56 /**
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
57 * PurpleSslConnection:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
58 * @host: Hostname to which the SSL connection will be made
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
59 * @port: Port to connect to
35467
975ae62dd895 Fix cross-references and some other warnings
Ankit Vani <a@nevitus.org>
parents: 35466
diff changeset
60 * @connect_cb_data: Data to pass to @connect_cb
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
61 * @connect_cb: Callback triggered once the SSL handshake is complete
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
62 * @error_cb: Callback triggered if there is an error during connection
35467
975ae62dd895 Fix cross-references and some other warnings
Ankit Vani <a@nevitus.org>
parents: 35466
diff changeset
63 * @recv_cb_data: Data passed to @recv_cb
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
64 * @recv_cb: User-defined callback executed when the SSL connection
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
65 * receives data
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
66 * @fd: File descriptor used to refer to the socket
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
67 * @inpa: Glib event source ID; used to refer to the received data
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
68 * callback in the glib eventloop
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
69 * @connect_data: Data related to the underlying TCP connection
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
70 * @private_data: Internal connection data managed by the SSL backend
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
71 * (GnuTLS/LibNSS/whatever)
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
72 * @verifier: Verifier to use in authenticating the peer
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
73 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
74 struct _PurpleSslConnection
6738
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
75 {
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
76 char *host;
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
77 int port;
6764
a3f8025c0631 [gaim-migrate @ 7296]
Nathan Walp <nwalp@pidgin.im>
parents: 6762
diff changeset
78 void *connect_cb_data;
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
79 PurpleSslInputFunction connect_cb;
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
80 PurpleSslErrorFunction error_cb;
6764
a3f8025c0631 [gaim-migrate @ 7296]
Nathan Walp <nwalp@pidgin.im>
parents: 6762
diff changeset
81 void *recv_cb_data;
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
82 PurpleSslInputFunction recv_cb;
6738
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
83
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
84 int fd;
24262
51ba71b5e5e2 The variable we use to keep track of the watcher of the ssl connection
Mark Doliner <markdoliner@pidgin.im>
parents: 21211
diff changeset
85 guint inpa;
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
86 PurpleProxyConnectData *connect_data;
6738
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
87
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
88 void *private_data;
18464
7fb7cb707a19 - Add verifier field to SslConnection
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18451
diff changeset
89 PurpleCertificateVerifier *verifier;
6738
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
90 };
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
91
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
92 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
93 * PurpleSslOps:
35466
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
94 * @init: Initializes the SSL system provided. See purple_ssl_init().
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
95 * <sbr/>Returns: %TRUE if initialization succeeded
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
96 * @uninit: Unloads the SSL system. Inverse of PurpleSslOps::init.
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
97 * See purple_ssl_uninit().
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
98 * @connectfunc: Sets up the SSL connection for a #PurpleSslConnection once the
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
99 * TCP connection has been established. See purple_ssl_connect().
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
100 * @close: Destroys the internal data of the SSL connection provided. Freeing
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
101 * @gsc itself is left to purple_ssl_close().
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
102 * @read: Reads data from a connection (like POSIX read()).
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
103 * See purple_ssl_read().
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
104 * <sbr/>@gsc: Connection context
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
105 * <sbr/>@data: Pointer to buffer to drop data into
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
106 * <sbr/>@len: Maximum number of bytes to read
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
107 * <sbr/>Returns: Number of bytes actually written into @data
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
108 * (which may be less than @len), or <0 on error
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
109 * @write: Writes data to a connection (like POSIX send()).
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
110 * See purple_ssl_write().
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
111 * <sbr/>@gsc: Connection context
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
112 * <sbr/>@data: Data buffer to send data from
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
113 * <sbr/>@len: Number of bytes to send from buffer
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
114 * <sbr/>Returns: The number of bytes written to @data (may be less than
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
115 * @len) or <0 on error
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
116 * @get_peer_certificates: Obtains the certificate chain provided by the peer.
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
117 * See #PurpleCertificate.
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
118 * <sbr/>@gsc: Connection context
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
119 * <sbr/>Returns: A newly allocated list containing the
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
120 * certificates the peer provided.
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
121 *
6738
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
122 * SSL implementation operations structure.
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
123 *
35466
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
124 * Every SSL implementation must provide all of these and register it via
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
125 * purple_ssl_set_ops().
17313
c8b649e48d4f Clarify documentation
William Ehlhardt <williamehlhardt@gmail.com>
parents: 17312
diff changeset
126 * These should not be called directly! Instead, use the purple_ssl_* functions.
6738
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
127 */
35466
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
128 struct _PurpleSslOps
6738
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
129 {
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
130 gboolean (*init)(void);
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
131 void (*uninit)(void);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
132 void (*connectfunc)(PurpleSslConnection *gsc);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
133 void (*close)(PurpleSslConnection *gsc);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
134 size_t (*read)(PurpleSslConnection *gsc, void *data, size_t len);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
135 size_t (*write)(PurpleSslConnection *gsc, const void *data, size_t len);
35466
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
136
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
137 /* TODO Decide whether the ordering of certificates in this list can be
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
138 guaranteed. */
18246
212bfb9c9cc7 - Expose get_peer_certificates in the SslOps struct, and modify gnutls
William Ehlhardt <williamehlhardt@gmail.com>
parents: 17430
diff changeset
139 GList * (* get_peer_certificates)(PurpleSslConnection * gsc);
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 24569
diff changeset
140
35024
eb3afb7643ce Added /*< private >*/ for padding members, clean them up and add missing ones
Ankit Vani <a@nevitus.org>
parents: 34262
diff changeset
141 /*< private >*/
eb3afb7643ce Added /*< private >*/ for padding members, clean them up and add missing ones
Ankit Vani <a@nevitus.org>
parents: 34262
diff changeset
142 void (*_purple_reserved1)(void);
16743
1ce5ffe12e2a Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 15884
diff changeset
143 void (*_purple_reserved2)(void);
1ce5ffe12e2a Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 15884
diff changeset
144 void (*_purple_reserved3)(void);
1ce5ffe12e2a Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 15884
diff changeset
145 void (*_purple_reserved4)(void);
35466
e259e75f1c6f Fix some gtk-doc warnings till xmlnode.h
Ankit Vani <a@nevitus.org>
parents: 35442
diff changeset
146 };
6738
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
147
32787
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32604
diff changeset
148 G_BEGIN_DECLS
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
149
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
150 /**************************************************************************/
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
151 /** @name SSL API */
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
152 /**************************************************************************/
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
153 /*@{*/
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
154
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
155 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
156 * purple_ssl_is_supported:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
157 *
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
158 * Returns whether or not SSL is currently supported.
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
159 *
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
160 * Returns: %TRUE if SSL is supported, or %FALSE otherwise.
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
161 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
162 gboolean purple_ssl_is_supported(void);
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
163
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
164 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
165 * purple_ssl_strerror:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
166 * @error: Error code
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
167 *
20371
ff774b09aabc Bunch of documentation tidying for the ssl api, and add a doxycomment to
Will Thompson <resiak@pidgin.im>
parents: 20147
diff changeset
168 * Returns a human-readable string for an SSL error.
18487
0730e45141fd - Add purple_ssl_strerror for handy error description power!
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18474
diff changeset
169 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
170 * Returns: Human-readable error explanation
18487
0730e45141fd - Add purple_ssl_strerror for handy error description power!
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18474
diff changeset
171 */
0730e45141fd - Add purple_ssl_strerror for handy error description power!
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18474
diff changeset
172 const gchar * purple_ssl_strerror(PurpleSslErrorType error);
0730e45141fd - Add purple_ssl_strerror for handy error description power!
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18474
diff changeset
173
0730e45141fd - Add purple_ssl_strerror for handy error description power!
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18474
diff changeset
174 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
175 * purple_ssl_connect:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
176 * @account: The account making the connection.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
177 * @host: The destination host.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
178 * @port: The destination port.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
179 * @func: The SSL input handler function.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
180 * @error_func: The SSL error handler function. This function
20371
ff774b09aabc Bunch of documentation tidying for the ssl api, and add a doxycomment to
Will Thompson <resiak@pidgin.im>
parents: 20147
diff changeset
181 * should <strong>NOT</strong> call purple_ssl_close(). In
ff774b09aabc Bunch of documentation tidying for the ssl api, and add a doxycomment to
Will Thompson <resiak@pidgin.im>
parents: 20147
diff changeset
182 * the event of an error the #PurpleSslConnection will be
14312
6ce4512aa9a8 [gaim-migrate @ 16932]
Mark Doliner <markdoliner@pidgin.im>
parents: 14254
diff changeset
183 * destroyed for you.
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
184 * @data: User-defined data.
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
185 *
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
186 * Makes a SSL connection to the specified host and port. The caller
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
187 * should keep track of the returned value and use it to cancel the
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
188 * connection, if needed.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
189 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
190 * Returns: The SSL connection handle.
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
191 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
192 PurpleSslConnection *purple_ssl_connect(PurpleAccount *account, const char *host,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
193 int port, PurpleSslInputFunction func,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
194 PurpleSslErrorFunction error_func,
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
195 void *data);
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
196
27813
7989c9bb5000 Add purple_ssl_connect_with_ssl_cn, which takes a host to connect to
Paul Aurich <darkrain42@pidgin.im>
parents: 25911
diff changeset
197 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
198 * purple_ssl_connect_with_ssl_cn:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
199 * @account: The account making the connection.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
200 * @host: The destination host.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
201 * @port: The destination port.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
202 * @func: The SSL input handler function.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
203 * @error_func: The SSL error handler function. This function
27813
7989c9bb5000 Add purple_ssl_connect_with_ssl_cn, which takes a host to connect to
Paul Aurich <darkrain42@pidgin.im>
parents: 25911
diff changeset
204 * should <strong>NOT</strong> call purple_ssl_close(). In
7989c9bb5000 Add purple_ssl_connect_with_ssl_cn, which takes a host to connect to
Paul Aurich <darkrain42@pidgin.im>
parents: 25911
diff changeset
205 * the event of an error the #PurpleSslConnection will be
7989c9bb5000 Add purple_ssl_connect_with_ssl_cn, which takes a host to connect to
Paul Aurich <darkrain42@pidgin.im>
parents: 25911
diff changeset
206 * destroyed for you.
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
207 * @ssl_host: The hostname of the other peer (to verify the CN)
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
208 * @data: User-defined data.
27813
7989c9bb5000 Add purple_ssl_connect_with_ssl_cn, which takes a host to connect to
Paul Aurich <darkrain42@pidgin.im>
parents: 25911
diff changeset
209 *
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
210 * Makes a SSL connection to the specified host and port, using the separate
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
211 * name to verify with the certificate. The caller should keep track of the
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
212 * returned value and use it to cancel the connection, if needed.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
213 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
214 * Returns: The SSL connection handle.
27813
7989c9bb5000 Add purple_ssl_connect_with_ssl_cn, which takes a host to connect to
Paul Aurich <darkrain42@pidgin.im>
parents: 25911
diff changeset
215 */
7989c9bb5000 Add purple_ssl_connect_with_ssl_cn, which takes a host to connect to
Paul Aurich <darkrain42@pidgin.im>
parents: 25911
diff changeset
216 PurpleSslConnection *purple_ssl_connect_with_ssl_cn(PurpleAccount *account, const char *host,
7989c9bb5000 Add purple_ssl_connect_with_ssl_cn, which takes a host to connect to
Paul Aurich <darkrain42@pidgin.im>
parents: 25911
diff changeset
217 int port, PurpleSslInputFunction func,
7989c9bb5000 Add purple_ssl_connect_with_ssl_cn, which takes a host to connect to
Paul Aurich <darkrain42@pidgin.im>
parents: 25911
diff changeset
218 PurpleSslErrorFunction error_func,
7989c9bb5000 Add purple_ssl_connect_with_ssl_cn, which takes a host to connect to
Paul Aurich <darkrain42@pidgin.im>
parents: 25911
diff changeset
219 const char *ssl_host,
7989c9bb5000 Add purple_ssl_connect_with_ssl_cn, which takes a host to connect to
Paul Aurich <darkrain42@pidgin.im>
parents: 25911
diff changeset
220 void *data);
7989c9bb5000 Add purple_ssl_connect_with_ssl_cn, which takes a host to connect to
Paul Aurich <darkrain42@pidgin.im>
parents: 25911
diff changeset
221
18449
2d2df64f4303 applied changes from f9186fabb483b56a9d7e8fb7241b2520e9930413
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18246
diff changeset
222 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
223 * purple_ssl_connect_with_host_fd:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
224 * @account: The account making the connection.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
225 * @fd: The file descriptor.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
226 * @func: The SSL input handler function.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
227 * @error_func: The SSL error handler function.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
228 * @host: The hostname of the other peer (to verify the CN)
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
229 * @data: User-defined data.
20940
925d3d68b3af Doxygen @since tags for libpurple and pidgin.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20371
diff changeset
230 *
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
231 * Makes a SSL connection using an already open file descriptor.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
232 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
233 * Returns: The SSL connection handle.
20940
925d3d68b3af Doxygen @since tags for libpurple and pidgin.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 20371
diff changeset
234 */
18449
2d2df64f4303 applied changes from f9186fabb483b56a9d7e8fb7241b2520e9930413
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18246
diff changeset
235 PurpleSslConnection *purple_ssl_connect_with_host_fd(PurpleAccount *account, int fd,
2d2df64f4303 applied changes from f9186fabb483b56a9d7e8fb7241b2520e9930413
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18246
diff changeset
236 PurpleSslInputFunction func,
2d2df64f4303 applied changes from f9186fabb483b56a9d7e8fb7241b2520e9930413
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18246
diff changeset
237 PurpleSslErrorFunction error_func,
2d2df64f4303 applied changes from f9186fabb483b56a9d7e8fb7241b2520e9930413
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18246
diff changeset
238 const char *host,
2d2df64f4303 applied changes from f9186fabb483b56a9d7e8fb7241b2520e9930413
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18246
diff changeset
239 void *data);
7274
42ec5f56e32a [gaim-migrate @ 7851]
Christian Hammond <chipx86@chipx86.com>
parents: 6783
diff changeset
240
42ec5f56e32a [gaim-migrate @ 7851]
Christian Hammond <chipx86@chipx86.com>
parents: 6783
diff changeset
241 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
242 * purple_ssl_input_add:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
243 * @gsc: The SSL connection handle.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
244 * @func: The callback function.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
245 * @data: User-defined data.
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
246 *
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
247 * Adds an input watcher for the specified SSL connection.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
248 * Once the SSL handshake is complete, use this to watch for actual data across it.
6764
a3f8025c0631 [gaim-migrate @ 7296]
Nathan Walp <nwalp@pidgin.im>
parents: 6762
diff changeset
249 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
250 void purple_ssl_input_add(PurpleSslConnection *gsc, PurpleSslInputFunction func,
7274
42ec5f56e32a [gaim-migrate @ 7851]
Christian Hammond <chipx86@chipx86.com>
parents: 6783
diff changeset
251 void *data);
6762
2349053f14aa [gaim-migrate @ 7294]
Christian Hammond <chipx86@chipx86.com>
parents: 6738
diff changeset
252
2349053f14aa [gaim-migrate @ 7294]
Christian Hammond <chipx86@chipx86.com>
parents: 6738
diff changeset
253 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
254 * purple_ssl_input_remove:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
255 * @gsc: The SSL connection handle.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
256 *
34262
3b8ce83bac96 HTTP: get rid of one (of two) msn's own http implementations
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 32787
diff changeset
257 * Removes an input watcher, added with purple_ssl_input_add().
3b8ce83bac96 HTTP: get rid of one (of two) msn's own http implementations
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 32787
diff changeset
258 *
3b8ce83bac96 HTTP: get rid of one (of two) msn's own http implementations
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 32787
diff changeset
259 * If there is no input watcher set, does nothing.
3b8ce83bac96 HTTP: get rid of one (of two) msn's own http implementations
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 32787
diff changeset
260 */
3b8ce83bac96 HTTP: get rid of one (of two) msn's own http implementations
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 32787
diff changeset
261 void
3b8ce83bac96 HTTP: get rid of one (of two) msn's own http implementations
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 32787
diff changeset
262 purple_ssl_input_remove(PurpleSslConnection *gsc);
3b8ce83bac96 HTTP: get rid of one (of two) msn's own http implementations
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 32787
diff changeset
263
3b8ce83bac96 HTTP: get rid of one (of two) msn's own http implementations
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 32787
diff changeset
264 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
265 * purple_ssl_close:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
266 * @gsc: The SSL connection to close.
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
267 *
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
268 * Closes a SSL connection.
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
269 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
270 void purple_ssl_close(PurpleSslConnection *gsc);
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
271
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
272 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
273 * purple_ssl_read:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
274 * @gsc: The SSL connection handle.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
275 * @buffer: The destination buffer.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
276 * @len: The maximum number of bytes to read.
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
277 *
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
278 * Reads data from an SSL connection.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
279 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
280 * Returns: The number of bytes read.
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
281 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
282 size_t purple_ssl_read(PurpleSslConnection *gsc, void *buffer, size_t len);
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
283
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
284 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
285 * purple_ssl_write:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
286 * @gsc: The SSL connection handle.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
287 * @buffer: The buffer to write.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
288 * @len: The length of the data to write.
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
289 *
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
290 * Writes data to an SSL connection.
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
291 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
292 * Returns: The number of bytes written.
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
293 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
294 size_t purple_ssl_write(PurpleSslConnection *gsc, const void *buffer, size_t len);
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
295
18451
304d2fa12f6a - purple_ssl_get_peer_certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18449
diff changeset
296 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
297 * purple_ssl_get_peer_certificates:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
298 * @gsc: The SSL connection handle
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
299 *
18451
304d2fa12f6a - purple_ssl_get_peer_certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18449
diff changeset
300 * Obtains the peer's presented certificates
304d2fa12f6a - purple_ssl_get_peer_certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18449
diff changeset
301 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
302 * Returns: The peer certificate chain, in the order of certificate, issuer,
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
303 * issuer's issuer, etc. %NULL if no certificates have been provided,
18451
304d2fa12f6a - purple_ssl_get_peer_certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18449
diff changeset
304 */
304d2fa12f6a - purple_ssl_get_peer_certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18449
diff changeset
305 GList * purple_ssl_get_peer_certificates(PurpleSslConnection *gsc);
304d2fa12f6a - purple_ssl_get_peer_certificates
William Ehlhardt <williamehlhardt@gmail.com>
parents: 18449
diff changeset
306
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
307 /*@}*/
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
308
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
309 /**************************************************************************/
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
310 /** @name Subsystem API */
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
311 /**************************************************************************/
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
312 /*@{*/
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
313
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
314 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
315 * purple_ssl_set_ops:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
316 * @ops: The SSL operations structure to assign.
6738
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
317 *
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
318 * Sets the current SSL operations structure.
6738
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
319 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
320 void purple_ssl_set_ops(PurpleSslOps *ops);
6738
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
321
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
322 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
323 * purple_ssl_get_ops:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
324 *
6738
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
325 * Returns the current SSL operations structure.
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
326 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35024
diff changeset
327 * Returns: The SSL operations structure.
6738
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
328 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
329 PurpleSslOps *purple_ssl_get_ops(void);
6738
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
330
aa797bcc69dd [gaim-migrate @ 7270]
Christian Hammond <chipx86@chipx86.com>
parents: 6720
diff changeset
331 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
332 * purple_ssl_init:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
333 *
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
334 * Initializes the SSL subsystem.
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
335 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
336 void purple_ssl_init(void);
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
337
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
338 /**
35403
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
339 * purple_ssl_uninit:
9282701d7aa9 Convert docs from doxygen to gtk-doc format for sound-theme-loader to xmlnode
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
340 *
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
341 * Uninitializes the SSL subsystem.
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
342 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
343 void purple_ssl_uninit(void);
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
344
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
345 /*@}*/
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
346
32787
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32604
diff changeset
347 G_END_DECLS
6703
6f9d558270c9 [gaim-migrate @ 7229]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
348
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
349 #endif /* _PURPLE_SSLCONN_H_ */

mercurial