<verb>
intercept Rename of old 'transparent' option to indicate proper functionality.
+ allow-direct Allow direct forwarding in accelerator mode. Normally
+ accelerated requests are denied direct forwarding as if
+ never_direct was used.
+
connection-auth[=on|off]
use connection-auth=off to tell Squid to prevent
forwarding Microsoft connection oriented authentication
<tag>http_port</tag>
<p><em>act-as-origin</em> not yet ported from 2.7
- <p><em>allow-direct</em> not yet ported from 2.7
<p><em>http11</em> not yet ported from 2.7
<p><em>urlgroup=</em> not yet ported from 2.6
unsigned int intercepted:1; /**< intercepting proxy port */
unsigned int spoof_client_ip:1; /**< spoof client ip if possible */
unsigned int accel:1; /**< HTTP accelerator */
+ unsigned int allow_direct:1; /**< Allow direct forwarding in accelerator mode */
unsigned int vhost:1; /**< uses host header */
unsigned int sslBump:1; /**< intercepts CONNECT requests */
s->accel = 1;
} else if (strcmp(token, "accel") == 0) {
s->accel = 1;
+ } else if (strcmp(token, "allow-direct") == 0) {
+ s->allow_direct = 1;
} else if (strcmp(token, "no-connection-auth") == 0) {
s->connection_auth_disabled = true;
} else if (strcmp(token, "connection-auth=off") == 0) {
accel Accelerator mode. Also needs at least one of
vhost / vport / defaultsite.
+ allow-direct Allow direct forwarding in accelerator mode. Normally
+ accelerated requests are denied direct forwarding as if
+ never_direct was used.
+
defaultsite=domainname
What to use for the Host: header if it is not present
in a request. Determines what site (not origin server)
}
request->flags.accelerated = http->flags.accel;
+ request->flags.no_direct = request->flags.accelerated ? !conn->port->allow_direct : 0;
/** \par
* If transparent or interception mode is working clone the transparent and interception flags
} else if (ps->never_direct > 0) {
/** if always_direct says NO, do that. */
ps->direct = DIRECT_NO;
- } else if (request->flags.accelerated) {
+ } else if (request->flags.no_direct) {
/** if we are accelerating, direct is not an option. */
ps->direct = DIRECT_NO;
} else if (request->flags.loopdetect) {
unsigned int connection_proxy_auth:1; /** Request wants connection oriented auth */
unsigned int pinned:1; /* Request sent on a pinned connection */
unsigned int auth_sent:1; /* Authentication forwarded */
+ unsigned int no_direct:1; /* Deny direct forwarding unless overriden by always_direct. Used in accelerator mode */
// When adding new flags, please update cloneAdaptationImmune() as needed.