| | @@ -114,10 +114,11 @@ |
| 114 | 114 | /* |
| 115 | 115 | ** COMMAND: test-urlparser |
| 116 | 116 | */ |
| 117 | 117 | void cmd_test_urlparser(void){ |
| 118 | 118 | int i; |
| 119 | + url_proxy_options(); |
| 119 | 120 | if( g.argc!=3 && g.argc!=4 ){ |
| 120 | 121 | usage("URL"); |
| 121 | 122 | } |
| 122 | 123 | url_parse(g.argv[2]); |
| 123 | 124 | for(i=0; i<2; i++){ |
| | @@ -133,19 +134,38 @@ |
| 133 | 134 | printf("********\n"); |
| 134 | 135 | url_enable_proxy("Using proxy: "); |
| 135 | 136 | } |
| 136 | 137 | } |
| 137 | 138 | } |
| 139 | + |
| 140 | +/* |
| 141 | +** Proxy specified on the command-line. |
| 142 | +*/ |
| 143 | +static const char *zProxyOpt = 0; |
| 144 | + |
| 145 | +/* |
| 146 | +** Extra any proxy options from the command-line. |
| 147 | +** |
| 148 | +** --proxy URL|off |
| 149 | +** |
| 150 | +*/ |
| 151 | +void url_proxy_options(void){ |
| 152 | + zProxyOpt = find_option("proxy", 0, 1); |
| 153 | +} |
| 138 | 154 | |
| 139 | 155 | /* |
| 140 | 156 | ** If the "proxy" setting is defined, then change the URL to refer |
| 141 | 157 | ** to the proxy server. |
| 142 | 158 | */ |
| 143 | 159 | void url_enable_proxy(const char *zMsg){ |
| 144 | | - const char *zProxy = db_get("proxy", 0); |
| 145 | | - if( zProxy==0 || zProxy[0] || is_false(zProxy) ){ |
| 146 | | - zProxy = getenv("http_proxy"); |
| 160 | + const char *zProxy; |
| 161 | + zProxy = zProxyOpt; |
| 162 | + if( zProxy==0 ){ |
| 163 | + zProxy = db_get("proxy", 0); |
| 164 | + if( zProxy==0 || zProxy[0] || is_false(zProxy) ){ |
| 165 | + zProxy = getenv("http_proxy"); |
| 166 | + } |
| 147 | 167 | } |
| 148 | 168 | if( zProxy && zProxy[0] && !is_false(zProxy) ){ |
| 149 | 169 | char *zOriginalUrl = g.urlCanonical; |
| 150 | 170 | char *zOriginalHost = g.urlHostname; |
| 151 | 171 | if( zMsg ) printf("%s%s\n", zMsg, zProxy); |
| 152 | 172 | |