Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:jberkman
evolution-data-server-2.6
bnc-189926-evo-locks-connect-ex.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File bnc-189926-evo-locks-connect-ex.patch of Package evolution-data-server-2.6
--- libedataserver/e-proxy.c.orig 2006-09-06 15:32:20.202444480 +0530 +++ libedataserver/e-proxy.c 2006-09-06 15:40:50.976794976 +0530 @@ -225,6 +225,8 @@ ep_need_proxy (EProxy* proxy, const char ProxyHostAddr *p_addr = NULL; GSList *l; guint status; + gint index; + gchar* hn = NULL; addr = soup_address_new (host, 0); status = soup_address_resolve_sync (addr); @@ -288,23 +290,45 @@ ep_need_proxy (EProxy* proxy, const char } } } - } else { - GSList* l; - gchar* hn = g_ascii_strdown (host, -1); - - for (l = priv->ign_hosts; l; l = l->next) { - if (*((gchar *)l->data) == '*') { - if (g_str_has_suffix (hn, ((gchar *)l->data)+1)) { - g_free (hn); - return FALSE; - } - } else if (strcmp (hn, l->data) == 0) { - g_free (hn); - return FALSE; - } - } - g_free (hn); - } + } + + hn = g_ascii_strdown (host, -1); + + for (l = priv->ign_hosts; l; l = l->next) { + /* SHOULD NEVER HAPPEN */ + if (!l->data) + continue; + + /* + index has three states: + 1 - *.foo.com + 0 - .foo.com + -1 - bar.foo.com + */ + + if (*((gchar *)l->data) == '*') + index = 1; + else if (*((gchar *)l->data) == '.') + index = 0; + else + index = -1; + + d(g_print ("[%s] needs to be ignored and hn=[%s]\n", l->data+(index > -1?index:0), hn)); + + if (index > -1) { + d(g_print ("Index= %d\n")); + if (g_str_has_suffix (hn, (l->data+index))) { + g_free (hn); + d(g_print ("Host [%s] doesn't require proxy\n", host)); + return FALSE; + } + } else if (strcmp (hn, l->data) == 0) { + g_free (hn); + d(g_print ("Host [%s] doesn't require proxy\n", host)); + return FALSE; + } + } + g_free (hn); d(g_print ("%s needs a proxy to connect to internet\n", host)); return TRUE;
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor