[squid-dev] Support forward unknown protocol using http port which redirected to squid
Alex Rousskov
rousskov at measurement-factory.com
Fri Mar 17 14:55:13 UTC 2017
On 03/17/2017 01:06 AM, 钱国正 wrote:
> I am using squid as a transparent proxy in Router,
> redirecting data which destination port is 80 to squid,
> and it work fine for a long time, just days before, I found there is one
> case that will not make the mobile app not work.
>
> The case is the mobile app using 80 port with non-http nor https protocol.
>
> I have searched a lot on that and found an on_unsupported_protocol, but
> apparently, not for this case.
According to documentation, on_unsupported_protocol does support your
use case. If that support is broken, please consider fixing it (since
you are now posting to squid-dev and not squid-users).
The ConnStateData::mayTunnelUnsupportedProto() method may be relevant
here -- make sure it returns true for your use case (without breaking
other use cases). I suspect the condition in that method is currently
buggy because it does not seem to cover intercepted plain HTTP
connections where Squid ought to know the intended destination address:
> bool
> ConnStateData::mayTunnelUnsupportedProto()
> {
> return Config.accessList.on_unsupported_protocol
> #if USE_OPENSSL
> &&
> ((port->flags.isIntercepted() && port->flags.tunnelSslBumping)
> || (serverBump() && pinning.serverConnection))
> #endif
> ;
> }
Alex.
More information about the squid-dev
mailing list