src/proxy.h

Mon, 30 Sep 2002 01:05:18 +0000

author
Sean Egan <seanegan@pidgin.im>
date
Mon, 30 Sep 2002 01:05:18 +0000
changeset 3572
d07e14aa6f26
parent 2417
7751d1269b09
child 3630
caa952062dc2
permissions
-rw-r--r--

[gaim-migrate @ 3670]
Phase II. No longer do you have to worry about protocol plugins. When
Gaim probes plugins on load, it will detect protocol plugins and add them
to the list of available protocols. When you try to log an account on with
one of them, Gaim will automatically load the plugin--when no more accounts
need the protocol--Gaim will automatically unload it. Protocol plugins are
no longer available in the plugins ui, and no protocols are compiled statically
by default.

1
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
1 /*
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
2 * gaim
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
3 *
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
4 * Copyright (C) 1998-1999, Mark Spencer <markster@marko.net>
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
5 *
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
6 * This program is free software; you can redistribute it and/or modify
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
7 * it under the terms of the GNU General Public License as published by
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
8 * the Free Software Foundation; either version 2 of the License, or
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
9 * (at your option) any later version.
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
10 *
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
11 * This program is distributed in the hope that it will be useful,
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
14 * GNU General Public License for more details.
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
15 *
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
16 * You should have received a copy of the GNU General Public License
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
17 * along with this program; if not, write to the Free Software
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
19 *
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
20 */
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
21
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
22 /* this is the export part of the proxy.c file. it does a little
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
23 prototype-ing stuff and redefine some net function to mask them
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
24 with some kind of transparent layer */
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
25
2417
7751d1269b09 [gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 2090
diff changeset
26 #ifndef _PROXY_H_
7751d1269b09 [gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 2090
diff changeset
27 #define _PROXY_H_
1
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
28
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
29 #include <sys/types.h>
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
30 #include <sys/socket.h>
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
31 #include <netdb.h>
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
32 #include <netinet/in.h>
2090
bab8b7e309db [gaim-migrate @ 2100]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1881
diff changeset
33 #include <glib.h>
1
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
34
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
35 #define PROXY_NONE 0
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
36 #define PROXY_HTTP 1
338
21c93bc7ae83 [gaim-migrate @ 348]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1
diff changeset
37 #define PROXY_SOCKS4 2
21c93bc7ae83 [gaim-migrate @ 348]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1
diff changeset
38 #define PROXY_SOCKS5 3
1
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
39
1881
bcd5d457cdbb [gaim-migrate @ 1891]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1843
diff changeset
40 extern char proxyhost[128];
bcd5d457cdbb [gaim-migrate @ 1891]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1843
diff changeset
41 extern int proxyport;
bcd5d457cdbb [gaim-migrate @ 1891]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1843
diff changeset
42 extern int proxytype;
bcd5d457cdbb [gaim-migrate @ 1891]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1843
diff changeset
43 extern char proxyuser[128];
bcd5d457cdbb [gaim-migrate @ 1891]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1843
diff changeset
44 extern char proxypass[128];
bcd5d457cdbb [gaim-migrate @ 1891]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1843
diff changeset
45
2090
bab8b7e309db [gaim-migrate @ 2100]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1881
diff changeset
46 typedef enum {
bab8b7e309db [gaim-migrate @ 2100]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1881
diff changeset
47 GAIM_INPUT_READ = 1 << 0,
bab8b7e309db [gaim-migrate @ 2100]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1881
diff changeset
48 GAIM_INPUT_WRITE = 1 << 1
bab8b7e309db [gaim-migrate @ 2100]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1881
diff changeset
49 } GaimInputCondition;
bab8b7e309db [gaim-migrate @ 2100]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1881
diff changeset
50 typedef void (*GaimInputFunction)(gpointer, gint, GaimInputCondition);
bab8b7e309db [gaim-migrate @ 2100]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1881
diff changeset
51
bab8b7e309db [gaim-migrate @ 2100]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1881
diff changeset
52 extern gint gaim_input_add(int, GaimInputCondition, GaimInputFunction, gpointer);
bab8b7e309db [gaim-migrate @ 2100]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1881
diff changeset
53 extern void gaim_input_remove(gint);
bab8b7e309db [gaim-migrate @ 2100]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1881
diff changeset
54
bab8b7e309db [gaim-migrate @ 2100]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1881
diff changeset
55 extern int proxy_connect(char *host, int port, GaimInputFunction func, gpointer data);
1
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
56
2417
7751d1269b09 [gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 2090
diff changeset
57 #endif /* _PROXY_H_ */

mercurial