gnome-network-properties sets $http_proxy incorrectly
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
gnome-control-center (Ubuntu) |
Invalid
|
Medium
|
Unassigned |
Bug Description
Binary package hint: gnome-control-
In gnome-network-
- manual proxy configuration
* check the box: use the same proxy for all protocols
* Type the HTTP proxy address: proxy.utbm.fr
* Type the HTTP proxy port: 3128
Then, since my proxy requires authentication, I hit "Details" button and I:
* Check "Use Authentication"
* Provide my username and password
Then I press "Close" to exit Details dialog and gnome-network-
> echo $http_proxy
http://
Although it should be:
http://
Note that this worked just fine in previous Ubuntu releases (v9.04 for example) and it is broken since Ubuntu v9.10.
Changed in gnome-control-center (Ubuntu): | |
assignee: | Jean-Baptiste Lallement (jibel) → nobody |
status: | In Progress → Triaged |
I had a look at the code and it seems that the problem is located here: systemwide_ prefs.patch: 29
50_ubuntu_
that is to say: printf( "%s://% s:%i/", proxy_type, host, port);
+ /* FIXME: add proxy auth support when a "secure" store for the proxy
+ password is available */
+ proxy_str = g_strdup_
+ g_print("p: %s\n", proxy_str);
So, here the string does not include auth information (it is explained in the FIXME).
Regarding gnome-terminal, if the http_proxy environment variable is already defined then it does not attempt to retrieve the proxy information from gconf and define http_proxy variable.
See src/terminal- screen. c:1422 table_lookup (env_table, "http_proxy") != NULL)
/* Do we already have a proxy setting? */
if (g_hash_
use_proxy = FALSE;
If I comment these two lines, then my http_proxy variable is defined properly in gnome-terminal (with auth information).
Basically, there are two solutions: systemwide_ prefs.patch. I don't know if it is possible because apparently a secure store is missing systemwide_ prefs.patch do not attempt to define the http_proxy variable whenever authentication is enabled. At least, applications such as gnome-terminal will define the http_proxy variable correctly (provided that it is not already defined). For other applications, the proxy string without auth information would not work anyway when authentication is required.
1) The ideal solution would be to add auth support to 50_ubuntu_
2) In 50_ubuntu_