annotate libpurple/connection.h @ 29475:6d2ba42595fe

oscar: Fix a race condition that leads to a crash. With SSL enabled, if we start connecting and something calls purple_account_disconnect between when an SSL flap connection is started and when the connection is actually established, it isn't properly cleaned up (and we try to close the flap), which leads to free-after-use. You can simulate this by adding a timeout-triggered disconnect to the end of oscar_connect_to_bos. [02/22/10 17:11:51] <libpurple/oscar> Destroying oscar connection of type 0x0002. Disconnect reason is 0 [02/22/10 17:11:51] <libpurple/oscar> Disconnected. Code is 0x0000 and msg is (hiicq:17126): GLib-WARNING **: giounix.c:400Error while getting flags for FD: Bad file descriptor (9) [02/22/10 17:11:51] <libpurple/oscar> Scheduling destruction of FLAP connection of type 0x0002 [02/22/10 17:11:51] <libpurple/oscar> Signed off. ... [02/22/10 17:11:51] <libpurple/oscar> Destroying oscar connection of type 0x7261. Disconnect reason is 1668179315
author Paul Aurich <paul@darkrain42.org>
date Mon, 22 Feb 2010 17:53:38 +0000
parents 8b17877d3294
children 3e5bb4e2334c
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
1 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
2 * @file connection.h Connection API
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
3 * @ingroup core
20799
f296be2a1039 All the links to libpurple signal pages were in the comment containing the
Will Thompson <will.thompson@collabora.co.uk>
parents: 20074
diff changeset
4 * @see @ref connection-signals
20074
6bf32c9e15a7 remove gpl boilerplate from doxygen docs
Sean Egan <seanegan@gmail.com>
parents: 19697
diff changeset
5 */
6bf32c9e15a7 remove gpl boilerplate from doxygen docs
Sean Egan <seanegan@gmail.com>
parents: 19697
diff changeset
6
6bf32c9e15a7 remove gpl boilerplate from doxygen docs
Sean Egan <seanegan@gmail.com>
parents: 19697
diff changeset
7 /* purple
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
8 *
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
9 * Purple is the legal property of its developers, whose names are too numerous
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
10 * to list here. Please refer to the COPYRIGHT file distributed with this
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
11 * source distribution.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
12 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
13 * This program is free software; you can redistribute it and/or modify
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
14 * it under the terms of the GNU General Public License as published by
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
15 * the Free Software Foundation; either version 2 of the License, or
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
16 * (at your option) any later version.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
17 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
18 * This program is distributed in the hope that it will be useful,
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
21 * GNU General Public License for more details.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
22 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
23 * You should have received a copy of the GNU General Public License
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
24 * along with this program; if not, write to the Free Software
19681
44b4e8bd759b The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 18835
diff changeset
25 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
26 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
27 #ifndef _PURPLE_CONNECTION_H_
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
28 #define _PURPLE_CONNECTION_H_
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
29
23372
0efa36fe7d7c Sprinkle @copydoc around to squash "ref could not be resolved" Doxygen warnings,
Will Thompson <will.thompson@collabora.co.uk>
parents: 23131
diff changeset
30 /** @copydoc _PurpleConnection */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
31 typedef struct _PurpleConnection PurpleConnection;
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
32
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
33 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
34 * Flags to change behavior of the client for a given connection.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
35 */
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
36 typedef enum
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
37 {
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
38 PURPLE_CONNECTION_HTML = 0x0001, /**< Connection sends/receives in 'HTML'. */
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
39 PURPLE_CONNECTION_NO_BGCOLOR = 0x0002, /**< Connection does not send/receive
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
40 background colors. */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
41 PURPLE_CONNECTION_AUTO_RESP = 0x0004, /**< Send auto responses when away. */
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
42 PURPLE_CONNECTION_FORMATTING_WBFO = 0x0008, /**< The text buffer must be formatted as a whole */
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
43 PURPLE_CONNECTION_NO_NEWLINES = 0x0010, /**< No new lines are allowed in outgoing messages */
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
44 PURPLE_CONNECTION_NO_FONTSIZE = 0x0020, /**< Connection does not send/receive font sizes */
25921
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
45 PURPLE_CONNECTION_NO_URLDESC = 0x0040, /**< Connection does not support descriptions with links */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
46 PURPLE_CONNECTION_NO_IMAGES = 0x0080, /**< Connection does not support sending of images */
24687
d8452c0bec7b Remove the commas at the end of enumerator lists. This resolves warnings
Florian Quèze <florian@instantbird.org>
parents: 24350
diff changeset
47 PURPLE_CONNECTION_ALLOW_CUSTOM_SMILEY = 0x0100 /**< Connection supports sending and receiving custom smileys */
29250
0efd688ed086 Added connection flag ALLOW_ATTENTION
Marcus Lundblad <ml@update.uu.se>
parents: 23374
diff changeset
48
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
49 } PurpleConnectionFlags;
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
50
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
51 typedef enum
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
52 {
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
53 PURPLE_DISCONNECTED = 0, /**< Disconnected. */
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
54 PURPLE_CONNECTED, /**< Connected. */
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
55 PURPLE_CONNECTING /**< Connecting. */
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
56
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
57 } PurpleConnectionState;
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
58
25921
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
59 /**
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
60 * Possible errors that can cause a connection to be closed.
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
61 *
20893
c521b0f72a7b Add "@since 2.3.0" annotations to the new API, as advocated by rlaager.
Will Thompson <will.thompson@collabora.co.uk>
parents: 20821
diff changeset
62 * @since 2.3.0
c521b0f72a7b Add "@since 2.3.0" annotations to the new API, as advocated by rlaager.
Will Thompson <will.thompson@collabora.co.uk>
parents: 20821
diff changeset
63 */
20064
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
64 typedef enum
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
65 {
20114
a465779350aa Clarified the meaning of PURPLE_REASON_NETWORK_ERROR and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20110
diff changeset
66 /** There was an error sending or receiving on the network socket, or
a465779350aa Clarified the meaning of PURPLE_REASON_NETWORK_ERROR and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20110
diff changeset
67 * there was some protocol error (such as the server sending malformed
a465779350aa Clarified the meaning of PURPLE_REASON_NETWORK_ERROR and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20110
diff changeset
68 * data).
a465779350aa Clarified the meaning of PURPLE_REASON_NETWORK_ERROR and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20110
diff changeset
69 */
21358
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
70 PURPLE_CONNECTION_ERROR_NETWORK_ERROR = 0,
21422
56a608b80fda Add PURPLE_CONNECTION_ERROR_{INVALID_USERNAME,INCORRECT_PASSWORD}, to be used
Will Thompson <will.thompson@collabora.co.uk>
parents: 21392
diff changeset
71 /** The username supplied was not valid. */
56a608b80fda Add PURPLE_CONNECTION_ERROR_{INVALID_USERNAME,INCORRECT_PASSWORD}, to be used
Will Thompson <will.thompson@collabora.co.uk>
parents: 21392
diff changeset
72 PURPLE_CONNECTION_ERROR_INVALID_USERNAME = 1,
56a608b80fda Add PURPLE_CONNECTION_ERROR_{INVALID_USERNAME,INCORRECT_PASSWORD}, to be used
Will Thompson <will.thompson@collabora.co.uk>
parents: 21392
diff changeset
73 /** The username, password or some other credential was incorrect. Use
21426
8ffb65f3c0e9 Clarify PURPLE_CONNECTION_ERROR_INVALID_USERNAME slightly.
Will Thompson <will.thompson@collabora.co.uk>
parents: 21424
diff changeset
74 * #PURPLE_CONNECTION_ERROR_INVALID_USERNAME instead if the username
25961
375f82b53e95 Fix a minor whitespace inconsistency.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 25925
diff changeset
75 * is known to be invalid.
20114
a465779350aa Clarified the meaning of PURPLE_REASON_NETWORK_ERROR and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20110
diff changeset
76 */
21424
ba061949650c I don't think that incorrect passwords can be helpfully distinguished from
Will Thompson <will.thompson@collabora.co.uk>
parents: 21422
diff changeset
77 PURPLE_CONNECTION_ERROR_AUTHENTICATION_FAILED = 2,
20114
a465779350aa Clarified the meaning of PURPLE_REASON_NETWORK_ERROR and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20110
diff changeset
78 /** libpurple doesn't speak any of the authentication methods the
a465779350aa Clarified the meaning of PURPLE_REASON_NETWORK_ERROR and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20110
diff changeset
79 * server offered.
a465779350aa Clarified the meaning of PURPLE_REASON_NETWORK_ERROR and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20110
diff changeset
80 */
21424
ba061949650c I don't think that incorrect passwords can be helpfully distinguished from
Will Thompson <will.thompson@collabora.co.uk>
parents: 21422
diff changeset
81 PURPLE_CONNECTION_ERROR_AUTHENTICATION_IMPOSSIBLE = 3,
20792
682543aced31 Split the "you don't have SSL support" meaning of
Will Thompson <will.thompson@collabora.co.uk>
parents: 20128
diff changeset
82 /** libpurple was built without SSL support, and the connection needs
682543aced31 Split the "you don't have SSL support" meaning of
Will Thompson <will.thompson@collabora.co.uk>
parents: 20128
diff changeset
83 * SSL.
682543aced31 Split the "you don't have SSL support" meaning of
Will Thompson <will.thompson@collabora.co.uk>
parents: 20128
diff changeset
84 */
21424
ba061949650c I don't think that incorrect passwords can be helpfully distinguished from
Will Thompson <will.thompson@collabora.co.uk>
parents: 21422
diff changeset
85 PURPLE_CONNECTION_ERROR_NO_SSL_SUPPORT = 4,
20792
682543aced31 Split the "you don't have SSL support" meaning of
Will Thompson <will.thompson@collabora.co.uk>
parents: 20128
diff changeset
86 /** There was an error negotiating SSL on this connection, or the
682543aced31 Split the "you don't have SSL support" meaning of
Will Thompson <will.thompson@collabora.co.uk>
parents: 20128
diff changeset
87 * server does not support encryption but an account option was set to
682543aced31 Split the "you don't have SSL support" meaning of
Will Thompson <will.thompson@collabora.co.uk>
parents: 20128
diff changeset
88 * require it.
20064
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
89 */
21424
ba061949650c I don't think that incorrect passwords can be helpfully distinguished from
Will Thompson <will.thompson@collabora.co.uk>
parents: 21422
diff changeset
90 PURPLE_CONNECTION_ERROR_ENCRYPTION_ERROR = 5,
20064
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
91 /** Someone is already connected to the server using the name you are
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
92 * trying to connect with.
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
93 */
21424
ba061949650c I don't think that incorrect passwords can be helpfully distinguished from
Will Thompson <will.thompson@collabora.co.uk>
parents: 21422
diff changeset
94 PURPLE_CONNECTION_ERROR_NAME_IN_USE = 6,
20064
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
95
20128
57e9d1ecefff Rename PURPLE_REASON_INVALID_USERNAME to PURPLE_REASON_INVALID_SETTINGS, so it
Will Thompson <will.thompson@collabora.co.uk>
parents: 20115
diff changeset
96 /** The username/server/other preference for the account isn't valid.
25925
6e1967b0f90b Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents: 25921
diff changeset
97 * For instance, on IRC the username cannot contain white space.
20128
57e9d1ecefff Rename PURPLE_REASON_INVALID_USERNAME to PURPLE_REASON_INVALID_SETTINGS, so it
Will Thompson <will.thompson@collabora.co.uk>
parents: 20115
diff changeset
98 * This reason should not be used for incorrect passwords etc: use
21358
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
99 * #PURPLE_CONNECTION_ERROR_AUTHENTICATION_FAILED for that.
20128
57e9d1ecefff Rename PURPLE_REASON_INVALID_USERNAME to PURPLE_REASON_INVALID_SETTINGS, so it
Will Thompson <will.thompson@collabora.co.uk>
parents: 20115
diff changeset
100 *
20110
ed4c1053c3da Add PURPLE_REASON_INVALID_USERNAME, which should go away as soon as there's
Will Thompson <will.thompson@collabora.co.uk>
parents: 20107
diff changeset
101 * @todo This reason really shouldn't be necessary. Usernames and
ed4c1053c3da Add PURPLE_REASON_INVALID_USERNAME, which should go away as soon as there's
Will Thompson <will.thompson@collabora.co.uk>
parents: 20107
diff changeset
102 * other account preferences should be validated when the
ed4c1053c3da Add PURPLE_REASON_INVALID_USERNAME, which should go away as soon as there's
Will Thompson <will.thompson@collabora.co.uk>
parents: 20107
diff changeset
103 * account is created.
ed4c1053c3da Add PURPLE_REASON_INVALID_USERNAME, which should go away as soon as there's
Will Thompson <will.thompson@collabora.co.uk>
parents: 20107
diff changeset
104 */
21424
ba061949650c I don't think that incorrect passwords can be helpfully distinguished from
Will Thompson <will.thompson@collabora.co.uk>
parents: 21422
diff changeset
105 PURPLE_CONNECTION_ERROR_INVALID_SETTINGS = 7,
20110
ed4c1053c3da Add PURPLE_REASON_INVALID_USERNAME, which should go away as soon as there's
Will Thompson <will.thompson@collabora.co.uk>
parents: 20107
diff changeset
106
20064
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
107 /** The server did not provide a SSL certificate. */
21424
ba061949650c I don't think that incorrect passwords can be helpfully distinguished from
Will Thompson <will.thompson@collabora.co.uk>
parents: 21422
diff changeset
108 PURPLE_CONNECTION_ERROR_CERT_NOT_PROVIDED = 8,
20064
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
109 /** The server's SSL certificate could not be trusted. */
21424
ba061949650c I don't think that incorrect passwords can be helpfully distinguished from
Will Thompson <will.thompson@collabora.co.uk>
parents: 21422
diff changeset
110 PURPLE_CONNECTION_ERROR_CERT_UNTRUSTED = 9,
20064
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
111 /** The server's SSL certificate has expired. */
21424
ba061949650c I don't think that incorrect passwords can be helpfully distinguished from
Will Thompson <will.thompson@collabora.co.uk>
parents: 21422
diff changeset
112 PURPLE_CONNECTION_ERROR_CERT_EXPIRED = 10,
20064
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
113 /** The server's SSL certificate is not yet valid. */
21424
ba061949650c I don't think that incorrect passwords can be helpfully distinguished from
Will Thompson <will.thompson@collabora.co.uk>
parents: 21422
diff changeset
114 PURPLE_CONNECTION_ERROR_CERT_NOT_ACTIVATED = 11,
20064
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
115 /** The server's SSL certificate did not match its hostname. */
21424
ba061949650c I don't think that incorrect passwords can be helpfully distinguished from
Will Thompson <will.thompson@collabora.co.uk>
parents: 21422
diff changeset
116 PURPLE_CONNECTION_ERROR_CERT_HOSTNAME_MISMATCH = 12,
20064
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
117 /** The server's SSL certificate does not have the expected
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
118 * fingerprint.
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
119 */
21424
ba061949650c I don't think that incorrect passwords can be helpfully distinguished from
Will Thompson <will.thompson@collabora.co.uk>
parents: 21422
diff changeset
120 PURPLE_CONNECTION_ERROR_CERT_FINGERPRINT_MISMATCH = 13,
20064
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
121 /** The server's SSL certificate is self-signed. */
21424
ba061949650c I don't think that incorrect passwords can be helpfully distinguished from
Will Thompson <will.thompson@collabora.co.uk>
parents: 21422
diff changeset
122 PURPLE_CONNECTION_ERROR_CERT_SELF_SIGNED = 14,
20064
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
123 /** There was some other error validating the server's SSL certificate.
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
124 */
21424
ba061949650c I don't think that incorrect passwords can be helpfully distinguished from
Will Thompson <will.thompson@collabora.co.uk>
parents: 21422
diff changeset
125 PURPLE_CONNECTION_ERROR_CERT_OTHER_ERROR = 15,
20065
a1c47a5f07f4 Remove non-error PurpleDisconnectReasons, and add PURPLE_REASON_OTHER_ERROR
Will Thompson <will.thompson@collabora.co.uk>
parents: 20064
diff changeset
126
23374
85fc34efe733 Fix occurred to be spelled correctly. Thanks to bruce89 for noticing. Fixes #6096.
Daniel Atallah <daniel.atallah@gmail.com>
parents: 23372
diff changeset
127 /** Some other error occurred which fits into none of the other
20065
a1c47a5f07f4 Remove non-error PurpleDisconnectReasons, and add PURPLE_REASON_OTHER_ERROR
Will Thompson <will.thompson@collabora.co.uk>
parents: 20064
diff changeset
128 * categories.
a1c47a5f07f4 Remove non-error PurpleDisconnectReasons, and add PURPLE_REASON_OTHER_ERROR
Will Thompson <will.thompson@collabora.co.uk>
parents: 20064
diff changeset
129 */
21357
5a3242b676ad rlaager suggested using the last element of the PurpleDisconnectReason enum
Will Thompson <will.thompson@collabora.co.uk>
parents: 20893
diff changeset
130 /* purple_connection_error_reason() in connection.c uses the fact that
5a3242b676ad rlaager suggested using the last element of the PurpleDisconnectReason enum
Will Thompson <will.thompson@collabora.co.uk>
parents: 20893
diff changeset
131 * this is the last member of the enum when sanity-checking; if other
5a3242b676ad rlaager suggested using the last element of the PurpleDisconnectReason enum
Will Thompson <will.thompson@collabora.co.uk>
parents: 20893
diff changeset
132 * reasons are added after it, the check must be updated.
5a3242b676ad rlaager suggested using the last element of the PurpleDisconnectReason enum
Will Thompson <will.thompson@collabora.co.uk>
parents: 20893
diff changeset
133 */
21424
ba061949650c I don't think that incorrect passwords can be helpfully distinguished from
Will Thompson <will.thompson@collabora.co.uk>
parents: 21422
diff changeset
134 PURPLE_CONNECTION_ERROR_OTHER_ERROR = 16
21358
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
135 } PurpleConnectionError;
20064
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
136
21374
71c1f2da4ff2 PurpleConnectionErrorPair is a better name for struct { PurpleConnectionError;
Will Thompson <will.thompson@collabora.co.uk>
parents: 21360
diff changeset
137 /** Holds the type of an error along with its description. */
71c1f2da4ff2 PurpleConnectionErrorPair is a better name for struct { PurpleConnectionError;
Will Thompson <will.thompson@collabora.co.uk>
parents: 21360
diff changeset
138 typedef struct
71c1f2da4ff2 PurpleConnectionErrorPair is a better name for struct { PurpleConnectionError;
Will Thompson <will.thompson@collabora.co.uk>
parents: 21360
diff changeset
139 {
71c1f2da4ff2 PurpleConnectionErrorPair is a better name for struct { PurpleConnectionError;
Will Thompson <will.thompson@collabora.co.uk>
parents: 21360
diff changeset
140 /** The type of error. */
71c1f2da4ff2 PurpleConnectionErrorPair is a better name for struct { PurpleConnectionError;
Will Thompson <will.thompson@collabora.co.uk>
parents: 21360
diff changeset
141 PurpleConnectionError type;
71c1f2da4ff2 PurpleConnectionErrorPair is a better name for struct { PurpleConnectionError;
Will Thompson <will.thompson@collabora.co.uk>
parents: 21360
diff changeset
142 /** A localised, human-readable description of the error. */
21392
2daec6b5bbca PurpleConnectionErrorInfo.description should not be const.
Will Thompson <will.thompson@collabora.co.uk>
parents: 21377
diff changeset
143 char *description;
21377
872068d10eab Mark pointed out that PurpleConnectionErrorPair is not a very good name for the
Will Thompson <will.thompson@collabora.co.uk>
parents: 21376
diff changeset
144 } PurpleConnectionErrorInfo;
21374
71c1f2da4ff2 PurpleConnectionErrorPair is a better name for struct { PurpleConnectionError;
Will Thompson <will.thompson@collabora.co.uk>
parents: 21360
diff changeset
145
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
146 #include <time.h>
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
147
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
148 #include "account.h"
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
149 #include "plugin.h"
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
150 #include "status.h"
20115
a68d51d60177 Create purple_connection_ssl_error(), which converts a PurpleSslErrorType
Will Thompson <will.thompson@collabora.co.uk>
parents: 20114
diff changeset
151 #include "sslconn.h"
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
152
25921
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
153 /**
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
154 * Connection UI operations. Used to notify the user of changes to
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
155 * connections, such as being disconnected, and to respond to the
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
156 * underlying network connection appearing and disappearing. UIs should
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
157 * call #purple_connections_set_ui_ops() with an instance of this struct.
18835
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
158 *
25921
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
159 * @see @ref ui-ops
18835
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
160 */
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
161 typedef struct
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
162 {
25921
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
163 /**
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
164 * When an account is connecting, this operation is called to notify
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
165 * the UI of what is happening, as well as which @a step out of @a
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
166 * step_count has been reached (which might be displayed as a progress
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
167 * bar).
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
168 * @see #purple_connection_update_progress
18835
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
169 */
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
170 void (*connect_progress)(PurpleConnection *gc,
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
171 const char *text,
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
172 size_t step,
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
173 size_t step_count);
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
174
25921
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
175 /**
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
176 * Called when a connection is established (just before the
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
177 * @ref signed-on signal).
18835
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
178 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
179 void (*connected)(PurpleConnection *gc);
25921
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
180
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
181 /**
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
182 * Called when a connection is ended (between the @ref signing-off
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
183 * and @ref signed-off signals).
18835
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
184 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
185 void (*disconnected)(PurpleConnection *gc);
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
186
25921
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
187 /**
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
188 * Used to display connection-specific notices. (Pidgin's Gtk user
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
189 * interface implements this as a no-op; #purple_connection_notice(),
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
190 * which uses this operation, is not used by any of the protocols
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
191 * shipped with libpurple.)
18835
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
192 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
193 void (*notice)(PurpleConnection *gc, const char *text);
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
194
25921
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
195 /**
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
196 * Called when an error causes a connection to be disconnected.
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
197 * Called before #disconnected.
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
198 * @param text a localized error message.
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
199 * @see #purple_connection_error
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
200 * @deprecated in favour of
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
201 * #PurpleConnectionUiOps.report_disconnect_reason.
18835
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
202 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
203 void (*report_disconnect)(PurpleConnection *gc, const char *text);
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
204
25921
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
205 /**
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
206 * Called when libpurple discovers that the computer's network
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
207 * connection is active. On Linux, this uses Network Manager if
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
208 * available; on Windows, it uses Win32's network change notification
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
209 * infrastructure.
18835
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
210 */
21968
a463f05b4566 Felipe Contreras, one of our older Crazy Pacth Writers, noticed that these
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21426
diff changeset
211 void (*network_connected)(void);
25921
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
212
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
213 /**
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
214 * Called when libpurple discovers that the computer's network
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
215 * connection has gone away.
18835
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
216 */
21968
a463f05b4566 Felipe Contreras, one of our older Crazy Pacth Writers, noticed that these
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21426
diff changeset
217 void (*network_disconnected)(void);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
218
25921
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
219 /**
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
220 * Called when an error causes a connection to be disconnected.
20820
bc3c5daaf7aa Update report_disconnect_reason documentation to match reality. Also include
Will Thompson <will.thompson@collabora.co.uk>
parents: 20818
diff changeset
221 * Called before #disconnected. This op is intended to replace
bc3c5daaf7aa Update report_disconnect_reason documentation to match reality. Also include
Will Thompson <will.thompson@collabora.co.uk>
parents: 20818
diff changeset
222 * #report_disconnect. If both are implemented, this will be called
bc3c5daaf7aa Update report_disconnect_reason documentation to match reality. Also include
Will Thompson <will.thompson@collabora.co.uk>
parents: 20818
diff changeset
223 * first; however, there's no real reason to implement both.
25921
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
224 *
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
225 * @param reason why the connection ended, if known, or
21358
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
226 * #PURPLE_CONNECTION_ERROR_OTHER_ERROR, if not.
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
227 * @param text a localized message describing the disconnection
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
228 * in more detail to the user.
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
229 * @see #purple_connection_error_reason
25921
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
230 *
20893
c521b0f72a7b Add "@since 2.3.0" annotations to the new API, as advocated by rlaager.
Will Thompson <will.thompson@collabora.co.uk>
parents: 20821
diff changeset
231 * @since 2.3.0
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
232 */
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
233 void (*report_disconnect_reason)(PurpleConnection *gc,
21358
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
234 PurpleConnectionError reason,
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
235 const char *text);
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
236
16664
516f14bef90e Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 15822
diff changeset
237 void (*_purple_reserved1)(void);
516f14bef90e Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 15822
diff changeset
238 void (*_purple_reserved2)(void);
516f14bef90e Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 15822
diff changeset
239 void (*_purple_reserved3)(void);
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
240 } PurpleConnectionUiOps;
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
241
23372
0efa36fe7d7c Sprinkle @copydoc around to squash "ref could not be resolved" Doxygen warnings,
Will Thompson <will.thompson@collabora.co.uk>
parents: 23131
diff changeset
242
0efa36fe7d7c Sprinkle @copydoc around to squash "ref could not be resolved" Doxygen warnings,
Will Thompson <will.thompson@collabora.co.uk>
parents: 23131
diff changeset
243 /* Represents an active connection on an account. */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
244 struct _PurpleConnection
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
245 {
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
246 PurplePlugin *prpl; /**< The protocol plugin. */
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
247 PurpleConnectionFlags flags; /**< Connection flags. */
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
248
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
249 PurpleConnectionState state; /**< The connection state. */
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
250
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
251 PurpleAccount *account; /**< The account being connected to. */
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
252 char *password; /**< The password used. */
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
253 int inpa; /**< The input watcher. */
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
254
20813
66e7b104b4ea rlaager pointed out that purple_connection_error_reason should be setting
Will Thompson <will.thompson@collabora.co.uk>
parents: 20812
diff changeset
255 GSList *buddy_chats; /**< A list of active chats
66e7b104b4ea rlaager pointed out that purple_connection_error_reason should be setting
Will Thompson <will.thompson@collabora.co.uk>
parents: 20812
diff changeset
256 (#PurpleConversation structs of type
66e7b104b4ea rlaager pointed out that purple_connection_error_reason should be setting
Will Thompson <will.thompson@collabora.co.uk>
parents: 20812
diff changeset
257 #PURPLE_CONV_TYPE_CHAT). */
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
258 void *proto_data; /**< Protocol-specific data. */
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
259
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
260 char *display_name; /**< How you appear to other people. */
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
261 guint keepalive; /**< Keep-alive. */
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
262
20813
66e7b104b4ea rlaager pointed out that purple_connection_error_reason should be setting
Will Thompson <will.thompson@collabora.co.uk>
parents: 20812
diff changeset
263 /** Wants to Die state. This is set when the user chooses to log out, or
66e7b104b4ea rlaager pointed out that purple_connection_error_reason should be setting
Will Thompson <will.thompson@collabora.co.uk>
parents: 20812
diff changeset
264 * when the protocol is disconnected and should not be automatically
66e7b104b4ea rlaager pointed out that purple_connection_error_reason should be setting
Will Thompson <will.thompson@collabora.co.uk>
parents: 20812
diff changeset
265 * reconnected (incorrect password, etc.). prpls should rely on
66e7b104b4ea rlaager pointed out that purple_connection_error_reason should be setting
Will Thompson <will.thompson@collabora.co.uk>
parents: 20812
diff changeset
266 * purple_connection_error_reason() to set this for them rather than
66e7b104b4ea rlaager pointed out that purple_connection_error_reason should be setting
Will Thompson <will.thompson@collabora.co.uk>
parents: 20812
diff changeset
267 * setting it themselves.
21358
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
268 * @see purple_connection_error_is_fatal
20813
66e7b104b4ea rlaager pointed out that purple_connection_error_reason should be setting
Will Thompson <will.thompson@collabora.co.uk>
parents: 20812
diff changeset
269 */
66e7b104b4ea rlaager pointed out that purple_connection_error_reason should be setting
Will Thompson <will.thompson@collabora.co.uk>
parents: 20812
diff changeset
270 gboolean wants_to_die;
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
271
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
272 guint disconnect_timeout; /**< Timer used for nasty stack tricks */
22149
252b96b6a32c Don't send keep-alives if we've received data since in the last KEEPALIVE_INTERVAL seconds
Sean Egan <seanegan@gmail.com>
parents: 21968
diff changeset
273 time_t last_received; /**< When we last received a packet. Set by the
252b96b6a32c Don't send keep-alives if we've received data since in the last KEEPALIVE_INTERVAL seconds
Sean Egan <seanegan@gmail.com>
parents: 21968
diff changeset
274 prpl to avoid sending unneeded keepalives */
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
275 };
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
276
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
277 #ifdef __cplusplus
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
278 extern "C" {
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
279 #endif
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
280
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
281 /**************************************************************************/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
282 /** @name Connection API */
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
283 /**************************************************************************/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
284 /*@{*/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
285
24350
8282911d5e17 Build everything with the *_DISABLE_DEPRECATED flags set. This allows us
Richard Laager <rlaager@wiktel.com>
parents: 23374
diff changeset
286 #if !(defined PURPLE_DISABLE_DEPRECATED) || (defined _PURPLE_CONNECTION_C_)
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
287 /**
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
288 * This function should only be called by purple_account_connect()
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
289 * in account.c. If you're trying to sign on an account, use that
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
290 * function instead.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
291 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
292 * Creates a connection to the specified account and either connects
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
293 * or attempts to register a new account. If you are logging in,
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
294 * the connection uses the current active status for this account.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
295 * So if you want to sign on as "away," for example, you need to
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
296 * have called purple_account_set_status(account, "away").
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
297 * (And this will call purple_account_connect() automatically).
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
298 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
299 * @param account The account the connection should be connecting to.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
300 * @param regist Whether we are registering a new account or just
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
301 * trying to do a normal signon.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
302 * @param password The password to use.
21241
d8990c20cbee Mark some libpurple-internal functions as deprecated to further help keep
Richard Laager <rlaager@wiktel.com>
parents: 20799
diff changeset
303 *
d8990c20cbee Mark some libpurple-internal functions as deprecated to further help keep
Richard Laager <rlaager@wiktel.com>
parents: 20799
diff changeset
304 * @deprecated As this is internal, we should make it private in 3.0.0.
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
305 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
306 void purple_connection_new(PurpleAccount *account, gboolean regist,
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
307 const char *password);
21241
d8990c20cbee Mark some libpurple-internal functions as deprecated to further help keep
Richard Laager <rlaager@wiktel.com>
parents: 20799
diff changeset
308 #endif
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
309
24350
8282911d5e17 Build everything with the *_DISABLE_DEPRECATED flags set. This allows us
Richard Laager <rlaager@wiktel.com>
parents: 23374
diff changeset
310 #if !(defined PURPLE_DISABLE_DEPRECATED) || (defined _PURPLE_CONNECTION_C_)
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
311 /**
18703
033b128f7c21 Added unregistering XMPP accounts. This requires a new prpl-struct entry, but I got an ok for that on the mailing list.
Andreas Monitzer <pidgin@monitzer.com>
parents: 18118
diff changeset
312 * This function should only be called by purple_account_unregister()
033b128f7c21 Added unregistering XMPP accounts. This requires a new prpl-struct entry, but I got an ok for that on the mailing list.
Andreas Monitzer <pidgin@monitzer.com>
parents: 18118
diff changeset
313 * in account.c.
033b128f7c21 Added unregistering XMPP accounts. This requires a new prpl-struct entry, but I got an ok for that on the mailing list.
Andreas Monitzer <pidgin@monitzer.com>
parents: 18118
diff changeset
314 *
033b128f7c21 Added unregistering XMPP accounts. This requires a new prpl-struct entry, but I got an ok for that on the mailing list.
Andreas Monitzer <pidgin@monitzer.com>
parents: 18118
diff changeset
315 * Tries to unregister the account on the server. If the account is not
033b128f7c21 Added unregistering XMPP accounts. This requires a new prpl-struct entry, but I got an ok for that on the mailing list.
Andreas Monitzer <pidgin@monitzer.com>
parents: 18118
diff changeset
316 * connected, also creates a new connection.
033b128f7c21 Added unregistering XMPP accounts. This requires a new prpl-struct entry, but I got an ok for that on the mailing list.
Andreas Monitzer <pidgin@monitzer.com>
parents: 18118
diff changeset
317 *
033b128f7c21 Added unregistering XMPP accounts. This requires a new prpl-struct entry, but I got an ok for that on the mailing list.
Andreas Monitzer <pidgin@monitzer.com>
parents: 18118
diff changeset
318 * @param account The account to unregister
033b128f7c21 Added unregistering XMPP accounts. This requires a new prpl-struct entry, but I got an ok for that on the mailing list.
Andreas Monitzer <pidgin@monitzer.com>
parents: 18118
diff changeset
319 * @param password The password to use.
21241
d8990c20cbee Mark some libpurple-internal functions as deprecated to further help keep
Richard Laager <rlaager@wiktel.com>
parents: 20799
diff changeset
320 * @param cb Optional callback to be called when unregistration is complete
d8990c20cbee Mark some libpurple-internal functions as deprecated to further help keep
Richard Laager <rlaager@wiktel.com>
parents: 20799
diff changeset
321 * @param user_data user data to pass to the callback
d8990c20cbee Mark some libpurple-internal functions as deprecated to further help keep
Richard Laager <rlaager@wiktel.com>
parents: 20799
diff changeset
322 *
d8990c20cbee Mark some libpurple-internal functions as deprecated to further help keep
Richard Laager <rlaager@wiktel.com>
parents: 20799
diff changeset
323 * @deprecated As this is internal, we should make it private in 3.0.0.
18703
033b128f7c21 Added unregistering XMPP accounts. This requires a new prpl-struct entry, but I got an ok for that on the mailing list.
Andreas Monitzer <pidgin@monitzer.com>
parents: 18118
diff changeset
324 */
18920
2a9d60d7af82 Implemented a callback for unregistering, mirroring the registration callback. Since this is a new API, I can do it properly by passing it right in the unregister function call, instead of having a separate function for setting it.
Andreas Monitzer <pidgin@monitzer.com>
parents: 18703
diff changeset
325 void purple_connection_new_unregister(PurpleAccount *account, const char *password, PurpleAccountUnregistrationCb cb, void *user_data);
21241
d8990c20cbee Mark some libpurple-internal functions as deprecated to further help keep
Richard Laager <rlaager@wiktel.com>
parents: 20799
diff changeset
326 #endif
18703
033b128f7c21 Added unregistering XMPP accounts. This requires a new prpl-struct entry, but I got an ok for that on the mailing list.
Andreas Monitzer <pidgin@monitzer.com>
parents: 18118
diff changeset
327
24350
8282911d5e17 Build everything with the *_DISABLE_DEPRECATED flags set. This allows us
Richard Laager <rlaager@wiktel.com>
parents: 23374
diff changeset
328 #if !(defined PURPLE_DISABLE_DEPRECATED) || (defined _PURPLE_CONNECTION_C_)
18703
033b128f7c21 Added unregistering XMPP accounts. This requires a new prpl-struct entry, but I got an ok for that on the mailing list.
Andreas Monitzer <pidgin@monitzer.com>
parents: 18118
diff changeset
329 /**
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
330 * Disconnects and destroys a PurpleConnection.
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
331 *
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
332 * This function should only be called by purple_account_disconnect()
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
333 * in account.c. If you're trying to sign off an account, use that
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
334 * function instead.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
335 *
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
336 * @param gc The purple connection to destroy.
21241
d8990c20cbee Mark some libpurple-internal functions as deprecated to further help keep
Richard Laager <rlaager@wiktel.com>
parents: 20799
diff changeset
337 *
d8990c20cbee Mark some libpurple-internal functions as deprecated to further help keep
Richard Laager <rlaager@wiktel.com>
parents: 20799
diff changeset
338 * @deprecated As this is internal, we should make it private in 3.0.0.
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
339 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
340 void purple_connection_destroy(PurpleConnection *gc);
21241
d8990c20cbee Mark some libpurple-internal functions as deprecated to further help keep
Richard Laager <rlaager@wiktel.com>
parents: 20799
diff changeset
341 #endif
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
342
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
343 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
344 * Sets the connection state. PRPLs should call this and pass in
20813
66e7b104b4ea rlaager pointed out that purple_connection_error_reason should be setting
Will Thompson <will.thompson@collabora.co.uk>
parents: 20812
diff changeset
345 * the state #PURPLE_CONNECTED when the account is completely
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
346 * signed on. What does it mean to be completely signed on? If
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
347 * the core can call prpl->set_status, and it successfully changes
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
348 * your status, then the account is online.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
349 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
350 * @param gc The connection.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
351 * @param state The connection state.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
352 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
353 void purple_connection_set_state(PurpleConnection *gc, PurpleConnectionState state);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
354
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
355 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
356 * Sets the connection's account.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
357 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
358 * @param gc The connection.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
359 * @param account The account.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
360 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
361 void purple_connection_set_account(PurpleConnection *gc, PurpleAccount *account);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
362
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
363 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
364 * Sets the connection's displayed name.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
365 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
366 * @param gc The connection.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
367 * @param name The displayed name.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
368 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
369 void purple_connection_set_display_name(PurpleConnection *gc, const char *name);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
370
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
371 /**
25790
9ded0fb57e1c Added purple_connection_set_protocol_data and purple_connection_get_protocol_data
Gary Kramlich <grim@reaperworld.com>
parents: 23374
diff changeset
372 * Sets the protocol data for a connection.
9ded0fb57e1c Added purple_connection_set_protocol_data and purple_connection_get_protocol_data
Gary Kramlich <grim@reaperworld.com>
parents: 23374
diff changeset
373 *
9ded0fb57e1c Added purple_connection_set_protocol_data and purple_connection_get_protocol_data
Gary Kramlich <grim@reaperworld.com>
parents: 23374
diff changeset
374 * @param connection The PurpleConnection.
9ded0fb57e1c Added purple_connection_set_protocol_data and purple_connection_get_protocol_data
Gary Kramlich <grim@reaperworld.com>
parents: 23374
diff changeset
375 * @param proto_data The protocol data to set for the connection.
25921
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
376 *
25794
d719b9d82540 Add @since 2.6.0 tags for purple_connection_set_protocol_data() and
Richard Laager <rlaager@wiktel.com>
parents: 25790
diff changeset
377 * @since 2.6.0
25790
9ded0fb57e1c Added purple_connection_set_protocol_data and purple_connection_get_protocol_data
Gary Kramlich <grim@reaperworld.com>
parents: 23374
diff changeset
378 */
9ded0fb57e1c Added purple_connection_set_protocol_data and purple_connection_get_protocol_data
Gary Kramlich <grim@reaperworld.com>
parents: 23374
diff changeset
379 void purple_connection_set_protocol_data(PurpleConnection *connection, void *proto_data);
9ded0fb57e1c Added purple_connection_set_protocol_data and purple_connection_get_protocol_data
Gary Kramlich <grim@reaperworld.com>
parents: 23374
diff changeset
380
9ded0fb57e1c Added purple_connection_set_protocol_data and purple_connection_get_protocol_data
Gary Kramlich <grim@reaperworld.com>
parents: 23374
diff changeset
381 /**
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
382 * Returns the connection state.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
383 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
384 * @param gc The connection.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
385 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
386 * @return The connection state.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
387 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
388 PurpleConnectionState purple_connection_get_state(const PurpleConnection *gc);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
389
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
390 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
391 * Returns TRUE if the account is connected, otherwise returns FALSE.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
392 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
393 * @return TRUE if the account is connected, otherwise returns FALSE.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
394 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
395 #define PURPLE_CONNECTION_IS_CONNECTED(gc) \
22214
2b426862ffbf Add accessor and update finch to not touch the internals of PurpleConnection.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 22149
diff changeset
396 (purple_connection_get_state(gc) == PURPLE_CONNECTED)
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
397
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
398 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
399 * Returns the connection's account.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
400 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
401 * @param gc The connection.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
402 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
403 * @return The connection's account.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
404 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
405 PurpleAccount *purple_connection_get_account(const PurpleConnection *gc);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
406
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
407 /**
22214
2b426862ffbf Add accessor and update finch to not touch the internals of PurpleConnection.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 22149
diff changeset
408 * Returns the protocol plugin managing a connection.
2b426862ffbf Add accessor and update finch to not touch the internals of PurpleConnection.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 22149
diff changeset
409 *
2b426862ffbf Add accessor and update finch to not touch the internals of PurpleConnection.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 22149
diff changeset
410 * @param gc The connection.
2b426862ffbf Add accessor and update finch to not touch the internals of PurpleConnection.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 22149
diff changeset
411 *
2b426862ffbf Add accessor and update finch to not touch the internals of PurpleConnection.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 22149
diff changeset
412 * @return The protocol plugin.
25921
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
413 *
22221
ef0e82b8bc2e Forgot the since tag here.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 22214
diff changeset
414 * @since 2.4.0
22214
2b426862ffbf Add accessor and update finch to not touch the internals of PurpleConnection.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 22149
diff changeset
415 */
2b426862ffbf Add accessor and update finch to not touch the internals of PurpleConnection.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 22149
diff changeset
416 PurplePlugin * purple_connection_get_prpl(const PurpleConnection *gc);
2b426862ffbf Add accessor and update finch to not touch the internals of PurpleConnection.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 22149
diff changeset
417
2b426862ffbf Add accessor and update finch to not touch the internals of PurpleConnection.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 22149
diff changeset
418 /**
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
419 * Returns the connection's password.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
420 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
421 * @param gc The connection.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
422 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
423 * @return The connection's password.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
424 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
425 const char *purple_connection_get_password(const PurpleConnection *gc);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
426
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
427 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
428 * Returns the connection's displayed name.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
429 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
430 * @param gc The connection.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
431 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
432 * @return The connection's displayed name.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
433 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
434 const char *purple_connection_get_display_name(const PurpleConnection *gc);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
435
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
436 /**
25790
9ded0fb57e1c Added purple_connection_set_protocol_data and purple_connection_get_protocol_data
Gary Kramlich <grim@reaperworld.com>
parents: 23374
diff changeset
437 * Gets the protocol data from a connection.
9ded0fb57e1c Added purple_connection_set_protocol_data and purple_connection_get_protocol_data
Gary Kramlich <grim@reaperworld.com>
parents: 23374
diff changeset
438 *
9ded0fb57e1c Added purple_connection_set_protocol_data and purple_connection_get_protocol_data
Gary Kramlich <grim@reaperworld.com>
parents: 23374
diff changeset
439 * @param connection The PurpleConnection.
9ded0fb57e1c Added purple_connection_set_protocol_data and purple_connection_get_protocol_data
Gary Kramlich <grim@reaperworld.com>
parents: 23374
diff changeset
440 *
9ded0fb57e1c Added purple_connection_set_protocol_data and purple_connection_get_protocol_data
Gary Kramlich <grim@reaperworld.com>
parents: 23374
diff changeset
441 * @return The protocol data for the connection.
25921
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
442 *
25794
d719b9d82540 Add @since 2.6.0 tags for purple_connection_set_protocol_data() and
Richard Laager <rlaager@wiktel.com>
parents: 25790
diff changeset
443 * @since 2.6.0
25790
9ded0fb57e1c Added purple_connection_set_protocol_data and purple_connection_get_protocol_data
Gary Kramlich <grim@reaperworld.com>
parents: 23374
diff changeset
444 */
9ded0fb57e1c Added purple_connection_set_protocol_data and purple_connection_get_protocol_data
Gary Kramlich <grim@reaperworld.com>
parents: 23374
diff changeset
445 void *purple_connection_get_protocol_data(const PurpleConnection *connection);
9ded0fb57e1c Added purple_connection_set_protocol_data and purple_connection_get_protocol_data
Gary Kramlich <grim@reaperworld.com>
parents: 23374
diff changeset
446
9ded0fb57e1c Added purple_connection_set_protocol_data and purple_connection_get_protocol_data
Gary Kramlich <grim@reaperworld.com>
parents: 23374
diff changeset
447 /**
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
448 * Updates the connection progress.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
449 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
450 * @param gc The connection.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
451 * @param text Information on the current step.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
452 * @param step The current step.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
453 * @param count The total number of steps.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
454 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
455 void purple_connection_update_progress(PurpleConnection *gc, const char *text,
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
456 size_t step, size_t count);
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
457
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
458 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
459 * Displays a connection-specific notice.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
460 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
461 * @param gc The connection.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
462 * @param text The notice text.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
463 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
464 void purple_connection_notice(PurpleConnection *gc, const char *text);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
465
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
466 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
467 * Closes a connection with an error.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
468 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
469 * @param gc The connection.
21359
fe57b8062249 Document that the char * parameter of purple_connection_error{,_reason} may
Will Thompson <will.thompson@collabora.co.uk>
parents: 21358
diff changeset
470 * @param reason The error text, which may not be @c NULL.
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
471 * @deprecated in favour of #purple_connection_error_reason. Calling
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
472 * @c purple_connection_error(gc, text) is equivalent to calling
20813
66e7b104b4ea rlaager pointed out that purple_connection_error_reason should be setting
Will Thompson <will.thompson@collabora.co.uk>
parents: 20812
diff changeset
473 * @c purple_connection_error_reason(gc, reason, text) where @c reason is
21358
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
474 * #PURPLE_CONNECTION_ERROR_OTHER_ERROR if @c gc->wants_to_die is @c TRUE, and
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
475 * #PURPLE_CONNECTION_ERROR_NETWORK_ERROR if not. (This is to keep
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
476 * auto-reconnection behaviour the same when using old prpls which don't use
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
477 * reasons yet.)
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
478 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
479 void purple_connection_error(PurpleConnection *gc, const char *reason);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
480
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
481 /**
21359
fe57b8062249 Document that the char * parameter of purple_connection_error{,_reason} may
Will Thompson <will.thompson@collabora.co.uk>
parents: 21358
diff changeset
482 * Closes a connection with an error and a human-readable description of the
20813
66e7b104b4ea rlaager pointed out that purple_connection_error_reason should be setting
Will Thompson <will.thompson@collabora.co.uk>
parents: 20812
diff changeset
483 * error. It also sets @c gc->wants_to_die to the value of
21376
f5b223d0cb89 Document the gc parameter of purple_connection_error_reason to shut doxygen up.
Will Thompson <will.thompson@collabora.co.uk>
parents: 21374
diff changeset
484 * #purple_connection_error_is_fatal(@a reason), mainly for
f5b223d0cb89 Document the gc parameter of purple_connection_error_reason to shut doxygen up.
Will Thompson <will.thompson@collabora.co.uk>
parents: 21374
diff changeset
485 * backwards-compatibility.
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
486 *
21376
f5b223d0cb89 Document the gc parameter of purple_connection_error_reason to shut doxygen up.
Will Thompson <will.thompson@collabora.co.uk>
parents: 21374
diff changeset
487 * @param gc the connection which is closing.
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
488 * @param reason why the connection is closing.
21359
fe57b8062249 Document that the char * parameter of purple_connection_error{,_reason} may
Will Thompson <will.thompson@collabora.co.uk>
parents: 21358
diff changeset
489 * @param description a non-@c NULL localized description of the error.
25921
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
490 *
20893
c521b0f72a7b Add "@since 2.3.0" annotations to the new API, as advocated by rlaager.
Will Thompson <will.thompson@collabora.co.uk>
parents: 20821
diff changeset
491 * @since 2.3.0
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
492 */
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
493 void
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
494 purple_connection_error_reason (PurpleConnection *gc,
21358
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
495 PurpleConnectionError reason,
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
496 const char *description);
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
497
20067
143c6f34c6eb Create purple_connection_reason_is_fatal, which is basically a replacement for
Will Thompson <will.thompson@collabora.co.uk>
parents: 20066
diff changeset
498 /**
20115
a68d51d60177 Create purple_connection_ssl_error(), which converts a PurpleSslErrorType
Will Thompson <will.thompson@collabora.co.uk>
parents: 20114
diff changeset
499 * Closes a connection due to an SSL error; this is basically a shortcut to
21358
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
500 * turning the #PurpleSslErrorType into a #PurpleConnectionError and a
20115
a68d51d60177 Create purple_connection_ssl_error(), which converts a PurpleSslErrorType
Will Thompson <will.thompson@collabora.co.uk>
parents: 20114
diff changeset
501 * human-readable string and then calling purple_connection_error_reason().
25921
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
502 *
20893
c521b0f72a7b Add "@since 2.3.0" annotations to the new API, as advocated by rlaager.
Will Thompson <will.thompson@collabora.co.uk>
parents: 20821
diff changeset
503 * @since 2.3.0
20115
a68d51d60177 Create purple_connection_ssl_error(), which converts a PurpleSslErrorType
Will Thompson <will.thompson@collabora.co.uk>
parents: 20114
diff changeset
504 */
a68d51d60177 Create purple_connection_ssl_error(), which converts a PurpleSslErrorType
Will Thompson <will.thompson@collabora.co.uk>
parents: 20114
diff changeset
505 void
a68d51d60177 Create purple_connection_ssl_error(), which converts a PurpleSslErrorType
Will Thompson <will.thompson@collabora.co.uk>
parents: 20114
diff changeset
506 purple_connection_ssl_error (PurpleConnection *gc,
a68d51d60177 Create purple_connection_ssl_error(), which converts a PurpleSslErrorType
Will Thompson <will.thompson@collabora.co.uk>
parents: 20114
diff changeset
507 PurpleSslErrorType ssl_error);
a68d51d60177 Create purple_connection_ssl_error(), which converts a PurpleSslErrorType
Will Thompson <will.thompson@collabora.co.uk>
parents: 20114
diff changeset
508
a68d51d60177 Create purple_connection_ssl_error(), which converts a PurpleSslErrorType
Will Thompson <will.thompson@collabora.co.uk>
parents: 20114
diff changeset
509 /**
20067
143c6f34c6eb Create purple_connection_reason_is_fatal, which is basically a replacement for
Will Thompson <will.thompson@collabora.co.uk>
parents: 20066
diff changeset
510 * Reports whether a disconnection reason is fatal (in which case the account
143c6f34c6eb Create purple_connection_reason_is_fatal, which is basically a replacement for
Will Thompson <will.thompson@collabora.co.uk>
parents: 20066
diff changeset
511 * should probably not be automatically reconnected) or transient (so
20813
66e7b104b4ea rlaager pointed out that purple_connection_error_reason should be setting
Will Thompson <will.thompson@collabora.co.uk>
parents: 20812
diff changeset
512 * auto-reconnection is a good idea).
21359
fe57b8062249 Document that the char * parameter of purple_connection_error{,_reason} may
Will Thompson <will.thompson@collabora.co.uk>
parents: 21358
diff changeset
513 * For instance, #PURPLE_CONNECTION_ERROR_NETWORK_ERROR is a temporary error,
fe57b8062249 Document that the char * parameter of purple_connection_error{,_reason} may
Will Thompson <will.thompson@collabora.co.uk>
parents: 21358
diff changeset
514 * which might be caused by losing the network connection, so <tt>
fe57b8062249 Document that the char * parameter of purple_connection_error{,_reason} may
Will Thompson <will.thompson@collabora.co.uk>
parents: 21358
diff changeset
515 * purple_connection_error_is_fatal (PURPLE_CONNECTION_ERROR_NETWORK_ERROR)</tt>
fe57b8062249 Document that the char * parameter of purple_connection_error{,_reason} may
Will Thompson <will.thompson@collabora.co.uk>
parents: 21358
diff changeset
516 * is @c FALSE. On the other hand,
21358
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
517 * #PURPLE_CONNECTION_ERROR_AUTHENTICATION_FAILED probably indicates a
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
518 * misconfiguration of the account which needs the user to go fix it up, so
21359
fe57b8062249 Document that the char * parameter of purple_connection_error{,_reason} may
Will Thompson <will.thompson@collabora.co.uk>
parents: 21358
diff changeset
519 * <tt> purple_connection_error_is_fatal
fe57b8062249 Document that the char * parameter of purple_connection_error{,_reason} may
Will Thompson <will.thompson@collabora.co.uk>
parents: 21358
diff changeset
520 * (PURPLE_CONNECTION_ERROR_AUTHENTICATION_FAILED)</tt> is @c TRUE.
20067
143c6f34c6eb Create purple_connection_reason_is_fatal, which is basically a replacement for
Will Thompson <will.thompson@collabora.co.uk>
parents: 20066
diff changeset
521 *
143c6f34c6eb Create purple_connection_reason_is_fatal, which is basically a replacement for
Will Thompson <will.thompson@collabora.co.uk>
parents: 20066
diff changeset
522 * (This function is meant to replace checking PurpleConnection.wants_to_die.)
143c6f34c6eb Create purple_connection_reason_is_fatal, which is basically a replacement for
Will Thompson <will.thompson@collabora.co.uk>
parents: 20066
diff changeset
523 *
20818
c560286daede Clarify the documentation of the return value of
Will Thompson <will.thompson@collabora.co.uk>
parents: 20813
diff changeset
524 * @return @c TRUE if the account should not be automatically reconnected, and
c560286daede Clarify the documentation of the return value of
Will Thompson <will.thompson@collabora.co.uk>
parents: 20813
diff changeset
525 * @c FALSE otherwise.
25921
d25cbbea7fe5 Add @since 2.6.0 doxygen comments to some of our new functions, and
Mark Doliner <mark@kingant.net>
parents: 25871
diff changeset
526 *
20893
c521b0f72a7b Add "@since 2.3.0" annotations to the new API, as advocated by rlaager.
Will Thompson <will.thompson@collabora.co.uk>
parents: 20821
diff changeset
527 * @since 2.3.0
20067
143c6f34c6eb Create purple_connection_reason_is_fatal, which is basically a replacement for
Will Thompson <will.thompson@collabora.co.uk>
parents: 20066
diff changeset
528 */
143c6f34c6eb Create purple_connection_reason_is_fatal, which is basically a replacement for
Will Thompson <will.thompson@collabora.co.uk>
parents: 20066
diff changeset
529 gboolean
21358
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
530 purple_connection_error_is_fatal (PurpleConnectionError reason);
20067
143c6f34c6eb Create purple_connection_reason_is_fatal, which is basically a replacement for
Will Thompson <will.thompson@collabora.co.uk>
parents: 20066
diff changeset
531
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
532 /*@}*/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
533
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
534 /**************************************************************************/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
535 /** @name Connections API */
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
536 /**************************************************************************/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
537 /*@{*/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
538
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
539 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
540 * Disconnects from all connections.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
541 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
542 void purple_connections_disconnect_all(void);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
543
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
544 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
545 * Returns a list of all active connections. This does not
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
546 * include connections that are in the process of connecting.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
547 *
18118
ab6d2763b8d8 Re-fix the DBus list handling code by killing const GList* / const GSList*
Richard Laager <rlaager@wiktel.com>
parents: 18063
diff changeset
548 * @constreturn A list of all active connections.
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
549 */
18063
926ccb104da0 disapproval of revision '1411afd7660760db59966c3a9f18e2adab8eb27e'
Richard Laager <rlaager@wiktel.com>
parents: 18058
diff changeset
550 GList *purple_connections_get_all(void);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
551
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
552 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
553 * Returns a list of all connections in the process of connecting.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
554 *
18118
ab6d2763b8d8 Re-fix the DBus list handling code by killing const GList* / const GSList*
Richard Laager <rlaager@wiktel.com>
parents: 18063
diff changeset
555 * @constreturn A list of connecting connections.
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
556 */
18063
926ccb104da0 disapproval of revision '1411afd7660760db59966c3a9f18e2adab8eb27e'
Richard Laager <rlaager@wiktel.com>
parents: 18058
diff changeset
557 GList *purple_connections_get_connecting(void);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
558
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
559 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
560 * Checks if gc is still a valid pointer to a gc.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
561 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
562 * @return @c TRUE if gc is valid.
27125
d8afc4ba7ce6 Clarify that PURPLE_CONNECTION_IS_VALID is deprecated, in case it wasn't
Mark Doliner <mark@kingant.net>
parents: 25961
diff changeset
563 *
d8afc4ba7ce6 Clarify that PURPLE_CONNECTION_IS_VALID is deprecated, in case it wasn't
Mark Doliner <mark@kingant.net>
parents: 25961
diff changeset
564 * @deprecated Do not use this. Instead, cancel your asynchronous request
d8afc4ba7ce6 Clarify that PURPLE_CONNECTION_IS_VALID is deprecated, in case it wasn't
Mark Doliner <mark@kingant.net>
parents: 25961
diff changeset
565 * when the PurpleConnection is destroyed.
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
566 */
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
567 /*
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
568 * TODO: Eventually this bad boy will be removed, because it is
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
569 * a gross fix for a crashy problem.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
570 */
18063
926ccb104da0 disapproval of revision '1411afd7660760db59966c3a9f18e2adab8eb27e'
Richard Laager <rlaager@wiktel.com>
parents: 18058
diff changeset
571 #define PURPLE_CONNECTION_IS_VALID(gc) (g_list_find(purple_connections_get_all(), (gc)) != NULL)
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
572
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
573 /*@}*/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
574
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
575 /**************************************************************************/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
576 /** @name UI Registration Functions */
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
577 /**************************************************************************/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
578 /*@{*/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
579
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
580 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
581 * Sets the UI operations structure to be used for connections.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
582 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
583 * @param ops The UI operations structure.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
584 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
585 void purple_connections_set_ui_ops(PurpleConnectionUiOps *ops);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
586
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
587 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
588 * Returns the UI operations structure used for connections.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
589 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
590 * @return The UI operations structure in use.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
591 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
592 PurpleConnectionUiOps *purple_connections_get_ui_ops(void);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
593
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
594 /*@}*/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
595
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
596 /**************************************************************************/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
597 /** @name Connections Subsystem */
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
598 /**************************************************************************/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
599 /*@{*/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
600
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
601 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
602 * Initializes the connections subsystem.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
603 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
604 void purple_connections_init(void);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
605
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
606 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
607 * Uninitializes the connections subsystem.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
608 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
609 void purple_connections_uninit(void);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
610
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
611 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
612 * Returns the handle to the connections subsystem.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
613 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
614 * @return The connections subsystem handle.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
615 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
616 void *purple_connections_get_handle(void);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
617
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
618 /*@}*/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
619
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
620
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
621 #ifdef __cplusplus
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
622 }
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
623 #endif
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
624
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
625 #endif /* _PURPLE_CONNECTION_H_ */