comparison libpurple/win32/win32dep.h @ 23900:54eb782d4721

Add support for reading SOCKS proxy information from the Windows proxy settings. Fixes #1614
author Daniel Atallah <daniel.atallah@gmail.com>
date Tue, 26 Aug 2008 04:36:29 +0000
parents 1cd99421c696
children 1568dc7a14f8
comparison
equal deleted inserted replaced
23899:4ecea8ae3d21 23900:54eb782d4721
27 #include <shlobj.h> 27 #include <shlobj.h>
28 #include <process.h> 28 #include <process.h>
29 #include "wpurpleerror.h" 29 #include "wpurpleerror.h"
30 #include "libc_interface.h" 30 #include "libc_interface.h"
31 31
32
32 #ifdef __cplusplus 33 #ifdef __cplusplus
33 extern "C" { 34 extern "C" {
34 #endif /* __cplusplus */ 35 #endif /* __cplusplus */
36
37 /* the winapi headers don't yet have winhttp.h, so we use the struct from msdn directly */
38 typedef struct {
39 BOOL fAutoDetect;
40 LPWSTR lpszAutoConfigUrl;
41 LPWSTR lpszProxy;
42 LPWSTR lpszProxyBypass;
43 } WINHTTP_CURRENT_USER_IE_PROXY_CONFIG;
35 44
36 /* rpcndr.h defines small as char, causing problems, so we need to undefine it */ 45 /* rpcndr.h defines small as char, causing problems, so we need to undefine it */
37 #undef small 46 #undef small
38 47
39 /* 48 /*
47 FARPROC wpurple_find_and_loadproc(const char *dllname, const char *procedure); 56 FARPROC wpurple_find_and_loadproc(const char *dllname, const char *procedure);
48 char *wpurple_read_reg_string(HKEY rootkey, const char *subkey, const char *valname); /* needs to be g_free'd */ 57 char *wpurple_read_reg_string(HKEY rootkey, const char *subkey, const char *valname); /* needs to be g_free'd */
49 gboolean wpurple_write_reg_string(HKEY rootkey, const char *subkey, const char *valname, const char *value); 58 gboolean wpurple_write_reg_string(HKEY rootkey, const char *subkey, const char *valname, const char *value);
50 char *wpurple_escape_dirsep(const char *filename); /* needs to be g_free'd */ 59 char *wpurple_escape_dirsep(const char *filename); /* needs to be g_free'd */
51 GIOChannel *wpurple_g_io_channel_win32_new_socket(int socket); /* Until we get the post-2.8 glib win32 giochannel implementation working, use the thread-based one */ 60 GIOChannel *wpurple_g_io_channel_win32_new_socket(int socket); /* Until we get the post-2.8 glib win32 giochannel implementation working, use the thread-based one */
52 /** Check for changes to the system proxy settings and update the HTTP_PROXY env. var. if there have been changes */
53 gboolean wpurple_check_for_proxy_changes(void);
54 61
55 /* Determine Purple paths */ 62 /* Determine Purple paths */
56 gchar *wpurple_get_special_folder(int folder_type); /* needs to be g_free'd */ 63 gchar *wpurple_get_special_folder(int folder_type); /* needs to be g_free'd */
57 const char *wpurple_install_dir(void); 64 const char *wpurple_install_dir(void);
58 const char *wpurple_lib_dir(void); 65 const char *wpurple_lib_dir(void);