Add interface for setting proxy for GWeb sessions
authorMarcel Holtmann <marcel@holtmann.org>
Sat, 6 Nov 2010 22:31:50 +0000 (23:31 +0100)
committerMarcel Holtmann <marcel@holtmann.org>
Sat, 6 Nov 2010 22:31:50 +0000 (23:31 +0100)
gweb/gweb.c
gweb/gweb.h

index b0bad59..7b52098 100644 (file)
@@ -99,6 +99,7 @@ struct _GWeb {
        GList *session_list;
 
        GResolv *resolv;
+       char *proxy;
        char *accept_option;
        char *user_agent;
        gboolean close_connection;
@@ -219,8 +220,11 @@ void g_web_unref(GWeb *web)
 
        g_resolv_unref(web->resolv);
 
+       g_free(web->proxy);
+
        g_free(web->accept_option);
        g_free(web->user_agent);
+
        g_free(web);
 }
 
@@ -235,6 +239,17 @@ void g_web_set_debug(GWeb *web, GWebDebugFunc func, gpointer user_data)
        g_resolv_set_debug(web->resolv, func, user_data);
 }
 
+gboolean g_web_set_proxy(GWeb *web, const char *proxy)
+{
+       if (web == NULL)
+               return FALSE;
+
+       g_free(web->proxy);
+       web->proxy = g_strdup(proxy);
+
+       return TRUE;
+}
+
 gboolean g_web_add_nameserver(GWeb *web, const char *address)
 {
        if (web == NULL)
index fa6a897..bf05fa5 100644 (file)
@@ -52,6 +52,8 @@ void g_web_unref(GWeb *web);
 
 void g_web_set_debug(GWeb *web, GWebDebugFunc func, gpointer user_data);
 
+gboolean g_web_set_proxy(GWeb *web, const char *proxy);
+
 gboolean g_web_add_nameserver(GWeb *web, const char *address);
 
 gboolean g_web_set_accept(GWeb *web, const char *format, ...)