From: Martin Stolle Date: Fri, 26 Jul 2013 12:34:37 +0000 (-0600) Subject: Bug 3879: assertion failed ConnStateData::validatePinnedConnection X-Git-Tag: SQUID_3_3_10~50 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=830d69775f4c6af0c9cf5afc8ff08b565f70b67b;p=thirdparty%2Fsquid.git Bug 3879: assertion failed ConnStateData::validatePinnedConnection --- diff --git a/src/client_side.cc b/src/client_side.cc index ff46ad8d8a..b7227e3d59 100644 --- a/src/client_side.cc +++ b/src/client_side.cc @@ -4475,18 +4475,14 @@ ConnStateData::validatePinnedConnection(HttpRequest *request, const CachePeer *a bool valid = true; if (!Comm::IsConnOpen(pinning.serverConnection)) valid = false; - if (pinning.auth && request && strcasecmp(pinning.host, request->GetHost()) != 0) { + else if (pinning.auth && pinning.host && request && strcasecmp(pinning.host, request->GetHost()) != 0) valid = false; - } - if (request && pinning.port != request->port) { + else if (request && pinning.port != request->port) valid = false; - } - if (pinning.peer && !cbdataReferenceValid(pinning.peer)) { + else if (pinning.peer && !cbdataReferenceValid(pinning.peer)) valid = false; - } - if (aPeer != pinning.peer) { + else if (aPeer != pinning.peer) valid = false; - } if (!valid) { /* The pinning info is not safe, remove any pinning info */