annotate libpurple/connection.h @ 22933:d464485a2bfc

Clean up the comments about MSNP14, and make the --enable-msnp14 option no longer commented out. This makes it possible, with stock pidgin, to build with msnp14 using --enable-msnp14 - are we ready for this? (my thought being that if we are ready for this we can see what happens when "early adopters" turn it on and maybe, just maybe, making msnp14 default for 2.5.0)
author Stu Tomlinson <stu@nosnilmot.com>
date Wed, 14 May 2008 01:57:45 +0000
parents ef0e82b8bc2e
children 9aa105267f46
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
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
30 typedef struct _PurpleConnection PurpleConnection;
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
31
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 * 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
34 */
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
35 typedef enum
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
36 {
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
37 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
38 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
39 background colors. */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
40 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
41 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
42 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
43 PURPLE_CONNECTION_NO_FONTSIZE = 0x0020, /**< Connection does not send/receive font sizes */
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
44 PURPLE_CONNECTION_NO_URLDESC = 0x0040, /**< Connection does not support descriptions with links */
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
45 PURPLE_CONNECTION_NO_IMAGES = 0x0080, /**< Connection does not support sending of images */
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
46
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
47 } PurpleConnectionFlags;
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
48
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
49 typedef enum
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
50 {
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
51 PURPLE_DISCONNECTED = 0, /**< Disconnected. */
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
52 PURPLE_CONNECTED, /**< Connected. */
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
53 PURPLE_CONNECTING /**< Connecting. */
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
54
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
55 } PurpleConnectionState;
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
56
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
57 /** Possible errors that can cause a connection to be closed.
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
58 * @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
59 */
20064
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
60 typedef enum
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
61 {
20114
a465779350aa Clarified the meaning of PURPLE_REASON_NETWORK_ERROR and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20110
diff changeset
62 /** 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
63 * 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
64 * data).
a465779350aa Clarified the meaning of PURPLE_REASON_NETWORK_ERROR and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20110
diff changeset
65 */
21358
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
66 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
67 /** 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
68 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
69 /** 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
70 * #PURPLE_CONNECTION_ERROR_INVALID_USERNAME instead if the username
8ffb65f3c0e9 Clarify PURPLE_CONNECTION_ERROR_INVALID_USERNAME slightly.
Will Thompson <will.thompson@collabora.co.uk>
parents: 21424
diff changeset
71 * 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
72 */
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
73 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
74 /** 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
75 * server offered.
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_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
78 /** 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
79 * SSL.
682543aced31 Split the "you don't have SSL support" meaning of
Will Thompson <will.thompson@collabora.co.uk>
parents: 20128
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_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
82 /** 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
83 * 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
84 * 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
85 */
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
86 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
87 /** 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
88 * 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
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_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
91
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
92 /** The username/server/other preference for the account isn't valid.
57e9d1ecefff Rename PURPLE_REASON_INVALID_USERNAME to PURPLE_REASON_INVALID_SETTINGS, so it
Will Thompson <will.thompson@collabora.co.uk>
parents: 20115
diff changeset
93 * For instance, on IRC the screen name cannot contain white space.
57e9d1ecefff Rename PURPLE_REASON_INVALID_USERNAME to PURPLE_REASON_INVALID_SETTINGS, so it
Will Thompson <will.thompson@collabora.co.uk>
parents: 20115
diff changeset
94 * 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
95 * #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
96 *
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
97 * @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
98 * 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
99 * 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
100 */
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
101 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
102
20064
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
103 /** 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
104 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
105 /** 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
106 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
107 /** 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
108 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
109 /** 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
110 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
111 /** 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
112 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
113 /** 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
114 * fingerprint.
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
115 */
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_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
117 /** 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
118 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
119 /** 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
120 */
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
121 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
122
a1c47a5f07f4 Remove non-error PurpleDisconnectReasons, and add PURPLE_REASON_OTHER_ERROR
Will Thompson <will.thompson@collabora.co.uk>
parents: 20064
diff changeset
123 /** Some other error occured which fits into none of the other
a1c47a5f07f4 Remove non-error PurpleDisconnectReasons, and add PURPLE_REASON_OTHER_ERROR
Will Thompson <will.thompson@collabora.co.uk>
parents: 20064
diff changeset
124 * categories.
a1c47a5f07f4 Remove non-error PurpleDisconnectReasons, and add PURPLE_REASON_OTHER_ERROR
Will Thompson <will.thompson@collabora.co.uk>
parents: 20064
diff changeset
125 */
21357
5a3242b676ad rlaager suggested using the last element of the PurpleDisconnectReason enum
Will Thompson <will.thompson@collabora.co.uk>
parents: 20893
diff changeset
126 /* 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
127 * 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
128 * 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
129 */
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
130 PURPLE_CONNECTION_ERROR_OTHER_ERROR = 16
21358
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
131 } PurpleConnectionError;
20064
4da314b1e53e Create a PurpleDisconnectReason enum (which happens to be identical to
Will Thompson <will.thompson@collabora.co.uk>
parents: 19697
diff changeset
132
21374
71c1f2da4ff2 PurpleConnectionErrorPair is a better name for struct { PurpleConnectionError;
Will Thompson <will.thompson@collabora.co.uk>
parents: 21360
diff changeset
133 /** 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
134 typedef struct
71c1f2da4ff2 PurpleConnectionErrorPair is a better name for struct { PurpleConnectionError;
Will Thompson <will.thompson@collabora.co.uk>
parents: 21360
diff changeset
135 {
71c1f2da4ff2 PurpleConnectionErrorPair is a better name for struct { PurpleConnectionError;
Will Thompson <will.thompson@collabora.co.uk>
parents: 21360
diff changeset
136 /** The type of error. */
71c1f2da4ff2 PurpleConnectionErrorPair is a better name for struct { PurpleConnectionError;
Will Thompson <will.thompson@collabora.co.uk>
parents: 21360
diff changeset
137 PurpleConnectionError type;
71c1f2da4ff2 PurpleConnectionErrorPair is a better name for struct { PurpleConnectionError;
Will Thompson <will.thompson@collabora.co.uk>
parents: 21360
diff changeset
138 /** 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
139 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
140 } PurpleConnectionErrorInfo;
21374
71c1f2da4ff2 PurpleConnectionErrorPair is a better name for struct { PurpleConnectionError;
Will Thompson <will.thompson@collabora.co.uk>
parents: 21360
diff changeset
141
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
142 #include <time.h>
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
143
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
144 #include "account.h"
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
145 #include "plugin.h"
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
146 #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
147 #include "sslconn.h"
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
148
18835
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
149 /** Connection UI operations. Used to notify the user of changes to
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
150 * connections, such as being disconnected, and to respond to the
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
151 * underlying network connection appearing and disappearing. UIs should
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
152 * call #purple_connections_set_ui_ops() with an instance of this struct.
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
153 *
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
154 * @see @ref ui-ops
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
155 */
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
156 typedef struct
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
157 {
18835
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
158 /** When an account is connecting, this operation is called to notify
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
159 * the UI of what is happening, as well as which @a step out of @a
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
160 * step_count has been reached (which might be displayed as a progress
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
161 * bar).
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
162 * @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
163 */
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
164 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
165 const char *text,
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
166 size_t step,
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
167 size_t step_count);
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
168
18835
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
169 /** Called when a connection is established (just before the
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
170 * @ref signed-on signal).
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
171 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
172 void (*connected)(PurpleConnection *gc);
18835
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
173 /** Called when a connection is ended (between the @ref signing-off
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
174 * and @ref signed-off signals).
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
175 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
176 void (*disconnected)(PurpleConnection *gc);
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
177
18835
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
178 /** Used to display connection-specific notices. (Pidgin's Gtk user
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
179 * interface implements this as a no-op; #purple_connection_notice(),
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
180 * which uses this operation, is not used by any of the protocols
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
181 * shipped with libpurple.)
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
182 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
183 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
184
18835
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
185 /** Called when an error causes a connection to be disconnected.
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
186 * Called before #disconnected.
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
187 * @param text a localized error message.
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
188 * @see #purple_connection_error
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
189 * @deprecated in favour of
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
190 * #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
191 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
192 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
193
18835
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
194 /** Called when libpurple discovers that the computer's network
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
195 * connection is active. On Linux, this uses Network Manager if
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
196 * available; on Windows, it uses Win32's network change notification
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
197 * infrastructure.
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
198 */
21968
a463f05b4566 Felipe Contreras, one of our older Crazy Pacth Writers, noticed that these
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21426
diff changeset
199 void (*network_connected)(void);
18835
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
200 /** Called when libpurple discovers that the computer's network
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
201 * connection has gone away.
3750e2e176cb Document PurpleConnectionUiOps. (Does purple_connection_notice predate the
Will Thompson <will.thompson@collabora.co.uk>
parents: 18118
diff changeset
202 */
21968
a463f05b4566 Felipe Contreras, one of our older Crazy Pacth Writers, noticed that these
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21426
diff changeset
203 void (*network_disconnected)(void);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
204
20820
bc3c5daaf7aa Update report_disconnect_reason documentation to match reality. Also include
Will Thompson <will.thompson@collabora.co.uk>
parents: 20818
diff changeset
205 /** Called when an error causes a connection to be disconnected.
bc3c5daaf7aa Update report_disconnect_reason documentation to match reality. Also include
Will Thompson <will.thompson@collabora.co.uk>
parents: 20818
diff changeset
206 * 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
207 * #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
208 * first; however, there's no real reason to implement both.
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
209 * @param reason why the connection ended, if known, or
21358
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
210 * #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
211 * @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
212 * in more detail to the user.
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
213 * @see #purple_connection_error_reason
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
214 * @since 2.3.0
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
215 */
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
216 void (*report_disconnect_reason)(PurpleConnection *gc,
21358
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
217 PurpleConnectionError reason,
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
218 const char *text);
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
219
16664
516f14bef90e Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 15822
diff changeset
220 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
221 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
222 void (*_purple_reserved3)(void);
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
223 } PurpleConnectionUiOps;
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
224
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
225 struct _PurpleConnection
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
226 {
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
227 PurplePlugin *prpl; /**< The protocol plugin. */
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
228 PurpleConnectionFlags flags; /**< Connection flags. */
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
229
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
230 PurpleConnectionState state; /**< The connection state. */
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
231
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
232 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
233 char *password; /**< The password used. */
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
234 int inpa; /**< The input watcher. */
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
235
20813
66e7b104b4ea rlaager pointed out that purple_connection_error_reason should be setting
Will Thompson <will.thompson@collabora.co.uk>
parents: 20812
diff changeset
236 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
237 (#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
238 #PURPLE_CONV_TYPE_CHAT). */
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
239 void *proto_data; /**< Protocol-specific data. */
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
240
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
241 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
242 guint keepalive; /**< Keep-alive. */
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
243
20813
66e7b104b4ea rlaager pointed out that purple_connection_error_reason should be setting
Will Thompson <will.thompson@collabora.co.uk>
parents: 20812
diff changeset
244 /** 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
245 * 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
246 * 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
247 * 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
248 * setting it themselves.
21358
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
249 * @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
250 */
66e7b104b4ea rlaager pointed out that purple_connection_error_reason should be setting
Will Thompson <will.thompson@collabora.co.uk>
parents: 20812
diff changeset
251 gboolean wants_to_die;
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
252
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
253 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
254 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
255 prpl to avoid sending unneeded keepalives */
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
256 };
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
257
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
258 #ifdef __cplusplus
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
259 extern "C" {
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
260 #endif
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
261
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
262 /**************************************************************************/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
263 /** @name Connection API */
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
264 /**************************************************************************/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
265 /*@{*/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
266
21241
d8990c20cbee Mark some libpurple-internal functions as deprecated to further help keep
Richard Laager <rlaager@wiktel.com>
parents: 20799
diff changeset
267 #ifndef PURPLE_DISABLE_DEPRECATED
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
268 /**
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
269 * 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
270 * 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
271 * function instead.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
272 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
273 * 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
274 * 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
275 * 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
276 * 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
277 * have called purple_account_set_status(account, "away").
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
278 * (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
279 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
280 * @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
281 * @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
282 * trying to do a normal signon.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
283 * @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
284 *
d8990c20cbee Mark some libpurple-internal functions as deprecated to further help keep
Richard Laager <rlaager@wiktel.com>
parents: 20799
diff changeset
285 * @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
286 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
287 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
288 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
289 #endif
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
290
21241
d8990c20cbee Mark some libpurple-internal functions as deprecated to further help keep
Richard Laager <rlaager@wiktel.com>
parents: 20799
diff changeset
291 #ifndef PURPLE_DISABLE_DEPRECATED
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
292 /**
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
293 * 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
294 * 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
295 *
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
296 * 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
297 * 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
298 *
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
299 * @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
300 * @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
301 * @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
302 * @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
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.
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
305 */
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
306 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
307 #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
308
21241
d8990c20cbee Mark some libpurple-internal functions as deprecated to further help keep
Richard Laager <rlaager@wiktel.com>
parents: 20799
diff changeset
309 #ifndef PURPLE_DISABLE_DEPRECATED
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
310 /**
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
311 * Disconnects and destroys a PurpleConnection.
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
312 *
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
313 * 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
314 * 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
315 * function instead.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
316 *
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
317 * @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
318 *
d8990c20cbee Mark some libpurple-internal functions as deprecated to further help keep
Richard Laager <rlaager@wiktel.com>
parents: 20799
diff changeset
319 * @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
320 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
321 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
322 #endif
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
323
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
324 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
325 * 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
326 * 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
327 * 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
328 * 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
329 * your status, then the account is online.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
330 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
331 * @param gc The connection.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
332 * @param state The connection state.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
333 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
334 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
335
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
336 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
337 * Sets the connection's account.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
338 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
339 * @param gc The connection.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
340 * @param account The account.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
341 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
342 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
343
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
344 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
345 * Sets the connection's displayed name.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
346 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
347 * @param gc The connection.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
348 * @param name The displayed name.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
349 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
350 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
351
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
352 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
353 * Returns the connection state.
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 * @param gc The connection.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
356 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
357 * @return The connection state.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
358 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
359 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
360
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
361 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
362 * 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
363 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
364 * @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
365 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
366 #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
367 (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
368
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
369 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
370 * Returns the connection's account.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
371 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
372 * @param gc The connection.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
373 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
374 * @return The connection's account.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
375 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
376 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
377
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
378 /**
22214
2b426862ffbf Add accessor and update finch to not touch the internals of PurpleConnection.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 22149
diff changeset
379 * 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
380 *
2b426862ffbf Add accessor and update finch to not touch the internals of PurpleConnection.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 22149
diff changeset
381 * @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
382 *
2b426862ffbf Add accessor and update finch to not touch the internals of PurpleConnection.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 22149
diff changeset
383 * @return The protocol plugin.
22221
ef0e82b8bc2e Forgot the since tag here.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 22214
diff changeset
384 * @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
385 */
2b426862ffbf Add accessor and update finch to not touch the internals of PurpleConnection.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 22149
diff changeset
386 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
387
2b426862ffbf Add accessor and update finch to not touch the internals of PurpleConnection.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 22149
diff changeset
388 /**
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
389 * Returns the connection's password.
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 * @param gc The connection.
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 The connection's password.
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 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
396
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 * Returns the connection's displayed name.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
399 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
400 * @param gc The connection.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
401 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
402 * @return The connection's displayed name.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
403 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
404 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
405
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 * Updates the connection progress.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
408 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
409 * @param gc The connection.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
410 * @param text Information on the current step.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
411 * @param step The current step.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
412 * @param count The total number of steps.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
413 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
414 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
415 size_t step, size_t count);
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
416
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
417 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
418 * Displays a connection-specific notice.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
419 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
420 * @param gc The connection.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
421 * @param text The notice text.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
422 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
423 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
424
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
425 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
426 * Closes a connection with an error.
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 * @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
429 * @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
430 * @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
431 * @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
432 * @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
433 * #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
434 * #PURPLE_CONNECTION_ERROR_NETWORK_ERROR if not. (This is to keep
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
435 * 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
436 * reasons yet.)
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
437 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
438 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
439
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
440 /**
21359
fe57b8062249 Document that the char * parameter of purple_connection_error{,_reason} may
Will Thompson <will.thompson@collabora.co.uk>
parents: 21358
diff changeset
441 * 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
442 * 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
443 * #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
444 * backwards-compatibility.
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
445 *
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
446 * @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
447 * @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
448 * @param description a non-@c NULL localized description of the error.
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
449 * @since 2.3.0
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
450 */
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
451 void
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
452 purple_connection_error_reason (PurpleConnection *gc,
21358
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
453 PurpleConnectionError reason,
20066
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
454 const char *description);
95b2b7a39585 Create PurpleConnectionUiOps.report_disconnect_reason and
Will Thompson <will.thompson@collabora.co.uk>
parents: 20065
diff changeset
455
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
456 /**
20115
a68d51d60177 Create purple_connection_ssl_error(), which converts a PurpleSslErrorType
Will Thompson <will.thompson@collabora.co.uk>
parents: 20114
diff changeset
457 * 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
458 * 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
459 * human-readable string and then calling purple_connection_error_reason().
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
460 * @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
461 */
a68d51d60177 Create purple_connection_ssl_error(), which converts a PurpleSslErrorType
Will Thompson <will.thompson@collabora.co.uk>
parents: 20114
diff changeset
462 void
a68d51d60177 Create purple_connection_ssl_error(), which converts a PurpleSslErrorType
Will Thompson <will.thompson@collabora.co.uk>
parents: 20114
diff changeset
463 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
464 PurpleSslErrorType ssl_error);
a68d51d60177 Create purple_connection_ssl_error(), which converts a PurpleSslErrorType
Will Thompson <will.thompson@collabora.co.uk>
parents: 20114
diff changeset
465
a68d51d60177 Create purple_connection_ssl_error(), which converts a PurpleSslErrorType
Will Thompson <will.thompson@collabora.co.uk>
parents: 20114
diff changeset
466 /**
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
467 * 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
468 * 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
469 * 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
470 * 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
471 * 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
472 * 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
473 * is @c FALSE. On the other hand,
21358
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
474 * #PURPLE_CONNECTION_ERROR_AUTHENTICATION_FAILED probably indicates a
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
475 * 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
476 * <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
477 * (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
478 *
143c6f34c6eb Create purple_connection_reason_is_fatal, which is basically a replacement for
Will Thompson <will.thompson@collabora.co.uk>
parents: 20066
diff changeset
479 * (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
480 *
20818
c560286daede Clarify the documentation of the return value of
Will Thompson <will.thompson@collabora.co.uk>
parents: 20813
diff changeset
481 * @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
482 * @c FALSE otherwise.
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
483 * @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
484 */
143c6f34c6eb Create purple_connection_reason_is_fatal, which is basically a replacement for
Will Thompson <will.thompson@collabora.co.uk>
parents: 20066
diff changeset
485 gboolean
21358
ba41f2a60253 Rename:
Will Thompson <will.thompson@collabora.co.uk>
parents: 21357
diff changeset
486 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
487
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
488 /*@}*/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
489
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
490 /**************************************************************************/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
491 /** @name Connections API */
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
492 /**************************************************************************/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
493 /*@{*/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
494
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
495 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
496 * Disconnects from all connections.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
497 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
498 void purple_connections_disconnect_all(void);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
499
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
500 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
501 * 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
502 * 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
503 *
18118
ab6d2763b8d8 Re-fix the DBus list handling code by killing const GList* / const GSList*
Richard Laager <rlaager@wiktel.com>
parents: 18063
diff changeset
504 * @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
505 */
18063
926ccb104da0 disapproval of revision '1411afd7660760db59966c3a9f18e2adab8eb27e'
Richard Laager <rlaager@wiktel.com>
parents: 18058
diff changeset
506 GList *purple_connections_get_all(void);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
507
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
508 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
509 * 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
510 *
18118
ab6d2763b8d8 Re-fix the DBus list handling code by killing const GList* / const GSList*
Richard Laager <rlaager@wiktel.com>
parents: 18063
diff changeset
511 * @constreturn A list of connecting connections.
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
512 */
18063
926ccb104da0 disapproval of revision '1411afd7660760db59966c3a9f18e2adab8eb27e'
Richard Laager <rlaager@wiktel.com>
parents: 18058
diff changeset
513 GList *purple_connections_get_connecting(void);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
514
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
515 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
516 * 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
517 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
518 * @return @c TRUE if gc is valid.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
519 */
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
520 /*
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
521 * 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
522 * a gross fix for a crashy problem.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
523 */
18063
926ccb104da0 disapproval of revision '1411afd7660760db59966c3a9f18e2adab8eb27e'
Richard Laager <rlaager@wiktel.com>
parents: 18058
diff changeset
524 #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
525
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
526 /*@}*/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
527
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
528 /**************************************************************************/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
529 /** @name UI Registration Functions */
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
530 /**************************************************************************/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
531 /*@{*/
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 * 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
535 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
536 * @param ops The UI operations structure.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
537 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
538 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
539
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
540 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
541 * 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
542 *
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
543 * @return The UI operations structure in use.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
544 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
545 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
546
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
547 /*@}*/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
548
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
549 /**************************************************************************/
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
550 /** @name Connections Subsystem */
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
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
554 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
555 * Initializes the connections subsystem.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
556 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
557 void purple_connections_init(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 * Uninitializes the connections subsystem.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
561 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
562 void purple_connections_uninit(void);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
563
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
564 /**
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
565 * Returns the handle to the connections subsystem.
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 * @return The connections subsystem handle.
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
568 */
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
569 void *purple_connections_get_handle(void);
15373
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
570
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
571 /*@}*/
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 #ifdef __cplusplus
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 #endif
5fe8042783c1 Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff changeset
577
15822
32c366eeeb99 sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@gmail.com>
parents: 15373
diff changeset
578 #endif /* _PURPLE_CONNECTION_H_ */