From: Amos Jeffries Date: Tue, 30 Jun 2015 14:12:43 +0000 (-0700) Subject: Move tls-flags= parser into Security::PeerOptions X-Git-Tag: merge-candidate-3-v1~38^2~21^2~3 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ec4defdb8b73f05baf1ab9823aa21550b6f6ce18;p=thirdparty%2Fsquid.git Move tls-flags= parser into Security::PeerOptions It no longer needs to be called by the SSL code, so can be a private member. --- diff --git a/src/security/PeerOptions.cc b/src/security/PeerOptions.cc index 0903979f12..2b1899fa20 100644 --- a/src/security/PeerOptions.cc +++ b/src/security/PeerOptions.cc @@ -75,7 +75,7 @@ Security::PeerOptions::parse(const char *token) debugs(3, DBG_PARSE_NOTE(1), "WARNING: Overwriting flags=" << sslFlags << " with " << SBuf(token + 6)); } sslFlags = SBuf(token + 6); - parsedFlags = Security::ParseFlags(sslFlags); + parsedFlags = parseFlags(); } else if (strncmp(token, "domain=", 7) == 0) { sslDomain = SBuf(token + 7); } else { @@ -391,10 +391,13 @@ Security::PeerOptions::parseOptions() return op; } +/** + * Parses the TLS flags squid.conf parameter + */ long -Security::ParseFlags(const SBuf &flags) +Security::PeerOptions::parseFlags() { - if (flags.isEmpty()) + if (sslFlags.isEmpty()) return 0; static struct { @@ -413,7 +416,7 @@ Security::ParseFlags(const SBuf &flags) { SBuf(), 0 } }; - ::Parser::Tokenizer tok(flags); + ::Parser::Tokenizer tok(sslFlags); static const CharacterSet delims("Flag-delimiter", ":,"); long fl = 0; diff --git a/src/security/PeerOptions.h b/src/security/PeerOptions.h index 13e5fa8db6..d6f1d75636 100644 --- a/src/security/PeerOptions.h +++ b/src/security/PeerOptions.h @@ -42,6 +42,7 @@ public: private: long parseOptions(); + long parseFlags(); public: SBuf certFile; ///< path of file containing PEM format X509 certificate @@ -71,11 +72,6 @@ public: /// configuration options for DIRECT server access extern PeerOptions ProxyOutgoingConfig; -/** - * Parses the TLS flags squid.conf parameter - */ -long ParseFlags(const SBuf &); - } // namespace Security // parse the tls_outgoing_options directive diff --git a/src/tests/stub_libsecurity.cc b/src/tests/stub_libsecurity.cc index e1e80cbd90..8c3a70d1a3 100644 --- a/src/tests/stub_libsecurity.cc +++ b/src/tests/stub_libsecurity.cc @@ -23,6 +23,6 @@ Security::ContextPointer Security::PeerOptions::createClientContext(bool) STUB_R void Security::PeerOptions::updateTlsVersionLimits() STUB void Security::PeerOptions::dumpCfg(Packable*, char const*) const STUB long Security::PeerOptions::parseOptions() STUB_RETVAL(0) +long Security::PeerOptions::parseFlags() STUB_RETVAL(0) void parse_securePeerOptions(Security::PeerOptions *) STUB -long Security::ParseFlags(const SBuf &) STUB_RETVAL(0)