Evolution 2.32.2 in Natty mindlessly uses socks proxy environment
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
evolution (Ubuntu) |
Fix Committed
|
High
|
Unassigned |
Bug Description
Binary package hint: evolution
System-
Initial symptoms are that Evolution hangs when trying to reach the IMAP server - `tcptrack -i eth0` and strace show connections to the configured http proxy, and then an IMAP connection to 127.0.0.1. Unchecking the 'use the same proxy for all protocols' box and individually setting the proxy for the other lines fixes the issue.
This occurs even when Evolution has 'Direct connection to the internet' set in its own Network Preferences.
Changed in evolution (Ubuntu): | |
assignee: | nobody → Canonical Desktop Team (canonical-desktop-team) |
importance: | Medium → High |
Changed in evolution (Ubuntu): | |
assignee: | Canonical Desktop Team (canonical-desktop-team) → Rodrigo Moya (rodrigo-moya) |
Changed in evolution (Ubuntu): | |
assignee: | Rodrigo Moya (rodrigo-moya) → nobody |
From "main-session.c":
static void proxy_from_ gconf (void)
set_socks_
{
GConfClient *client;
gchar *mode, *host;
gint port;
client = mail_config_ get_gconf_ client ();
mode = gconf_client_ get_string (client, MODE_PROXY, NULL); get_string (client, KEY_SOCKS_HOST, NULL); /* NULL-GError */ get_int (client, KEY_SOCKS_PORT, NULL); /* NULL-GError */ session_ set_socks_ proxy (session, host, port);
if (!g_strcmp0(mode, "manual")) {
host = gconf_client_
port = gconf_client_
camel_
g_free (host);
}
g_free (mode);
}
Unless I'm misunderstanding this, it looks like SOCKS is always enabled if the Network Proxy setting is "manual". Not only is this silly unless we've specifically set SOCKS, but it's also quite likely that there may be no SOCKS setting, so at the very least we should check whether KEY_SOCKS_HOST is null already, because if it is, we should disable SOCKS.