From: Francesco Chemolli Date: Thu, 12 Aug 2021 08:39:04 +0000 (+0000) Subject: Activate extra compiler checks (#667) X-Git-Tag: SQUID_6_0_1~301 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=8b082ed9588fecd8ef3977d2c3c9b519ef5f1079;p=thirdparty%2Fsquid.git Activate extra compiler checks (#667) If the compiler supports it, add the `-Wextra` compiler flag to enable extra checks. Do not enable extra checks with GCC v4 because that old GCC version reports too many false positives. Explicitly disable those `-Wextra` checks that offer few insights while creating a lot of noise which cannot be easily avoided. Fix warnings reported by GCC or clang with the new settings. Rework syslog-related code in debug.cc, making it clearer and with less dependencies on some syslog levels. --- diff --git a/acinclude/compiler-flags.m4 b/acinclude/compiler-flags.m4 index bba5261eba..3b2331e58f 100644 --- a/acinclude/compiler-flags.m4 +++ b/acinclude/compiler-flags.m4 @@ -12,17 +12,15 @@ # AC_DEFUN([SQUID_CC_CHECK_ARGUMENT],[ AC_CACHE_CHECK([whether compiler accepts $2],[$1], - [{ + [ AC_REQUIRE([AC_PROG_CC]) - SAVED_CFLAGS="$CFLAGS" - SAVED_CXXFLAGS="$CXXFLAGS" + SQUID_STATE_SAVE([ARGCHECK]) CFLAGS="$CFLAGS $2" CXXFLAGS="$CXXFLAGS $2" AC_TRY_LINK([],[int foo; ], [$1=yes],[$1=no]) - CFLAGS="$SAVED_CFLAGS" - CXXFLAGS="$SAVED_CXXFLAGS" - }]) + SQUID_STATE_ROLLBACK([ARGCHECK]) + ]) ]) # Check if the compiler requires a supplied flag to build a test program. @@ -38,16 +36,14 @@ AC_DEFUN([SQUID_CC_REQUIRE_ARGUMENT],[ AC_CACHE_CHECK([whether compiler requires $2],[$1], [{ AC_REQUIRE([AC_PROG_CC]) - SAVED_CFLAGS="$CFLAGS" - SAVED_CXXFLAGS="$CXXFLAGS" + SQUID_STATE_SAVE([ARGREQ]) AC_COMPILE_IFELSE([AC_LANG_PROGRAM($3,$4)],[$1=no],[],[$1=no]) if test "x$$1" != "xno" ; then CFLAGS="$CFLAGS $2" CXXFLAGS="$CXXFLAGS $2" AC_COMPILE_IFELSE([AC_LANG_PROGRAM($3,$4)],[$1=yes],[$1=no],[$1=no]) fi - CFLAGS="$SAVED_CFLAGS" - CXXFLAGS="$SAVED_CXXFLAGS" + SQUID_STATE_ROLLBACK([ARGREQ]) }]) ]) @@ -117,6 +113,20 @@ AC_DEFUN([SQUID_CC_GUESS_VARIANT], [ ]) dnl AC_CACHE_CHECK ]) dnl AC_DEFUN +AC_DEFUN([SQUID_CC_ADD_CXXFLAG_IF_SUPPORTED_INTERNAL],[ + SQUID_STATE_SAVE([CXXARGTEST]) + CXXFLAGS="$CXXFLAGS $SQUID_CXXFLAGS" + SQUID_CC_CHECK_ARGUMENT([$2],[$1]) + SQUID_STATE_ROLLBACK([CXXARGTEST]) + AS_IF([test "x${$2}" = "xyes"],[SQUID_CXXFLAGS="$SQUID_CXXFLAGS $1"]) +]) + +dnl argument is a compiler flag. It will be attempted, and if suppported +dnl it will be added to SQUID_CXXFLAGS in the same order as calls to the macro +AC_DEFUN([SQUID_CC_ADD_CXXFLAG_IF_SUPPORTED],[ + SQUID_CC_ADD_CXXFLAG_IF_SUPPORTED_INTERNAL($1,m4_bpatsubst(m4_tolower([squid_cv_cc_arg$1]),[[^a-zA-Z0-9_]], [_])) +]) + # define the flag to use to have the compiler treat warnings as errors # requirs SQUID_CC_GUESS_VARIANT # Sets a few variables to contain some compiler-dependent command line @@ -147,7 +157,7 @@ AC_DEFUN([SQUID_CC_GUESS_OPTIONS], [ squid_cv_cc_arg_pipe="" ;; clang) - squid_cv_cxx_option_werror="-Werror -Qunused-arguments" + squid_cv_cxx_option_werror="-Werror" squid_cv_cc_option_werror="$squid_cv_cxx_option_werror" squid_cv_cc_option_wall="-Wall" squid_cv_cc_option_optimize="-O2" diff --git a/acinclude/pam.m4 b/acinclude/pam.m4 index 358c73de32..6538697428 100644 --- a/acinclude/pam.m4 +++ b/acinclude/pam.m4 @@ -21,7 +21,7 @@ AC_DEFUN([CHECK_STRUCT_PAM_CONV], [ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ #include static int -password_conversation(int num_msg, const struct pam_message **msg, struct pam_response **resp, void *appdata_ptr) { return 0; } +password_conversation(int, const struct pam_message **, struct pam_response **, void *) { return 0; } static struct pam_conv conv = { &password_conversation, 0 }; ]])], [ squid_cv_pam_conv_signature=linux @@ -29,7 +29,7 @@ static struct pam_conv conv = { &password_conversation, 0 }; AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ #include static int -password_conversation(int num_msg, struct pam_message **msg, struct pam_response **resp, void *appdata_ptr) { return 0; } +password_conversation(int, struct pam_message **, struct pam_response **, void *) { return 0; } static struct pam_conv conv = { &password_conversation, 0 }; ]])], [ squid_cv_pam_conv_signature=solaris diff --git a/configure.ac b/configure.ac index dcdfa45cd7..534cec994f 100644 --- a/configure.ac +++ b/configure.ac @@ -93,6 +93,32 @@ if test "x$squid_host_os" = "solaris" -a "x$GCC" != "x" ; then AC_USE_SYSTEM_EXTENSIONS fi +AC_MSG_CHECKING([compiler name-version]) +squid_cv_cc_name=`$CC --version | head -1 | cut -f1 -d" "` +AS_CASE([$squid_cv_cc_name], + [gcc|clang],[squid_cv_cc_majversion=`$CC -dumpversion | cut -f1 -d.`], + [squid_cv_cc_majversion="unknown"] +) +squid_cv_cc_simplified="$squid_cv_cc_name-$squid_cv_cc_majversion" +AC_MSG_RESULT($squid_cv_cc_simplified) + +# warning flags +AS_IF([test "$squid_cv_cc_simplified" = "gcc-4"],[ + AC_MSG_NOTICE([skipping -Wextra on $squid_cv_cc_simplified]) +],[ + # -Werror must be first + SQUID_CC_ADD_CXXFLAG_IF_SUPPORTED([-Werror]) + SQUID_CC_ADD_CXXFLAG_IF_SUPPORTED([-Wextra]) + # -Wunused-private-field causes a huge number of false positives + # in unit tests. Disable that + SQUID_CC_ADD_CXXFLAG_IF_SUPPORTED([-Wno-unused-private-field]) + # ...=2: This flexibility level allows GCC to "understand" our fallthrough + # comments. TODO: Switch to [[fallthrough]] attributes with C++17. + SQUID_CC_ADD_CXXFLAG_IF_SUPPORTED([-Wimplicit-fallthrough=2]) + AS_IF([test "x$squid_cv_cc_implicit_fallthrough2" = "xno"], [ + SQUID_CC_ADD_CXXFLAG_IF_SUPPORTED([-Wno-implicit-fallthrough]) + ]) +]) # If the user did not specify a C++ version. user_cxx=`echo "$PRESET_CXXFLAGS" | grep -o -E "\-std="` if test "x$user_cxx" = "x"; then @@ -337,25 +363,13 @@ if test "x$PRESET_CFLAGS" = "x"; then fi fi -dnl set squid required flags -if test "$squid_cv_compiler" = "gcc"; then - case "$squid_host_os" in - mingw) -dnl Guido Serassio (serassio@squid-cache.org) 20070811 -dnl Using the latest MinGW (gcc 3.4.5 + mingw-runtime 3.13) cannot build with -dnl -Werror -Wmissing-prototypes -Wmissing-declarations -dnl TODO: check if the problem will be present in any other newer MinGW release. - SQUID_CFLAGS="$squid_cv_cc_option_wall -Wpointer-arith -Wwrite-strings -Wcomments -Wshadow" - ;; - *) - SQUID_CFLAGS="$squid_cv_cc_option_wall -Wpointer-arith -Wwrite-strings -Wmissing-prototypes -Wmissing-declarations -Wcomments -Wshadow" - ;; - esac - SQUID_CXXFLAGS="$squid_cv_cc_option_wall -Wpointer-arith -Wwrite-strings -Wcomments -Wshadow -Woverloaded-virtual" -else - SQUID_CFLAGS= - SQUID_CXXFLAGS= -fi +# useful warnings that may not be included in -Wall -Wextra +SQUID_CC_ADD_CXXFLAG_IF_SUPPORTED([-Wpointer-arith]) +SQUID_CC_ADD_CXXFLAG_IF_SUPPORTED([-Wwrite-strings]) +SQUID_CC_ADD_CXXFLAG_IF_SUPPORTED([-Wcomments]) +SQUID_CC_ADD_CXXFLAG_IF_SUPPORTED([-Wshadow]) +SQUID_CC_ADD_CXXFLAG_IF_SUPPORTED([-Wmissing-declarations]) +SQUID_CC_ADD_CXXFLAG_IF_SUPPORTED([-Woverloaded_virtual]) dnl CentOS (and RHEL) still define ntohs() using deprecated C++ features SQUID_CC_REQUIRE_ARGUMENT([ac_cv_require_wno_deprecated_register],[-Werror -Wno-deprecated-register],[[#include ]],[[int fox=ntohs(1);]]) diff --git a/include/splay.h b/include/splay.h index 5884b3e8c5..f44a2b39f8 100644 --- a/include/splay.h +++ b/include/splay.h @@ -423,7 +423,7 @@ SplayConstIterator::operator ++ () template SplayConstIterator -SplayConstIterator::operator ++ (int dummy) +SplayConstIterator::operator ++ (int) { SplayConstIterator result = *this; advance(); diff --git a/lib/hash.cc b/lib/hash.cc index be5e64668d..64c2a70ac7 100644 --- a/lib/hash.cc +++ b/lib/hash.cc @@ -67,22 +67,22 @@ hash4(const void *data, unsigned int size) break; case 7: HASH4; - /* FALLTHROUGH */ + /* [[fallthrough]] */ case 6: HASH4; - /* FALLTHROUGH */ + /* [[fallthrough]] */ case 5: HASH4; - /* FALLTHROUGH */ + /* [[fallthrough]] */ case 4: HASH4; - /* FALLTHROUGH */ + /* [[fallthrough]] */ case 3: HASH4; - /* FALLTHROUGH */ + /* [[fallthrough]] */ case 2: HASH4; - /* FALLTHROUGH */ + /* [[fallthrough]] */ case 1: HASH4; } diff --git a/lib/libTrie/test/trie.cc b/lib/libTrie/test/trie.cc index 01fc2f704c..5b957df249 100644 --- a/lib/libTrie/test/trie.cc +++ b/lib/libTrie/test/trie.cc @@ -12,7 +12,7 @@ #include -bool +static bool CaseSensitiveCheck() { Trie aTrie; @@ -60,7 +60,7 @@ CaseSensitiveCheck() return 0; } -bool +static bool CaseInsensitiveCheck() { Trie aTrie(new TrieCaseless); @@ -108,7 +108,7 @@ CaseInsensitiveCheck() return 0; } -int main (int argc, char **argv) +int main (int, char **) { if (CaseSensitiveCheck()) { std::cerr << "Case sensitive check failure." << std::endl; diff --git a/src/DelayTagged.cc b/src/DelayTagged.cc index 413bf79909..b3bd78ad15 100644 --- a/src/DelayTagged.cc +++ b/src/DelayTagged.cc @@ -83,14 +83,6 @@ struct DelayTaggedUpdater { int incr; }; -void -DelayTaggedUpdateWalkee(DelayTaggedBucket::Pointer const ¤t, void *state) -{ - DelayTaggedUpdater *t = (DelayTaggedUpdater *)state; - /* This doesn't change the value of the DelayTaggedBucket, so is safe */ - const_cast(current.getRaw())->theBucket.update(t->spec, t->incr); -} - struct DelayTaggedUpdateVisitor { DelayTaggedUpdater *updater; explicit DelayTaggedUpdateVisitor(DelayTaggedUpdater *u) : updater(u) {} diff --git a/src/DelayUser.cc b/src/DelayUser.cc index 4cb8f93c5b..4632211a5e 100644 --- a/src/DelayUser.cc +++ b/src/DelayUser.cc @@ -48,12 +48,6 @@ void DelayUserFree(DelayUserBucket::Pointer &) {} -void -DelayUserStatsWalkee(DelayUserBucket::Pointer const ¤t, void *state) -{ - current->stats ((StoreEntry *)state); -} - struct DelayUserStatsVisitor { StoreEntry *se; explicit DelayUserStatsVisitor(StoreEntry *s) : se(s) {} @@ -95,14 +89,6 @@ struct DelayUserUpdater { int incr; }; -void -DelayUserUpdateWalkee(DelayUserBucket::Pointer const ¤t, void *state) -{ - DelayUserUpdater *t = (DelayUserUpdater *)state; - /* This doesn't change the value of the DelayUserBucket, so is safe */ - const_cast(current.getRaw())->theBucket.update(t->spec, t->incr); -} - struct DelayUserUpdateVisitor { DelayUserUpdater *t; DelayUserUpdateVisitor(DelayUserUpdater *updater) : t(updater) {} diff --git a/src/DelayVector.cc b/src/DelayVector.cc index b637e3ad76..ce0afef36c 100644 --- a/src/DelayVector.cc +++ b/src/DelayVector.cc @@ -48,7 +48,7 @@ DelayVector::dump(StoreEntry *entry) const } void -DelayVector::update(int incr) +DelayVector::update(int) { /* * Each pool updates itself, diff --git a/src/DiskIO/IpcIo/IpcIoFile.cc b/src/DiskIO/IpcIo/IpcIoFile.cc index 0ecbdb4bbf..a69aa1c4ea 100644 --- a/src/DiskIO/IpcIo/IpcIoFile.cc +++ b/src/DiskIO/IpcIo/IpcIoFile.cc @@ -64,7 +64,7 @@ struct SipcIo { int disker; }; -std::ostream & +static std::ostream & operator <<(std::ostream &os, const SipcIo &sio) { return os << "ipcIo" << sio.worker << '.' << sio.msg.requestId << diff --git a/src/FwdState.cc b/src/FwdState.cc index 5f297d2257..d10efeb4a3 100644 --- a/src/FwdState.cc +++ b/src/FwdState.cc @@ -88,8 +88,8 @@ public: method_(method), fwd_(fwd), answer_() {} /* CallDialer API */ - virtual bool canDial(AsyncCall &call) { return fwd_.valid(); } - void dial(AsyncCall &call) { ((&(*fwd_))->*method_)(answer_); } + virtual bool canDial(AsyncCall &) { return fwd_.valid(); } + void dial(AsyncCall &) { ((&(*fwd_))->*method_)(answer_); } virtual void print(std::ostream &os) const { os << '(' << fwd_.get() << ", " << answer_ << ')'; } diff --git a/src/FwdState.h b/src/FwdState.h index eda01fb674..0361414f62 100644 --- a/src/FwdState.h +++ b/src/FwdState.h @@ -20,6 +20,7 @@ #include "fde.h" #include "http/StatusCode.h" #include "ip/Address.h" +#include "ip/forward.h" #include "PeerSelectState.h" #include "ResolvedPeers.h" #include "security/forward.h" @@ -199,7 +200,11 @@ private: PconnRace pconnRace; ///< current pconn race state }; -void getOutgoingAddress(HttpRequest * request, const Comm::ConnectionPointer &conn); +class acl_tos; +tos_t aclMapTOS(acl_tos *, ACLChecklist *); + +Ip::NfMarkConfig aclFindNfMarkConfig(acl_nfmark *, ACLChecklist *); +void getOutgoingAddress(HttpRequest *, const Comm::ConnectionPointer &); /// a collection of previously used persistent Squid-to-peer HTTP(S) connections extern PconnPool *fwdPconnPool; diff --git a/src/HttpHdrCc.cc b/src/HttpHdrCc.cc index 92571c8318..0bc64ada1b 100644 --- a/src/HttpHdrCc.cc +++ b/src/HttpHdrCc.cc @@ -48,7 +48,8 @@ LookupTable ccLookupTable(HttpHdrCcType::CC_OTHER,CcAttrs); std::vector ccHeaderStats(HttpHdrCcType::CC_ENUM_END); /// used to walk a table of http_header_cc_type structs -HttpHdrCcType &operator++ (HttpHdrCcType &aHeader) +static HttpHdrCcType & +operator++ (HttpHdrCcType &aHeader) { int tmp = (int)aHeader; aHeader = (HttpHdrCcType)(++tmp); @@ -61,7 +62,7 @@ httpHdrCcInitModule(void) { // check invariant on initialization table for (unsigned int j = 0; CcAttrs[j].name != nullptr; ++j) { - assert (static_cast(CcAttrs[j].id) == j); + assert(static_cast(CcAttrs[j].id) == j); } } diff --git a/src/HttpHdrRange.cc b/src/HttpHdrRange.cc index d5798d2932..5c7a1ff6c4 100644 --- a/src/HttpHdrRange.cc +++ b/src/HttpHdrRange.cc @@ -193,6 +193,8 @@ HttpHdrRangeSpec::mergeWith(const HttpHdrRangeSpec * donor) offset <= donor->offset && donor->offset < rhs; } +#else + (void)donor; #endif return merged; } diff --git a/src/HttpHdrSc.h b/src/HttpHdrSc.h index 0cf1a6cf69..8ef9b9dd6d 100644 --- a/src/HttpHdrSc.h +++ b/src/HttpHdrSc.h @@ -11,6 +11,7 @@ #include "http/forward.h" #include "HttpHdrScTarget.h" +#include "mem/PoolingAllocator.h" #include "SquidString.h" #include @@ -43,5 +44,6 @@ void httpHdrScInitModule (void); HttpHdrSc *httpHdrScParseCreate(String const &); void httpHdrScSetMaxAge(HttpHdrSc *, char const *, int); +http_hdr_sc_type &operator++(http_hdr_sc_type &); #endif /* SQUID_HTTPHDRSURROGATECONTROL_H */ diff --git a/src/HttpHdrScTarget.cc b/src/HttpHdrScTarget.cc index c8413dfa96..6248d5a6a6 100644 --- a/src/HttpHdrScTarget.cc +++ b/src/HttpHdrScTarget.cc @@ -9,10 +9,10 @@ /* DEBUG: section 90 HTTP Cache Control Header */ #include "squid.h" +#include "HttpHdrSc.h" #include "HttpHdrScTarget.h" #include "StatHist.h" -http_hdr_sc_type &operator++ (http_hdr_sc_type &aHeader); /* copies non-extant fields from new_sc to this sc */ void HttpHdrScTarget::mergeWith(const HttpHdrScTarget * new_sc) diff --git a/src/HttpHeader.cc b/src/HttpHeader.cc index 77249d7726..6508f89aa4 100644 --- a/src/HttpHeader.cc +++ b/src/HttpHeader.cc @@ -1607,7 +1607,7 @@ httpHeaderNoteParsedEntry(Http::HdrType id, String const &context, bool error) extern const HttpHeaderStat *dump_stat; /* argh! */ const HttpHeaderStat *dump_stat = NULL; -void +static void httpHeaderFieldStatDumper(StoreEntry * sentry, int, double val, double, int count) { const int id = static_cast(val); diff --git a/src/LoadableModule.cc b/src/LoadableModule.cc index 806cecd845..186c4148ee 100644 --- a/src/LoadableModule.cc +++ b/src/LoadableModule.cc @@ -36,12 +36,12 @@ LoadableModule::loaded() const } void -LoadableModule::load(int mode) +LoadableModule::load() { if (loaded()) throw TexcHere("internal error: reusing LoadableModule object"); - theHandle = openModule(mode); + theHandle = openModule(); if (!loaded()) throw TexcHere(errorMsg()); @@ -60,7 +60,7 @@ LoadableModule::unload() } void * -LoadableModule::openModule(int mode) +LoadableModule::openModule() { return lt_dlopen(theName.termedBuf()); } diff --git a/src/LoadableModule.h b/src/LoadableModule.h index 5ed0f7f34d..953722ef77 100644 --- a/src/LoadableModule.h +++ b/src/LoadableModule.h @@ -14,9 +14,6 @@ // wrapper for dlopen(3), libltdl, and friends class LoadableModule { -public: - enum LoadMode { lmNow, lmLazy }; - public: LoadableModule(const String &aName); ~LoadableModule(); // unloads if loaded @@ -25,7 +22,7 @@ public: const String &name() const { return theName; } const String &error() const { return theError; } - void load(int mode = lmNow); // throws Texc + void load(); // throws Texc void unload(); // throws Texc protected: @@ -34,7 +31,7 @@ protected: void *theHandle; private: - void *openModule(int mode); + void *openModule(); bool closeModule(); const char *errorMsg(); }; diff --git a/src/Makefile.am b/src/Makefile.am index 6033555cf9..2dcc867579 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -473,6 +473,7 @@ squid_SOURCES = \ tools.cc \ tools.h \ tunnel.cc \ + tunnel.h \ typedefs.h \ urn.cc \ urn.h \ @@ -1080,6 +1081,7 @@ nodist_tests_testString_SOURCES = \ tests/stub_SBuf.cc \ String.cc \ tests/stub_debug.cc \ + tests/stub_event.cc \ tests/stub_libmem.cc tests_testString_LDADD = \ base/libbase.la \ @@ -2024,6 +2026,7 @@ tests_test_http_range_SOURCES = \ tools.cc \ tools.h \ tests/stub_tunnel.cc \ + tunnel.h \ urn.cc \ urn.h \ tests/stub_wccp2.cc \ @@ -2417,6 +2420,7 @@ tests_testHttpRequest_SOURCES = \ tools.cc \ tools.h \ tests/stub_tunnel.cc \ + tunnel.h \ urn.cc \ urn.h \ tests/stub_wccp2.cc \ @@ -2722,6 +2726,7 @@ tests_testCacheManager_SOURCES = \ tools.cc \ tools.h \ tests/stub_tunnel.cc \ + tunnel.h \ urn.cc \ urn.h \ tests/stub_wccp2.cc \ @@ -2836,6 +2841,7 @@ tests_testConfigParser_SOURCES = \ cache_cf.h \ tests/stub_cbdata.cc \ tests/stub_debug.cc \ + tests/stub_event.cc \ tests/stub_fatal.cc \ fatal.h \ tests/stub_libmem.cc \ @@ -3049,6 +3055,7 @@ tests_testEvent_SOURCES = \ tools.cc \ tools.h \ tests/stub_tunnel.cc \ + tunnel.h \ urn.cc \ urn.h \ tests/stub_wccp2.cc \ diff --git a/src/MemObject.cc b/src/MemObject.cc index 2457cb447d..24d7b47300 100644 --- a/src/MemObject.cc +++ b/src/MemObject.cc @@ -419,6 +419,8 @@ MemObject::mostBytesWanted(int max, bool ignoreDelayPools) const DelayId largestAllowance = mostBytesAllowed (); return largestAllowance.bytesWanted(0, max); } +#else + (void)ignoreDelayPools; #endif return max; @@ -433,7 +435,8 @@ MemObject::setNoDelay(bool const newValue) store_client *sc = (store_client *) node->data; sc->delayId.setNoDelay(newValue); } - +#else + (void)newValue; #endif } diff --git a/src/MemStore.cc b/src/MemStore.cc index fb0a5992c8..2b9d436d55 100644 --- a/src/MemStore.cc +++ b/src/MemStore.cc @@ -234,8 +234,8 @@ MemStore::stat(StoreEntry &e) const if (slotLimit > 0) { const unsigned int slotsFree = Ipc::Mem::PagesAvailable(Ipc::Mem::PageId::cachePage); - if (slotsFree <= static_cast(slotLimit)) { - const int usedSlots = slotLimit - static_cast(slotsFree); + if (slotsFree <= static_cast(slotLimit)) { + const int usedSlots = slotLimit - static_cast(slotsFree); storeAppendPrintf(&e, "Used slots: %9d %.2f%%\n", usedSlots, (100.0 * usedSlots / slotLimit)); } diff --git a/src/MessageDelayPools.cc b/src/MessageDelayPools.cc index 35ecc9457f..28f5615d78 100644 --- a/src/MessageDelayPools.cc +++ b/src/MessageDelayPools.cc @@ -195,7 +195,7 @@ MessageDelayConfig::freePools() } void -MessageDelayConfig::dumpResponseDelayPoolParameters(StoreEntry *entry, const char *name) +MessageDelayConfig::dumpResponseDelayPoolParameters(StoreEntry *entry) { auto &pools = MessageDelayPools::Instance()->pools; for (auto pool: pools) diff --git a/src/MessageDelayPools.h b/src/MessageDelayPools.h index 5af7332481..e7de6c52ca 100644 --- a/src/MessageDelayPools.h +++ b/src/MessageDelayPools.h @@ -98,7 +98,7 @@ class MessageDelayConfig { public: void parseResponseDelayPool(); - void dumpResponseDelayPoolParameters(StoreEntry *e, const char *name); + void dumpResponseDelayPoolParameters(StoreEntry *); void parseResponseDelayPoolAccess(); void freePools(); }; @@ -113,9 +113,9 @@ free_response_delay_pool_parameters(MessageDelayConfig * cfg) } inline void -dump_response_delay_pool_parameters(StoreEntry *entry, const char *name, MessageDelayConfig &cfg) +dump_response_delay_pool_parameters(StoreEntry *entry, const char *, MessageDelayConfig &cfg) { - cfg.dumpResponseDelayPoolParameters(entry, name); + cfg.dumpResponseDelayPoolParameters(entry); } inline void diff --git a/src/NullDelayId.h b/src/NullDelayId.h index 456cfd0520..5db3eb1aec 100644 --- a/src/NullDelayId.h +++ b/src/NullDelayId.h @@ -21,7 +21,7 @@ class NullDelayId : public DelayIdComposite public: virtual int bytesWanted (int minimum, int maximum) const {return max(minimum,maximum);} - virtual void bytesIn(int qty) {} + virtual void bytesIn(int) {} }; #endif #endif /* NULLDELAYID_H */ diff --git a/src/PeerPoolMgr.cc b/src/PeerPoolMgr.cc index c9e80d25cd..abfa86d2d5 100644 --- a/src/PeerPoolMgr.cc +++ b/src/PeerPoolMgr.cc @@ -174,7 +174,7 @@ PeerPoolMgr::handleSecuredPeer(Security::EncryptorAnswer &answer) } void -PeerPoolMgr::handleSecureClosure(const CommCloseCbParams ¶ms) +PeerPoolMgr::handleSecureClosure(const CommCloseCbParams &) { Must(closer != NULL); Must(securer != NULL); diff --git a/src/SquidConfig.h b/src/SquidConfig.h index f9c2ff39f9..c25488a567 100644 --- a/src/SquidConfig.h +++ b/src/SquidConfig.h @@ -353,6 +353,8 @@ public: int pipeline_max_prefetch; + // these values are actually unsigned + // TODO: extend the parser to support more nuanced types int forward_max_tries; int connect_retries; diff --git a/src/Transients.cc b/src/Transients.cc index 5ccecad928..69b6de65c1 100644 --- a/src/Transients.cc +++ b/src/Transients.cc @@ -64,6 +64,8 @@ Transients::getStats(StoreInfoStats &stats) const stats.mem.size = Ipc::Mem::PageLevel(Ipc::Mem::PageId::cachePage) * pageSize; stats.mem.count = currentCount(); +#else + (void)stats; #endif } diff --git a/src/acl/Arp.cc b/src/acl/Arp.cc index d00b56ce5c..91cb36dec2 100644 --- a/src/acl/Arp.cc +++ b/src/acl/Arp.cc @@ -72,7 +72,7 @@ ACLARP::empty () const * Solaris code by R. Gancarz */ -Eui::Eui48 * +static Eui::Eui48 * aclParseArpData(const char *t) { char buf[256]; diff --git a/src/acl/Eui64.cc b/src/acl/Eui64.cc index 8dc28735fd..74ae0fba8c 100644 --- a/src/acl/Eui64.cc +++ b/src/acl/Eui64.cc @@ -44,7 +44,7 @@ ACLEui64::empty () const return eui64Data.empty(); } -Eui::Eui64 * +static Eui::Eui64 * aclParseEuiData(const char *t) { char buf[256]; diff --git a/src/acl/FilledChecklist.cc b/src/acl/FilledChecklist.cc index ac24664e82..51e489c0bb 100644 --- a/src/acl/FilledChecklist.cc +++ b/src/acl/FilledChecklist.cc @@ -273,6 +273,8 @@ ACLFilledChecklist::setIdent(const char *ident) assert(!rfc931[0]); if (ident) xstrncpy(rfc931, ident, USER_IDENT_SZ); +#else + (void)ident; #endif } diff --git a/src/acl/HttpStatus.cc b/src/acl/HttpStatus.cc index 4b0808b726..118f0c2e5d 100644 --- a/src/acl/HttpStatus.cc +++ b/src/acl/HttpStatus.cc @@ -91,7 +91,7 @@ ACLHTTPStatus::empty () const return data->empty(); } -acl_httpstatus_data* +static acl_httpstatus_data* aclParseHTTPStatusData(const char *t) { int status; diff --git a/src/acl/Ip.cc b/src/acl/Ip.cc index 9505e6d857..2cd794663f 100644 --- a/src/acl/Ip.cc +++ b/src/acl/Ip.cc @@ -84,7 +84,7 @@ acl_ip_data::toSBuf() const * is an entry in some address-based access control element. This * function is called via ACLIP::match() and the splay library. */ -int +static int aclIpAddrNetworkCompare(acl_ip_data * const &p, acl_ip_data * const &q) { Ip::Address A = p->addr1; diff --git a/src/acl/external/AD_group/ext_ad_group_acl.cc b/src/acl/external/AD_group/ext_ad_group_acl.cc index 1d265c5bdb..4a60817cc6 100644 --- a/src/acl/external/AD_group/ext_ad_group_acl.cc +++ b/src/acl/external/AD_group/ext_ad_group_acl.cc @@ -756,7 +756,7 @@ process_options(int argc, char *argv[]) exit(EXIT_SUCCESS); case '?': opt = optopt; - /* fall thru to default */ + /* [[fallthrough]] */ default: fprintf(stderr, "%s: FATAL: Unknown option: -%c. Exiting\n", program_name, opt); usage(argv[0]); diff --git a/src/acl/external/LM_group/ext_lm_group_acl.cc b/src/acl/external/LM_group/ext_lm_group_acl.cc index 79e857232c..30490e2a77 100644 --- a/src/acl/external/LM_group/ext_lm_group_acl.cc +++ b/src/acl/external/LM_group/ext_lm_group_acl.cc @@ -495,7 +495,7 @@ process_options(int argc, char *argv[]) exit(EXIT_SUCCESS); case '?': opt = optopt; - /* fall thru to default */ + /* [[fallthrough]] */ default: fprintf(stderr, "%s: FATAL: Unknown option: -%c. Exiting\n", program_name, opt); usage(argv[0]); diff --git a/src/acl/external/kerberos_ldap_group/support_ldap.cc b/src/acl/external/kerberos_ldap_group/support_ldap.cc index 61bf4b6144..0a00520472 100644 --- a/src/acl/external/kerberos_ldap_group/support_ldap.cc +++ b/src/acl/external/kerberos_ldap_group/support_ldap.cc @@ -131,7 +131,7 @@ ldap_sasl_rebind(LDAP * ld, struct ldap_creds *cp = (struct ldap_creds *) params; return tool_sasl_bind(ld, cp->dn, cp->pw); } -#endif +#endif /* HAVE_SASL_H || HAVE_SASL_SASL_H || HAVE_SASL_DARWIN */ static LDAP_REBIND_PROC ldap_simple_rebind; @@ -152,7 +152,7 @@ ldap_simple_rebind(LDAP * ld, #elif HAVE_LDAP_REBIND_FUNCTION #ifndef LDAP_REFERRALS #define LDAP_REFERRALS -#endif +#endif /* LDAP_REFERRALS */ #if HAVE_SASL_H || HAVE_SASL_SASL_H || HAVE_SASL_DARWIN static LDAP_REBIND_FUNCTION ldap_sasl_rebind; @@ -196,8 +196,8 @@ ldap_simple_rebind(LDAP * ld, static LDAP_REBIND_PROC ldap_sasl_rebind; static int -ldap_sasl_rebind(LDAP * ld, LDAP_CONST char *, ber_tag_t request, - ber_int_t msgid, void *params) +ldap_sasl_rebind(LDAP * ld, LDAP_CONST char *, ber_tag_t, + ber_int_t, void *params) { struct ldap_creds *cp = (struct ldap_creds *) params; return tool_sasl_bind(ld, cp->dn, cp->pw); @@ -207,8 +207,8 @@ ldap_sasl_rebind(LDAP * ld, LDAP_CONST char *, ber_tag_t request, static LDAP_REBIND_PROC ldap_simple_rebind; static int -ldap_simple_rebind(LDAP * ld, LDAP_CONST char *, ber_tag_t request, - ber_int_t msgid, void *params) +ldap_simple_rebind(LDAP * ld, LDAP_CONST char *, ber_tag_t, + ber_int_t, void *params) { struct ldap_creds *cp = (struct ldap_creds *) params; diff --git a/src/acl/external/kerberos_ldap_group/support_sasl.cc b/src/acl/external/kerberos_ldap_group/support_sasl.cc index bb6b89d8f8..831449920b 100644 --- a/src/acl/external/kerberos_ldap_group/support_sasl.cc +++ b/src/acl/external/kerberos_ldap_group/support_sasl.cc @@ -241,7 +241,7 @@ tool_sasl_bind(LDAP * ld, char *binddn, char *ssl) * char *sasl_secprops = (char *)"maxssf=56"; * char *sasl_secprops = NULL; */ - struct berval passwd = {0, NULL}; + struct berval passwd = {}; void *defaults; int rc = LDAP_SUCCESS; diff --git a/src/acl/external/session/ext_session_acl.cc b/src/acl/external/session/ext_session_acl.cc index 8fcffccbb6..5c7530daf8 100644 --- a/src/acl/external/session/ext_session_acl.cc +++ b/src/acl/external/session/ext_session_acl.cc @@ -197,13 +197,16 @@ copyValue(void *dst, const DB_ENTRY *src, size_t sz) static int session_active(const char *details, size_t len) { #if USE_BERKLEYDB - DBT key = {0}; - DBT data = {0}; + DBT key = {}; + DBT data = {}; key.data = (void *)details; key.size = len; #elif USE_TRIVIALDB TDB_DATA key; TDB_DATA data; + (void)len; +#else + (void)len; #endif if (fetchKey(key, &data)) { time_t timestamp; @@ -222,8 +225,8 @@ static int session_active(const char *details, size_t len) static void session_login(/*const*/ char *details, size_t len) { - DB_ENTRY key = {0}; - DB_ENTRY data = {0}; + DB_ENTRY key = {}; + DB_ENTRY data = {}; time_t now = time(0); #if USE_BERKLEYDB key.data = static_cast(details); @@ -243,7 +246,7 @@ session_login(/*const*/ char *details, size_t len) static void session_logout(/*const*/ char *details, size_t len) { - DB_ENTRY key = {0}; + DB_ENTRY key = {}; #if USE_BERKLEYDB key.data = static_cast(details); key.size = len; @@ -274,6 +277,7 @@ int main(int argc, char **argv) switch (opt) { case 'T': fixed_timeout = 1; + /* [[fallthrough]] */ case 't': session_ttl = strtol(optarg, NULL, 0); break; diff --git a/src/acl/external/unix_group/check_group.cc b/src/acl/external/unix_group/check_group.cc index 7462df61ab..92eceb48f2 100644 --- a/src/acl/external/unix_group/check_group.cc +++ b/src/acl/external/unix_group/check_group.cc @@ -181,8 +181,7 @@ main(int argc, char *argv[]) } else { fprintf(stderr, "Unknown option character `\\x%x'.\n", optopt); } - // fall through to display help texts. - + /* [[fallthrough]] */ default: usage(argv[0]); exit(EXIT_FAILURE); diff --git a/src/adaptation/icap/ModXact.cc b/src/adaptation/icap/ModXact.cc index 6986eff718..3faaa5ece0 100644 --- a/src/adaptation/icap/ModXact.cc +++ b/src/adaptation/icap/ModXact.cc @@ -248,13 +248,11 @@ void Adaptation::Icap::ModXact::writeMore() case State::writingInit: // waiting for service OPTIONS Must(state.serviceWaiting); + return; case State::writingConnect: // waiting for the connection to establish - case State::writingHeaders: // waiting for the headers to be written - case State::writingPaused: // waiting for the ICAP server response - case State::writingReallyDone: // nothing more to write return; @@ -1578,6 +1576,9 @@ void Adaptation::Icap::ModXact::makeUsernameHeader(const HttpRequest *request, M } else buf.appendf("%s: %s\r\n", TheConfig.client_username_header, value); } +#else + (void)request; + (void)buf; #endif } diff --git a/src/anyp/Uri.cc b/src/anyp/Uri.cc index a9c5b5970b..2c41905473 100644 --- a/src/anyp/Uri.cc +++ b/src/anyp/Uri.cc @@ -828,10 +828,9 @@ matchDomainName(const char *h, const char *d, MatchDomainNameFlags flags) /* * return true if we can serve requests for this method. */ -int +bool urlCheckRequest(const HttpRequest * r) { - int rc = 0; /* protocol "independent" methods * * actually these methods are specific to HTTP: @@ -844,7 +843,7 @@ urlCheckRequest(const HttpRequest * r) */ if (r->method == Http::METHOD_CONNECT) - return 1; + return true; // we support OPTIONS and TRACE directed at us (with a 501 reply, for now) // we also support forwarding OPTIONS and TRACE, except for the *-URI ones @@ -852,56 +851,49 @@ urlCheckRequest(const HttpRequest * r) return (r->header.getInt64(Http::HdrType::MAX_FORWARDS) == 0 || r->url.path() != AnyP::Uri::Asterisk()); if (r->method == Http::METHOD_PURGE) - return 1; + return true; /* does method match the protocol? */ switch (r->url.getScheme()) { case AnyP::PROTO_URN: - case AnyP::PROTO_HTTP: - case AnyP::PROTO_CACHE_OBJECT: - rc = 1; - break; + return true; case AnyP::PROTO_FTP: - - if (r->method == Http::METHOD_PUT) - rc = 1; + if (r->method == Http::METHOD_PUT || + r->method == Http::METHOD_GET || + r->method == Http::METHOD_HEAD ) + return true; + return false; case AnyP::PROTO_GOPHER: - case AnyP::PROTO_WAIS: - case AnyP::PROTO_WHOIS: - if (r->method == Http::METHOD_GET) - rc = 1; - else if (r->method == Http::METHOD_HEAD) - rc = 1; - - break; + if (r->method == Http::METHOD_GET || + r->method == Http::METHOD_HEAD) + return true; + return false; case AnyP::PROTO_HTTPS: -#if USE_OPENSSL - rc = 1; -#elif USE_GNUTLS - rc = 1; +#if USE_OPENSSL || USE_GNUTLS + return true; #else /* - * Squid can't originate an SSL connection, so it should - * never receive an "https:" URL. It should always be - * CONNECT instead. - */ - rc = 0; + * Squid can't originate an SSL connection, so it should + * never receive an "https:" URL. It should always be + * CONNECT instead. + */ + return false; #endif - break; default: - break; + return false; } - return rc; + /* notreached */ + return false; } AnyP::Uri::Uri(AnyP::UriScheme const &aScheme) : @@ -916,28 +908,29 @@ AnyP::Uri::Uri(AnyP::UriScheme const &aScheme) : char * AnyP::Uri::cleanup(const char *uri) { - int flags = 0; char *cleanedUri = nullptr; switch (Config.uri_whitespace) { - case URI_WHITESPACE_ALLOW: - flags |= RFC1738_ESCAPE_NOSPACE; - // fall through to next case - case URI_WHITESPACE_ENCODE: - flags |= RFC1738_ESCAPE_UNESCAPED; + case URI_WHITESPACE_ALLOW: { + const auto flags = RFC1738_ESCAPE_NOSPACE | RFC1738_ESCAPE_UNESCAPED; cleanedUri = xstrndup(rfc1738_do_escape(uri, flags), MAX_URL); break; + } + + case URI_WHITESPACE_ENCODE: + cleanedUri = xstrndup(rfc1738_do_escape(uri, RFC1738_ESCAPE_UNESCAPED), MAX_URL); + break; case URI_WHITESPACE_CHOP: { - flags |= RFC1738_ESCAPE_UNESCAPED; const auto pos = strcspn(uri, w_space); char *choppedUri = nullptr; if (pos < strlen(uri)) choppedUri = xstrndup(uri, pos + 1); - cleanedUri = xstrndup(rfc1738_do_escape(choppedUri ? choppedUri : uri, flags), MAX_URL); + cleanedUri = xstrndup(rfc1738_do_escape(choppedUri ? choppedUri : uri, + RFC1738_ESCAPE_UNESCAPED), MAX_URL); cleanedUri[pos] = '\0'; xfree(choppedUri); + break; } - break; case URI_WHITESPACE_DENY: case URI_WHITESPACE_STRIP: @@ -957,8 +950,8 @@ AnyP::Uri::cleanup(const char *uri) *q = '\0'; cleanedUri = xstrndup(rfc1738_escape_unescaped(tmp_uri), MAX_URL); xfree(tmp_uri); + break; } - break; } assert(cleanedUri); diff --git a/src/anyp/Uri.h b/src/anyp/Uri.h index bf5964bea5..0ba96ed0d2 100644 --- a/src/anyp/Uri.h +++ b/src/anyp/Uri.h @@ -260,7 +260,7 @@ enum MatchDomainNameFlags { * \retval -1 means the host is less than the domain */ int matchDomainName(const char *host, const char *domain, MatchDomainNameFlags flags = mdnNone); -int urlCheckRequest(const HttpRequest *); +bool urlCheckRequest(const HttpRequest *); void urlExtMethodConfigure(void); #endif /* SQUID_SRC_ANYP_URI_H */ diff --git a/src/anyp/UriScheme.cc b/src/anyp/UriScheme.cc index bac54353c7..180d3fb613 100644 --- a/src/anyp/UriScheme.cc +++ b/src/anyp/UriScheme.cc @@ -48,7 +48,7 @@ AnyP::UriScheme::Init() } } -const AnyP::ProtocolType +AnyP::ProtocolType AnyP::UriScheme::FindProtocolType(const SBuf &scheme) { if (scheme.isEmpty()) diff --git a/src/anyp/UriScheme.h b/src/anyp/UriScheme.h index 049a1ad89b..35779c4c54 100644 --- a/src/anyp/UriScheme.h +++ b/src/anyp/UriScheme.h @@ -55,7 +55,7 @@ public: static void Init(); /// \returns ProtocolType for the given scheme name or PROTO_UNKNOWN - static const AnyP::ProtocolType FindProtocolType(const SBuf &); + static AnyP::ProtocolType FindProtocolType(const SBuf &); private: /// optimization: stores down-cased protocol scheme names, copied from diff --git a/src/auth/UserRequest.cc b/src/auth/UserRequest.cc index 1ffc3305be..388fe64b7f 100644 --- a/src/auth/UserRequest.cc +++ b/src/auth/UserRequest.cc @@ -392,8 +392,8 @@ Auth::UserRequest::authenticate(Auth::UserRequest::Pointer * auth_user_request, if (request->auth_user_request == NULL) { request->auth_user_request = *auth_user_request; } - - /* fallthrough to ERROR case and do the challenge */ + *auth_user_request = nullptr; + return AUTH_ACL_CHALLENGE; case Auth::CRED_ERROR: /* this ACL check is finished. */ diff --git a/src/auth/basic/SSPI/basic_sspi_auth.cc b/src/auth/basic/SSPI/basic_sspi_auth.cc index e4b5bc215a..6e13fe47c3 100644 --- a/src/auth/basic/SSPI/basic_sspi_auth.cc +++ b/src/auth/basic/SSPI/basic_sspi_auth.cc @@ -100,7 +100,7 @@ process_options(int argc, char *argv[]) exit(EXIT_SUCCESS); case '?': opt = optopt; - /* fall thru to default */ + /* [[fallthrough]] */ default: fprintf(stderr, "FATAL: Unknown option: -%c\n", opt); usage(argv[0]); diff --git a/src/auth/digest/UserRequest.cc b/src/auth/digest/UserRequest.cc index 141535d153..4adab31988 100644 --- a/src/auth/digest/UserRequest.cc +++ b/src/auth/digest/UserRequest.cc @@ -357,12 +357,12 @@ Auth::Digest::UserRequest::HandleReply(void *data, const Helper::Reply &reply) case Helper::TT: debugs(29, DBG_IMPORTANT, "ERROR: Digest auth does not support the result code received. Using the wrong helper program? received: " << reply); - // fall through to next case. Handle this as an ERR response. + // [[fallthrough]] to handle this as an ERR response case Helper::TimedOut: case Helper::BrokenHelper: + // [[fallthrough]] to (silently) handle this as an ERR response // TODO retry the broken lookup on another helper? - // fall through to next case for now. Handle this as an ERR response silently. case Helper::Error: { /* allow this because the digest_request pointer is purely local */ Auth::Digest::UserRequest *digest_request = dynamic_cast(auth_user_request.getRaw()); @@ -376,6 +376,7 @@ Auth::Digest::UserRequest::HandleReply(void *data, const Helper::Reply &reply) digest_request->setDenyMessage(msgNote.c_str()); } else if (reply.other().hasContent()) { // old helpers did send ERR result but a bare message string instead of message= key name. + // TODO deprecate and remove old auth digest helper protocol digest_request->setDenyMessage(reply.other().content()); if (!oldHelperWarningDone) { debugs(29, DBG_IMPORTANT, "WARNING: Digest auth helper returned old format ERR response. It needs to be upgraded."); diff --git a/src/auth/negotiate/Config.cc b/src/auth/negotiate/Config.cc index a018a34f93..a86084b780 100644 --- a/src/auth/negotiate/Config.cc +++ b/src/auth/negotiate/Config.cc @@ -165,7 +165,7 @@ Auth::Negotiate::Config::fixHeader(Auth::UserRequest::Pointer auth_user_request, * tied to it, even if MAYBE the client could handle it - Kinkie */ rep->header.delByName("keep-alive"); request->flags.proxyKeepalive = false; - /* fall through */ + /* [[fallthrough]] */ case Auth::Ok: /* Special case: authentication finished OK but disallowed by ACL. diff --git a/src/auth/negotiate/SSPI/negotiate_sspi_auth.cc b/src/auth/negotiate/SSPI/negotiate_sspi_auth.cc index 0ca9c2052f..e37afca158 100644 --- a/src/auth/negotiate/SSPI/negotiate_sspi_auth.cc +++ b/src/auth/negotiate/SSPI/negotiate_sspi_auth.cc @@ -115,7 +115,7 @@ process_options(int argc, char *argv[]) exit(EXIT_SUCCESS); case '?': opt = optopt; - /* fall thru to default */ + /* [[fallthrough]] */ default: fprintf(stderr, "ERROR: unknown option: -%c. Exiting\n", opt); usage(); diff --git a/src/auth/negotiate/UserRequest.cc b/src/auth/negotiate/UserRequest.cc index f35442fc65..3965e19403 100644 --- a/src/auth/negotiate/UserRequest.cc +++ b/src/auth/negotiate/UserRequest.cc @@ -369,7 +369,7 @@ Auth::Negotiate::UserRequest::HandleReply(void *data, const Helper::Reply &reply case Helper::Unknown: debugs(29, DBG_IMPORTANT, "ERROR: Negotiate Authentication Helper crashed (" << reply.reservationId << ")"); - /* continue to the next case */ + /* [[fallthrough]] */ case Helper::TimedOut: case Helper::BrokenHelper: diff --git a/src/auth/negotiate/kerberos/negotiate_kerberos_pac.cc b/src/auth/negotiate/kerberos/negotiate_kerberos_pac.cc index b77d07121c..b81874930e 100644 --- a/src/auth/negotiate/kerberos/negotiate_kerberos_pac.cc +++ b/src/auth/negotiate/kerberos/negotiate_kerberos_pac.cc @@ -114,7 +114,7 @@ get1byt(void) return var; } -char * +static char * pstrcpy( char *src, const char *dst) { if (dst) { @@ -126,7 +126,7 @@ pstrcpy( char *src, const char *dst) return src; } -char * +static char * pstrcat( char *src, const char *dst) { if (dst) { diff --git a/src/auth/negotiate/wrapper/negotiate_wrapper.cc b/src/auth/negotiate/wrapper/negotiate_wrapper.cc index 6ca26d77bf..534b61a221 100644 --- a/src/auth/negotiate/wrapper/negotiate_wrapper.cc +++ b/src/auth/negotiate/wrapper/negotiate_wrapper.cc @@ -82,7 +82,8 @@ LogTime() return buf; } -void usage(void) +static void +usage() { fprintf(stderr, "Usage: \n"); fprintf(stderr, "negotiate_wrapper [-h] [-d] --ntlm ntlm helper + arguments --kerberos kerberos helper + arguments\n"); diff --git a/src/auth/ntlm/Config.cc b/src/auth/ntlm/Config.cc index 83681e809d..08ebb59a14 100644 --- a/src/auth/ntlm/Config.cc +++ b/src/auth/ntlm/Config.cc @@ -164,13 +164,13 @@ Auth::Ntlm::Config::fixHeader(Auth::UserRequest::Pointer auth_user_request, Http /* here it makes sense to drop the connection, as auth is * tied to it, even if MAYBE the client could handle it - Kinkie */ request->flags.proxyKeepalive = false; - /* fall through */ + /* [[fallthrough]] */ case Auth::Ok: /* Special case: authentication finished OK but disallowed by ACL. * Need to start over to give the client another chance. */ - /* fall through */ + /* [[fallthrough]] */ case Auth::Unchecked: /* semantic change: do not drop the connection. diff --git a/src/auth/ntlm/SSPI/ntlm_sspi_auth.cc b/src/auth/ntlm/SSPI/ntlm_sspi_auth.cc index 7eec39d9da..8c77d13033 100644 --- a/src/auth/ntlm/SSPI/ntlm_sspi_auth.cc +++ b/src/auth/ntlm/SSPI/ntlm_sspi_auth.cc @@ -402,7 +402,7 @@ process_options(int argc, char *argv[]) exit(EXIT_SUCCESS); case '?': opt = optopt; - /* fall thru to default */ + /* [[fallthrough]] */ default: fprintf(stderr, "unknown option: -%c. Exiting\n", opt); usage(); diff --git a/src/auth/ntlm/UserRequest.cc b/src/auth/ntlm/UserRequest.cc index e6dd22eac2..7a33cd4281 100644 --- a/src/auth/ntlm/UserRequest.cc +++ b/src/auth/ntlm/UserRequest.cc @@ -361,7 +361,7 @@ Auth::Ntlm::UserRequest::HandleReply(void *data, const Helper::Reply &reply) case Helper::Unknown: debugs(29, DBG_IMPORTANT, "ERROR: NTLM Authentication Helper crashed (" << reply.reservationId << ")"); - /* continue to the next case */ + /* [[fallthrough]] */ case Helper::TimedOut: case Helper::BrokenHelper: diff --git a/src/auth/ntlm/fake/ntlm_fake_auth.cc b/src/auth/ntlm/fake/ntlm_fake_auth.cc index 34e859daa8..3738c82525 100644 --- a/src/auth/ntlm/fake/ntlm_fake_auth.cc +++ b/src/auth/ntlm/fake/ntlm_fake_auth.cc @@ -122,7 +122,7 @@ process_options(int argc, char *argv[]) exit(EXIT_SUCCESS); case '?': opt = optopt; - /* fall thru to default */ + /* [[fallthrough]] */ default: fprintf(stderr, "unknown option: -%c. Exiting\n", opt); usage(); diff --git a/src/auth/toUtf.cc b/src/auth/toUtf.cc index 5f19cd143e..bb94c8a08c 100644 --- a/src/auth/toUtf.cc +++ b/src/auth/toUtf.cc @@ -10,6 +10,8 @@ #include "auth/toUtf.h" #include "sbuf/SBuf.h" +#include + SBuf Latin1ToUtf8(const char *in) { @@ -56,9 +58,11 @@ Cp1251ToUtf8(const char *in) size_t bytesToWrite = 0; char sequence[4] = {0, 0, 0, 0}; + static_assert(std::numeric_limits::max() == 0xFFu, + "we require char to be exactly 8 bits"); if (ch < 0x80) u = ch; - else if (ch >= 0xC0 && ch <= 0xFF) // 0x0410..0x044F + else if (ch >= 0xC0) // 0x0410..0x044F u = 0x0350 + ch; else u = unicodevalues[ch - 0x80]; @@ -74,14 +78,13 @@ Cp1251ToUtf8(const char *in) case 3: sequence[2] = static_cast(u & 0x3f) | 0x80; u >>= 6; - // fall through + /* [[fallthrough]] */ case 2: sequence[1] = static_cast(u & 0x3f) | 0x80; u >>= 6; - // fall through + /* [[fallthrough]] */ case 1: sequence[0] = static_cast(u) | firstByteMark[bytesToWrite]; - // fall through } result.append(sequence, bytesToWrite); } @@ -127,8 +130,10 @@ isValidUtf8CodePoint(const unsigned char* source, const size_t length) // Everything else falls through when "true"... case 4: if ((a = (*--srcptr)) < 0x80 || a > 0xBF) return false; + /* [[fallthrough]] */ case 3: if ((a = (*--srcptr)) < 0x80 || a > 0xBF) return false; + /* [[fallthrough]] */ case 2: if ((a = (*--srcptr)) > 0xBF) return false; @@ -150,6 +155,7 @@ isValidUtf8CodePoint(const unsigned char* source, const size_t length) if (a < 0x80) return false; break; } + /* [[fallthrough]] */ case 1: if (*source >= 0x80 && *source < 0xC2) return false; diff --git a/src/cache_cf.cc b/src/cache_cf.cc index 1d7950c61d..5808631fc8 100644 --- a/src/cache_cf.cc +++ b/src/cache_cf.cc @@ -158,8 +158,6 @@ static const char *const B_KBYTES_STR = "KB"; static const char *const B_MBYTES_STR = "MB"; static const char *const B_GBYTES_STR = "GB"; -static const char *const list_sep = ", \t\n\r"; - // std::chrono::years requires C++20. Do our own rough calculation for now. static const double HoursPerYear = 24*365.2522; @@ -2588,7 +2586,7 @@ dump_int64_t(StoreEntry * entry, const char *name, int64_t var) storeAppendPrintf(entry, "%s %" PRId64 "\n", name, var); } -void +static void parse_int64_t(int64_t *var) { int64_t i; @@ -2679,7 +2677,7 @@ parse_tristate(int *var) #define free_tristate free_int -void +static void parse_pipelinePrefetch(int *var) { char *token = ConfigParser::PeekAtToken(); @@ -3042,8 +3040,8 @@ dump_time_msec(StoreEntry * entry, const char *name, time_msec_t var) storeAppendPrintf(entry, "%s %d seconds\n", name, (int)(var/1000) ); } -void -parse_time_msec(time_msec_t * var) +static void +parse_time_msec(time_msec_t *var) { *var = parseTimeLine().count(); } diff --git a/src/carp.cc b/src/carp.cc index 0361195ddf..b9f8705029 100644 --- a/src/carp.cc +++ b/src/carp.cc @@ -10,6 +10,7 @@ #include "squid.h" #include "CachePeer.h" +#include "carp.h" #include "HttpRequest.h" #include "mgr/Registration.h" #include "neighbors.h" diff --git a/src/cbdata.cc b/src/cbdata.cc index 6ef1cc6fc3..9c2be617de 100644 --- a/src/cbdata.cc +++ b/src/cbdata.cc @@ -252,13 +252,15 @@ cbdataInternalAlloc(cbdata_type type, const char *file, int line) dlinkAdd(c, &c->link, &cbdataEntries); debugs(45, 3, "Allocating " << p << " " << file << ":" << line); #else + (void)file; + (void)line; debugs(45, 9, "Allocating " << p); #endif return p; } -void +static void cbdataRealFree(cbdata *c, const char *file, const int line) { #if WITH_VALGRIND @@ -273,6 +275,8 @@ cbdataRealFree(cbdata *c, const char *file, const int line) dlinkDelete(&c->link, &cbdataEntries); #else debugs(45, 9, "Freeing " << p); + (void)file; + (void)line; #endif #if WITH_VALGRIND diff --git a/src/cbdata.h b/src/cbdata.h index 8e379521f7..710441afaf 100644 --- a/src/cbdata.h +++ b/src/cbdata.h @@ -245,11 +245,11 @@ void cbdataInternalUnlock(const void *p); \code void *cbdata; ... - if (cbdataReferenceValidDone(reference, &cbdata)) != NULL) + if (cbdataReferenceValidDone(reference, &cbdata))) callback(..., cbdata); \endcode * - * \param var The reference variable. Will be automatically cleared to NULL. + * \param var The reference variable. Will be automatically cleared to nullptr * \param ptr A temporary pointer to the referenced data (if valid). */ int cbdataInternalReferenceDoneValid(void **p, void **tp); @@ -345,9 +345,9 @@ public: * * \deprecated Prefer the use of CbcPointer<> smart pointer. * - * \param var The reference variable. Will be automatically cleared to NULL. + * \param var The reference variable. Will be automatically cleared to nullptr */ -#define cbdataReferenceDone(var) do {if (var) {cbdataInternalUnlock(var); var = NULL;}} while(0) +#define cbdataReferenceDone(var) do {if (var) {cbdataInternalUnlock(var); var = nullptr;}} while(0) /** * A generic wrapper for passing object pointers through cbdata. diff --git a/src/cf_gen.cc b/src/cf_gen.cc index a59ec05fa8..483a05f038 100644 --- a/src/cf_gen.cc +++ b/src/cf_gen.cc @@ -369,7 +369,7 @@ main(int argc, char *argv[]) state = sSTART; } else if (strcmp(buff, "CONFIG_START") == 0) { state = sCFGLINES; - } else { // if (buff != NULL) { + } else { assert(buff != NULL); entries.back().doc.push_back(buff); } @@ -378,7 +378,7 @@ main(int argc, char *argv[]) case sCFGLINES: if (strcmp(buff, "CONFIG_END") == 0) { state = sDOC; - } else { // if (buff != NULL) { + } else { assert(buff != NULL); entries.back().cfgLines.push_back(buff); } @@ -848,13 +848,14 @@ gen_quote_escape(const std::string &var) static std::string esc; esc.clear(); - for (int i = 0; i < var.length(); ++i) { - switch (var[i]) { + for (const auto c : var) { + switch (c) { case '"': case '\\': esc += '\\'; + /* [[fallthrough]] */ default: - esc += var[i]; + esc += c; } } diff --git a/src/client_side.cc b/src/client_side.cc index 7da4c82925..2bd01b98c5 100644 --- a/src/client_side.cc +++ b/src/client_side.cc @@ -1553,18 +1553,9 @@ bool ConnStateData::serveDelayedError(Http::Stream *context) } #endif // USE_OPENSSL -/// ConnStateData::tunnelOnError() wrapper. Reduces code changes. TODO: Remove. -bool -clientTunnelOnError(ConnStateData *conn, Http::StreamPointer &context, HttpRequest::Pointer &request, const HttpRequestMethod& method, err_type requestError) -{ - assert(conn); - assert(conn->pipeline.front() == context); - return conn->tunnelOnError(method, requestError); -} - /// initiate tunneling if possible or return false otherwise bool -ConnStateData::tunnelOnError(const HttpRequestMethod &method, const err_type requestError) +ConnStateData::tunnelOnError(const HttpRequestMethod &, const err_type requestError) { if (!Config.accessList.on_unsupported_protocol) { debugs(33, 5, "disabled; send error: " << requestError); @@ -2946,7 +2937,7 @@ ConnStateData::parseTlsHandshake() HttpRequest::Pointer request = context->http->request; debugs(83, 5, "Got something other than TLS Client Hello. Cannot SslBump."); updateError(ERR_PROTOCOL_UNKNOWN, parseErrorDetails); - if (!clientTunnelOnError(this, context, request, HttpRequestMethod(), ERR_PROTOCOL_UNKNOWN)) + if (!tunnelOnError(HttpRequestMethod(), ERR_PROTOCOL_UNKNOWN)) clientConnection->close(); return; } @@ -2965,7 +2956,8 @@ ConnStateData::parseTlsHandshake() } } -void httpsSslBumpStep2AccessCheckDone(Acl::Answer answer, void *data) +static void +httpsSslBumpStep2AccessCheckDone(Acl::Answer answer, void *data) { ConnStateData *connState = (ConnStateData *) data; diff --git a/src/client_side.h b/src/client_side.h index 80da334420..b6b9133bf3 100644 --- a/src/client_side.h +++ b/src/client_side.h @@ -213,7 +213,7 @@ public: /// noteTakeServerConnectionControl() callback parameter class ServerConnectionContext { public: - ServerConnectionContext(const Comm::ConnectionPointer &conn, const HttpRequest::Pointer &req, const SBuf &post101Bytes): preReadServerBytes(post101Bytes), conn_(conn) { conn_->enterOrphanage(); } + ServerConnectionContext(const Comm::ConnectionPointer &conn, const SBuf &post101Bytes) : preReadServerBytes(post101Bytes), conn_(conn) { conn_->enterOrphanage(); } /// gives to-server connection to the new owner Comm::ConnectionPointer connection() { conn_->leaveOrphanage(); return conn_; } @@ -341,9 +341,6 @@ public: /// tunneling them to the server later (on_unsupported_protocol) bool shouldPreserveClientData() const; - // TODO: move to the protected section when removing clientTunnelOnError() - bool tunnelOnError(const HttpRequestMethod &, const err_type); - /// build a fake http request ClientHttpRequest *buildFakeRequest(Http::MethodType const method, SBuf &useHost, unsigned short usePort, const SBuf &payload); @@ -437,6 +434,8 @@ protected: /// whether preservedClientData is valid and should be kept up to date bool preservingClientData_ = false; + bool tunnelOnError(const HttpRequestMethod &, const err_type); + private: /* ::Server API */ virtual void terminateAll(const Error &, const LogTagsErrors &); @@ -533,6 +532,7 @@ CSCB clientSocketRecipient; CSD clientSocketDetach; void clientProcessRequest(ConnStateData *, const Http1::RequestParserPointer &, Http::Stream *); +void clientProcessRequestFinished(ConnStateData *, const HttpRequest::Pointer &); void clientPostHttpsAccept(ConnStateData *); std::ostream &operator <<(std::ostream &os, const ConnStateData::PinnedIdleContext &pic); diff --git a/src/client_side_reply.cc b/src/client_side_reply.cc index 5b962e0821..f3f62a941b 100644 --- a/src/client_side_reply.cc +++ b/src/client_side_reply.cc @@ -695,7 +695,7 @@ clientReplyContext::cacheHit(StoreIOBuffer result) return; } else if (r->conditional()) { debugs(88, 5, "conditional HIT"); - if (processConditional(result)) + if (processConditional()) return; } @@ -809,7 +809,7 @@ clientReplyContext::processOnlyIfCachedMiss() /// process conditional request from client bool -clientReplyContext::processConditional(StoreIOBuffer &result) +clientReplyContext::processConditional() { StoreEntry *const e = http->storeEntry(); @@ -895,6 +895,8 @@ purgeEntriesByUrl(HttpRequest * req, const char *url) debugs(88, 5, m << ' ' << url << ' ' << storeKeyText(key)); #if USE_HTCP neighborsHtcpClear(nullptr, req, m, HTCP_CLR_INVALIDATION); +#else + (void)req; #endif Store::Root().evictIfFound(key); } diff --git a/src/client_side_reply.h b/src/client_side_reply.h index e80dd9d620..67d913df6e 100644 --- a/src/client_side_reply.h +++ b/src/client_side_reply.h @@ -109,7 +109,7 @@ private: bool alwaysAllowResponse(Http::StatusCode sline) const; int checkTransferDone(); void processOnlyIfCachedMiss(); - bool processConditional(StoreIOBuffer &result); + bool processConditional(); void cacheHit(StoreIOBuffer result); void handleIMSReply(StoreIOBuffer result); void sendMoreData(StoreIOBuffer result); @@ -153,5 +153,8 @@ private: CollapsedRevalidation collapsedRevalidation; }; +// TODO: move to SideAgent parent, when we have one +void purgeEntriesByUrl(HttpRequest *, const char *); + #endif /* SQUID_CLIENTSIDEREPLY_H */ diff --git a/src/client_side_request.cc b/src/client_side_request.cc index 1fe241f9db..866d78db9c 100644 --- a/src/client_side_request.cc +++ b/src/client_side_request.cc @@ -33,6 +33,7 @@ #include "fd.h" #include "fde.h" #include "format/Token.h" +#include "FwdState.h" #include "gopher.h" #include "helper.h" #include "helper/Reply.h" @@ -1730,9 +1731,6 @@ ClientHttpRequest::clearRequest() * the callout. This is strictly for convenience. */ -tos_t aclMapTOS (acl_tos * head, ACLChecklist * ch); -Ip::NfMarkConfig aclFindNfMarkConfig (acl_nfmark * head, ACLChecklist * ch); - void ClientHttpRequest::doCallouts() { diff --git a/src/clients/FtpClient.cc b/src/clients/FtpClient.cc index 98f4d6975c..807e567348 100644 --- a/src/clients/FtpClient.cc +++ b/src/clients/FtpClient.cc @@ -698,7 +698,7 @@ Ftp::Client::sendPassive() state = SENT_EPSV_2; break; } - // else fall through to skip EPSV 2 + /* [[fallthrough]] to skip EPSV 2 */ case SENT_EPSV_2: /* EPSV IPv6 failed. Try EPSV IPv4 */ if (ctrl.conn->local.isIPv4()) { @@ -711,7 +711,7 @@ Ftp::Client::sendPassive() failed(ERR_FTP_FAILURE, 0); return false; } - // else fall through to skip EPSV 1 + /* [[fallthrough]] to skip EPSV 1 */ case SENT_EPSV_1: /* EPSV options exhausted. Try PASV now. */ debugs(9, 5, "FTP Channel (" << ctrl.conn->remote << ") rejects EPSV connection attempts. Trying PASV instead."); diff --git a/src/clients/FtpGateway.cc b/src/clients/FtpGateway.cc index 33d6dbfdd1..2f2e2cf683 100644 --- a/src/clients/FtpGateway.cc +++ b/src/clients/FtpGateway.cc @@ -1036,6 +1036,8 @@ Ftp::Gateway::checkAuth(const HttpHeader * req_hdr) loginParser(auth, false); } /* we fail with authorization-required error later IFF the FTP server requests it */ +#else + (void)req_hdr; #endif /* Test URL login syntax. Overrides any headers received. */ @@ -2580,6 +2582,8 @@ Ftp::Gateway::ftpAuthRequired(HttpRequest * request, SBuf &realm, AccessLogEntry /* add Authenticate header */ // XXX: performance regression. c_str() may reallocate newrep->header.putAuth("Basic", realm.c_str()); +#else + (void)realm; #endif return newrep; } diff --git a/src/clients/HttpTunneler.cc b/src/clients/HttpTunneler.cc index 34bfc2e490..0c5e98d8f9 100644 --- a/src/clients/HttpTunneler.cc +++ b/src/clients/HttpTunneler.cc @@ -98,7 +98,7 @@ Http::Tunneler::start() } void -Http::Tunneler::handleConnectionClosure(const CommCloseCbParams ¶ms) +Http::Tunneler::handleConnectionClosure(const CommCloseCbParams &) { closer = nullptr; bailWith(new ErrorState(ERR_CONNECT_FAIL, Http::scBadGateway, request.getRaw(), al)); diff --git a/src/comm.cc b/src/comm.cc index dba7c60e9c..05122a4e29 100644 --- a/src/comm.cc +++ b/src/comm.cc @@ -266,7 +266,7 @@ limitError(int const anErrno) return anErrno == ENFILE || anErrno == EMFILE; } -void +static void comm_set_v6only(int fd, int tos) { #ifdef IPV6_V6ONLY @@ -285,7 +285,7 @@ comm_set_v6only(int fd, int tos) * - OpenBSD divert-to support, * - FreeBSD IPFW TPROXY v4 support. */ -void +static void comm_set_transparent(int fd) { #if _SQUID_LINUX_ && defined(IP_TRANSPARENT) // Linux @@ -781,13 +781,13 @@ old_comm_reset_close(int fd) comm_close(fd); } -void +static void commStartTlsClose(const FdeCbParams ¶ms) { Security::SessionSendGoodbye(fd_table[params.fd].ssl); } -void +static void comm_close_complete(const FdeCbParams ¶ms) { fde *F = &fd_table[params.fd]; diff --git a/src/debug.cc b/src/debug.cc index b48f88128a..fca6e8d580 100644 --- a/src/debug.cc +++ b/src/debug.cc @@ -9,6 +9,7 @@ /* DEBUG: section 00 Debug Routines */ #include "squid.h" +#include "base/TextException.h" #include "Debug.h" #include "DebugMessages.h" #include "fd.h" @@ -171,6 +172,8 @@ _db_print(const bool forceAlert, const char *format,...) #if HAVE_SYSLOG _db_print_syslog(forceAlert, format, args3); +#else + (void)forceAlert; #endif #if _SQUID_WINDOWS_ @@ -451,6 +454,14 @@ _db_set_syslog(const char *facility) #endif /* LOG_LOCAL4 */ } +#else /* HAVE_SYSLOG */ + +void +_db_set_syslog(const char *) +{ + throw TextException("Logging to syslog is not available on this platform", Here()); +} + #endif void diff --git a/src/delay_pools.cc b/src/delay_pools.cc index 1306527f56..86fe2e709a 100644 --- a/src/delay_pools.cc +++ b/src/delay_pools.cc @@ -421,7 +421,7 @@ Aggregate::parse() } DelayIdComposite::Pointer -Aggregate::id(CompositeSelectionDetails &details) +Aggregate::id(CompositeSelectionDetails &) { if (rate()->restore_bps != -1) return new AggregateId (this); @@ -482,7 +482,7 @@ DelayPools::FreeDelayData() } void -DelayPools::Update(void *unused) +DelayPools::Update(void *) { if (!pools()) return; diff --git a/src/dns_internal.cc b/src/dns_internal.cc index cdb34cf201..03431f21bb 100644 --- a/src/dns_internal.cc +++ b/src/dns_internal.cc @@ -28,6 +28,7 @@ #include "ip/tools.h" #include "MemBuf.h" #include "mgr/Registration.h" +#include "snmp_agent.h" #include "SquidConfig.h" #include "SquidTime.h" #include "Store.h" diff --git a/src/errorpage.cc b/src/errorpage.cc index 2136bc8257..8dc566cdaf 100644 --- a/src/errorpage.cc +++ b/src/errorpage.cc @@ -225,7 +225,8 @@ protected: }; /// \ingroup ErrorPageInternal -err_type &operator++ (err_type &anErr) +static err_type & +operator++ (err_type &anErr) { int tmp = (int)anErr; anErr = (err_type)(++tmp); @@ -233,7 +234,8 @@ err_type &operator++ (err_type &anErr) } /// \ingroup ErrorPageInternal -int operator - (err_type const &anErr, err_type const &anErr2) +static int +operator -(err_type const &anErr, err_type const &anErr2) { return (int)anErr - (int)anErr2; } @@ -550,6 +552,8 @@ TemplateFile::loadFor(const HttpRequest *request) debugs(4, DBG_IMPORTANT, "WARNING: Error Pages Missing Language: " << lang); } } +#else + (void)request; #endif return loaded(); @@ -1076,6 +1080,7 @@ ErrorState::compileLegacyCode(Build &build) case 'O': if (!building_deny_info_url) do_quote = 0; + /* [[fallthrough]] */ case 'o': p = request ? request->extacl_message.termedBuf() : external_acl_message; if (!p && !building_deny_info_url) diff --git a/src/esi/Assign.cc b/src/esi/Assign.cc index e4610fae1a..b29048ecbf 100644 --- a/src/esi/Assign.cc +++ b/src/esi/Assign.cc @@ -89,7 +89,7 @@ ESIAssign::provideData (ESISegment::Pointer data, ESIElement * source) } esiProcessResult_t -ESIAssign::process (int dovars) +ESIAssign::process (int) { assert (varState); @@ -167,7 +167,7 @@ ESIVariableExpression::ESIVariableExpression (String const &aString) : expressio {} void -ESIVariableExpression::eval (ESIVarState &state, char const *subref, char const *defaultOnEmpty) const +ESIVariableExpression::eval (ESIVarState &state, char const *, char const *) const { /* XXX: Implement evaluation of the expression */ ESISegment::ListAppend (state.getOutput(), expression.rawBuf(), expression.size()); diff --git a/src/esi/Element.h b/src/esi/Element.h index 41a6f86946..3329ca2f71 100644 --- a/src/esi/Element.h +++ b/src/esi/Element.h @@ -25,12 +25,12 @@ typedef enum { class ESIElement; struct esiTreeParent : public RefCountable { - virtual void provideData (ESISegment::Pointer data, ESIElement * source) { + virtual void provideData (ESISegment::Pointer /* data */ , ESIElement * /* source */ ) { /* make abstract when all functionality complete */ assert (0); } - virtual void fail(ESIElement * source, char const *reason = NULL) {} + virtual void fail(ESIElement * /* source */, char const * /* reason */ = nullptr) {} virtual ~esiTreeParent() {} }; @@ -69,7 +69,7 @@ public: virtual void render (ESISegment::Pointer) = 0; /* process this element */ - virtual esiProcessResult_t process (int dovars) { + virtual esiProcessResult_t process(int) { debugs(86,5, "esiProcessComplete: Processed " << this); return ESI_PROCESS_COMPLETE; } diff --git a/src/esi/Esi.cc b/src/esi/Esi.cc index 3aa2ef94cc..c67ac79c70 100644 --- a/src/esi/Esi.cc +++ b/src/esi/Esi.cc @@ -74,7 +74,8 @@ class ESIStreamContext; */ /* make comparisons with refcount pointers easy */ -bool operator == (ESIElement const *lhs, ESIElement::Pointer const &rhs) +static bool +operator == (ESIElement const *lhs, ESIElement::Pointer const &rhs) { return lhs == rhs.getRaw(); } @@ -279,7 +280,7 @@ ESIContext::provideData (ESISegment::Pointer theData, ESIElement * source) } void -ESIContext::fail (ESIElement * source, char const *anError) +ESIContext::fail(ESIElement *, char const *anError) { setError(); setErrorMessage (anError); @@ -1595,7 +1596,7 @@ esiLiteral::makeUsable(esiTreeParentPtr, ESIVarState &newVarState) const /* esiRemove */ void -esiRemove::render(ESISegment::Pointer output) +esiRemove::render(ESISegment::Pointer) { /* Removes do nothing dude */ debugs(86, 5, "esiRemoveRender: Rendering remove " << this); @@ -1828,7 +1829,7 @@ esiTry::provideData (ESISegment::Pointer data, ESIElement* source) } } -esiTry::esiTry(esiTry const &old) +esiTry::esiTry(esiTry const &) { attempt = NULL; except = NULL; diff --git a/src/esi/Expression.cc b/src/esi/Expression.cc index 0348ef7586..a1ebbee310 100644 --- a/src/esi/Expression.cc +++ b/src/esi/Expression.cc @@ -245,7 +245,7 @@ evalnegate(stackmember * stack, int *depth, int whereAmI, stackmember * candidat } int -evalliteral(stackmember * stack, int *depth, int whereAmI, stackmember * candidate) +evalliteral(stackmember * /* stack */, int * /* depth */, int /* whereAmI */, stackmember * /* candidate */) { debugs(86, DBG_IMPORTANT, "attempt to evaluate a literal"); /* literals can't be evaluated */ @@ -253,7 +253,7 @@ evalliteral(stackmember * stack, int *depth, int whereAmI, stackmember * candida } int -evalexpr(stackmember * stack, int *depth, int whereAmI, stackmember * candidate) +evalexpr(stackmember * /* stack */, int * /* depth */, int /* whereAmI */, stackmember * /* candidate */) { debugs(86, DBG_IMPORTANT, "attempt to evaluate a sub-expression result"); /* sub-scpr's can't be evaluated */ @@ -664,7 +664,7 @@ evalstartexpr(stackmember * stack, int *depth, int whereAmI, stackmember * candi } int -evalendexpr(stackmember * stack, int *depth, int whereAmI, stackmember * candidate) +evalendexpr(stackmember * /* stack */, int * /* depth */, int /* whereAmI */, stackmember * /* candidate */) { /* Can't evaluate ) brackets */ return 1; diff --git a/src/esi/Include.cc b/src/esi/Include.cc index ce9b380d3e..bccd67a1a5 100644 --- a/src/esi/Include.cc +++ b/src/esi/Include.cc @@ -137,8 +137,7 @@ esiBufferRecipient (clientStreamNode *node, ClientHttpRequest *http, HttpReply * switch (clientStreamStatus (node, http)) { - case STREAM_UNPLANNED_COMPLETE: /* fallthru ok */ - + case STREAM_UNPLANNED_COMPLETE: case STREAM_COMPLETE: /* ok */ debugs(86, 3, "ESI subrequest finished OK"); esiStream->include->subRequestDone (esiStream, true); @@ -401,7 +400,7 @@ ESIInclude::render(ESISegment::Pointer output) } esiProcessResult_t -ESIInclude::process (int dovars) +ESIInclude::process(int) { /* Prevent refcount race leading to free */ Pointer me (this); diff --git a/src/esi/Libxml2Parser.cc b/src/esi/Libxml2Parser.cc index 2b9ba0a2e6..6c14c8c3a0 100644 --- a/src/esi/Libxml2Parser.cc +++ b/src/esi/Libxml2Parser.cc @@ -25,7 +25,8 @@ static htmlDocPtr entity_doc = NULL; EsiParserDefinition(ESILibxml2Parser); // the SAX callback functions -void esi_startElementSAXFunc(void * ctx, const xmlChar * name, const xmlChar ** atts) +static void +esi_startElementSAXFunc(void * ctx, const xmlChar * name, const xmlChar ** atts) { int count=0; xmlChar **tmp = (xmlChar **)atts; @@ -43,25 +44,29 @@ void esi_startElementSAXFunc(void * ctx, const xmlChar * name, const xmlChar ** p->getClient()->start((const char *)name, (const char **)atts, count); } -void esi_endElementSAXFunc(void * ctx, const xmlChar * name) +static void +esi_endElementSAXFunc(void *ctx, const xmlChar *name) { ESILibxml2Parser *p = (ESILibxml2Parser *)ctx; p->getClient()->end((const char *)name); } -void esi_commentSAXFunc(void * ctx, const xmlChar * value) +static void +esi_commentSAXFunc(void *ctx, const xmlChar *value) { ESILibxml2Parser *p = (ESILibxml2Parser *)ctx; p->getClient()->parserComment((const char *)value); } -void esi_charactersSAXFunc(void *ctx, const xmlChar *ch, int len) +static void +esi_charactersSAXFunc(void *ctx, const xmlChar *ch, int len) { ESILibxml2Parser *p = (ESILibxml2Parser *)ctx; p->getClient()->parserDefault((const char *)ch, len); } -xmlEntityPtr esi_getEntitySAXFunc(void * ctx, const xmlChar * name) +static xmlEntityPtr +esi_getEntitySAXFunc(void * /* ctx */, const xmlChar *name) { xmlEntityPtr res = xmlGetDocEntity(entity_doc, name); diff --git a/src/esi/Sequence.cc b/src/esi/Sequence.cc index d76cef102b..2960688e9f 100644 --- a/src/esi/Sequence.cc +++ b/src/esi/Sequence.cc @@ -304,7 +304,7 @@ esiSequence::process (int inheritedVarsFlag) } void -esiSequence::fail (ESIElement *source, char const *anError) +esiSequence::fail(ESIElement * /* source */, char const *anError) { failed = true; diff --git a/src/esi/VarState.cc b/src/esi/VarState.cc index dd9b6b3931..d268b8c660 100644 --- a/src/esi/VarState.cc +++ b/src/esi/VarState.cc @@ -28,7 +28,7 @@ char const * esiBrowsers[]= {"MSIE", CBDATA_CLASS_INIT(ESIVarState); void -ESIVarState::Variable::eval (ESIVarState &state, char const *subref, char const *found_default) const +ESIVarState::Variable::eval(ESIVarState &state, char const * , char const *found_default) const { /* No-op. We swallow it */ diff --git a/src/format/Format.cc b/src/format/Format.cc index 94261c18e7..54f7d57c09 100644 --- a/src/format/Format.cc +++ b/src/format/Format.cc @@ -108,8 +108,9 @@ Format::AssembleOne(const char *token, MemBuf &mb, const AccessLogEntryPointer & fmt.format = &tkn; fmt.assemble(mb, ale, 0); fmt.format = nullptr; - } else + } else { mb.append("-", 1); + } return static_cast(tokenSize); } @@ -387,7 +388,7 @@ Format::Format::assemble(MemBuf &mb, const AccessLogEntry::Pointer &al, int logS int dofree = 0; int64_t outoff = 0; int dooff = 0; - struct timeval outtv = {0, 0}; + struct timeval outtv = {}; int doMsec = 0; int doSec = 0; bool doUint64 = false; @@ -1370,6 +1371,7 @@ Format::Format::assemble(MemBuf &mb, const AccessLogEntry::Pointer &al, int logS case LFT_REQUEST_URLGROUP_OLD_2X: assert(LFT_REQUEST_URLGROUP_OLD_2X == 0); // should never happen. + break; case LFT_NOTE: tmp[0] = fmt->data.header.separator; diff --git a/src/fqdncache.cc b/src/fqdncache.cc index cae7231743..fc0f7afe11 100644 --- a/src/fqdncache.cc +++ b/src/fqdncache.cc @@ -17,6 +17,7 @@ #include "fqdncache.h" #include "helper.h" #include "mgr/Registration.h" +#include "snmp_agent.h" #include "SquidConfig.h" #include "SquidTime.h" #include "StatCounters.h" diff --git a/src/fs/rock/RockRebuild.cc b/src/fs/rock/RockRebuild.cc index 2d350c3751..0a062cc351 100644 --- a/src/fs/rock/RockRebuild.cc +++ b/src/fs/rock/RockRebuild.cc @@ -268,7 +268,7 @@ Rock::Rebuild::Stats::completed(const SwapDir &dir) const /* Rebuild */ bool -Rock::Rebuild::IsResponsible(const SwapDir &dir) +Rock::Rebuild::IsResponsible(const SwapDir &) { // in SMP mode, only the disker is responsible for populating the map return !UsingSmp() || IamDiskProcess(); diff --git a/src/fs/rock/RockRebuild.h b/src/fs/rock/RockRebuild.h index e1a98b4715..12d7960d77 100644 --- a/src/fs/rock/RockRebuild.h +++ b/src/fs/rock/RockRebuild.h @@ -53,7 +53,7 @@ public: static bool Start(SwapDir &dir); protected: - /// whether the current kid is responsible for rebuilding this db file + /// whether the current kid is responsible for rebuilding the given cache_dir static bool IsResponsible(const SwapDir &); Rebuild(SwapDir *dir, const Ipc::Mem::Pointer &); diff --git a/src/fs/rock/RockSwapDir.cc b/src/fs/rock/RockSwapDir.cc index aeb06ba2e3..a7c661bf0a 100644 --- a/src/fs/rock/RockSwapDir.cc +++ b/src/fs/rock/RockSwapDir.cc @@ -1059,8 +1059,8 @@ Rock::SwapDir::statfs(StoreEntry &e) const storeAppendPrintf(&e, "Maximum slots: %9d\n", slotLimit); if (map && slotLimit > 0) { const unsigned int slotsFree = !freeSlots ? 0 : freeSlots->size(); - if (slotsFree <= static_cast(slotLimit)) { - const int usedSlots = slotLimit - static_cast(slotsFree); + if (slotsFree <= static_cast(slotLimit)) { + const int usedSlots = slotLimit - static_cast(slotsFree); storeAppendPrintf(&e, "Used slots: %9d %.2f%%\n", usedSlots, (100.0 * usedSlots / slotLimit)); } diff --git a/src/gopher.cc b/src/gopher.cc index f1cfb2f77a..a592984a5b 100644 --- a/src/gopher.cc +++ b/src/gopher.cc @@ -16,6 +16,7 @@ #include "fd.h" #include "FwdState.h" #include "globals.h" +#include "gopher.h" #include "html_quote.h" #include "HttpReply.h" #include "HttpRequest.h" @@ -685,8 +686,8 @@ gopherToHTML(GopherStateData * gopherState, char *inbuf, int len) } } + break; } /* HTML_CSO_RESULT */ - default: break; /* do nothing */ diff --git a/src/helper.cc b/src/helper.cc index e01749b304..ccb77b2ac3 100644 --- a/src/helper.cc +++ b/src/helper.cc @@ -93,6 +93,8 @@ HelperServerBase::closePipesSafely(const char *id_name) } CloseHandle(hIpc); } +#else + (void)id_name; #endif } @@ -117,6 +119,8 @@ HelperServerBase::closeWritePipeSafely(const char *id_name) } CloseHandle(hIpc); } +#else + (void)id_name; #endif } diff --git a/src/htcp.cc b/src/htcp.cc index 7a2aace075..d955761164 100644 --- a/src/htcp.cc +++ b/src/htcp.cc @@ -305,6 +305,10 @@ htcpHexdump(const char *tag, const char *s, int sz) memset(hex, '\0', sizeof(hex)); } +#else + (void)tag; + (void)s; + (void)sz; #endif } diff --git a/src/http.cc b/src/http.cc index a635202a4d..4a7c3daf63 100644 --- a/src/http.cc +++ b/src/http.cc @@ -502,7 +502,7 @@ HttpStateData::reusableReply(HttpStateData::ReuseDecision &decision) case Http::scMisdirectedRequest: statusAnswer = ReuseDecision::doNotCacheButShare; statusReason = shareableError; - // fall through to the actual decision making below + /* [[fallthrough]] to the actual decision making below */ case Http::scBadRequest: // no sharing; perhaps the server did not like something specific to this request #if USE_HTTP_VIOLATIONS @@ -864,7 +864,7 @@ HttpStateData::proceedAfter1xx() if (flags.serverSwitchedProtocols) { // pass server connection ownership to request->clientConnectionManager - ConnStateData::ServerConnectionContext scc(serverConnection, request, inBuf); + ConnStateData::ServerConnectionContext scc(serverConnection, inBuf); typedef UnaryMemFunT MyDialer; AsyncCall::Pointer call = asyncCall(11, 3, "ConnStateData::noteTakeServerConnectionControl", MyDialer(request->clientConnectionManager, diff --git a/src/http/RegisteredHeaders.cc b/src/http/RegisteredHeaders.cc index 348a1bb821..bbd0bc4119 100644 --- a/src/http/RegisteredHeaders.cc +++ b/src/http/RegisteredHeaders.cc @@ -17,14 +17,8 @@ namespace Http /* glue to code generated by gperf */ #include "http/RegisteredHeadersHash.cci" -HeaderTableRecord::HeaderTableRecord() : - name(""), id(HdrType::BAD_HDR), type(HdrFieldType::ftInvalid), - list(false), request(false), reply(false), hopbyhop(false), denied304(false) -{} - HeaderTableRecord::HeaderTableRecord(const char *n) : - name(n), id(HdrType::BAD_HDR), type(HdrFieldType::ftInvalid), - list(false), request(false), reply(false), hopbyhop(false), denied304(false) + name(n) {} HeaderTableRecord::HeaderTableRecord(const char *n, HdrType theId, HdrFieldType theType, int theKind) : diff --git a/src/http/RegisteredHeaders.h b/src/http/RegisteredHeaders.h index 3a47ff552c..e37bef99d5 100644 --- a/src/http/RegisteredHeaders.h +++ b/src/http/RegisteredHeaders.h @@ -150,22 +150,20 @@ enum HdrKind { }; /* POD for HeaderTable */ -class HeaderTableRecord { -public: - HeaderTableRecord(); +struct HeaderTableRecord { + HeaderTableRecord() = default; HeaderTableRecord(const char *n); HeaderTableRecord(const char *, Http::HdrType, Http::HdrFieldType, int /* HdrKind */); -public: - const char *name; - Http::HdrType id; - Http::HdrFieldType type; + const char *name = ""; + Http::HdrType id = HdrType::BAD_HDR; + Http::HdrFieldType type = HdrFieldType::ftInvalid; // flags set by constructor from HdrKind parameter - bool list; ///
(str[8])]; - /*FALLTHROUGH*/ + /* [[fallthrough]] */ case 8: case 7: case 6: diff --git a/src/http/url_rewriters/fake/fake.cc b/src/http/url_rewriters/fake/fake.cc index 6e90404ba8..96213079d2 100644 --- a/src/http/url_rewriters/fake/fake.cc +++ b/src/http/url_rewriters/fake/fake.cc @@ -80,7 +80,7 @@ process_options(int argc, char *argv[]) exit(EXIT_SUCCESS); case '?': opt = optopt; - /* fall thru to default */ + /* [[fallthrough]] */ default: fprintf(stderr, "unknown option: -%c. Exiting\n", opt); usage(); diff --git a/src/icmp/IcmpPinger.h b/src/icmp/IcmpPinger.h index 150eea6974..0650dd2c1a 100644 --- a/src/icmp/IcmpPinger.h +++ b/src/icmp/IcmpPinger.h @@ -37,7 +37,7 @@ public: private: // unused in IcmpPinger - virtual void SendEcho(Ip::Address &to, int opcode, const char *payload, int len) {}; + virtual void SendEcho(Ip::Address &, int, const char *, int) {} /** * Control channel(s) to squid. diff --git a/src/icmp/IcmpSquid.cc b/src/icmp/IcmpSquid.cc index d478f771f8..403cc4e1f6 100644 --- a/src/icmp/IcmpSquid.cc +++ b/src/icmp/IcmpSquid.cc @@ -109,7 +109,7 @@ IcmpSquid::SendEcho(Ip::Address &to, int opcode, const char *payload, int len) // static Callback to wrap the squid-side ICMP handler. // the IcmpSquid::Recv cannot be declared both static and virtual. static void -icmpSquidRecv(int unused1, void *unused2) +icmpSquidRecv(int, void *) { icmpEngine.Recv(); } @@ -180,6 +180,9 @@ IcmpSquid::DomainPing(Ip::Address &to, const char *domain) #if USE_ICMP debugs(37, 4, HERE << "'" << domain << "' (" << to << ")"); SendEcho(to, S_ICMP_DOM, domain, 0); +#else + (void)to; + (void)domain; #endif } diff --git a/src/icmp/net_db.cc b/src/icmp/net_db.cc index ca5c64f863..6a369b3144 100644 --- a/src/icmp/net_db.cc +++ b/src/icmp/net_db.cc @@ -469,7 +469,7 @@ sortPeerByRtt(const void *A, const void *B) } static void -netdbSaveState(void *foo) +netdbSaveState(void *) { if (strcmp(Config.netdbFilename, "none") == 0) return; @@ -916,7 +916,8 @@ netdbPingSite(const char *hostname) ipcache_nbgethostbyname(hostname, netdbSendPing, new generic_cbdata(xstrdup(hostname))); - +#else + (void)hostname; #endif } @@ -946,7 +947,10 @@ netdbHandlePingReply(const Ip::Address &from, int hops, int rtt) debugs(38, 3, "netdbHandlePingReply: " << n->network << "; rtt="<< std::setw(5)<< std::setprecision(2) << n->rtt << " hops="<< std::setw(4) << n->hops); - +#else + (void)from; + (void)hops; + (void)rtt; #endif } @@ -1042,7 +1046,8 @@ netdbHostHops(const char *host) n->last_use_time = squid_curtime; return (int) (n->hops + 0.5); } - +#else + (void)host; #endif return 0; } @@ -1058,6 +1063,8 @@ netdbHostRtt(const char *host) return (int) (n->rtt + 0.5); } +#else + (void)host; #endif return 0; } @@ -1079,6 +1086,11 @@ netdbHostData(const char *host, int *samp, int *rtt, int *hops) n->last_use_time = squid_curtime; +#else + (void)hops; + (void)rtt; + (void)samp; + (void)host; #endif } @@ -1115,6 +1127,11 @@ netdbUpdatePeer(const AnyP::Uri &url, CachePeer *e, int irtt, int ihops) sizeof(net_db_peer), sortPeerByRtt); +#else + (void)ihops; + (void)irtt; + (void)e; + (void)url; #endif } @@ -1157,6 +1174,11 @@ netdbExchangeUpdatePeer(Ip::Address &addr, CachePeer * e, double rtt, double hop sizeof(net_db_peer), sortPeerByRtt); +#else + (void)hops; + (void)rtt; + (void)e; + (void)addr; #endif } @@ -1172,6 +1194,8 @@ netdbDeleteAddrNetwork(Ip::Address &addr) debugs(38, 3, "netdbDeleteAddrNetwork: " << n->network); netdbRelease(n); +#else + (void)addr; #endif } @@ -1300,6 +1324,8 @@ netdbExchangeStart(void *data) ex->r->url.userInfo(SBuf(p->login)); FwdState::fwdStart(Comm::ConnectionPointer(), ex->e, ex->r.getRaw()); +#else + (void)data; #endif } @@ -1359,6 +1385,8 @@ netdbClosestParent(PeerSelector *ps) return p; } +#else + (void)ps; #endif return NULL; } diff --git a/src/icmp/pinger.cc b/src/icmp/pinger.cc index 71c0ddcba4..49d3885f4d 100644 --- a/src/icmp/pinger.cc +++ b/src/icmp/pinger.cc @@ -96,12 +96,9 @@ int icmp_pkts_sent = 0; /** \ingroup pinger \par This is the pinger external process. - * - \param argc Ignored. - \param argv Ignored. */ int -main(int argc, char *argv[]) +main(int, char **) { fd_set R; int x; diff --git a/src/icp_v2.cc b/src/icp_v2.cc index 3f3088e7f9..77a0ec45c2 100644 --- a/src/icp_v2.cc +++ b/src/icp_v2.cc @@ -54,7 +54,7 @@ public: icp_common_t *msg = nullptr; ///< ICP message with network byte order fields DelayedUdpSend *next = nullptr; ///< invasive FIFO queue of delayed ICP messages AccessLogEntryPointer ale; ///< sender's master transaction summary - struct timeval queue_time = {0, 0}; ///< queuing timestamp + struct timeval queue_time = {}; ///< queuing timestamp }; static void icpIncomingConnectionOpened(const Comm::ConnectionPointer &conn, int errNo); @@ -253,7 +253,7 @@ icpLogIcp(const Ip::Address &caddr, const LogTags_ot logcode, const int len, con } /// \ingroup ServerProtocolICPInternal2 -void +static void icpUdpSendQueue(int fd, void *) { DelayedUdpSend *q; @@ -456,15 +456,6 @@ icpAccessAllowed(Ip::Address &from, HttpRequest * icp_request) return checklist.fastCheck().allowed(); } -char const * -icpGetUrlToSend(char *url) -{ - if (strpbrk(url, w_space)) - return rfc1738_escape(url); - else - return url; -} - HttpRequest * icpGetRequest(char *url, int reqnum, int fd, Ip::Address &from) { diff --git a/src/ident/Ident.cc b/src/ident/Ident.cc index 48966e1406..d8d31560cd 100644 --- a/src/ident/Ident.cc +++ b/src/ident/Ident.cc @@ -243,9 +243,9 @@ Ident::Start(const Comm::ConnectionPointer &conn, IDCB * callback, void *data) conn->local.toUrl(key1, IDENT_KEY_SZ); conn->remote.toUrl(key2, IDENT_KEY_SZ); - const auto res = snprintf(key, sizeof(key), "%s,%s", key1, key2); + int res = snprintf(key, sizeof(key), "%s,%s", key1, key2); assert(res > 0); - assert(static_cast::type>(res) < sizeof(key)); + assert(static_cast(res) < sizeof(key)); if (!ident_hash) { Init(); diff --git a/src/int.cc b/src/int.cc index 8eddf19e89..8d51e30829 100644 --- a/src/int.cc +++ b/src/int.cc @@ -9,6 +9,7 @@ /* DEBUG: section 21 Integer functions */ #include "squid.h" +#include "int.h" #include diff --git a/src/internal.cc b/src/internal.cc index b2803d6803..6c9d837e28 100644 --- a/src/internal.cc +++ b/src/internal.cc @@ -16,6 +16,7 @@ #include "HttpReply.h" #include "HttpRequest.h" #include "icmp/net_db.h" +#include "internal.h" #include "MemBuf.h" #include "SquidConfig.h" #include "SquidTime.h" diff --git a/src/ip/Intercept.cc b/src/ip/Intercept.cc index 2afe0da556..6611ee179c 100644 --- a/src/ip/Intercept.cc +++ b/src/ip/Intercept.cc @@ -151,6 +151,8 @@ Ip::Intercept::NetfilterInterception(const Comm::ConnectionPointer &newConn) debugs(89, 5, "address NAT: " << newConn); return true; } +#else + (void)newConn; #endif return false; } @@ -168,6 +170,7 @@ Ip::Intercept::TproxyTransparent(const Comm::ConnectionPointer &newConn) debugs(89, 5, HERE << "address TPROXY: " << newConn); return true; #else + (void)newConn; return false; #endif } @@ -183,6 +186,7 @@ Ip::Intercept::IpfwInterception(const Comm::ConnectionPointer &newConn) debugs(89, 5, HERE << "address NAT: " << newConn); return true; #else + (void)newConn; return false; #endif } @@ -210,7 +214,7 @@ Ip::Intercept::IpfInterception(const Comm::ConnectionPointer &newConn) newConn->local.getInAddr(natLookup.nl_inipaddr.in4); newConn->remote.getInAddr(natLookup.nl_outipaddr.in4); } -#else +#else /* HAVE_STRUCT_NATLOOKUP_NL_INIPADDR_IN6 */ // warn once every 10 at critical level, then push down a level each repeated event static int warningLevel = DBG_CRITICAL; debugs(89, warningLevel, "Your IPF (IPFilter) NAT does not support IPv6. Please upgrade it."); @@ -219,7 +223,7 @@ Ip::Intercept::IpfInterception(const Comm::ConnectionPointer &newConn) } newConn->local.getInAddr(natLookup.nl_inip); newConn->remote.getInAddr(natLookup.nl_outip); -#endif +#endif /* HAVE_STRUCT_NATLOOKUP_NL_INIPADDR_IN6 */ natLookup.nl_inport = htons(newConn->local.port()); natLookup.nl_outport = htons(newConn->remote.port()); // ... and the TCP flag @@ -269,7 +273,7 @@ Ip::Intercept::IpfInterception(const Comm::ConnectionPointer &newConn) x = ioctl(natfd, SIOCGNATL, &natLookup); } -#endif +#endif /* defined(IPFILTER_VERSION) ... */ if (x < 0) { const auto xerrno = errno; if (xerrno != ESRCH) { @@ -294,6 +298,8 @@ Ip::Intercept::IpfInterception(const Comm::ConnectionPointer &newConn) return true; } +#else + (void)newConn; #endif /* --enable-ipf-transparent */ return false; } @@ -364,6 +370,8 @@ Ip::Intercept::PfInterception(const Comm::ConnectionPointer &newConn) return true; } #endif /* --with-nat-devpf */ +#else + (void)newConn; #endif /* --enable-pf-transparent */ return false; } @@ -397,6 +405,8 @@ Ip::Intercept::Lookup(const Comm::ConnectionPointer &newConn, const Comm::Connec } #else /* none of the transparent options configured */ + (void)newConn; + (void)listenConn; debugs(89, DBG_IMPORTANT, "WARNING: transparent proxying not supported"); #endif diff --git a/src/ip/QosConfig.cc b/src/ip/QosConfig.cc index 611f8c83de..b1c67a5c47 100644 --- a/src/ip/QosConfig.cc +++ b/src/ip/QosConfig.cc @@ -75,6 +75,9 @@ Ip::Qos::getTosFromServer(const Comm::ConnectionPointer &server, fde *clientFde) int xerrno = errno; debugs(33, DBG_IMPORTANT, "QOS: error in setsockopt(IP_RECVTOS) on " << server << " " << xstrerr(xerrno)); } +#else + (void)server; + (void)clientFde; #endif } @@ -166,6 +169,9 @@ Ip::Qos::getNfConnmark(const Comm::ConnectionPointer &conn, const Ip::Qos::Conne } else { debugs(17, 2, "QOS: Failed to allocate new conntrack for netfilter CONNMARK retrieval."); } +#else + (void)conn; + (void)connDir; #endif return mark; } @@ -207,7 +213,11 @@ Ip::Qos::setNfConnmark(Comm::ConnectionPointer &conn, const Ip::Qos::ConnectionD } else { debugs(17, 2, "QOS: Failed to allocate new conntrack for netfilter CONNMARK modification."); } -#endif +#else /* USE_LIBNETFILTERCONNTRACK */ + (void)conn; + (void)connDir; + (void)cm; +#endif /* USE_LIBNETFILTERCONNTRACK */ return ret; } @@ -575,9 +585,13 @@ Ip::Qos::setSockNfmark(const int fd, nfmark_t mark) } return x; #elif USE_LIBCAP + (void)mark; + (void)fd; debugs(50, DBG_IMPORTANT, "WARNING: setsockopt(SO_MARK) not supported on this platform"); return -1; #else + (void)mark; + (void)fd; debugs(50, DBG_IMPORTANT, "WARNING: Netfilter marking disabled (netfilter marking requires build with LIBCAP)"); return -1; #endif diff --git a/src/ip/forward.h b/src/ip/forward.h index ce8eb3ebdb..aaafef1f63 100644 --- a/src/ip/forward.h +++ b/src/ip/forward.h @@ -16,12 +16,13 @@ namespace Ip { class Address; +class NfMarkConfig; } +class acl_nfmark; /// Length of buffer that needs to be allocated to old a null-terminated IP-string // Yuck. But there are still structures that need it to be an 'integer constant'. #define MAX_IPSTRLEN 75 - typedef uint32_t nfmark_t; typedef unsigned char tos_t; diff --git a/src/ipcache.cc b/src/ipcache.cc index 961358b8e2..95f95bc819 100644 --- a/src/ipcache.cc +++ b/src/ipcache.cc @@ -20,6 +20,7 @@ #include "ip/tools.h" #include "ipcache.h" #include "mgr/Registration.h" +#include "snmp_agent.h" #include "SquidConfig.h" #include "SquidTime.h" #include "StatCounters.h" diff --git a/src/main.cc b/src/main.cc index 29bb7bd1c4..4576b761c5 100644 --- a/src/main.cc +++ b/src/main.cc @@ -66,6 +66,7 @@ #include "peer_userhash.h" #include "PeerSelectState.h" #include "profiler/Profiler.h" +#include "protos.h" #include "redirect.h" #include "refresh.h" #include "sbuf/Stream.h" @@ -642,23 +643,15 @@ mainHandleCommandLineOption(const int optId, const char *optValue) * then performs actions for -s option. */ xfree(opt_syslog_facility); // ignore any previous options sent opt_syslog_facility = xstrdup(optValue); + _db_set_syslog(opt_syslog_facility); + break; case 's': /** \par s * Initialize the syslog for output */ -#if HAVE_SYSLOG - _db_set_syslog(opt_syslog_facility); - break; -#else - - fatal("Logging to syslog not available on this platform"); - - /* NOTREACHED */ -#endif - case 'u': /** \par u * Store the ICP port number given in global option icpPortNumOverride @@ -751,7 +744,7 @@ reconfigure(int sig) #endif } -void +static void master_revive_kids(int sig) { ReviveKidsSignal = sig; @@ -765,7 +758,7 @@ master_revive_kids(int sig) } /// Shutdown signal handler for master process -void +static void master_shutdown(int sig) { do_shutdown = 1; @@ -789,11 +782,9 @@ shut_down(int sig) shutdown_status = EXIT_FAILURE; #endif -#if !_SQUID_WINDOWS_ -#if !HAVE_SIGACTION +#if !defined(_SQUID_WINDOWS_) && !defined(HAVE_SIGACTION) signal(sig, shut_down); #endif -#endif } void @@ -801,10 +792,10 @@ sig_child(int sig) { do_handle_stopped_child = 1; -#if !_SQUID_WINDOWS_ -#if !HAVE_SIGACTION +#if !defined(_SQUID_WINDOWS_) && !defined(HAVE_SIGACTION) signal(sig, sig_child); -#endif +#else + (void)sig; #endif } diff --git a/src/mem/forward.h b/src/mem/forward.h index 79ed37e890..b004743356 100644 --- a/src/mem/forward.h +++ b/src/mem/forward.h @@ -70,6 +70,7 @@ FREE *memFreeBufFunc(size_t size); int memInUse(mem_type); void memDataInit(mem_type, const char *, size_t, int, bool doZero = true); void memCheckInit(void); +size_t memStringCount(); #endif /* _SQUID_SRC_MEM_FORWARD_H */ diff --git a/src/mem/old_api.cc b/src/mem/old_api.cc index 0155e558b6..aedad0e1ac 100644 --- a/src/mem/old_api.cc +++ b/src/mem/old_api.cc @@ -473,7 +473,8 @@ Mem::Report() " MB"); } -mem_type &operator++ (mem_type &aMem) +static mem_type & +operator++(mem_type &aMem) { int tmp = (int)aMem; aMem = (mem_type)(++tmp); diff --git a/src/mgr/QueryParams.cc b/src/mgr/QueryParams.cc index 7e79943876..6ff049c68a 100644 --- a/src/mgr/QueryParams.cc +++ b/src/mgr/QueryParams.cc @@ -77,7 +77,7 @@ Mgr::QueryParams::find(const String& name) const * * \note opaque string may be a list with a non-integer (e.g., "1,2,3,z") */ -Mgr::QueryParam::Pointer +static Mgr::QueryParam::Pointer ParseParamValue(const SBuf &rawValue) { static const CharacterSet comma("comma", ","); diff --git a/src/mime_header.cc b/src/mime_header.cc index 1602c05704..8a2cb80750 100644 --- a/src/mime_header.cc +++ b/src/mime_header.cc @@ -10,7 +10,9 @@ #include "squid.h" #include "Debug.h" +#include "mime_header.h" #include "profiler/Profiler.h" +#include "sbuf/SBuf.h" size_t headersEnd(const char *mime, size_t l, bool &containsObsFold) @@ -66,3 +68,9 @@ headersEnd(const char *mime, size_t l, bool &containsObsFold) return 0; } +size_t +headersEnd(const SBuf &buf, bool &containsObsFold) +{ + return headersEnd(buf.rawContent(), buf.length(), containsObsFold); +} + diff --git a/src/mime_header.h b/src/mime_header.h index b71af6dc85..c7aaee55ea 100644 --- a/src/mime_header.h +++ b/src/mime_header.h @@ -11,6 +11,10 @@ #ifndef SQUID_MIME_HEADER_H_ #define SQUID_MIME_HEADER_H_ +#include "sbuf/forward.h" + +#include + /** * Scan for the end of mime header block. * @@ -30,11 +34,7 @@ */ size_t headersEnd(const char *, size_t, bool &containsObsFold); -inline size_t -headersEnd(const SBuf &buf, bool &containsObsFold) -{ - return headersEnd(buf.rawContent(), buf.length(), containsObsFold); -} +size_t headersEnd(const SBuf &buf, bool &containsObsFold); /// \deprecated caller needs to be fixed to handle obs-fold inline size_t diff --git a/src/neighbors.cc b/src/neighbors.cc index 488d1a154d..04e5803641 100644 --- a/src/neighbors.cc +++ b/src/neighbors.cc @@ -456,7 +456,7 @@ peerClearRR() /** * Perform all actions when a CachePeer is detected revived. */ -void +static void peerAlive(CachePeer *p) { if (p->stats.logged_state == PEER_DEAD && p->tcp_up) { @@ -793,7 +793,9 @@ peerDigestLookup(CachePeer * p, PeerSelector * ps) debugs(15, 5, "peerDigestLookup: peer " << p->host << " says HIT!"); return LOOKUP_HIT; - +#else + (void)p; + (void)ps; #endif return LOOKUP_NONE; @@ -860,6 +862,8 @@ neighborsDigestSelect(PeerSelector *ps) best_p ? LOOKUP_HIT : (choice_count ? LOOKUP_MISS : LOOKUP_NONE)); request->hier.n_choices = choice_count; request->hier.n_ichoices = ichoice_count; +#else + (void)ps; #endif return best_p; @@ -876,6 +880,10 @@ peerNoteDigestLookup(HttpRequest * request, CachePeer * p, lookup_t lookup) request->hier.cd_lookup = lookup; debugs(15, 4, "peerNoteDigestLookup: peer " << (p? p->host : "") << ", lookup: " << lookup_t_str[lookup] ); +#else + (void)request; + (void)p; + (void)lookup; #endif } diff --git a/src/peer_digest.cc b/src/peer_digest.cc index 4ad35f09f1..bcf2a36f48 100644 --- a/src/peer_digest.cc +++ b/src/peer_digest.cc @@ -775,7 +775,7 @@ peerDigestFetchAbort(DigestFetchState * fetch, char *buf, const char *reason) /* complete the digest transfer, update stats, unlock/release everything */ static void -peerDigestReqFinish(DigestFetchState * fetch, char *buf, +peerDigestReqFinish(DigestFetchState * fetch, char * /* buf */, int fcb_valid, int pdcb_valid, int pcb_valid, const char *reason, int err) { @@ -855,7 +855,7 @@ peerDigestPDFinish(DigestFetchState * fetch, int pcb_valid, int err) /* free fetch state structures * must be called only when fetch cbdata is valid */ static void -peerDigestFetchFinish(DigestFetchState * fetch, int err) +peerDigestFetchFinish(DigestFetchState * fetch, int /* err */) { assert(fetch->entry && fetch->request); diff --git a/src/peer_proxy_negotiate_auth.cc b/src/peer_proxy_negotiate_auth.cc index 6ea75ed56a..d1251858aa 100644 --- a/src/peer_proxy_negotiate_auth.cc +++ b/src/peer_proxy_negotiate_auth.cc @@ -12,7 +12,7 @@ #include "squid.h" -#if HAVE_KRB5 && HAVE_GSSAPI +#if HAVE_AUTH_MODULE_NEGOTIATE && HAVE_KRB5 && HAVE_GSSAPI #if USE_APPLE_KRB5 #define KERBEROS_APPLE_DEPRECATED(x) #define GSSKRB_APPLE_DEPRECATED(x) @@ -582,5 +582,5 @@ cleanup: #ifdef __cplusplus } #endif -#endif /* HAVE_KRB5 && HAVE_GSSAPI */ +#endif /* HAVE_AUTH_MODULE_NEGOTIATE && HAVE_KRB5 && HAVE_GSSAPI */ diff --git a/src/peer_select.cc b/src/peer_select.cc index 97a8e9f2f1..a4fe32bd60 100644 --- a/src/peer_select.cc +++ b/src/peer_select.cc @@ -12,6 +12,7 @@ #include "acl/FilledChecklist.h" #include "base/AsyncCbdataCalls.h" #include "base/InstanceId.h" +#include "base/TypeTraits.h" #include "CachePeer.h" #include "carp.h" #include "client_side.h" @@ -940,6 +941,8 @@ PeerSelector::handleIcpParentMiss(CachePeer *p, icp_common_t *header) } } } +#else + (void)header; #endif /* USE_ICMP */ /* if closest-only is set, then don't allow FIRST_PARENT_MISS */ @@ -1034,6 +1037,8 @@ PeerSelector::handleHtcpParentMiss(CachePeer *p, HtcpReplyData *htcp) } } } +#else + (void)htcp; #endif /* USE_ICMP */ /* if closest-only is set, then don't allow FIRST_PARENT_MISS */ @@ -1153,8 +1158,7 @@ PeerSelector::interestedInitiator() bool PeerSelector::wantsMoreDestinations() const { const auto maxCount = Config.forward_max_tries; - return maxCount >= 0 && foundPaths < - static_cast::type>(maxCount); + return maxCount >= 0 && foundPaths < static_cast(maxCount); } void diff --git a/src/peer_sourcehash.cc b/src/peer_sourcehash.cc index c6d351c47d..6713a99e00 100644 --- a/src/peer_sourcehash.cc +++ b/src/peer_sourcehash.cc @@ -13,6 +13,7 @@ #include "HttpRequest.h" #include "mgr/Registration.h" #include "neighbors.h" +#include "peer_sourcehash.h" #include "PeerSelectState.h" #include "SquidConfig.h" #include "Store.h" diff --git a/src/peer_userhash.cc b/src/peer_userhash.cc index 9cd935e52c..ade4cb8a29 100644 --- a/src/peer_userhash.cc +++ b/src/peer_userhash.cc @@ -18,6 +18,7 @@ #include "HttpRequest.h" #include "mgr/Registration.h" #include "neighbors.h" +#include "peer_userhash.h" #include "PeerSelectState.h" #include "SquidConfig.h" #include "Store.h" diff --git a/src/refresh.cc b/src/refresh.cc index bf74f4a986..49e8694355 100644 --- a/src/refresh.cc +++ b/src/refresh.cc @@ -18,6 +18,7 @@ #include "HttpRequest.h" #include "MemObject.h" #include "mgr/Registration.h" +#include "refresh.h" #include "RefreshPattern.h" #include "SquidConfig.h" #include "SquidTime.h" diff --git a/src/repl/heap/store_repl_heap.cc b/src/repl/heap/store_repl_heap.cc index 964ae6b96f..aef7170791 100644 --- a/src/repl/heap/store_repl_heap.cc +++ b/src/repl/heap/store_repl_heap.cc @@ -98,7 +98,7 @@ heap_add(RemovalPolicy * policy, StoreEntry * entry, RemovalPolicyNode * node) } static void -heap_remove(RemovalPolicy * policy, StoreEntry * entry, +heap_remove(RemovalPolicy * policy, StoreEntry *, RemovalPolicyNode * node) { HeapPolicyData *h = (HeapPolicyData *)policy->_data; diff --git a/src/repl_modules.sh b/src/repl_modules.sh index eeb0ac8020..1f0e02b41b 100755 --- a/src/repl_modules.sh +++ b/src/repl_modules.sh @@ -11,6 +11,7 @@ echo "/* automatically generated by $0 $*" echo " * do not edit" echo " */" echo "#include \"squid.h\"" +echo "#include \"repl_modules.h\"" echo "#include \"Store.h\"" echo "" for module in "$@"; do diff --git a/src/security/ErrorDetail.cc b/src/security/ErrorDetail.cc index 8aa5488617..0f64f67d17 100644 --- a/src/security/ErrorDetail.cc +++ b/src/security/ErrorDetail.cc @@ -533,6 +533,8 @@ Security::ErrorDetail::verbose(const HttpRequestPointer &request) const #if USE_OPENSSL if (Ssl::ErrorDetailsManager::GetInstance().getErrorDetail(error_no, request, detailEntry)) format = detailEntry.detail.termedBuf(); +#else + (void)request; #endif if (!format) format = "SSL handshake error (%err_name)"; diff --git a/src/security/Io.cc b/src/security/Io.cc index bc30a7b356..67c31dca9e 100644 --- a/src/security/Io.cc +++ b/src/security/Io.cc @@ -182,6 +182,7 @@ Security::Handshake(Comm::Connection &transport, const ErrorCode topError, Fun i return ioResult; #else + (void)topError; // TLS I/O code path should never be reachable without a TLS/SSL library. debugs(1, DBG_CRITICAL, ForceAlert << "BUG: " << "Unexpected TLS I/O in Squid built without a TLS/SSL library"); diff --git a/src/security/NegotiationHistory.cc b/src/security/NegotiationHistory.cc index b687163847..56deeb8693 100644 --- a/src/security/NegotiationHistory.cc +++ b/src/security/NegotiationHistory.cc @@ -86,6 +86,8 @@ Security::NegotiationHistory::retrieveNegotiatedInfo(const Security::SessionPoin " SSL version " << version_ << " negotiated cipher " << cipherName()); } +#else + (void)session; #endif } diff --git a/src/security/PeerConnector.cc b/src/security/PeerConnector.cc index 6d51b7fec6..418502ec56 100644 --- a/src/security/PeerConnector.cc +++ b/src/security/PeerConnector.cc @@ -570,8 +570,8 @@ public: peerConnector_(pc) {} /* CallDialer API */ - virtual bool canDial(AsyncCall &call) { return peerConnector_.valid(); } - virtual void dial(AsyncCall &call) { ((&(*peerConnector_))->*method_)(object, status); } + virtual bool canDial(AsyncCall &) { return peerConnector_.valid(); } + virtual void dial(AsyncCall &) { ((&(*peerConnector_))->*method_)(object, status); } Method method_; ///< The Security::PeerConnector method to dial CbcPointer peerConnector_; ///< The Security::PeerConnector object }; diff --git a/src/security/PeerConnector.h b/src/security/PeerConnector.h index 819dd1fa9b..fb8e00b1ff 100644 --- a/src/security/PeerConnector.h +++ b/src/security/PeerConnector.h @@ -136,7 +136,7 @@ protected: /// Called when the SSL negotiation to the server completed and the certificates /// validated using the cert validator. /// \param error if not NULL the SSL negotiation was aborted with an error - virtual void noteNegotiationDone(ErrorState *error) {} + virtual void noteNegotiationDone(ErrorState *) {} /// Must implemented by the kid classes to return the TLS context object to use /// for building the encryption context objects. diff --git a/src/security/PeerOptions.cc b/src/security/PeerOptions.cc index cf1d4ba744..648f9f2590 100644 --- a/src/security/PeerOptions.cc +++ b/src/security/PeerOptions.cc @@ -634,13 +634,16 @@ Security::PeerOptions::updateContextOptions(Security::ContextPointer &ctx) SSL_CTX_set_options(ctx.get(), parsedOptions); #elif USE_GNUTLS // NP: GnuTLS uses 'priorities' which are set only per-session instead. + (void)ctx; +#else + (void)ctx; #endif } #if USE_OPENSSL && defined(TLSEXT_TYPE_next_proto_neg) // Dummy next_proto_neg callback static int -ssl_next_proto_cb(SSL *s, unsigned char **out, unsigned char *outlen, const unsigned char *in, unsigned int inlen, void *arg) +ssl_next_proto_cb(SSL *, unsigned char **out, unsigned char *outlen, const unsigned char *in, unsigned int inlen, void * /* arg */) { static const unsigned char supported_protos[] = {8, 'h','t','t', 'p', '/', '1', '.', '1'}; (void)SSL_select_next_proto(out, outlen, in, inlen, supported_protos, sizeof(supported_protos)); @@ -656,10 +659,11 @@ Security::PeerOptions::updateContextNpn(Security::ContextPointer &ctx) #if USE_OPENSSL && defined(TLSEXT_TYPE_next_proto_neg) SSL_CTX_set_next_proto_select_cb(ctx.get(), &ssl_next_proto_cb, nullptr); -#endif - +#else // NOTE: GnuTLS does not support the obsolete NPN extension. // it does support ALPN per-session, not per-context. + (void)ctx; +#endif } static const char * @@ -737,6 +741,8 @@ Security::PeerOptions::updateContextCrl(Security::ContextPointer &ctx) X509_STORE_set_flags(st, X509_V_FLAG_CRL_CHECK); #endif +#else /* USE_OPENSSL */ + (void)ctx; #endif /* USE_OPENSSL */ } @@ -754,6 +760,9 @@ Security::PeerOptions::updateContextTrust(Security::ContextPointer &ctx) #endif #elif USE_GNUTLS // Modern GnuTLS versions trust intermediate CA certificates by default. + (void)ctx; +#else + (void)ctx; #endif /* TLS library */ } @@ -783,6 +792,8 @@ Security::PeerOptions::updateSessionOptions(Security::SessionPointer &s) if (x != GNUTLS_E_SUCCESS) { debugs(83, DBG_IMPORTANT, "ERROR: session=" << s << " Failed to set TLS options (" << errMsg << ":" << tlsMinVersion << "). error: " << Security::ErrorString(x)); } +#else + (void)s; #endif } diff --git a/src/security/ServerOptions.cc b/src/security/ServerOptions.cc index 709617c1f8..2613c279f2 100644 --- a/src/security/ServerOptions.cc +++ b/src/security/ServerOptions.cc @@ -206,7 +206,7 @@ Security::ServerOptions::initServerContexts(AnyP::PortCfg &port) } bool -Security::ServerOptions::createStaticServerContext(AnyP::PortCfg &port) +Security::ServerOptions::createStaticServerContext(AnyP::PortCfg &) { updateTlsVersionLimits(); @@ -440,6 +440,8 @@ Security::ServerOptions::updateContextClientCa(Security::ContextPointer &ctx) } else { Ssl::DisablePeerVerification(ctx); } +#else + (void)ctx; #endif } @@ -473,6 +475,7 @@ Security::ServerOptions::updateContextEecdh(Security::ContextPointer &ctx) #else debugs(83, DBG_CRITICAL, "ERROR: EECDH is not available in this build." << " Please link against OpenSSL>=0.9.8 and ensure OPENSSL_NO_ECDH is not set."); + (void)ctx; #endif } @@ -490,6 +493,8 @@ Security::ServerOptions::updateContextSessionId(Security::ContextPointer &ctx) #if USE_OPENSSL if (!staticContextSessionId.isEmpty()) SSL_CTX_set_session_id_context(ctx.get(), reinterpret_cast(staticContextSessionId.rawContent()), staticContextSessionId.length()); +#else + (void)ctx; #endif } diff --git a/src/security/Session.cc b/src/security/Session.cc index 052d6cb148..e3d8d7f6bb 100644 --- a/src/security/Session.cc +++ b/src/security/Session.cc @@ -130,7 +130,7 @@ CreateSession(const Security::ContextPointer &ctx, const Comm::ConnectionPointer errAction = "failed to initialize session"; debugs(83, DBG_IMPORTANT, "TLS error: " << errAction << ": " << Security::ErrorString(errCode)); } -#endif +#endif /* USE_GNUTLS */ if (session) { const int fd = conn->fd; @@ -149,7 +149,7 @@ CreateSession(const Security::ContextPointer &ctx, const Comm::ConnectionPointer // this does the equivalent of SSL_set_fd() for now. gnutls_transport_set_int(session.get(), fd); gnutls_handshake_set_timeout(session.get(), GNUTLS_DEFAULT_HANDSHAKE_TIMEOUT); -#endif +#endif /* USE_GNUTLS */ debugs(83, 5, "link FD " << fd << " to TLS session=" << (void*)session.get()); @@ -162,6 +162,7 @@ CreateSession(const Security::ContextPointer &ctx, const Comm::ConnectionPointer #if USE_OPENSSL errCode = ERR_get_error(); errAction = "failed to initialize I/O"; + (void)opts; #elif USE_GNUTLS errAction = "failed to assign credentials"; #endif @@ -169,7 +170,12 @@ CreateSession(const Security::ContextPointer &ctx, const Comm::ConnectionPointer debugs(83, DBG_IMPORTANT, "ERROR: " << squidCtx << ' ' << errAction << ": " << (errCode != 0 ? Security::ErrorString(errCode) : "")); -#endif +#else + (void)ctx; + (void)opts; + (void)type; + (void)squidCtx; +#endif /* USE_OPENSSL || USE_GNUTLS */ return false; } @@ -277,7 +283,7 @@ isTlsServer() #if USE_OPENSSL static int -store_session_cb(SSL *ssl, SSL_SESSION *session) +store_session_cb(SSL *, SSL_SESSION *session) { if (!SessionCache) return 0; @@ -377,7 +383,7 @@ Security::SetSessionCacheCallbacks(Security::ContextPointer &ctx) } #endif /* USE_OPENSSL */ -void +static void initializeSessionCache() { #if USE_OPENSSL diff --git a/src/security/cert_generators/file/certificate_db.cc b/src/security/cert_generators/file/certificate_db.cc index 7be0b3942c..455a7b6c2b 100644 --- a/src/security/cert_generators/file/certificate_db.cc +++ b/src/security/cert_generators/file/certificate_db.cc @@ -24,8 +24,6 @@ #include #endif -#define HERE "(security_file_certgen) " << __FILE__ << ':' << __LINE__ << ": " - Ssl::Lock::Lock(std::string const &aFilename) : filename(aFilename), #if _SQUID_WINDOWS_ @@ -107,12 +105,12 @@ Ssl::Locker::Locker(Lock &aLock, const char *aFileName, int aLineNo): Ssl::Locker::~Locker() { + (void)lineNo; // lineNo is unused but some find it helpful in debugging if (weLocked) lock.unlock(); } -Ssl::CertificateDb::Row::Row() - : width(cnlNumber) +Ssl::CertificateDb::Row::Row() : width(cnlNumber) { row = (char **)OPENSSL_malloc(sizeof(char *) * (width + 1)); for (size_t i = 0; i < width + 1; ++i) diff --git a/src/security/cert_generators/file/security_file_certgen.cc b/src/security/cert_generators/file/security_file_certgen.cc index 0fb699b5aa..413a200d49 100644 --- a/src/security/cert_generators/file/security_file_certgen.cc +++ b/src/security/cert_generators/file/security_file_certgen.cc @@ -9,6 +9,7 @@ #include "squid.h" #include "helper/protocol_defines.h" #include "security/cert_generators/file/certificate_db.h" +#include "SquidTime.h" #include "ssl/crtd_message.h" #include @@ -78,13 +79,13 @@ static const char *const B_BYTES_STR = "B"; /// Get current time. time_t getCurrentTime(void) { - struct timeval current_time; + struct timeval currentTime; #if GETTIMEOFDAY_NO_TZP - gettimeofday(¤t_time); + gettimeofday(¤tTime); #else - gettimeofday(¤t_time, NULL); + gettimeofday(¤tTime, nullptr); #endif - return current_time.tv_sec; + return currentTime.tv_sec; } /** diff --git a/src/security/forward.h b/src/security/forward.h index f7023e4bbe..53e1cc4fa3 100644 --- a/src/security/forward.h +++ b/src/security/forward.h @@ -126,6 +126,7 @@ inline const char *ErrorString(const LibErrorCode code) { #elif USE_GNUTLS return gnutls_strerror(code); #else + (void)code; return "[no TLS library]"; #endif } diff --git a/src/send-announce.cc b/src/send-announce.cc index d7ac4fd619..a491eec966 100644 --- a/src/send-announce.cc +++ b/src/send-announce.cc @@ -18,6 +18,7 @@ #include "globals.h" #include "ICP.h" #include "ipcache.h" +#include "send-announce.h" #include "SquidConfig.h" #include "SquidTime.h" #include "tools.h" diff --git a/src/servers/Http1Server.cc b/src/servers/Http1Server.cc index 884fb35e1e..b8a368278a 100644 --- a/src/servers/Http1Server.cc +++ b/src/servers/Http1Server.cc @@ -21,6 +21,7 @@ #include "servers/Http1Server.h" #include "SquidConfig.h" #include "Store.h" +#include "tunnel.h" CBDATA_NAMESPACED_CLASS_INIT(Http1, Server); @@ -92,7 +93,6 @@ Http::One::Server::parseOneRequest() } void clientProcessRequestFinished(ConnStateData *conn, const HttpRequest::Pointer &request); -bool clientTunnelOnError(ConnStateData *conn, Http::StreamPointer &context, HttpRequest::Pointer &request, const HttpRequestMethod& method, err_type requestError); bool Http::One::Server::buildHttpRequest(Http::StreamPointer &context) @@ -127,7 +127,7 @@ Http::One::Server::buildHttpRequest(Http::StreamPointer &context) assert(http->log_uri); const char * requestErrorBytes = inBuf.c_str(); - if (!clientTunnelOnError(this, context, request, parser_->method(), errPage)) { + if (!tunnelOnError(parser_->method(), errPage)) { setReplyError(context, request, parser_->method(), errPage, parser_->parseStatusCode, requestErrorBytes); // HttpRequest object not build yet, there is no reason to call // clientProcessRequestFinished method @@ -146,7 +146,7 @@ Http::One::Server::buildHttpRequest(Http::StreamPointer &context) http->setLogUriToRawUri(http->uri, parser_->method()); const char * requestErrorBytes = inBuf.c_str(); - if (!clientTunnelOnError(this, context, request, parser_->method(), ERR_INVALID_URL)) { + if (!tunnelOnError(parser_->method(), ERR_INVALID_URL)) { setReplyError(context, request, parser_->method(), ERR_INVALID_URL, Http::scBadRequest, requestErrorBytes); // HttpRequest object not build yet, there is no reason to call // clientProcessRequestFinished method @@ -165,7 +165,7 @@ Http::One::Server::buildHttpRequest(Http::StreamPointer &context) http->setLogUriToRawUri(http->uri, parser_->method()); const char * requestErrorBytes = NULL; //HttpParserHdrBuf(parser_); - if (!clientTunnelOnError(this, context, request, parser_->method(), ERR_UNSUP_HTTPVERSION)) { + if (!tunnelOnError(parser_->method(), ERR_UNSUP_HTTPVERSION)) { setReplyError(context, request, parser_->method(), ERR_UNSUP_HTTPVERSION, Http::scHttpVersionNotSupported, requestErrorBytes); clientProcessRequestFinished(this, request); } @@ -178,7 +178,7 @@ Http::One::Server::buildHttpRequest(Http::StreamPointer &context) // setReplyToError() requires log_uri http->setLogUriToRawUri(http->uri, parser_->method()); const char * requestErrorBytes = NULL; //HttpParserHdrBuf(parser_); - if (!clientTunnelOnError(this, context, request, parser_->method(), ERR_INVALID_REQ)) { + if (!tunnelOnError(parser_->method(), ERR_INVALID_REQ)) { setReplyError(context, request, parser_->method(), ERR_INVALID_REQ, Http::scBadRequest, requestErrorBytes); clientProcessRequestFinished(this, request); } @@ -379,8 +379,6 @@ Http::One::Server::writeControlMsgAndCall(HttpReply *rep, AsyncCall::Pointer &ca return true; } -void switchToTunnel(HttpRequest *request, const Comm::ConnectionPointer &clientConn, const Comm::ConnectionPointer &srvConn, const SBuf &preReadServerData); - void Http::One::Server::noteTakeServerConnectionControl(ServerConnectionContext server) { diff --git a/src/snmp_core.cc b/src/snmp_core.cc index 778262d03f..7345477352 100644 --- a/src/snmp_core.cc +++ b/src/snmp_core.cc @@ -874,7 +874,7 @@ snmpTreeEntry(oid entry, snint len, mib_tree_entry * current) return (next); } -void +static void snmpAddNodeChild(mib_tree_entry *entry, mib_tree_entry *child) { debugs(49, 5, "snmpAddNodeChild: assigning " << child << " to parent " << entry); diff --git a/src/ssl/ErrorDetailManager.cc b/src/ssl/ErrorDetailManager.cc index 38b70ac087..579a3c3073 100644 --- a/src/ssl/ErrorDetailManager.cc +++ b/src/ssl/ErrorDetailManager.cc @@ -151,6 +151,8 @@ Ssl::ErrorDetailsManager::getErrorDetail(Security::ErrorCode value, const HttpRe if (errDetails != NULL && errDetails->getRecord(value, entry)) return true; } +#else + (void)request; #endif // else try the default diff --git a/src/ssl/PeekingPeerConnector.cc b/src/ssl/PeekingPeerConnector.cc index 67eb9e1328..39d032810b 100644 --- a/src/ssl/PeekingPeerConnector.cc +++ b/src/ssl/PeekingPeerConnector.cc @@ -21,11 +21,10 @@ #include "ssl/bio.h" #include "ssl/PeekingPeerConnector.h" #include "ssl/ServerBump.h" +#include "tunnel.h" CBDATA_NAMESPACED_CLASS_INIT(Ssl, PeekingPeerConnector); -void switchToTunnel(HttpRequest *request, const Comm::ConnectionPointer &clientConn, const Comm::ConnectionPointer &srvConn, const SBuf &preReadServerData); - void Ssl::PeekingPeerConnector::cbCheckForPeekAndSpliceDone(Acl::Answer answer, void *data) { diff --git a/src/ssl/bio.cc b/src/ssl/bio.cc index cc36f4306f..5bf35648ea 100644 --- a/src/ssl/bio.cc +++ b/src/ssl/bio.cc @@ -149,7 +149,7 @@ Ssl::Bio::read(char *buf, int size, BIO *table) /// Called whenever the SSL connection state changes, an alert appears, or an /// error occurs. See SSL_set_info_callback(). void -Ssl::Bio::stateChanged(const SSL *ssl, int where, int ret) +Ssl::Bio::stateChanged(const SSL *ssl, int where, int) { // Here we can use (where & STATE) to check the current state. // Many STATE values are possible, including: SSL_CB_CONNECT_LOOP, @@ -168,7 +168,6 @@ Ssl::ClientBio::ClientBio(const int anFd): Bio(anFd), holdRead_(false), holdWrite_(false), - helloSize(0), abortReason(nullptr) { renegotiations.configure(10*1000); @@ -453,6 +452,9 @@ adjustSSL(SSL *ssl, Security::TlsDetails::Pointer const &details, SBuf &helloMes ssl->s3->wpend_tot = mainHelloSize; return true; #else + (void)ssl; + (void)details; + (void)helloMessage; return false; #endif } diff --git a/src/ssl/bio.h b/src/ssl/bio.h index d24f0035f9..cf9c74125d 100644 --- a/src/ssl/bio.h +++ b/src/ssl/bio.h @@ -44,7 +44,7 @@ public: /// Flushes any buffered data to socket. /// The Ssl::Bio does not buffer any data, so this method has nothing to do - virtual void flush(BIO *table) {} + virtual void flush(BIO *) {} int fd() const { return fd_; } ///< The SSL socket descriptor @@ -98,7 +98,6 @@ private: bool holdRead_; ///< The read hold state of the bio. bool holdWrite_; ///< The write hold state of the bio. - int helloSize; ///< The SSL hello message sent by client size FadingCounter renegotiations; ///< client requested renegotiations limit control /// why we should terminate the connection during next TLS operation (or nil) diff --git a/src/ssl/cert_validate_message.cc b/src/ssl/cert_validate_message.cc index 48fab388b7..33f1251384 100644 --- a/src/ssl/cert_validate_message.cc +++ b/src/ssl/cert_validate_message.cc @@ -89,7 +89,7 @@ get_error_id(const char *label, size_t len) } bool -Ssl::CertValidationMsg::parseResponse(CertValidationResponse &resp, std::string &error) +Ssl::CertValidationMsg::parseResponse(CertValidationResponse &resp) { std::vector certs; diff --git a/src/ssl/cert_validate_message.h b/src/ssl/cert_validate_message.h index d17e660f2c..70c85af923 100644 --- a/src/ssl/cert_validate_message.h +++ b/src/ssl/cert_validate_message.h @@ -100,7 +100,7 @@ public: void composeRequest(CertValidationRequest const &vcert); /// Parse a response message and fill the resp object with parsed information - bool parseResponse(CertValidationResponse &resp, std::string &error); + bool parseResponse(CertValidationResponse &resp); /// Search a CertItems list for the certificate with ID "name" X509 *getCertByName(std::vector const &, std::string const & name); diff --git a/src/ssl/helper.cc b/src/ssl/helper.cc index c50e6b1a33..958cdbe66f 100644 --- a/src/ssl/helper.cc +++ b/src/ssl/helper.cc @@ -268,7 +268,6 @@ static void sslCrtvdHandleReplyWrapper(void *data, const ::Helper::Reply &reply) { Ssl::CertValidationMsg replyMsg(Ssl::CrtdMessage::REPLY); - std::string error; submitData *crtdvdData = static_cast(data); assert(crtdvdData->ssl.get()); @@ -280,7 +279,7 @@ sslCrtvdHandleReplyWrapper(void *data, const ::Helper::Reply &reply) debugs(83, DBG_IMPORTANT, "\"ssl_crtvd\" helper returned NULL response"); validationResponse->resultCode = ::Helper::BrokenHelper; } else if (replyMsg.parse(reply.other().content(), reply.other().contentSize()) != Ssl::CrtdMessage::OK || - !replyMsg.parseResponse(*validationResponse, error) ) { + !replyMsg.parseResponse(*validationResponse) ) { debugs(83, DBG_IMPORTANT, "WARNING: Reply from ssl_crtvd for " << " is incorrect"); debugs(83, DBG_IMPORTANT, "Certificate cannot be validated. ssl_crtvd response: " << replyMsg.getBody()); validationResponse->resultCode = ::Helper::BrokenHelper; diff --git a/src/ssl/support.cc b/src/ssl/support.cc index 3ec51fdfad..e33fad6adf 100644 --- a/src/ssl/support.cc +++ b/src/ssl/support.cc @@ -61,7 +61,7 @@ std::vector Ssl::BumpModeStr = { */ int -Ssl::AskPasswordCb(char *buf, int size, int rwflag, void *userdata) +Ssl::AskPasswordCb(char *buf, int size, int /* rwflag */, void *userdata) { FILE *in; int len = 0; @@ -96,7 +96,7 @@ ssl_ask_password(SSL_CTX * context, const char * prompt) #if HAVE_LIBSSL_SSL_CTX_SET_TMP_RSA_CALLBACK static RSA * -ssl_temp_rsa_cb(SSL * ssl, int anInt, int keylen) +ssl_temp_rsa_cb(SSL *, int, int keylen) { static RSA *rsa_512 = nullptr; static RSA *rsa_1024 = nullptr; @@ -173,6 +173,8 @@ Ssl::MaybeSetupRsaCallback(Security::ContextPointer &ctx) #if HAVE_LIBSSL_SSL_CTX_SET_TMP_RSA_CALLBACK debugs(83, 9, "Setting RSA key generation callback."); SSL_CTX_set_tmp_rsa_callback(ctx.get(), ssl_temp_rsa_cb); +#else + (void)ctx; #endif } @@ -688,7 +690,7 @@ Ssl::Initialize(void) } bool -Ssl::InitServerContext(Security::ContextPointer &ctx, AnyP::PortCfg &port) +Ssl::InitServerContext(Security::ContextPointer &ctx, AnyP::PortCfg &) { if (!ctx) return false; @@ -989,7 +991,7 @@ Ssl::configureUnconfiguredSslContext(Security::ContextPointer &ctx, Ssl::CertSig } bool -Ssl::configureSSL(SSL *ssl, CertificateProperties const &properties, AnyP::PortCfg &port) +Ssl::configureSSL(SSL *ssl, CertificateProperties const &properties, AnyP::PortCfg &) { Security::CertPointer cert; Security::PrivateKeyPointer pkey; @@ -1012,7 +1014,7 @@ Ssl::configureSSL(SSL *ssl, CertificateProperties const &properties, AnyP::PortC } bool -Ssl::configureSSLUsingPkeyAndCertFromMemory(SSL *ssl, const char *data, AnyP::PortCfg &port) +Ssl::configureSSLUsingPkeyAndCertFromMemory(SSL *ssl, const char *data, AnyP::PortCfg &) { Security::CertPointer cert; Security::PrivateKeyPointer pkey; @@ -1032,7 +1034,7 @@ Ssl::configureSSLUsingPkeyAndCertFromMemory(SSL *ssl, const char *data, AnyP::Po } bool -Ssl::verifySslCertificate(const Security::ContextPointer &ctx, CertificateProperties const &properties) +Ssl::verifySslCertificate(const Security::ContextPointer &ctx, CertificateProperties const &) { #if HAVE_SSL_CTX_GET0_CERTIFICATE X509 * cert = SSL_CTX_get0_certificate(ctx.get()); @@ -1427,7 +1429,7 @@ bio_sbuf_destroy(BIO* bio) return 1; } -int +static int bio_sbuf_write(BIO* bio, const char* data, int len) { SBuf *buf = static_cast(BIO_get_data(bio)); @@ -1436,8 +1438,8 @@ bio_sbuf_write(BIO* bio, const char* data, int len) return len; } -int -bio_sbuf_puts(BIO* bio, const char* data) +static int +bio_sbuf_puts(BIO *bio, const char *data) { // TODO: use bio_sbuf_write() instead SBuf *buf = static_cast(BIO_get_data(bio)); @@ -1446,8 +1448,9 @@ bio_sbuf_puts(BIO* bio, const char* data) return buf->length() - oldLen; } -long -bio_sbuf_ctrl(BIO* bio, int cmd, long num, void* ptr) { +static long +bio_sbuf_ctrl(BIO *bio, int cmd, long /* num */, void *) +{ SBuf *buf = static_cast(BIO_get_data(bio)); switch (cmd) { case BIO_CTRL_RESET: diff --git a/src/stat.cc b/src/stat.cc index 26633b1a12..497b9734e9 100644 --- a/src/stat.cc +++ b/src/stat.cc @@ -789,6 +789,8 @@ DumpMallocStatistics(StoreEntry* sentry) storeAppendPrintf(sentry, "\nMemory allocation statistics\n"); storeAppendPrintf(sentry, "%12s %15s %6s %12s\n","Alloc Size","Count","Delta","Alloc/sec"); malloc_statistics(info_get_mallstat, sentry); +#else + (void)sentry; #endif } diff --git a/src/store/Controller.cc b/src/store/Controller.cc index 03c2fc7680..a0ae0e72e8 100644 --- a/src/store/Controller.cc +++ b/src/store/Controller.cc @@ -763,7 +763,7 @@ Store::Controller::updateOnNotModified(StoreEntry *old, StoreEntry &e304) bool Store::Controller::allowCollapsing(StoreEntry *e, const RequestFlags &reqFlags, - const HttpRequestMethod &reqMethod) + const HttpRequestMethod &) { const KeyScope keyScope = reqFlags.refresh ? ksRevalidation : ksDefault; // set the flag now so that it gets copied into the Transients entry diff --git a/src/store_client.cc b/src/store_client.cc index 1579e80e28..68baed5410 100644 --- a/src/store_client.cc +++ b/src/store_client.cc @@ -136,7 +136,8 @@ storeClientListAdd(StoreEntry * e, void *data) if (storeClientListSearch(mem, data) != NULL) /* XXX die! */ assert(1 == 0); - +#else + (void)data; #endif sc = new store_client (e); @@ -652,6 +653,8 @@ storeClientCopyPending(store_client * sc, StoreEntry * e, void *data) { #if STORE_CLIENT_LIST_DEBUG assert(sc == storeClientListSearch(e->mem_obj, data)); +#else + (void)data; #endif assert(sc); @@ -672,8 +675,9 @@ storeUnregister(store_client * sc, StoreEntry * e, void *data) { MemObject *mem = e->mem_obj; #if STORE_CLIENT_LIST_DEBUG - assert(sc == storeClientListSearch(e->mem_obj, data)); +#else + (void)data; #endif if (mem == NULL) diff --git a/src/store_digest.cc b/src/store_digest.cc index f3ec29b933..abc7e1be92 100644 --- a/src/store_digest.cc +++ b/src/store_digest.cc @@ -185,6 +185,8 @@ storeDigestDel(const StoreEntry * entry) debugs(71, 6, "storeDigestDel: deled entry, key: " << entry->getMD5Text()); } } +#else + (void)entry; #endif //USE_CACHE_DIGESTS } @@ -211,7 +213,8 @@ storeDigestReport(StoreEntry * e) } else { storeAppendPrintf(e, "store digest: disabled.\n"); } - +#else + (void)e; #endif //USE_CACHE_DIGESTS } @@ -300,7 +303,7 @@ storeDigestAdd(const StoreEntry * entry) /* rebuilds digest from scratch */ static void -storeDigestRebuildStart(void *datanotused) +storeDigestRebuildStart(void *) { assert(store_digest); /* prevent overlapping if rebuild schedule is too tight */ @@ -381,7 +384,7 @@ storeDigestRebuildFinish(void) /* recalculate a few hash buckets per invocation; schedules next step */ static void -storeDigestRebuildStep(void *datanotused) +storeDigestRebuildStep(void *) { /* TODO: call Store::Root().size() to determine this.. */ int count = Config.Store.objectsPerBucket * (int) ceil((double) store_hash_buckets * @@ -402,7 +405,7 @@ storeDigestRebuildStep(void *datanotused) /* starts swap out sequence for the digest */ static void -storeDigestRewriteStart(void *datanotused) +storeDigestRewriteStart(void *) { assert(store_digest); /* prevent overlapping if rewrite schedule is too tight */ diff --git a/src/tests/SBufFindTest.cc b/src/tests/SBufFindTest.cc index 01d9aee59f..eb523435d7 100644 --- a/src/tests/SBufFindTest.cc +++ b/src/tests/SBufFindTest.cc @@ -28,7 +28,6 @@ SBufFindTest::SBufFindTest(): maxHayLength(40), thePos(0), thePlacement(placeEof), - theStringPos(0), theBareNeedlePos(0), theFindString(0), theFindSBuf(0), diff --git a/src/tests/SBufFindTest.h b/src/tests/SBufFindTest.h index 63f9b1195b..b531a2d944 100644 --- a/src/tests/SBufFindTest.h +++ b/src/tests/SBufFindTest.h @@ -65,7 +65,6 @@ private: SBuf theSBufNeedle; ///< the string to be found SBuf::size_type thePos; ///< search position limit Placement thePlacement; ///< where in the hay the needle is placed - std::string::size_type theStringPos; ///< thePos converted to std::string::size_type std::string theStringHay; ///< theHay converted to std::string std::string theStringNeedle; ///< theNeedle converted to std::string diff --git a/src/tests/stub_EventLoop.cc b/src/tests/stub_EventLoop.cc index b6a4bd6886..fdef57fb82 100644 --- a/src/tests/stub_EventLoop.cc +++ b/src/tests/stub_EventLoop.cc @@ -18,5 +18,5 @@ EventLoop::EventLoop(): errcount(0), last_loop(false), timeService(NULL), primaryEngine(NULL), loop_delay(0), error(false), runOnceResult(false) STUB_NOP - void EventLoop::registerEngine(AsyncEngine *engine) STUB + void EventLoop::registerEngine(AsyncEngine *) STUB diff --git a/src/tests/stub_HttpHeader.cc b/src/tests/stub_HttpHeader.cc index 0bae97903f..7b58589de5 100644 --- a/src/tests/stub_HttpHeader.cc +++ b/src/tests/stub_HttpHeader.cc @@ -25,7 +25,7 @@ HttpHeader::HttpHeader() {STUB} HttpHeader::HttpHeader(const http_hdr_owner_type) {STUB} HttpHeader::HttpHeader(const HttpHeader &) {STUB} HttpHeader::~HttpHeader() {STUB} -HttpHeader &HttpHeader::operator =(const HttpHeader &other) STUB_RETVAL(*this) +HttpHeader &HttpHeader::operator =(const HttpHeader &) STUB_RETVAL(*this) void HttpHeader::clean() STUB void HttpHeader::append(const HttpHeader *) STUB void HttpHeader::update(const HttpHeader *) STUB @@ -82,7 +82,7 @@ int HttpHeader::hasByNameListMember(const char *, const char *, const char) cons void HttpHeader::removeHopByHopEntries() STUB void HttpHeader::removeConnectionHeaderEntries() STUB bool HttpHeader::Isolate(const char **, size_t, const char **, const char **) STUB_RETVAL(false) -bool HttpHeader::needUpdate(const HttpHeader *fresh) const STUB_RETVAL(false) +bool HttpHeader::needUpdate(const HttpHeader *) const STUB_RETVAL(false) bool HttpHeader::skipUpdateHeader(const Http::HdrType) const STUB_RETVAL(false) void HttpHeader::updateWarnings() STUB int httpHeaderParseQuotedString(const char *, const int, String *) STUB_RETVAL(-1) diff --git a/src/tests/stub_HttpReply.cc b/src/tests/stub_HttpReply.cc index d1bcbf03ad..005449d6d7 100644 --- a/src/tests/stub_HttpReply.cc +++ b/src/tests/stub_HttpReply.cc @@ -17,18 +17,17 @@ HttpReply::HttpReply() : Http::Message(hoReply), date (0), last_modified (0), protoPrefix("HTTP/"), do_clean(false), bodySizeMax(-2), content_range(nullptr) {STUB_NOP} HttpReply::~HttpReply() STUB -void HttpReply::setHeaders(Http::StatusCode status, const char *reason, const char *ctype, int64_t clen, time_t lmt, time_t expires_) STUB +void HttpReply::setHeaders(Http::StatusCode, const char *, const char *, int64_t, time_t, time_t) STUB void HttpReply::packHeadersUsingFastPacker(Packable&) const STUB void HttpReply::packHeadersUsingSlowPacker(Packable&) const STUB void HttpReply::reset() STUB -void httpBodyPackInto(const HttpBody *, Packable *) STUB -bool HttpReply::sanityCheckStartLine(const char *buf, const size_t hdr_len, Http::StatusCode *error) STUB_RETVAL(false) +bool HttpReply::sanityCheckStartLine(const char *, const size_t, Http::StatusCode *) STUB_RETVAL(false) int HttpReply::httpMsgParseError() STUB_RETVAL(0) bool HttpReply::expectingBody(const HttpRequestMethod&, int64_t&) const STUB_RETVAL(false) -bool HttpReply::parseFirstLine(const char *start, const char *end) STUB_RETVAL(false) +bool HttpReply::parseFirstLine(const char *, const char *) STUB_RETVAL(false) void HttpReply::hdrCacheInit() STUB HttpReply * HttpReply::clone() const STUB_RETVAL(NULL) -bool HttpReply::inheritProperties(const Http::Message *aMsg) STUB_RETVAL(false) +bool HttpReply::inheritProperties(const Http::Message *) STUB_RETVAL(false) HttpReply::Pointer HttpReply::recreateOnNotModified(const HttpReply &) const STUB_RETVAL(nullptr) int64_t HttpReply::bodySize(const HttpRequestMethod&) const STUB_RETVAL(0) const HttpHdrContRange *HttpReply::contentRange() const STUB_RETVAL(nullptr) diff --git a/src/tests/stub_MemObject.cc b/src/tests/stub_MemObject.cc index c6296d9c71..099b8be870 100644 --- a/src/tests/stub_MemObject.cc +++ b/src/tests/stub_MemObject.cc @@ -28,7 +28,7 @@ MemObject::endOffset() const void MemObject::trimSwappable() STUB void MemObject::trimUnSwappable() STUB -int64_t MemObject::policyLowestOffsetToKeep(bool swap) const STUB_RETVAL(-1) +int64_t MemObject::policyLowestOffsetToKeep(bool) const STUB_RETVAL(-1) MemObject::MemObject() { ping_reply_callback = nullptr; memset(&start_ping, 0, sizeof(start_ping)); @@ -36,17 +36,17 @@ MemObject::MemObject() { const char *MemObject::storeId() const STUB_RETVAL(NULL) const char *MemObject::logUri() const STUB_RETVAL(NULL) -void MemObject::setUris(char const *aStoreId, char const *aLogUri, const HttpRequestMethod &aMethod) STUB +void MemObject::setUris(char const *, char const *, const HttpRequestMethod &) STUB void MemObject::reset() STUB -void MemObject::delayRead(DeferredRead const &aRead) STUB +void MemObject::delayRead(DeferredRead const &) STUB bool MemObject::readAheadPolicyCanRead() const STUB_RETVAL(false) -void MemObject::setNoDelay(bool const newValue) STUB +void MemObject::setNoDelay(bool const) STUB MemObject::~MemObject() STUB -int MemObject::mostBytesWanted(int max, bool ignoreDelayPools) const STUB_RETVAL(-1) +int MemObject::mostBytesWanted(int, bool) const STUB_RETVAL(-1) #if USE_DELAY_POOLS DelayId MemObject::mostBytesAllowed() const STUB_RETVAL(DelayId()) #endif -void MemObject::write(const StoreIOBuffer &writeBuffer) STUB +void MemObject::write(const StoreIOBuffer &) STUB int64_t MemObject::lowestMemReaderOffset() const STUB_RETVAL(0) void MemObject::kickReads() STUB int64_t MemObject::objectBytesOnDisk() const STUB_RETVAL(0) diff --git a/src/tests/stub_MemStore.cc b/src/tests/stub_MemStore.cc index 6a39a8bd49..f0692bfef7 100644 --- a/src/tests/stub_MemStore.cc +++ b/src/tests/stub_MemStore.cc @@ -17,9 +17,9 @@ MemStore::MemStore() STUB MemStore::~MemStore() STUB bool MemStore::keepInLocalMemory(const StoreEntry &) const STUB_RETVAL(false) -void MemStore::write(StoreEntry &e) STUB -void MemStore::completeWriting(StoreEntry &e) STUB -void MemStore::disconnect(StoreEntry &e) STUB +void MemStore::write(StoreEntry &) STUB +void MemStore::completeWriting(StoreEntry &) STUB +void MemStore::disconnect(StoreEntry &) STUB void MemStore::reference(StoreEntry &) STUB void MemStore::updateHeaders(StoreEntry *) STUB void MemStore::maintain() STUB diff --git a/src/tests/stub_SBufDetailedStats.cc b/src/tests/stub_SBufDetailedStats.cc index adca4cb564..c9baed93cc 100644 --- a/src/tests/stub_SBufDetailedStats.cc +++ b/src/tests/stub_SBufDetailedStats.cc @@ -7,15 +7,17 @@ */ #include "squid.h" +#include "sbuf/DetailedStats.h" #include "sbuf/SBuf.h" +#include "StatHist.h" #define STUB_API "sbuf/DetailedStats.cc" #include "tests/STUB.h" -class StatHist; +static StatHist s; void recordSBufSizeAtDestruct(SBuf::size_type) {} // STUB_NOP -const StatHist * collectSBufDestructTimeStats() STUB_RETVAL(nullptr) +StatHist &collectSBufDestructTimeStats() STUB_RETVAL(s) void recordMemBlobSizeAtDestruct(SBuf::size_type) {} // STUB_NOP -const StatHist * collectMemBlobDestructTimeStats() STUB_RETVAL(nullptr) +StatHist &collectMemBlobDestructTimeStats() STUB_RETVAL(s) diff --git a/src/tests/stub_StatHist.cc b/src/tests/stub_StatHist.cc index 027ab94369..e37899488d 100644 --- a/src/tests/stub_StatHist.cc +++ b/src/tests/stub_StatHist.cc @@ -14,11 +14,11 @@ class StoreEntry; -void StatHist::dump(StoreEntry * sentry, StatHistBinDumper * bd) const STUB -void StatHist::enumInit(unsigned int i) STUB_NOP +void StatHist::dump(StoreEntry *, StatHistBinDumper *) const STUB +void StatHist::enumInit(unsigned int) STUB_NOP void StatHist::count(double) {/* STUB_NOP */} -double statHistDeltaMedian(const StatHist & A, const StatHist & B) STUB_RETVAL(0.0) -double statHistDeltaPctile(const StatHist & A, const StatHist & B, double pctile) STUB_RETVAL(0.0) -void StatHist::logInit(unsigned int i, double d1, double d2) STUB_NOP -void statHistIntDumper(StoreEntry * sentry, int idx, double val, double size, int count) STUB +double statHistDeltaMedian(const StatHist &, const StatHist &) STUB_RETVAL(0.0) +double statHistDeltaPctile(const StatHist & , const StatHist & , double) STUB_RETVAL(0.0) +void StatHist::logInit(unsigned int, double, double) STUB_NOP +void statHistIntDumper(StoreEntry *, int, double, double, int) STUB diff --git a/src/tests/stub_UdsOp.cc b/src/tests/stub_UdsOp.cc index e4f98670bd..8aa82deb72 100644 --- a/src/tests/stub_UdsOp.cc +++ b/src/tests/stub_UdsOp.cc @@ -12,5 +12,5 @@ #define STUB_API "UdsOp.cc" #include "tests/STUB.h" -void Ipc::SendMessage(const String& toAddress, const TypedMsgHdr& message) STUB +void Ipc::SendMessage(const String&, const TypedMsgHdr&) STUB diff --git a/src/tests/stub_cache_cf.cc b/src/tests/stub_cache_cf.cc index 90d744ced1..87ddd1345c 100644 --- a/src/tests/stub_cache_cf.cc +++ b/src/tests/stub_cache_cf.cc @@ -10,6 +10,7 @@ #include "squid.h" #include "acl/Acl.h" +#include "acl/Gadgets.h" #include "ConfigParser.h" #include "wordlist.h" @@ -18,15 +19,15 @@ #include "cache_cf.h" void self_destruct(void) STUB -void parse_int(int *var) STUB -void parse_onoff(int *var) STUB -void parse_eol(char *volatile *var) STUB -void parse_wordlist(wordlist ** list) STUB -void requirePathnameExists(const char *name, const char *path) STUB_NOP -void parse_time_t(time_t * var) STUB -void ConfigParser::ParseUShort(unsigned short *var) STUB +void parse_int(int *) STUB +void parse_onoff(int *) STUB +void parse_eol(char *volatile *) STUB +void parse_wordlist(wordlist **) STUB +void requirePathnameExists(const char *, const char *) STUB_NOP +void parse_time_t(time_t *) STUB +void ConfigParser::ParseUShort(unsigned short *) STUB void ConfigParser::ParseWordList(wordlist **) STUB -void parseBytesOptionValue(size_t *, const char *, char const * value) STUB -void dump_acl_access(StoreEntry * entry, const char *name, acl_access * head) STUB +void parseBytesOptionValue(size_t *, const char *, char const *) STUB +void dump_acl_access(StoreEntry *, const char *, acl_access *) STUB void dump_acl_list(StoreEntry*, ACLList*) STUB diff --git a/src/tests/stub_cache_manager.cc b/src/tests/stub_cache_manager.cc index ed5e5d9b4a..e112faa29f 100644 --- a/src/tests/stub_cache_manager.cc +++ b/src/tests/stub_cache_manager.cc @@ -14,7 +14,7 @@ #define STUB_API "cache_manager.cc" #include "tests/STUB.h" -Mgr::Action::Pointer CacheManager::createNamedAction(char const* action) STUB_RETVAL(NULL) +Mgr::Action::Pointer CacheManager::createNamedAction(char const*) STUB_RETVAL(nullptr) void CacheManager::start(const Comm::ConnectionPointer &, HttpRequest *, StoreEntry *, const AccessLogEntryPointer &) { std::cerr << HERE << "\n"; diff --git a/src/tests/stub_carp.cc b/src/tests/stub_carp.cc index 06c7b28397..3f1a9d7717 100644 --- a/src/tests/stub_carp.cc +++ b/src/tests/stub_carp.cc @@ -11,9 +11,11 @@ #define STUB_API "carp.cc" #include "tests/STUB.h" +#include "carp.h" + class CachePeer; class PeerSelector; void carpInit(void) STUB -CachePeer *carpSelectParent(PeerSelector *ps) STUB_RETVAL(nullptr) +CachePeer *carpSelectParent(PeerSelector *) STUB_RETVAL(nullptr) diff --git a/src/tests/stub_client_db.cc b/src/tests/stub_client_db.cc index fd180d58e4..bf979d8627 100644 --- a/src/tests/stub_client_db.cc +++ b/src/tests/stub_client_db.cc @@ -18,8 +18,8 @@ void clientdbDump(StoreEntry *) STUB void clientdbFreeMemory(void) STUB int clientdbEstablished(const Ip::Address &, int) STUB_RETVAL(-1) #if USE_DELAY_POOLS -void clientdbSetWriteLimiter(ClientInfo * info, const int writeSpeedLimit,const double initialBurst,const double highWatermark) STUB -ClientInfo *clientdbGetInfo(const Ip::Address &addr) STUB_RETVAL(nullptr) +void clientdbSetWriteLimiter(ClientInfo *, const int,const double,const double) STUB +ClientInfo *clientdbGetInfo(const Ip::Address &) STUB_RETVAL(nullptr) #endif #if SQUID_SNMP Ip::Address *client_entry(Ip::Address *) STUB_RETVAL(nullptr) diff --git a/src/tests/stub_client_side.cc b/src/tests/stub_client_side.cc index a80732edfc..4cc9abdc28 100644 --- a/src/tests/stub_client_side.cc +++ b/src/tests/stub_client_side.cc @@ -56,7 +56,6 @@ bool ConnStateData::serveDelayedError(Http::Stream *) STUB_RETVAL(false) const char *findTrailingHTTPVersion(const char *, const char *) STUB_RETVAL(NULL) int varyEvaluateMatch(StoreEntry *, HttpRequest *) STUB_RETVAL(0) void clientOpenListenSockets(void) STUB -void clientHttpConnectionsClose(void) STUB void httpRequestFree(void *) STUB void clientPackRangeHdr(const HttpReplyPointer &, const HttpHdrRangeSpec *, String, MemBuf *) STUB void clientPackTermBound(String, MemBuf *) STUB diff --git a/src/tests/stub_comm.cc b/src/tests/stub_comm.cc index d2b15eb456..607e4e8819 100644 --- a/src/tests/stub_comm.cc +++ b/src/tests/stub_comm.cc @@ -7,8 +7,10 @@ */ #include "squid.h" +#include "comm.h" #include "comm/Connection.h" #include "comm/Loops.h" +// #include "comm/Read.h" #include "fde.h" #define STUB_API "comm.cc" @@ -16,8 +18,8 @@ #include -void comm_read(const Comm::ConnectionPointer &conn, char *buf, int size, IOCB *handler, void *handler_data) STUB -void comm_read(const Comm::ConnectionPointer &conn, char*, int, AsyncCall::Pointer &callback) STUB +// void comm_read(const Comm::ConnectionPointer &, char *, int, IOCB *, void *) STUB +// void comm_read(const Comm::ConnectionPointer &, char*, int, AsyncCall::Pointer &) STUB /* should be in stub_CommRead */ #include "CommRead.h" @@ -25,45 +27,46 @@ CommRead::CommRead(const Comm::ConnectionPointer &, char *, int, AsyncCall::Poin CommRead::CommRead() STUB DeferredReadManager::~DeferredReadManager() STUB DeferredRead::DeferredRead(DeferrableRead *, void *, CommRead const &) STUB -void DeferredReadManager::delayRead(DeferredRead const &aRead) STUB -void DeferredReadManager::kickReads(int const count) STUB +void DeferredReadManager::delayRead(DeferredRead const &) STUB +void DeferredReadManager::kickReads(int const) STUB #include "comm.h" bool comm_iocallbackpending(void) STUB_RETVAL(false) -int commSetNonBlocking(int fd) STUB_RETVAL(Comm::COMM_ERROR) -int commUnsetNonBlocking(int fd) STUB_RETVAL(-1) -void commSetCloseOnExec(int fd) STUB_NOP -void _comm_close(int fd, char const *file, int line) STUB -void old_comm_reset_close(int fd) STUB -void comm_reset_close(const Comm::ConnectionPointer &conn) STUB -int comm_connect_addr(int sock, const Ip::Address &addr) STUB_RETVAL(-1) +int commSetNonBlocking(int) STUB_RETVAL(Comm::COMM_ERROR) +int commUnsetNonBlocking(int) STUB_RETVAL(-1) +void commSetCloseOnExec(int) STUB_NOP +void _comm_close(int, char const *, int) STUB +void old_comm_reset_close(int) STUB +void comm_reset_close(const Comm::ConnectionPointer &) STUB +int comm_connect_addr(int, const Ip::Address &) STUB_RETVAL(-1) + void comm_init(void) STUB void comm_exit(void) STUB -int comm_open(int, int, Ip::Address &, int, const char *note) STUB_RETVAL(-1) -int comm_open_uds(int sock_type, int proto, struct sockaddr_un* addr, int flags) STUB_RETVAL(-1) -void comm_import_opened(const Comm::ConnectionPointer &, const char *note, struct addrinfo *AI) STUB -int comm_open_listener(int sock_type, int proto, Ip::Address &addr, int flags, const char *note) STUB_RETVAL(-1) -void comm_open_listener(int sock_type, int proto, Comm::ConnectionPointer &conn, const char *note) STUB -int comm_openex(int, int, Ip::Address &, int, tos_t tos, nfmark_t nfmark, const char *) STUB_RETVAL(-1) -unsigned short comm_local_port(int fd) STUB_RETVAL(0) -int comm_udp_sendto(int sock, const Ip::Address &to, const void *buf, int buflen) STUB_RETVAL(-1) -void commCallCloseHandlers(int fd) STUB -void commUnsetFdTimeout(int fd) STUB -int commSetTimeout(const Comm::ConnectionPointer &, int, AsyncCall::Pointer&) STUB_RETVAL(-1) -int commSetConnTimeout(const Comm::ConnectionPointer &conn, int seconds, AsyncCall::Pointer &callback) STUB_RETVAL(-1) -int commUnsetConnTimeout(const Comm::ConnectionPointer &conn) STUB_RETVAL(-1) -int ignoreErrno(int ierrno) STUB_RETVAL(-1) +int comm_open(int, int, Ip::Address &, int, const char *) STUB_RETVAL(-1) +int comm_open_uds(int, int, struct sockaddr_un*, int) STUB_RETVAL(-1) +void comm_import_opened(const Comm::ConnectionPointer &, const char *, struct addrinfo *) STUB +int comm_open_listener(int, int, Ip::Address &, int, const char *) STUB_RETVAL(-1) +void comm_open_listener(int, int, Comm::ConnectionPointer &, const char *) STUB +// int comm_openex(int, int, Ip::Address &, int, tos_t, nfmark_t, const char *) STUB_RETVAL(-1) +unsigned short comm_local_port(int) STUB_RETVAL(0) +int comm_udp_sendto(int, const Ip::Address &, const void *, int) STUB_RETVAL(-1) +void commCallCloseHandlers(int) STUB +void commUnsetFdTimeout(int) STUB +// int commSetTimeout(const Comm::ConnectionPointer &, int, AsyncCall::Pointer&) STUB_RETVAL(-1) +int commSetConnTimeout(const Comm::ConnectionPointer &, int, AsyncCall::Pointer &) STUB_RETVAL(-1) +int commUnsetConnTimeout(const Comm::ConnectionPointer &) STUB_RETVAL(-1) +int ignoreErrno(int) STUB_RETVAL(-1) void commCloseAllSockets(void) STUB void checkTimeouts(void) STUB -AsyncCall::Pointer comm_add_close_handler(int fd, CLCB *, void *) STUB -void comm_add_close_handler(int fd, AsyncCall::Pointer &) STUB -void comm_remove_close_handler(int fd, CLCB *, void *) STUB -void comm_remove_close_handler(int fd, AsyncCall::Pointer &)STUB -int comm_udp_recvfrom(int fd, void *buf, size_t len, int flags, Ip::Address &from) STUB_RETVAL(-1) -int comm_udp_recv(int fd, void *buf, size_t len, int flags) STUB_RETVAL(-1) -ssize_t comm_udp_send(int s, const void *buf, size_t len, int flags) STUB_RETVAL(-1) +AsyncCall::Pointer comm_add_close_handler(int, CLCB *, void *) STUB +void comm_add_close_handler(int, AsyncCall::Pointer &) STUB +void comm_remove_close_handler(int, CLCB *, void *) STUB +void comm_remove_close_handler(int, AsyncCall::Pointer &)STUB +int comm_udp_recvfrom(int, void *, size_t, int, Ip::Address &) STUB_RETVAL(-1) +int comm_udp_recv(int, void *, size_t, int) STUB_RETVAL(-1) +ssize_t comm_udp_send(int, const void *, size_t, int) STUB_RETVAL(-1) bool comm_has_incomplete_write(int) STUB_RETVAL(false) -void commStartHalfClosedMonitor(int fd) STUB -bool commHasHalfClosedMonitor(int fd) STUB_RETVAL(false) -int CommSelectEngine::checkEvents(int timeout) STUB_RETVAL(0) +void commStartHalfClosedMonitor(int) STUB +bool commHasHalfClosedMonitor(int) STUB_RETVAL(false) +int CommSelectEngine::checkEvents(int) STUB_RETVAL(0) diff --git a/src/tests/stub_debug.cc b/src/tests/stub_debug.cc index db5d8bfe3f..3ce8119ce6 100644 --- a/src/tests/stub_debug.cc +++ b/src/tests/stub_debug.cc @@ -52,7 +52,7 @@ _db_rotate_log(void) static void _db_print_stderr(const char *format, va_list args); -void +static void _db_print(const char *format,...) { static char f[BUFSIZ]; diff --git a/src/tests/stub_errorpage.cc b/src/tests/stub_errorpage.cc index 8684a39770..55e5d1f277 100644 --- a/src/tests/stub_errorpage.cc +++ b/src/tests/stub_errorpage.cc @@ -13,8 +13,8 @@ #include "tests/STUB.h" err_type errorReservePageId(const char *, const SBuf &) STUB_RETVAL(err_type(0)) -void errorAppendEntry(StoreEntry * entry, ErrorState * err) STUB -bool strHdrAcptLangGetItem(const String &hdr, char *lang, int langLen, size_t &pos) STUB_RETVAL(false) +void errorAppendEntry(StoreEntry *, ErrorState * ) STUB +bool strHdrAcptLangGetItem(const String &, char *, int, size_t &) STUB_RETVAL(false) void TemplateFile::loadDefault() STUB TemplateFile::TemplateFile(char const*, err_type) STUB bool TemplateFile::loadFor(const HttpRequest *) STUB_RETVAL(false) diff --git a/src/tests/stub_event.cc b/src/tests/stub_event.cc index 28b00cf96d..f4c0d79f16 100644 --- a/src/tests/stub_event.cc +++ b/src/tests/stub_event.cc @@ -12,9 +12,9 @@ #define STUB_API "event.cc" #include "tests/STUB.h" -void eventAdd(const char *name, EVH * func, void *arg, double when, int, bool cbdata) STUB_NOP -void eventAddIsh(const char *name, EVH * func, void *arg, double delta_ish, int) STUB -void eventDelete(EVH * func, void *arg) STUB +void eventAdd(const char *, EVH *, void *, double, int, bool) STUB_NOP +void eventAddIsh(const char *, EVH *, void *, double, int) STUB +void eventDelete(EVH *, void *) STUB void eventInit(void) STUB void eventFreeMemory(void) STUB int eventFind(EVH *, void *) STUB_RETVAL(-1) @@ -25,12 +25,12 @@ int eventFind(EVH *, void *) STUB_RETVAL(-1) EventScheduler::EventScheduler() STUB EventScheduler::~EventScheduler() STUB -void EventScheduler::cancel(EVH * func, void * arg) STUB +void EventScheduler::cancel(EVH *, void *) STUB int EventScheduler::timeRemaining() const STUB_RETVAL(1) void EventScheduler::clean() STUB void EventScheduler::dump(StoreEntry *) STUB -bool EventScheduler::find(EVH * func, void * arg) STUB_RETVAL(false) -void EventScheduler::schedule(const char *name, EVH * func, void *arg, double when, int weight, bool cbdata) STUB -int EventScheduler::checkEvents(int timeout) STUB_RETVAL(-1) +bool EventScheduler::find(EVH *, void *) STUB_RETVAL(false) +void EventScheduler::schedule(const char *, EVH *, void *, double, int, bool) STUB +int EventScheduler::checkEvents(int) STUB_RETVAL(-1) EventScheduler *EventScheduler::GetInstance() STUB_RETVAL(NULL) diff --git a/src/tests/stub_fatal.cc b/src/tests/stub_fatal.cc index 04d1b9617b..12ad932fc9 100644 --- a/src/tests/stub_fatal.cc +++ b/src/tests/stub_fatal.cc @@ -7,13 +7,12 @@ */ #include "squid.h" +#include "fatal.h" #define STUB_API "fatal.cc" #include "tests/STUB.h" void fatal(const char *) STUB -void fatal_common(const char *) STUB void fatalf(const char *, ...) STUB -void fatalvf(const char *, va_list) STUB void fatal_dump(const char *) STUB diff --git a/src/tests/stub_fd.cc b/src/tests/stub_fd.cc index 0d0f44d661..15b7457ca5 100644 --- a/src/tests/stub_fd.cc +++ b/src/tests/stub_fd.cc @@ -7,6 +7,7 @@ */ #include "squid.h" +#include "fd.h" #include "fde.h" #define STUB_API "fd.cc" @@ -15,9 +16,9 @@ fde *fde::Table = NULL; int fdNFree(void) STUB_RETVAL(-1) -void fd_open(int fd, unsigned int type, const char *desc) STUB -void fd_close(int fd) STUB -void fd_bytes(int fd, int len, unsigned int type) STUB -void fd_note(int fd, const char *s) STUB +void fd_open(int, unsigned int, const char *) STUB +void fd_close(int) STUB +void fd_bytes(int, int, unsigned int) STUB +void fd_note(int, const char *) STUB void fdAdjustReserved() STUB diff --git a/src/tests/stub_helper.cc b/src/tests/stub_helper.cc index 106b672a18..7e25327f89 100644 --- a/src/tests/stub_helper.cc +++ b/src/tests/stub_helper.cc @@ -12,17 +12,15 @@ #define STUB_API "helper.cc" #include "tests/STUB.h" -void helperSubmit(helper * hlp, const char *buf, HLPCB * callback, void *data) STUB -void helperStatefulSubmit(statefulhelper * hlp, const char *buf, HLPCB * callback, void *data, helper_stateful_server * lastserver) STUB +void helperSubmit(helper *, const char *, HLPCB *, void *) STUB +void helperStatefulSubmit(statefulhelper *, const char *, HLPCB *, void *, uint64_t) STUB helper::~helper() STUB CBDATA_CLASS_INIT(helper); -void helper::packStatsInto(Packable *p, const char *label) const STUB +void helper::packStatsInto(Packable *, const char *) const STUB -void helperShutdown(helper * hlp) STUB -void helperStatefulShutdown(statefulhelper * hlp) STUB -void helperOpenServers(helper * hlp) STUB -void helperStatefulOpenServers(statefulhelper * hlp) STUB -helper_stateful_server *helperStatefulDefer(statefulhelper * hlp) STUB_RETVAL(NULL) -void helperStatefulReleaseServer(helper_stateful_server * srv) STUB +void helperShutdown(helper *) STUB +void helperStatefulShutdown(statefulhelper *) STUB +void helperOpenServers(helper *) STUB +void helperStatefulOpenServers(statefulhelper *) STUB CBDATA_CLASS_INIT(statefulhelper); diff --git a/src/tests/stub_http.cc b/src/tests/stub_http.cc index 8cf94e018c..575d5eaa44 100644 --- a/src/tests/stub_http.cc +++ b/src/tests/stub_http.cc @@ -7,12 +7,13 @@ */ #include "squid.h" -#include "HttpReply.h" -#include "HttpRequest.h" +#include "http.h" #include "sbuf/SBuf.h" #define STUB_API "http.cc" #include "tests/STUB.h" +class HttpRequest; +class HttpReply; SBuf httpMakeVaryMark(HttpRequest *, HttpReply const *) STUB_RETVAL(SBuf()) diff --git a/src/tests/stub_icp.cc b/src/tests/stub_icp.cc index 71eae6432f..3baa31e438 100644 --- a/src/tests/stub_icp.cc +++ b/src/tests/stub_icp.cc @@ -15,11 +15,11 @@ #include "tests/STUB.h" icp_common_t::icp_common_t() STUB -icp_common_t::icp_common_t(char *buf, unsigned int len) STUB -void icp_common_t::handleReply(char *buf, Ip::Address &from) STUB -icp_common_t *icp_common_t::CreateMessage(icp_opcode opcode, int flags, const char *url, int reqnum, int pad) STUB_RETVAL(nullptr) +icp_common_t::icp_common_t(char *, unsigned int) STUB +void icp_common_t::handleReply(char *, Ip::Address &) STUB +icp_common_t *icp_common_t::CreateMessage(icp_opcode, int, const char *, int, int) STUB_RETVAL(nullptr) icp_opcode icp_common_t::getOpCode() const STUB_RETVAL(ICP_INVALID) -ICPState::ICPState(icp_common_t &aHeader, HttpRequest *aRequest) STUB +ICPState::ICPState(icp_common_t &, HttpRequest *) STUB ICPState::~ICPState() STUB bool ICPState::confirmAndPrepHit(const StoreEntry &) const STUB_RETVAL(false) LogTags *ICPState::loggingTags() const STUB_RETVAL(nullptr) @@ -29,17 +29,15 @@ Comm::ConnectionPointer icpIncomingConn; Comm::ConnectionPointer icpOutgoingConn; Ip::Address theIcpPublicHostID; -HttpRequest* icpGetRequest(char *url, int reqnum, int fd, Ip::Address &from) STUB_RETVAL(NULL) -bool icpAccessAllowed(Ip::Address &from, HttpRequest * icp_request) STUB_RETVAL(false) -void icpCreateAndSend(icp_opcode, int flags, char const *url, int reqnum, int pad, int fd, const Ip::Address &from, AccessLogEntryPointer) STUB +HttpRequest* icpGetRequest(char *, int, int, Ip::Address &) STUB_RETVAL(nullptr) +bool icpAccessAllowed(Ip::Address &, HttpRequest *) STUB_RETVAL(false) +void icpCreateAndSend(icp_opcode, int, char const *, int, int, int, const Ip::Address &, AccessLogEntryPointer) STUB icp_opcode icpGetCommonOpcode() STUB_RETVAL(ICP_INVALID) -void icpDenyAccess(Ip::Address &from, char *url, int reqnum, int fd) STUB +void icpDenyAccess(Ip::Address &, char *, int, int) STUB void icpHandleIcpV3(int, Ip::Address &, char *, int) STUB -void icpConnectionsOpen(void) STUB void icpConnectionShutdown(void) STUB -void icpConnectionClose(void) STUB -int icpSetCacheKey(const cache_key * key) STUB_RETVAL(0) -const cache_key *icpGetCacheKey(const char *url, int reqnum) STUB_RETVAL(NULL) +int icpSetCacheKey(const cache_key *) STUB_RETVAL(0) +const cache_key *icpGetCacheKey(const char *, int) STUB_RETVAL(nullptr) #include "icp_opcode.h" // dynamically generated diff --git a/src/tests/stub_internal.cc b/src/tests/stub_internal.cc index 0dd762a610..0a1c5a8131 100644 --- a/src/tests/stub_internal.cc +++ b/src/tests/stub_internal.cc @@ -7,9 +7,10 @@ */ #include "squid.h" +#include "internal.h" #define STUB_API "internal.cc" #include "tests/STUB.h" -char * internalLocalUri(const char *dir, const char *name) STUB_RETVAL(NULL) +char *internalLocalUri(const char *, const SBuf &) STUB_RETVAL(nullptr) diff --git a/src/tests/stub_ipc_Forwarder.cc b/src/tests/stub_ipc_Forwarder.cc index cca90529be..f25e082eee 100644 --- a/src/tests/stub_ipc_Forwarder.cc +++ b/src/tests/stub_ipc_Forwarder.cc @@ -10,6 +10,7 @@ #include "ipc/Forwarder.h" //Avoid linker errors about Ipc::Forwarder +void foo_stub_ipc_forwarder(); void foo_stub_ipc_forwarder() { Ipc::Forwarder foo(NULL,1.0); diff --git a/src/tests/stub_ipcache.cc b/src/tests/stub_ipcache.cc index d9dc9af7d5..cbc9dfa8b0 100644 --- a/src/tests/stub_ipcache.cc +++ b/src/tests/stub_ipcache.cc @@ -13,14 +13,14 @@ #include "tests/STUB.h" void ipcache_purgelru(void *) STUB -void ipcache_nbgethostbyname(const char *name, IPH * handler, void *handlerData) STUB -const ipcache_addrs *ipcache_gethostbyname(const char *, int flags) STUB_RETVAL(NULL) +void ipcache_nbgethostbyname(const char *, IPH *, void *) STUB +const ipcache_addrs *ipcache_gethostbyname(const char *, int) STUB_RETVAL(nullptr) void ipcacheInvalidate(const char *) STUB void ipcacheInvalidateNegative(const char *) STUB void ipcache_init(void) STUB -void ipcacheMarkBadAddr(const char *name, const Ip::Address &) STUB -void ipcacheMarkGoodAddr(const char *name, const Ip::Address &) STUB +void ipcacheMarkBadAddr(const char *, const Ip::Address &) STUB +void ipcacheMarkGoodAddr(const char *, const Ip::Address &) STUB void ipcacheFreeMemory(void) STUB void ipcache_restart(void) STUB -int ipcacheAddEntryFromHosts(const char *name, const char *ipaddr) STUB_RETVAL(-1) +int ipcacheAddEntryFromHosts(const char *, const char *) STUB_RETVAL(-1) diff --git a/src/tests/stub_libanyp.cc b/src/tests/stub_libanyp.cc index 5510510d62..b798f6a259 100644 --- a/src/tests/stub_libanyp.cc +++ b/src/tests/stub_libanyp.cc @@ -37,6 +37,6 @@ bool urlIsRelative(const char *) STUB_RETVAL(false) char *urlRInternal(const char *, unsigned short, const char *, const char *) STUB_RETVAL(nullptr) char *urlInternal(const char *, const char *) STUB_RETVAL(nullptr) int matchDomainName(const char *, const char *, enum MatchDomainNameFlags) STUB_RETVAL(0) -int urlCheckRequest(const HttpRequest *) STUB_RETVAL(0) +bool urlCheckRequest(const HttpRequest *) STUB_RETVAL(false) void urlExtMethodConfigure() STUB diff --git a/src/tests/stub_libauth.cc b/src/tests/stub_libauth.cc index fa9f3de9fa..3d98c32fc6 100644 --- a/src/tests/stub_libauth.cc +++ b/src/tests/stub_libauth.cc @@ -15,7 +15,7 @@ #include "auth/SchemeConfig.h" namespace Auth { -Auth::UserRequest::Pointer SchemeConfig::CreateAuthUser(const char *, AccessLogEntry::Pointer &al) STUB_RETVAL(NULL) +Auth::UserRequest::Pointer SchemeConfig::CreateAuthUser(const char *, AccessLogEntry::Pointer &) STUB_RETVAL(nullptr) Auth::SchemeConfig * SchemeConfig::Find(const char *) STUB_RETVAL(NULL) void SchemeConfig::registerWithCacheManager(void) STUB_NOP Auth::ConfigVector TheConfig; diff --git a/src/tests/stub_libcomm.cc b/src/tests/stub_libcomm.cc index cf1c2d2fc3..b73f0ec59a 100644 --- a/src/tests/stub_libcomm.cc +++ b/src/tests/stub_libcomm.cc @@ -15,8 +15,8 @@ #include "comm/AcceptLimiter.h" Comm::AcceptLimiter dummy; Comm::AcceptLimiter & Comm::AcceptLimiter::Instance() STUB_RETVAL(dummy) -void Comm::AcceptLimiter::defer(const Comm::TcpAcceptor::Pointer &afd) STUB -void Comm::AcceptLimiter::removeDead(const Comm::TcpAcceptor::Pointer &afd) STUB +void Comm::AcceptLimiter::defer(const Comm::TcpAcceptor::Pointer &) STUB +void Comm::AcceptLimiter::removeDead(const Comm::TcpAcceptor::Pointer &) STUB void Comm::AcceptLimiter::kick() STUB #include "comm/Connection.h" @@ -26,7 +26,7 @@ Comm::ConnectionPointer Comm::Connection::cloneIdentDetails() const STUB_RETVAL( Comm::ConnectionPointer Comm::Connection::cloneDestinationDetails() const STUB_RETVAL(nullptr) void Comm::Connection::close() STUB CachePeer * Comm::Connection::getPeer() const STUB_RETVAL(NULL) -void Comm::Connection::setPeer(CachePeer * p) STUB +void Comm::Connection::setPeer(CachePeer *) STUB ScopedId Comm::Connection::codeContextGist() const STUB_RETVAL(id.detach()) std::ostream &Comm::Connection::detailCodeContext(std::ostream &os) const STUB_RETVAL(os) InstanceIdDefinitions(Comm::Connection, "conn", uint64_t); @@ -47,8 +47,8 @@ Comm::ConnOpener::ConnOpener(const Comm::ConnectionPointer &, const AsyncCall::P #include "comm/IoCallback.h" void Comm::IoCallback::setCallback(iocb_type, AsyncCall::Pointer &, char *, FREE *, int) STUB void Comm::IoCallback::selectOrQueueWrite() STUB - void Comm::IoCallback::cancel(const char *reason) STUB - void Comm::IoCallback::finish(Comm::Flag code, int xerrn) STUB + void Comm::IoCallback::cancel(const char *) STUB + void Comm::IoCallback::finish(Comm::Flag, int) STUB Comm::CbEntry *Comm::iocb_table = NULL; void Comm::CallbackTableInit() STUB void Comm::CallbackTableDestruct() STUB @@ -60,30 +60,30 @@ Comm::Flag Comm::DoSelect(int) STUB_RETVAL(Comm::COMM_ERROR) void Comm::QuickPollRequired(void) STUB #include "comm/Read.h" -void Comm::Read(const Comm::ConnectionPointer &conn, AsyncCall::Pointer &callback) STUB -bool Comm::MonitorsRead(int fd) STUB_RETVAL(false) -Comm::Flag Comm::ReadNow(CommIoCbParams ¶ms, SBuf &buf) STUB_RETVAL(Comm::COMM_ERROR) -void Comm::ReadCancel(int fd, AsyncCall::Pointer &callback) STUB +void Comm::Read(const Comm::ConnectionPointer &, AsyncCall::Pointer &) STUB +bool Comm::MonitorsRead(int) STUB_RETVAL(false) +Comm::Flag Comm::ReadNow(CommIoCbParams &, SBuf &) STUB_RETVAL(Comm::COMM_ERROR) +void Comm::ReadCancel(int, AsyncCall::Pointer &) STUB //void Comm::HandleRead(int, void*) STUB -void comm_read_base(const Comm::ConnectionPointer &conn, char *buf, int len, AsyncCall::Pointer &callback) STUB -void comm_read_cancel(int fd, IOCB *callback, void *data) STUB +void comm_read_base(const Comm::ConnectionPointer &, char *, int, AsyncCall::Pointer &) STUB +void comm_read_cancel(int, IOCB *, void *) STUB #include "comm/TcpAcceptor.h" -//Comm::TcpAcceptor(const Comm::ConnectionPointer &conn, const char *note, const Subscription::Pointer &aSub) STUB -void Comm::TcpAcceptor::subscribe(const Subscription::Pointer &aSub) STUB +//Comm::TcpAcceptor(const Comm::ConnectionPointer &, const char *, const Subscription::Pointer &) STUB +void Comm::TcpAcceptor::subscribe(const Subscription::Pointer &) STUB void Comm::TcpAcceptor::unsubscribe(const char *) STUB void Comm::TcpAcceptor::acceptNext() STUB -void Comm::TcpAcceptor::notify(const Comm::Flag flag, const Comm::ConnectionPointer &) const STUB +void Comm::TcpAcceptor::notify(const Comm::Flag, const Comm::ConnectionPointer &) const STUB #include "comm/Tcp.h" void Comm::ApplyTcpKeepAlive(int, const TcpKeepAlive &) STUB #include "comm/Write.h" void Comm::Write(const Comm::ConnectionPointer &, const char *, int, AsyncCall::Pointer &, FREE *) STUB -void Comm::Write(const Comm::ConnectionPointer &conn, MemBuf *mb, AsyncCall::Pointer &callback) STUB -void Comm::WriteCancel(const Comm::ConnectionPointer &conn, const char *reason) STUB +void Comm::Write(const Comm::ConnectionPointer &, MemBuf *, AsyncCall::Pointer &) STUB +void Comm::WriteCancel(const Comm::ConnectionPointer &, const char *) STUB /*PF*/ void Comm::HandleWrite(int, void*) STUB -std::ostream &operator << (std::ostream &os, const Comm::Connection &conn) STUB_RETVAL(os << "[Connection object]") +std::ostream &operator << (std::ostream &os, const Comm::Connection &) STUB_RETVAL(os << "[Connection object]") diff --git a/src/tests/stub_liberror.cc b/src/tests/stub_liberror.cc index 4b0769b771..f5f977d2bd 100644 --- a/src/tests/stub_liberror.cc +++ b/src/tests/stub_liberror.cc @@ -11,5 +11,5 @@ void Error::update(const Error &) STUB_NOP std::ostream &operator <<(std::ostream &os, const Error &) STUB_RETVAL(os) -ErrorDetail::Pointer MakeNamedErrorDetail(const char *name) STUB_RETVAL(ErrorDetail::Pointer()) +ErrorDetail::Pointer MakeNamedErrorDetail(const char *) STUB_RETVAL(ErrorDetail::Pointer()) diff --git a/src/tests/stub_libeui.cc b/src/tests/stub_libeui.cc index f83c707542..c028dfafab 100644 --- a/src/tests/stub_libeui.cc +++ b/src/tests/stub_libeui.cc @@ -17,18 +17,18 @@ Eui::EuiConfig Eui::TheConfig; #include "eui/Eui48.h" #if USE_SQUID_EUI const unsigned char *Eui::Eui48::get(void) STUB_RETVAL(NULL) -bool Eui::Eui48::decode(const char *asc) STUB_RETVAL(false) -bool Eui::Eui48::encode(char *buf, const int len) const STUB_RETVAL(false) -bool Eui::Eui48::lookup(const Ip::Address &c) STUB_RETVAL(false) +bool Eui::Eui48::decode(const char *) STUB_RETVAL(false) +bool Eui::Eui48::encode(char *, const int) const STUB_RETVAL(false) +bool Eui::Eui48::lookup(const Ip::Address &) STUB_RETVAL(false) #endif #include "eui/Eui64.h" #if USE_SQUID_EUI const unsigned char *Eui::Eui64::get(void) STUB_RETVAL(NULL) -bool Eui::Eui64::decode(const char *asc) STUB_RETVAL(false) -bool Eui::Eui64::encode(char *buf, const int len) const STUB_RETVAL(false) -bool Eui::Eui64::lookup(const Ip::Address &c) STUB_RETVAL(false) -bool Eui::Eui64::lookupNdp(const Ip::Address &c) STUB_RETVAL(false) -bool Eui::Eui64::lookupSlaac(const Ip::Address &c) STUB_RETVAL(false) +bool Eui::Eui64::decode(const char *) STUB_RETVAL(false) +bool Eui::Eui64::encode(char *, const int) const STUB_RETVAL(false) +bool Eui::Eui64::lookup(const Ip::Address &) STUB_RETVAL(false) +bool Eui::Eui64::lookupNdp(const Ip::Address &) STUB_RETVAL(false) +bool Eui::Eui64::lookupSlaac(const Ip::Address &) STUB_RETVAL(false) #endif diff --git a/src/tests/stub_libformat.cc b/src/tests/stub_libformat.cc index f8ba3bcf50..50c20ea597 100644 --- a/src/tests/stub_libformat.cc +++ b/src/tests/stub_libformat.cc @@ -12,7 +12,7 @@ #define STUB_API "stub_libformat.cc" #include "tests/STUB.h" -void Format::Format::assemble(MemBuf &mb, const AccessLogEntryPointer &al, int logSequenceNumber) const STUB +void Format::Format::assemble(MemBuf &, const AccessLogEntryPointer &, int) const STUB bool Format::Format::parse(char const*) STUB_RETVAL(false) Format::Format::Format(char const*) STUB Format::Format::~Format() STUB diff --git a/src/tests/stub_libhttp.cc b/src/tests/stub_libhttp.cc index b7fb53bbaa..5feb3729b8 100644 --- a/src/tests/stub_libhttp.cc +++ b/src/tests/stub_libhttp.cc @@ -61,7 +61,6 @@ const SBuf MethodType_sb[1] = {SBuf()}; #include "http/RegisteredHeaders.h" namespace Http { -HeaderTableRecord::HeaderTableRecord() {STUB_NOP} HeaderTableRecord::HeaderTableRecord(const char *) {STUB_NOP} HeaderTableRecord::HeaderTableRecord(const char *, Http::HdrType, Http::HdrFieldType, int) {STUB} HeaderLookupTable_t::HeaderLookupTable_t() {STUB_NOP} diff --git a/src/tests/stub_libicmp.cc b/src/tests/stub_libicmp.cc index 78ba3de861..efabcfbdc0 100644 --- a/src/tests/stub_libicmp.cc +++ b/src/tests/stub_libicmp.cc @@ -15,26 +15,26 @@ //IcmpSquid::~IcmpSquid() STUB int IcmpSquid::Open() STUB_RETVAL(-1) void IcmpSquid::Close() STUB -void IcmpSquid::DomainPing(Ip::Address &to, const char *domain) STUB +void IcmpSquid::DomainPing(Ip::Address &, const char *) STUB #if USE_ICMP -void IcmpSquid::SendEcho(Ip::Address &to, int opcode, const char* payload, int len) STUB +void IcmpSquid::SendEcho(Ip::Address &, int, const char*, int) STUB void IcmpSquid::Recv(void) STUB #endif //IcmpSquid icmpEngine; #include "icmp/net_db.h" void netdbInit(void) STUB -void netdbHandlePingReply(const Ip::Address &from, int hops, int rtt) STUB -void netdbPingSite(const char *hostname) STUB +void netdbHandlePingReply(const Ip::Address &, int, int) STUB +void netdbPingSite(const char *) STUB void netdbDump(StoreEntry *) STUB void netdbFreeMemory(void) STUB -int netdbHostHops(const char *host) STUB_RETVAL(-1) -int netdbHostRtt(const char *host) STUB_RETVAL(-1) +int netdbHostHops(const char *) STUB_RETVAL(-1) +int netdbHostRtt(const char *) STUB_RETVAL(-1) void netdbUpdatePeer(const AnyP::Uri &, CachePeer *, int, int) STUB -void netdbDeleteAddrNetwork(Ip::Address &addr) STUB +void netdbDeleteAddrNetwork(Ip::Address &) STUB void netdbBinaryExchange(StoreEntry *) STUB void netdbExchangeStart(void *) STUB void netdbExchangeUpdatePeer(Ip::Address &, CachePeer *, double, double) STUB CachePeer *netdbClosestParent(PeerSelector *) STUB_RETVAL(nullptr) -void netdbHostData(const char *host, int *samp, int *rtt, int *hops) STUB +void netdbHostData(const char *, int *, int *, int *) STUB diff --git a/src/tests/stub_liblog.cc b/src/tests/stub_liblog.cc index 3fb4304bc8..b4a0b16813 100644 --- a/src/tests/stub_liblog.cc +++ b/src/tests/stub_liblog.cc @@ -8,6 +8,7 @@ #include "squid.h" #include "fde.h" +#include "log/File.h" #define STUB_API "log/liblog.la" #include "tests/STUB.h" @@ -31,7 +32,6 @@ const char *accessLogTime(time_t) STUB_RETVAL(nullptr) #include "log/access_log.h" void fvdbCountVia(const SBuf &) STUB -void fvdbCountForward(const SBuf &) STUB #if HEADERS_LOG void headersLog(int, int, const HttpRequestMethod &, void *) STUB #endif @@ -58,7 +58,7 @@ Logfile::Logfile(const char *) {STUB} Logfile *logfileOpen(const char *, size_t, int) STUB_RETVAL(nullptr) void logfileClose(Logfile *) STUB void logfileRotate(Logfile *, int16_t) STUB -void logfileWrite(Logfile *, char *, size_t) STUB +void logfileWrite(Logfile *, const char *, size_t) STUB void logfileFlush(Logfile *) STUB void logfilePrintf(Logfile *, const char *, ...) STUB void logfileLineStart(Logfile *) STUB diff --git a/src/tests/stub_libmem.cc b/src/tests/stub_libmem.cc index 0581d41ea7..d8aeac088c 100644 --- a/src/tests/stub_libmem.cc +++ b/src/tests/stub_libmem.cc @@ -12,6 +12,8 @@ #include "tests/STUB.h" #include "mem/AllocatorProxy.h" +#include "mem/forward.h" + void *Mem::AllocatorProxy::alloc() {return xmalloc(64*1024);} void Mem::AllocatorProxy::freeOne(void *address) {xfree(address);} int Mem::AllocatorProxy::inUseCount() const {return 0;} @@ -23,16 +25,16 @@ int Mem::AllocatorProxy::getStats(MemPoolStats *) STUB_RETVAL(0) void Mem::Init() STUB_NOP void Mem::Report() STUB_NOP void Mem::Stats(StoreEntry *) STUB_NOP -void CleanIdlePools(void *) STUB_NOP -void Report(std::ostream &) STUB_NOP -void PoolReport(const MemPoolStats *, const MemPoolMeter *, std::ostream &) STUB_NOP +void Mem::CleanIdlePools(void *) STUB_NOP +void Mem::Report(std::ostream &) STUB_NOP +void Mem::PoolReport(const MemPoolStats *, const MemPoolMeter *, std::ostream &) STUB_NOP //const size_t squidSystemPageSize = 4096; void memClean(void) STUB void memInitModule(void) STUB void memCleanModule(void) STUB void memConfigure(void) STUB -void * memAllocate(mem_type) +void *memAllocate(mem_type) { // let's waste plenty of memory. This should cover any possible need return xmalloc(64*1024); diff --git a/src/tests/stub_libmgr.cc b/src/tests/stub_libmgr.cc index 5479f964cd..cb2f292cda 100644 --- a/src/tests/stub_libmgr.cc +++ b/src/tests/stub_libmgr.cc @@ -19,15 +19,15 @@ // NP: used by Action.h instantiations #include "mgr/Command.h" -std::ostream &operator <<(std::ostream &os, const Mgr::Command &cmd) STUB_RETVAL(os) +std::ostream &operator <<(std::ostream &os, const Mgr::Command &) STUB_RETVAL(os) #include "mgr/Action.h" -Mgr::Action::Action(const CommandPointer &aCmd) STUB +Mgr::Action::Action(const CommandPointer &) STUB Mgr::Action::~Action() STUB -void Mgr::Action::run(StoreEntry *entry, bool writeHttpHeader) STUB -void Mgr::Action::fillEntry(StoreEntry *entry, bool writeHttpHeader) STUB -void Mgr::Action::add(const Action &action) STUB -void Mgr::Action::respond(const Request &request) STUB +void Mgr::Action::run(StoreEntry *, bool) STUB +void Mgr::Action::fillEntry(StoreEntry *, bool) STUB +void Mgr::Action::add(const Action &) STUB +void Mgr::Action::respond(const Request &) STUB void Mgr::Action::sendResponse(const Ipc::RequestId) STUB bool Mgr::Action::atomic() const STUB_RETVAL(false) const char * Mgr::Action::name() const STUB_RETVAL(NULL) @@ -38,163 +38,163 @@ static Mgr::Action::Pointer dummyAction; #include "mgr/ActionParams.h" Mgr::ActionParams::ActionParams() STUB_NOP -Mgr::ActionParams::ActionParams(const Ipc::TypedMsgHdr &msg) STUB_NOP -void Mgr::ActionParams::pack(Ipc::TypedMsgHdr &msg) const STUB -std::ostream &operator <<(std::ostream &os, const Mgr::ActionParams ¶ms) STUB_RETVAL(os) +Mgr::ActionParams::ActionParams(const Ipc::TypedMsgHdr &) STUB_NOP +void Mgr::ActionParams::pack(Ipc::TypedMsgHdr &) const STUB +std::ostream &operator <<(std::ostream &os, const Mgr::ActionParams &) STUB_RETVAL(os) #include "mgr/ActionWriter.h" -//Mgr::ActionWriter::ActionWriter(const Action::Pointer &anAction, int aFd) STUB +//Mgr::ActionWriter::ActionWriter(const Action::Pointer &, int) STUB //protected: void Mgr::ActionWriter::start() STUB #include "mgr/BasicActions.h" -Mgr::Action::Pointer Mgr::MenuAction::Create(const Mgr::CommandPointer &cmd) STUB_RETVAL(dummyAction) -void Mgr::MenuAction::dump(StoreEntry *entry) STUB +Mgr::Action::Pointer Mgr::MenuAction::Create(const Mgr::CommandPointer &) STUB_RETVAL(dummyAction) +void Mgr::MenuAction::dump(StoreEntry *) STUB //protected: //Mgr::MenuAction::MenuAction(const CommandPointer &cmd) STUB -Mgr::Action::Pointer Mgr::ShutdownAction::Create(const Mgr::CommandPointer &cmd) STUB_RETVAL(dummyAction) -void Mgr::ShutdownAction::dump(StoreEntry *entry) STUB +Mgr::Action::Pointer Mgr::ShutdownAction::Create(const Mgr::CommandPointer &) STUB_RETVAL(dummyAction) +void Mgr::ShutdownAction::dump(StoreEntry *) STUB // protected: -//Mgr::ShutdownAction::ShutdownAction(const CommandPointer &cmd) STUB +//Mgr::ShutdownAction::ShutdownAction(const CommandPointer &) STUB -Mgr::Action::Pointer Mgr::ReconfigureAction::Create(const Mgr::CommandPointer &cmd) STUB_RETVAL(dummyAction) -void Mgr::ReconfigureAction::dump(StoreEntry *entry) STUB +Mgr::Action::Pointer Mgr::ReconfigureAction::Create(const Mgr::CommandPointer &) STUB_RETVAL(dummyAction) +void Mgr::ReconfigureAction::dump(StoreEntry *) STUB //protected: -//Mgr::ReconfigureAction::ReconfigureAction(const CommandPointer &cmd) STUB +//Mgr::ReconfigureAction::ReconfigureAction(const CommandPointer &) STUB -Mgr::Action::Pointer Mgr::RotateAction::Create(const Mgr::CommandPointer &cmd) STUB_RETVAL(dummyAction) -void Mgr::RotateAction::dump(StoreEntry *entry) STUB +Mgr::Action::Pointer Mgr::RotateAction::Create(const Mgr::CommandPointer &) STUB_RETVAL(dummyAction) +void Mgr::RotateAction::dump(StoreEntry *) STUB //protected: -//Mgr::RotateAction::RotateAction(const CommandPointer &cmd) STUB +//Mgr::RotateAction::RotateAction(const CommandPointer &) STUB -Mgr::Action::Pointer Mgr::OfflineToggleAction::Create(const CommandPointer &cmd) STUB_RETVAL(dummyAction) -void Mgr::OfflineToggleAction::dump(StoreEntry *entry) STUB +Mgr::Action::Pointer Mgr::OfflineToggleAction::Create(const CommandPointer &) STUB_RETVAL(dummyAction) +void Mgr::OfflineToggleAction::dump(StoreEntry *) STUB //protected: -//Mgr::OfflineToggleAction::OfflineToggleAction(const CommandPointer &cmd) STUB +//Mgr::OfflineToggleAction::OfflineToggleAction(const CommandPointer &) STUB void Mgr::RegisterBasics() STUB #include "mgr/CountersAction.h" //Mgr::CountersActionData::CountersActionData() STUB -Mgr::CountersActionData& Mgr::CountersActionData::operator +=(const Mgr::CountersActionData& stats) STUB_RETVAL(*this) +Mgr::CountersActionData& Mgr::CountersActionData::operator +=(const Mgr::CountersActionData&) STUB_RETVAL(*this) -Mgr::Action::Pointer Mgr::CountersAction::Create(const CommandPointer &cmd) STUB_RETVAL(dummyAction) -void Mgr::CountersAction::add(const Action& action) STUB -void Mgr::CountersAction::pack(Ipc::TypedMsgHdr& msg) const STUB -void Mgr::CountersAction::unpack(const Ipc::TypedMsgHdr& msg) STUB +Mgr::Action::Pointer Mgr::CountersAction::Create(const CommandPointer &) STUB_RETVAL(dummyAction) +void Mgr::CountersAction::add(const Action &) STUB +void Mgr::CountersAction::pack(Ipc::TypedMsgHdr &) const STUB +void Mgr::CountersAction::unpack(const Ipc::TypedMsgHdr &) STUB //protected: -//Mgr::CountersAction::CountersAction(const CommandPointer &cmd) STUB +//Mgr::CountersAction::CountersAction(const CommandPointer &) STUB void Mgr::CountersAction::collect() STUB -void Mgr::CountersAction::dump(StoreEntry* entry) STUB +void Mgr::CountersAction::dump(StoreEntry *) STUB #include "mgr/Filler.h" -//Mgr::Filler::Filler(const Action::Pointer &anAction, int aFd, unsigned int aRequestId) STUB +//Mgr::Filler::Filler(const Action::Pointer &, int, unsigned int) STUB //protected: //void Mgr::Filler::start() STUB //void Mgr::Filler::swanSong() STUB #include "mgr/Forwarder.h" -//Mgr::Forwarder::Forwarder(int aFd, const ActionParams &aParams, HttpRequest* aRequest, StoreEntry* anEntry) STUB +//Mgr::Forwarder::Forwarder(int, const ActionParams &, HttpRequest *, StoreEntry *) STUB //Mgr::Forwarder::~Forwarder() STUB //protected: //void Mgr::Forwarder::swanSong() STUB void Mgr::Forwarder::handleError() STUB void Mgr::Forwarder::handleTimeout() STUB -void Mgr::Forwarder::handleException(const std::exception& e) STUB +void Mgr::Forwarder::handleException(const std::exception &) STUB #include "mgr/FunAction.h" -Mgr::Action::Pointer Mgr::FunAction::Create(const CommandPointer &cmd, OBJH *aHandler) STUB_RETVAL(dummyAction) -void Mgr::FunAction::respond(const Request& request) STUB +Mgr::Action::Pointer Mgr::FunAction::Create(const CommandPointer &, OBJH *) STUB_RETVAL(dummyAction) +void Mgr::FunAction::respond(const Request &) STUB //protected: -//Mgr::FunAction::FunAction(const CommandPointer &cmd, OBJH *aHandler) STUB -void Mgr::FunAction::dump(StoreEntry *entry) STUB +//Mgr::FunAction::FunAction(const CommandPointer &, OBJH *) STUB +void Mgr::FunAction::dump(StoreEntry *) STUB #include "mgr/InfoAction.h" //Mgr::InfoActionData::InfoActionData() STUB -Mgr::InfoActionData& Mgr::InfoActionData::operator += (const Mgr::InfoActionData& stats) STUB_RETVAL(*this) +Mgr::InfoActionData& Mgr::InfoActionData::operator += (const Mgr::InfoActionData &) STUB_RETVAL(*this) -Mgr::Action::Pointer Mgr::InfoAction::Create(const CommandPointer &cmd) STUB_RETVAL(dummyAction) -void Mgr::InfoAction::add(const Action& action) STUB -void Mgr::InfoAction::respond(const Request& request) STUB -void Mgr::InfoAction::pack(Ipc::TypedMsgHdr& msg) const STUB -void Mgr::InfoAction::unpack(const Ipc::TypedMsgHdr& msg) STUB +Mgr::Action::Pointer Mgr::InfoAction::Create(const CommandPointer &) STUB_RETVAL(dummyAction) +void Mgr::InfoAction::add(const Action &) STUB +void Mgr::InfoAction::respond(const Request &) STUB +void Mgr::InfoAction::pack(Ipc::TypedMsgHdr &) const STUB +void Mgr::InfoAction::unpack(const Ipc::TypedMsgHdr &) STUB //protected: -//Mgr::InfoAction::InfoAction(const Mgr::CommandPointer &cmd) STUB +//Mgr::InfoAction::InfoAction(const Mgr::CommandPointer &) STUB void Mgr::InfoAction::collect() STUB -void Mgr::InfoAction::dump(StoreEntry* entry) STUB +void Mgr::InfoAction::dump(StoreEntry *) STUB #include "mgr/Inquirer.h" -//Mgr::Inquirer::Inquirer(Action::Pointer anAction, const Request &aCause, const Ipc::StrandCoords &coords) STUB +//Mgr::Inquirer::Inquirer(Action::Pointer, const Request &, const Ipc::StrandCoords &) STUB //protected: void Mgr::Inquirer::start() STUB bool Mgr::Inquirer::doneAll() const STUB_RETVAL(false) void Mgr::Inquirer::cleanup() STUB void Mgr::Inquirer::sendResponse() STUB -bool Mgr::Inquirer::aggregate(Ipc::Response::Pointer aResponse) STUB_RETVAL(false) +bool Mgr::Inquirer::aggregate(Ipc::Response::Pointer) STUB_RETVAL(false) #include "mgr/IntervalAction.h" //Mgr::IntervalActionData::IntervalActionData() STUB -Mgr::IntervalActionData& Mgr::IntervalActionData::operator +=(const Mgr::IntervalActionData& stats) STUB_RETVAL(*this) +Mgr::IntervalActionData& Mgr::IntervalActionData::operator +=(const Mgr::IntervalActionData &) STUB_RETVAL(*this) //Mgr::Action::Pointer Mgr::IntervalAction::Create5min(const CommandPointer &cmd) STUB_RETVAL(new Mgr::IntervalAction(*cmd)) //Mgr::Action::Pointer Mgr::IntervalAction::Create60min(const CommandPointer &cmd) STUB_RETVAL(new Mgr::IntervalAction(*cmd)) -void Mgr::IntervalAction::add(const Action& action) STUB -void Mgr::IntervalAction::pack(Ipc::TypedMsgHdr& msg) const STUB -void Mgr::IntervalAction::unpack(const Ipc::TypedMsgHdr& msg) STUB +void Mgr::IntervalAction::add(const Action&) STUB +void Mgr::IntervalAction::pack(Ipc::TypedMsgHdr&) const STUB +void Mgr::IntervalAction::unpack(const Ipc::TypedMsgHdr&) STUB //protected: -//Mgr::IntervalAction::IntervalAction(const CommandPointer &cmd, int aMinutes, int aHours) STUB +//Mgr::IntervalAction::IntervalAction(const CommandPointer &, int, int) STUB void Mgr::IntervalAction::collect() STUB -void Mgr::IntervalAction::dump(StoreEntry* entry) STUB +void Mgr::IntervalAction::dump(StoreEntry*) STUB #include "mgr/IntParam.h" //Mgr::IntParam::IntParam() STUB -//Mgr::IntParam::IntParam(const std::vector& anArray) STUB -void Mgr::IntParam::pack(Ipc::TypedMsgHdr& msg) const STUB -void Mgr::IntParam::unpackValue(const Ipc::TypedMsgHdr& msg) STUB +//Mgr::IntParam::IntParam(const std::vector&) STUB +void Mgr::IntParam::pack(Ipc::TypedMsgHdr&) const STUB +void Mgr::IntParam::unpackValue(const Ipc::TypedMsgHdr&) STUB static std::vector static_vector; const std::vector& Mgr::IntParam::value() const STUB_RETVAL(static_vector) #include "mgr/IoAction.h" //Mgr::IoActionData::IoActionData() STUB -Mgr::IoActionData& Mgr::IoActionData::operator += (const IoActionData& stats) STUB_RETVAL(*this) +Mgr::IoActionData& Mgr::IoActionData::operator += (const IoActionData&) STUB_RETVAL(*this) -Mgr::Action::Pointer Mgr::IoAction::Create(const CommandPointer &cmd) STUB_RETVAL(dummyAction) -void Mgr::IoAction::add(const Action& action) STUB -void Mgr::IoAction::pack(Ipc::TypedMsgHdr& msg) const STUB -void Mgr::IoAction::unpack(const Ipc::TypedMsgHdr& msg) STUB +Mgr::Action::Pointer Mgr::IoAction::Create(const CommandPointer &) STUB_RETVAL(dummyAction) +void Mgr::IoAction::add(const Action&) STUB +void Mgr::IoAction::pack(Ipc::TypedMsgHdr&) const STUB +void Mgr::IoAction::unpack(const Ipc::TypedMsgHdr&) STUB //protected: -//Mgr::IoAction::IoAction(const CommandPointer &cmd) STUB +//Mgr::IoAction::IoAction(const CommandPointer &) STUB void Mgr::IoAction::collect() STUB -void Mgr::IoAction::dump(StoreEntry* entry) STUB +void Mgr::IoAction::dump(StoreEntry*) STUB //#include "mgr/QueryParam.h" -//void Mgr::QueryParam::pack(Ipc::TypedMsgHdr& msg) const = 0; -//void Mgr::QueryParam::unpackValue(const Ipc::TypedMsgHdr& msg) = 0; +//void Mgr::QueryParam::pack(Ipc::TypedMsgHdr&) const = 0; +//void Mgr::QueryParam::unpackValue(const Ipc::TypedMsgHdr&) = 0; #include "mgr/QueryParams.h" -Mgr::QueryParam::Pointer Mgr::QueryParams::get(const String& name) const STUB_RETVAL(Mgr::QueryParam::Pointer(NULL)) -void Mgr::QueryParams::pack(Ipc::TypedMsgHdr& msg) const STUB -void Mgr::QueryParams::unpack(const Ipc::TypedMsgHdr& msg) STUB +Mgr::QueryParam::Pointer Mgr::QueryParams::get(const String&) const STUB_RETVAL(Mgr::QueryParam::Pointer(nullptr)) +void Mgr::QueryParams::pack(Ipc::TypedMsgHdr&) const STUB +void Mgr::QueryParams::unpack(const Ipc::TypedMsgHdr&) STUB void Mgr::QueryParams::Parse(Parser::Tokenizer &, QueryParams &) STUB //private: -//Params::const_iterator Mgr::QueryParams::find(const String& name) const STUB_RETVAL(new Mgr::Params::const_iterator(*this)) -Mgr::QueryParam::Pointer Mgr::QueryParams::CreateParam(QueryParam::Type aType) STUB_RETVAL(Mgr::QueryParam::Pointer(NULL)) +//Params::const_iterator Mgr::QueryParams::find(const String&) const STUB_RETVAL(new Mgr::Params::const_iterator(*this)) +Mgr::QueryParam::Pointer Mgr::QueryParams::CreateParam(QueryParam::Type) STUB_RETVAL(Mgr::QueryParam::Pointer(NULL)) #include "mgr/Registration.h" -//void Mgr::RegisterAction(char const * action, char const * desc, OBJH * handler, int pw_req_flag, int atomic); -//void Mgr::RegisterAction(char const * action, char const * desc, ClassActionCreationHandler *handler, int pw_req_flag, int atomic); +//void Mgr::RegisterAction(char const *, char const *, OBJH *, int, int); +//void Mgr::RegisterAction(char const *, char const *, ClassActionCreationHandler *, int, int); #include "mgr/Request.h" -//Mgr::Request::Request(int aRequestorId, unsigned int aRequestId, int aFd, const Mgr::ActionParams &aParams) STUB -//Mgr::Request::Request(const Ipc::TypedMsgHdr& msg) STUB -void Mgr::Request::pack(Ipc::TypedMsgHdr& msg) const STUB +//Mgr::Request::Request(int, unsigned int, int, const Mgr::ActionParams &) STUB +//Mgr::Request::Request(const Ipc::TypedMsgHdr&) STUB +void Mgr::Request::pack(Ipc::TypedMsgHdr&) const STUB Ipc::Request::Pointer Mgr::Request::clone() const STUB_RETVAL(const_cast(this)) #include "mgr/Response.h" -//Mgr::Response::Response(unsigned int aRequestId, Action::Pointer anAction = NULL) STUB -//Mgr::Response::Response(const Ipc::TypedMsgHdr& msg) STUB -void Mgr::Response::pack(Ipc::TypedMsgHdr& msg) const STUB +//Mgr::Response::Response(unsigned int, Action::Pointer) STUB +//Mgr::Response::Response(const Ipc::TypedMsgHdr&) STUB +void Mgr::Response::pack(Ipc::TypedMsgHdr&) const STUB static Ipc::Response::Pointer ipr_static; Ipc::Response::Pointer Mgr::Response::clone() const STUB_RETVAL(Ipc::Response::Pointer(NULL)) bool Mgr::Response::hasAction() const STUB_RETVAL(false) @@ -203,48 +203,48 @@ bool Mgr::Response::hasAction() const STUB_RETVAL(false) #include "mgr/ServiceTimesAction.h" //Mgr::ServiceTimesActionData::ServiceTimesActionData() STUB -Mgr::ServiceTimesActionData& Mgr::ServiceTimesActionData::operator +=(const Mgr::ServiceTimesActionData& stats) STUB_RETVAL(*this) +Mgr::ServiceTimesActionData& Mgr::ServiceTimesActionData::operator +=(const Mgr::ServiceTimesActionData&) STUB_RETVAL(*this) -Mgr::Action::Pointer Mgr::ServiceTimesAction::Create(const Mgr::CommandPointer &cmd) STUB_RETVAL(Mgr::Action::Pointer(NULL)) -void Mgr::ServiceTimesAction::add(const Action& action) STUB -void Mgr::ServiceTimesAction::pack(Ipc::TypedMsgHdr& msg) const STUB -void Mgr::ServiceTimesAction::unpack(const Ipc::TypedMsgHdr& msg) STUB +Mgr::Action::Pointer Mgr::ServiceTimesAction::Create(const Mgr::CommandPointer &) STUB_RETVAL(Mgr::Action::Pointer(nullptr)) +void Mgr::ServiceTimesAction::add(const Action&) STUB +void Mgr::ServiceTimesAction::pack(Ipc::TypedMsgHdr&) const STUB +void Mgr::ServiceTimesAction::unpack(const Ipc::TypedMsgHdr&) STUB //protected: -//Mgr::ServiceTimesAction::ServiceTimesAction(const CommandPointer &cmd) STUB +//Mgr::ServiceTimesAction::ServiceTimesAction(const CommandPointer &) STUB void Mgr::ServiceTimesAction::collect() STUB -void Mgr::ServiceTimesAction::dump(StoreEntry* entry) STUB +void Mgr::ServiceTimesAction::dump(StoreEntry*) STUB #include "mgr/StoreIoAction.h" //Mgr::StoreIoActionData::StoreIoActionData() STUB -Mgr::StoreIoActionData & Mgr::StoreIoActionData::operator +=(const StoreIoActionData& stats) STUB_RETVAL(*this) -//Mgr::StoreIoAction::StoreIoAction(const CommandPointer &cmd) STUB -Mgr::Action::Pointer Mgr::StoreIoAction::Create(const CommandPointer &cmd) STUB_RETVAL(Mgr::Action::Pointer(NULL)) -void Mgr::StoreIoAction::add(const Action& action) STUB -void Mgr::StoreIoAction::pack(Ipc::TypedMsgHdr& msg) const STUB -void Mgr::StoreIoAction::unpack(const Ipc::TypedMsgHdr& msg) STUB +Mgr::StoreIoActionData & Mgr::StoreIoActionData::operator +=(const StoreIoActionData&) STUB_RETVAL(*this) +//Mgr::StoreIoAction::StoreIoAction(const CommandPointer &) STUB +Mgr::Action::Pointer Mgr::StoreIoAction::Create(const CommandPointer &) STUB_RETVAL(Mgr::Action::Pointer(nullptr)) +void Mgr::StoreIoAction::add(const Action&) STUB +void Mgr::StoreIoAction::pack(Ipc::TypedMsgHdr&) const STUB +void Mgr::StoreIoAction::unpack(const Ipc::TypedMsgHdr&) STUB void Mgr::StoreIoAction::collect() STUB -void Mgr::StoreIoAction::dump(StoreEntry* entry) STUB +void Mgr::StoreIoAction::dump(StoreEntry*) STUB #include "mgr/StoreToCommWriter.h" -//Mgr::StoreToCommWriter::StoreToCommWriter(int aFd, StoreEntry *anEntry) STUB +//Mgr::StoreToCommWriter::StoreToCommWriter(int, StoreEntry *) STUB Mgr::StoreToCommWriter::~StoreToCommWriter() STUB void Mgr::StoreToCommWriter::start() STUB void Mgr::StoreToCommWriter::swanSong() STUB bool Mgr::StoreToCommWriter::doneAll() const STUB_RETVAL(false) void Mgr::StoreToCommWriter::scheduleStoreCopy() STUB -void Mgr::StoreToCommWriter::noteStoreCopied(StoreIOBuffer ioBuf) STUB -void Mgr::StoreToCommWriter::NoteStoreCopied(void* data, StoreIOBuffer ioBuf) STUB +void Mgr::StoreToCommWriter::noteStoreCopied(StoreIOBuffer) STUB +void Mgr::StoreToCommWriter::NoteStoreCopied(void*, StoreIOBuffer) STUB void Mgr::StoreToCommWriter::HandleStoreAbort(StoreToCommWriter *) STUB -void Mgr::StoreToCommWriter::scheduleCommWrite(const StoreIOBuffer& ioBuf) STUB -void Mgr::StoreToCommWriter::noteCommWrote(const CommIoCbParams& params) STUB -void Mgr::StoreToCommWriter::noteCommClosed(const CommCloseCbParams& params) STUB +void Mgr::StoreToCommWriter::scheduleCommWrite(const StoreIOBuffer&) STUB +void Mgr::StoreToCommWriter::noteCommWrote(const CommIoCbParams&) STUB +void Mgr::StoreToCommWriter::noteCommClosed(const CommCloseCbParams&) STUB void Mgr::StoreToCommWriter::close() STUB #include "mgr/StringParam.h" //Mgr::StringParam::StringParam() STUB -//Mgr::StringParam::StringParam(const String& aString) STUB -void Mgr::StringParam::pack(Ipc::TypedMsgHdr& msg) const STUB -void Mgr::StringParam::unpackValue(const Ipc::TypedMsgHdr& msg) STUB +//Mgr::StringParam::StringParam(const String&) STUB +void Mgr::StringParam::pack(Ipc::TypedMsgHdr&) const STUB +void Mgr::StringParam::unpackValue(const Ipc::TypedMsgHdr&) STUB static String t; const String& Mgr::StringParam::value() const STUB_RETVAL(t) diff --git a/src/tests/stub_libsecurity.cc b/src/tests/stub_libsecurity.cc index 1ee1889ca5..6e89a4a6fe 100644 --- a/src/tests/stub_libsecurity.cc +++ b/src/tests/stub_libsecurity.cc @@ -63,7 +63,7 @@ Security::NegotiationHistory::NegotiationHistory() STUB void Security::NegotiationHistory::retrieveNegotiatedInfo(const Security::SessionPointer &) STUB void Security::NegotiationHistory::retrieveParsedInfo(Security::TlsDetails::Pointer const &) STUB const char *Security::NegotiationHistory::cipherName() const STUB -const char *Security::NegotiationHistory::printTlsVersion(AnyP::ProtocolVersion const &v) const STUB +const char *Security::NegotiationHistory::printTlsVersion(AnyP::ProtocolVersion const &) const STUB #include "security/PeerConnector.h" class TlsNegotiationDetails: public RefCountable {}; diff --git a/src/tests/stub_libsslsquid.cc b/src/tests/stub_libsslsquid.cc index 696ec97461..4a51d46bff 100644 --- a/src/tests/stub_libsslsquid.cc +++ b/src/tests/stub_libsslsquid.cc @@ -33,21 +33,20 @@ Ssl::Config::~Config() STUB_NOP Ssl::Config Ssl::TheConfig; #include "ssl/context_storage.h" -//Ssl::CertificateStorageAction::CertificateStorageAction(const Mgr::Command::Pointer &cmd) STUB -Ssl::CertificateStorageAction::Pointer Ssl::CertificateStorageAction::Create(const Mgr::Command::Pointer &cmd) STUB_RETSTATREF(Ssl::CertificateStorageAction::Pointer) -void Ssl::CertificateStorageAction::dump(StoreEntry *sentry) STUB -void Ssl::GlobalContextStorage::addLocalStorage(Ip::Address const & address, size_t size_of_store) STUB -Ssl::LocalContextStorage *Ssl::GlobalContextStorage::getLocalStorage(Ip::Address const & address) +//Ssl::CertificateStorageAction::CertificateStorageAction(const Mgr::Command::Pointer &) STUB +Ssl::CertificateStorageAction::Pointer Ssl::CertificateStorageAction::Create(const Mgr::Command::Pointer &) STUB_RETSTATREF(Ssl::CertificateStorageAction::Pointer) +void Ssl::CertificateStorageAction::dump(StoreEntry *) STUB +void Ssl::GlobalContextStorage::addLocalStorage(Ip::Address const &, size_t ) STUB +Ssl::LocalContextStorage *Ssl::GlobalContextStorage::getLocalStorage(Ip::Address const &) { fatal(STUB_API " required"); static LocalContextStorage v(0); return &v; } void Ssl::GlobalContextStorage::reconfigureStart() STUB //Ssl::GlobalContextStorage Ssl::TheGlobalContextStorage; #include "ssl/ErrorDetail.h" -Security::ErrorCode parseErrorString(const char *name) STUB_RETVAL(0) - #include "ssl/support.h" namespace Ssl { +bool ParseErrorString(const char *, Security::Errors &) STUB_RETVAL(false) int AskPasswordCb(char *, int, int, void *) STUB_RETVAL(0) bool InitServerContext(Security::ContextPointer &, AnyP::PortCfg &) STUB_RETVAL(false) bool InitClientContext(Security::ContextPointer &, Security::PeerOptions &, Security::ParsedPortFlags) STUB_RETVAL(false) @@ -55,11 +54,11 @@ void ConfigurePeerVerification(Security::ContextPointer &, const Security::Parse void DisablePeerVerification(Security::ContextPointer &) STUB void MaybeSetupRsaCallback(Security::ContextPointer &) STUB } // namespace Ssl -const char *sslGetUserEmail(SSL *ssl) STUB_RETVAL(NULL) -const char *sslGetUserAttribute(SSL *ssl, const char *attribute_name) STUB_RETVAL(NULL) -const char *sslGetCAAttribute(SSL *ssl, const char *attribute_name) STUB_RETVAL(NULL) -SBuf sslGetUserCertificatePEM(SSL *ssl) STUB_RETVAL(SBuf()) -SBuf sslGetUserCertificateChainPEM(SSL *ssl) STUB_RETVAL(SBuf()) +const char *sslGetUserEmail(SSL *) STUB_RETVAL(nullptr) +const char *sslGetUserAttribute(SSL *, const char *) STUB_RETVAL(nullptr) +const char *sslGetCAAttribute(SSL *, const char *) STUB_RETVAL(nullptr) +SBuf sslGetUserCertificatePEM(SSL *) STUB_RETVAL(SBuf()) +SBuf sslGetUserCertificateChainPEM(SSL *) STUB_RETVAL(SBuf()) namespace Ssl { //GETX509ATTRIBUTE GetX509UserAttribute; @@ -68,13 +67,13 @@ namespace Ssl std::vector BumpModeStr = {""}; bool generateUntrustedCert(Security::CertPointer &, Security::PrivateKeyPointer &, Security::CertPointer const &, Security::PrivateKeyPointer const &) STUB_RETVAL(false) Security::ContextPointer GenerateSslContext(CertificateProperties const &, Security::ServerOptions &, bool) STUB_RETVAL(Security::ContextPointer()) -bool verifySslCertificate(Security::ContextPointer &, CertificateProperties const &) STUB_RETVAL(false) +bool verifySslCertificate(const Security::ContextPointer &, CertificateProperties const &) STUB_RETVAL(false) Security::ContextPointer GenerateSslContextUsingPkeyAndCertFromMemory(const char *, Security::ServerOptions &, bool) STUB_RETVAL(Security::ContextPointer()) -int matchX509CommonNames(X509 *peer_cert, void *check_data, int (*check_func)(void *check_data, ASN1_STRING *cn_data)) STUB_RETVAL(0) -bool checkX509ServerValidity(X509 *cert, const char *server) STUB_RETVAL(false) -int asn1timeToString(ASN1_TIME *tm, char *buf, int len) STUB_RETVAL(0) -void setClientSNI(SSL *ssl, const char *fqdn) STUB -SBuf GetX509PEM(SSL *ssl) STUB_RETVAL(SBuf()) +int matchX509CommonNames(X509 *, void *, int (*)(void *, ASN1_STRING *)) STUB_RETVAL(0) +bool checkX509ServerValidity(X509 *, const char *) STUB_RETVAL(false) +int asn1timeToString(ASN1_TIME *, char *, int) STUB_RETVAL(0) +void setClientSNI(SSL *, const char *) STUB +SBuf GetX509PEM(X509 *) STUB_RETVAL(SBuf()) } //namespace Ssl #endif diff --git a/src/tests/stub_libstore.cc b/src/tests/stub_libstore.cc index 588805f9ec..48b11d3870 100644 --- a/src/tests/stub_libstore.cc +++ b/src/tests/stub_libstore.cc @@ -127,7 +127,7 @@ int64_t Disks::accumulateMore(const StoreEntry&) const STUB_RETVAL(0) bool Disks::SmpAware() STUB_RETVAL(false) bool Disks::hasReadableEntry(const StoreEntry &) const STUB_RETVAL(false) void Disks::Parse(DiskConfig &) STUB -void Disks::Dump(const DiskConfig &, StoreEntry &, const char *name) STUB +void Disks::Dump(const DiskConfig &, StoreEntry &, const char *) STUB SwapDir *Disks::SelectSwapDir(const StoreEntry *) STUB_RETVAL(nullptr) } void storeDirOpenSwapLogs(void) STUB diff --git a/src/tests/stub_main_cc.cc b/src/tests/stub_main_cc.cc index a539d5078c..743f942285 100644 --- a/src/tests/stub_main_cc.cc +++ b/src/tests/stub_main_cc.cc @@ -7,6 +7,7 @@ */ #include "squid.h" +#include "protos.h" #define STUB_API "stub_main_cc.cc" #include "tests/STUB.h" diff --git a/src/tests/stub_mem_node.cc b/src/tests/stub_mem_node.cc index 0b38d21eb9..395e52fd86 100644 --- a/src/tests/stub_mem_node.cc +++ b/src/tests/stub_mem_node.cc @@ -12,6 +12,6 @@ #define STUB_API "mem_node.cc" #include "tests/STUB.h" -mem_node::mem_node(int64_t offset):nodeBuffer(0,offset,data) STUB +mem_node::mem_node(int64_t offset) : nodeBuffer(0,offset,data) STUB size_t mem_node::InUseCount() STUB_RETVAL(0) diff --git a/src/tests/stub_mime.cc b/src/tests/stub_mime.cc index 5b9bb73483..fd340dd718 100644 --- a/src/tests/stub_mime.cc +++ b/src/tests/stub_mime.cc @@ -7,9 +7,12 @@ */ #include "squid.h" +#include "mime_header.h" +#include "sbuf/SBuf.h" #define STUB_API "mime.cc" #include "tests/STUB.h" size_t headersEnd(const char *, size_t, bool &) STUB_RETVAL(0) +size_t headersEnd(const SBuf &, bool &) STUB_RETVAL(0) diff --git a/src/tests/stub_neighbors.cc b/src/tests/stub_neighbors.cc index 88cc321851..c7fddee9d8 100644 --- a/src/tests/stub_neighbors.cc +++ b/src/tests/stub_neighbors.cc @@ -15,10 +15,10 @@ #include "neighbors.h" void -peerConnClosed(CachePeer *p) STUB +peerConnClosed(CachePeer *) STUB time_t FwdState::ForwardTimeout(const time_t) STUB_RETVAL(0) bool -FwdState::EnoughTimeToReForward(const time_t fwdStart) STUB_RETVAL(false) +FwdState::EnoughTimeToReForward(const time_t) STUB_RETVAL(false) diff --git a/src/tests/stub_pconn.cc b/src/tests/stub_pconn.cc index 6eb70112f3..81fd81739b 100644 --- a/src/tests/stub_pconn.cc +++ b/src/tests/stub_pconn.cc @@ -16,24 +16,24 @@ #define STUB_API "pconn.cc" #include "tests/STUB.h" -IdleConnList::IdleConnList(const char *akey, PconnPool *parent) STUB +IdleConnList::IdleConnList(const char *, PconnPool *) STUB IdleConnList::~IdleConnList() STUB -void IdleConnList::push(const Comm::ConnectionPointer &conn) STUB -Comm::ConnectionPointer IdleConnList::findUseable(const Comm::ConnectionPointer &akey) STUB_RETVAL(Comm::ConnectionPointer()) -void IdleConnList::clearHandlers(const Comm::ConnectionPointer &conn) STUB +void IdleConnList::push(const Comm::ConnectionPointer &) STUB +Comm::ConnectionPointer IdleConnList::findUseable(const Comm::ConnectionPointer &) STUB_RETVAL(Comm::ConnectionPointer()) +void IdleConnList::clearHandlers(const Comm::ConnectionPointer &) STUB void IdleConnList::endingShutdown() STUB PconnPool::PconnPool(const char *, const CbcPointer&) STUB PconnPool::~PconnPool() STUB void PconnPool::moduleInit() STUB -void PconnPool::push(const Comm::ConnectionPointer &serverConn, const char *domain) STUB -Comm::ConnectionPointer PconnPool::pop(const Comm::ConnectionPointer &destLink, const char *domain, bool retriable) STUB_RETVAL(Comm::ConnectionPointer()) -void PconnPool::count(int uses) STUB +void PconnPool::push(const Comm::ConnectionPointer &, const char *) STUB +Comm::ConnectionPointer PconnPool::pop(const Comm::ConnectionPointer &, const char *, bool) STUB_RETVAL(Comm::ConnectionPointer()) +void PconnPool::count(int) STUB void PconnPool::noteUses(int) STUB -void PconnPool::dumpHist(StoreEntry *e) const STUB -void PconnPool::dumpHash(StoreEntry *e) const STUB -void PconnPool::unlinkList(IdleConnList *list) STUB +void PconnPool::dumpHist(StoreEntry *) const STUB +void PconnPool::dumpHash(StoreEntry *) const STUB +void PconnPool::unlinkList(IdleConnList *) STUB PconnModule * PconnModule::GetInstance() STUB_RETVAL(NULL) -void PconnModule::DumpWrapper(StoreEntry *e) STUB +void PconnModule::DumpWrapper(StoreEntry *) STUB PconnModule::PconnModule() STUB void PconnModule::registerWithCacheManager(void) STUB void PconnModule::add(PconnPool *) STUB diff --git a/src/tests/stub_stat.cc b/src/tests/stub_stat.cc index c1ba35c81d..3fa5f4290f 100644 --- a/src/tests/stub_stat.cc +++ b/src/tests/stub_stat.cc @@ -9,6 +9,7 @@ /* DEBUG: section 18 Cache Manager Statistics */ #include "squid.h" +#include "Store.h" #define STUB_API "stat.cc" #include "tests/STUB.h" diff --git a/src/tests/stub_stmem.cc b/src/tests/stub_stmem.cc index 0d8b3eef9e..5c2f667659 100644 --- a/src/tests/stub_stmem.cc +++ b/src/tests/stub_stmem.cc @@ -16,5 +16,5 @@ mem_hdr::mem_hdr() STUB mem_hdr::~mem_hdr() STUB size_t mem_hdr::size() const STUB_RETVAL(0) int64_t mem_hdr::endOffset () const STUB_RETVAL(0) -bool mem_hdr::write (StoreIOBuffer const &writeBuffer) STUB_RETVAL(false) +bool mem_hdr::write (StoreIOBuffer const &) STUB_RETVAL(false) diff --git a/src/tests/stub_store.cc b/src/tests/stub_store.cc index 673115d7ac..564628733e 100644 --- a/src/tests/stub_store.cc +++ b/src/tests/stub_store.cc @@ -18,12 +18,12 @@ const char *memStatusStr[] = { }; const char *swapStatusStr[] = { }; #include "RemovalPolicy.h" -RemovalPolicy * createRemovalPolicy(RemovalPolicySettings * settings) STUB_RETVAL(NULL) +RemovalPolicy * createRemovalPolicy(RemovalPolicySettings *) STUB_RETVAL(nullptr) #include "Store.h" StoreIoStats store_io_stats; -bool StoreEntry::checkDeferRead(int fd) const STUB_RETVAL(false) -const char *StoreEntry::getMD5Text() const STUB_RETVAL(NULL) +bool StoreEntry::checkDeferRead(int) const STUB_RETVAL(false) +const char *StoreEntry::getMD5Text() const STUB_RETVAL(nullptr) StoreEntry::StoreEntry() STUB StoreEntry::~StoreEntry() STUB void StoreEntry::write(StoreIOBuffer) STUB @@ -31,30 +31,30 @@ bool StoreEntry::isAccepting() const STUB_RETVAL(false) size_t StoreEntry::bytesWanted(Range const, bool) const STUB_RETVAL(0) void StoreEntry::complete() STUB store_client_t StoreEntry::storeClientType() const STUB_RETVAL(STORE_NON_CLIENT) -char const *StoreEntry::getSerialisedMetaData(size_t &length) const STUB_RETVAL(NULL) -void StoreEntry::replaceHttpReply(const HttpReplyPointer &, bool andStartWriting) STUB +char const *StoreEntry::getSerialisedMetaData(size_t &) const STUB_RETVAL(nullptr) +void StoreEntry::replaceHttpReply(const HttpReplyPointer &, bool) STUB bool StoreEntry::mayStartSwapOut() STUB_RETVAL(false) -void StoreEntry::trimMemory(const bool preserveSwappable) STUB +void StoreEntry::trimMemory(const bool) STUB void StoreEntry::abort() STUB -bool StoreEntry::makePublic(const KeyScope scope) STUB -void StoreEntry::makePrivate(const bool shareable) STUB -bool StoreEntry::setPublicKey(const KeyScope scope) STUB +bool StoreEntry::makePublic(const KeyScope) STUB +void StoreEntry::makePrivate(const bool) STUB +bool StoreEntry::setPublicKey(const KeyScope) STUB void StoreEntry::setPrivateKey(const bool, const bool) STUB void StoreEntry::expireNow() STUB -void StoreEntry::releaseRequest(const bool shareable) STUB +void StoreEntry::releaseRequest(const bool) STUB void StoreEntry::negativeCache() STUB bool StoreEntry::cacheNegatively() STUB void StoreEntry::swapOut() STUB -void StoreEntry::swapOutFileClose(int how) STUB -const char *StoreEntry::url() const STUB_RETVAL(NULL) +void StoreEntry::swapOutFileClose(int) STUB +const char *StoreEntry::url() const STUB_RETVAL(nullptr) bool StoreEntry::checkCachable() STUB_RETVAL(false) int StoreEntry::checkNegativeHit() const STUB_RETVAL(0) int StoreEntry::validToSend() const STUB_RETVAL(0) bool StoreEntry::memoryCachable() STUB_RETVAL(false) void StoreEntry::createMemObject() STUB -void StoreEntry::createMemObject(const char *, const char *, const HttpRequestMethod &aMethod) STUB +void StoreEntry::createMemObject(const char *, const char *, const HttpRequestMethod &) STUB void StoreEntry::ensureMemObject(const char *, const char *, const HttpRequestMethod &) STUB -void StoreEntry::dump(int debug_lvl) const STUB +void StoreEntry::dump(int) const STUB void StoreEntry::hashDelete() STUB void StoreEntry::hashInsert(const cache_key *) STUB void StoreEntry::registerAbortCallback(const AsyncCall::Pointer &) STUB @@ -64,33 +64,33 @@ bool StoreEntry::timestampsSet() STUB_RETVAL(false) void StoreEntry::unregisterAbortCallback(const char *) STUB void StoreEntry::destroyMemObject() STUB int StoreEntry::checkTooSmall() STUB_RETVAL(0) -void StoreEntry::delayAwareRead(const Comm::ConnectionPointer&, char *buf, int len, AsyncCall::Pointer callback) STUB +void StoreEntry::delayAwareRead(const Comm::ConnectionPointer&, char *, int, AsyncCall::Pointer) STUB void StoreEntry::setNoDelay (bool const) STUB bool StoreEntry::modifiedSince(const time_t, const int) const STUB_RETVAL(false) -bool StoreEntry::hasIfMatchEtag(const HttpRequest &request) const STUB_RETVAL(false) -bool StoreEntry::hasIfNoneMatchEtag(const HttpRequest &request) const STUB_RETVAL(false) +bool StoreEntry::hasIfMatchEtag(const HttpRequest &) const STUB_RETVAL(false) +bool StoreEntry::hasIfNoneMatchEtag(const HttpRequest &) const STUB_RETVAL(false) Store::Disk &StoreEntry::disk() const STUB_RETREF(Store::Disk) size_t StoreEntry::inUseCount() STUB_RETVAL(0) -void *StoreEntry::operator new(size_t byteCount) +void *StoreEntry::operator new(size_t) { STUB return new StoreEntry(); } -void StoreEntry::operator delete(void *address) STUB +void StoreEntry::operator delete(void *) STUB //#if USE_SQUID_ESI -//ESIElement::Pointer StoreEntry::cachedESITree STUB_RETVAL(NULL) +//ESIElement::Pointer StoreEntry::cachedESITree STUB_RETVAL(nullptr) //#endif void StoreEntry::buffer() STUB void StoreEntry::flush() STUB int StoreEntry::unlock(const char *) STUB_RETVAL(0) void StoreEntry::lock(const char *) STUB void StoreEntry::touch() STUB -void StoreEntry::release(const bool shareable) STUB +void StoreEntry::release(const bool) STUB void StoreEntry::append(char const *, int) STUB void StoreEntry::vappendf(const char *, va_list) STUB -void StoreEntry::setCollapsingRequirement(const bool required) STUB +void StoreEntry::setCollapsingRequirement(const bool) STUB -void Store::Maintain(void *unused) STUB +void Store::Maintain(void *) STUB std::ostream &operator <<(std::ostream &os, const StoreEntry &) { @@ -100,21 +100,21 @@ std::ostream &operator <<(std::ostream &os, const StoreEntry &) size_t storeEntryInUse() STUB_RETVAL(0) void storeEntryReplaceObject(StoreEntry *, HttpReply *) STUB -StoreEntry *storeGetPublic(const char *uri, const HttpRequestMethod& method) STUB_RETVAL(NULL) -StoreEntry *storeGetPublicByRequest(HttpRequest * request, const KeyScope scope) STUB_RETVAL(NULL) -StoreEntry *storeGetPublicByRequestMethod(HttpRequest * request, const HttpRequestMethod& method, const KeyScope scope) STUB_RETVAL(NULL) -StoreEntry *storeCreateEntry(const char *, const char *, const RequestFlags &, const HttpRequestMethod&) STUB_RETVAL(NULL) -StoreEntry *storeCreatePureEntry(const char *storeId, const char *logUrl, const HttpRequestMethod&) STUB_RETVAL(nullptr) +StoreEntry *storeGetPublic(const char *, const HttpRequestMethod&) STUB_RETVAL(nullptr) +StoreEntry *storeGetPublicByRequest(HttpRequest *, const KeyScope) STUB_RETVAL(nullptr) +StoreEntry *storeGetPublicByRequestMethod(HttpRequest *, const HttpRequestMethod&, const KeyScope) STUB_RETVAL(nullptr) +StoreEntry *storeCreateEntry(const char *, const char *, const RequestFlags &, const HttpRequestMethod&) STUB_RETVAL(nullptr) +StoreEntry *storeCreatePureEntry(const char *, const char *, const HttpRequestMethod&) STUB_RETVAL(nullptr) void storeConfigure(void) STUB int expiresMoreThan(time_t, time_t) STUB_RETVAL(0) void storeAppendPrintf(StoreEntry *, const char *,...) STUB -void storeAppendVPrintf(StoreEntry *, const char *, va_list ap) STUB +void storeAppendVPrintf(StoreEntry *, const char *, va_list) STUB int storeTooManyDiskFilesOpen(void) STUB_RETVAL(0) void storeHeapPositionUpdate(StoreEntry *, SwapDir *) STUB -void storeSwapFileNumberSet(StoreEntry * e, sfileno filn) STUB +void storeSwapFileNumberSet(StoreEntry *, sfileno) STUB void storeFsInit(void) STUB void storeFsDone(void) STUB void storeReplAdd(const char *, REMOVALPOLICYCREATE *) STUB void destroyStoreEntry(void *) STUB -void storeGetMemSpace(int size) STUB +void storeGetMemSpace(int) STUB diff --git a/src/tests/stub_store_client.cc b/src/tests/stub_store_client.cc index 2a138748e9..a56891d486 100644 --- a/src/tests/stub_store_client.cc +++ b/src/tests/stub_store_client.cc @@ -7,34 +7,24 @@ */ #include "squid.h" +#include "repl_modules.h" +#include "store_digest.h" +#include "store_log.h" +#include "store_rebuild.h" #include "Store.h" #include "StoreClient.h" #define STUB_API "store_client.cc" #include "tests/STUB.h" -int storePendingNClients(const StoreEntry * e) -{ - /* no clients in the tests so far */ - return 0; -} - -void StoreEntry::invokeHandlers() -{ - /* do nothing for tests */ -} - -void -storeLog(int tag, const StoreEntry * e) -{ - /* do nothing for tests - we don't need the log */ -} - +int storePendingNClients(const StoreEntry *) STUB_RETVAL_NOP(0) +void StoreEntry::invokeHandlers() STUB_NOP +void storeLog(int, const StoreEntry *) STUB_NOP void storeLogOpen(void) STUB void storeDigestInit(void) STUB void storeRebuildStart(void) STUB void storeReplSetup(void) STUB -bool store_client::memReaderHasLowerOffset(int64_t anOffset) const STUB_RETVAL(false) -void store_client::dumpStats(MemBuf * output, int clientNumber) const STUB +bool store_client::memReaderHasLowerOffset(int64_t) const STUB_RETVAL(false) +void store_client::dumpStats(MemBuf *, int) const STUB int store_client::getType() const STUB_RETVAL(0) diff --git a/src/tests/stub_store_digest.cc b/src/tests/stub_store_digest.cc index 5d35d57873..e4628895bc 100644 --- a/src/tests/stub_store_digest.cc +++ b/src/tests/stub_store_digest.cc @@ -7,6 +7,7 @@ */ #include "squid.h" +#include "store_digest.h" #define STUB_API "store_digets.cc" #include "tests/STUB.h" diff --git a/src/tests/stub_store_rebuild.cc b/src/tests/stub_store_rebuild.cc index 006fef7692..71a51196bb 100644 --- a/src/tests/stub_store_rebuild.cc +++ b/src/tests/stub_store_rebuild.cc @@ -19,7 +19,7 @@ #define STUB_API "stub_store_rebuild.cc" #include "tests/STUB.h" -void storeRebuildProgress(int sd_index, int total, int sofar) STUB +void storeRebuildProgress(int, int, int) STUB bool storeRebuildParseEntry(MemBuf &, StoreEntry &, cache_key *, StoreRebuildData &, uint64_t) STUB_RETVAL(false) void StoreRebuildData::updateStartTime(const timeval &dirStartTime) @@ -35,7 +35,7 @@ void storeRebuildComplete(StoreRebuildData *) } bool -storeRebuildLoadEntry(int fd, int diskIndex, MemBuf &buf, StoreRebuildData &) +storeRebuildLoadEntry(int fd, int, MemBuf &buf, StoreRebuildData &) { if (fd < 0) return false; diff --git a/src/tests/stub_store_stats.cc b/src/tests/stub_store_stats.cc index f14fa4330d..6cd50ac91d 100644 --- a/src/tests/stub_store_stats.cc +++ b/src/tests/stub_store_stats.cc @@ -15,7 +15,7 @@ #include StoreInfoStats & -StoreInfoStats::operator +=(const StoreInfoStats &stats) STUB_RETVAL(*this) +StoreInfoStats::operator +=(const StoreInfoStats &) STUB_RETVAL(*this) StoreIoStats::StoreIoStats() { diff --git a/src/tests/stub_store_swapout.cc b/src/tests/stub_store_swapout.cc index ed59ff5f13..3b8a42116e 100644 --- a/src/tests/stub_store_swapout.cc +++ b/src/tests/stub_store_swapout.cc @@ -14,10 +14,7 @@ #include -/* XXX: wrong stub file... */ -void storeUnlink(StoreEntry * e) STUB - -char *storeSwapMetaPack(tlv * tlv_list, int *length) STUB_RETVAL(NULL) +char *storeSwapMetaPack(tlv *, int *) STUB_RETVAL(nullptr) tlv *storeSwapMetaBuild(const StoreEntry *) STUB_RETVAL(nullptr) -void storeSwapTLVFree(tlv * n) STUB +void storeSwapTLVFree(tlv *) STUB diff --git a/src/tests/stub_tools.cc b/src/tests/stub_tools.cc index 280c97e044..36b7a2a7ed 100644 --- a/src/tests/stub_tools.cc +++ b/src/tests/stub_tools.cc @@ -16,8 +16,6 @@ int DebugSignal = -1; SBuf service_name(APP_SHORTNAME); void releaseServerSockets(void) STUB_NOP -char * dead_msg(void) STUB_RETVAL(NULL) -void mail_warranty(void) STUB void dumpMallocStats(void) STUB void squid_getrusage(struct rusage *) STUB double rusage_cputime(struct rusage *) STUB_RETVAL(0) @@ -71,7 +69,6 @@ int getMyPort(void) STUB_RETVAL(0) void setUmask(mode_t) STUB void strwordquote(MemBuf *, const char *) STUB void keepCapabilities(void) STUB -void restoreCapabilities(bool) STUB pid_t WaitForOnePid(pid_t, PidStatus &, int) STUB_RETVAL(0) #if _SQUID_WINDOWS_ diff --git a/src/tests/stub_tunnel.cc b/src/tests/stub_tunnel.cc index 4aad0f5d4b..53a1ac9ac7 100644 --- a/src/tests/stub_tunnel.cc +++ b/src/tests/stub_tunnel.cc @@ -7,11 +7,13 @@ */ #include "squid.h" +#include "client_side_request.h" +#include "FwdState.h" +#include "http/Stream.h" +#include "tunnel.h" #define STUB_API "tunnel.cc" #include "tests/STUB.h" - -#include "FwdState.h" class ClientHttpRequest; void tunnelStart(ClientHttpRequest *) STUB diff --git a/src/tests/stub_wccp2.cc b/src/tests/stub_wccp2.cc index ece04553b8..6bc571d457 100644 --- a/src/tests/stub_wccp2.cc +++ b/src/tests/stub_wccp2.cc @@ -7,6 +7,7 @@ */ #include "squid.h" +#include "wccp2.h" #if USE_WCCPv2 @@ -15,7 +16,6 @@ class StoreEntry; -void wccp2_add_service_list(int, int, int, int, int, int[], int, char *) STUB void wccp2Init(void) STUB void wccp2ConnectionOpen(void) STUB void wccp2ConnectionClose(void) STUB diff --git a/src/tests/stub_whois.cc b/src/tests/stub_whois.cc index 4ab77488c9..91f1d7fbf9 100644 --- a/src/tests/stub_whois.cc +++ b/src/tests/stub_whois.cc @@ -7,11 +7,11 @@ */ #include "squid.h" +#include "FwdState.h" +#include "whois.h" #define STUB_API "whois.cc" #include "tests/STUB.h" -class FwdState; - void whoisStart(FwdState *) STUB diff --git a/src/tests/testConfigParser.cc b/src/tests/testConfigParser.cc index 1924d52d10..44039815d7 100644 --- a/src/tests/testConfigParser.cc +++ b/src/tests/testConfigParser.cc @@ -8,18 +8,12 @@ #include "squid.h" #include "ConfigParser.h" -#include "event.h" #include "SquidString.h" #include "testConfigParser.h" #include "unitTestMain.h" CPPUNIT_TEST_SUITE_REGISTRATION( testConfigParser); -/* let this test link sanely */ -void -eventAdd(const char *name, EVH * func, void *arg, double when, int, bool cbdata) -{} - void testConfigParser::setUp() { } diff --git a/src/tests/testHttp1Parser.cc b/src/tests/testHttp1Parser.cc index 362133a273..3105b0b1b1 100644 --- a/src/tests/testHttp1Parser.cc +++ b/src/tests/testHttp1Parser.cc @@ -83,6 +83,8 @@ testResults(int line, const SBuf &input, Http1::RequestParser &output, struct re { #ifdef SQUID_DEBUG_TESTS std::cerr << "TEST @" << line << ", in=" << Pretty(input) << "\n"; +#else + (void)line; #endif const bool parsed = output.parse(input); diff --git a/src/tests/testIcmp.h b/src/tests/testIcmp.h index 598fb0defe..83c25f6d45 100644 --- a/src/tests/testIcmp.h +++ b/src/tests/testIcmp.h @@ -24,7 +24,7 @@ public: virtual void Close() {}; /// Construct ECHO request - virtual void SendEcho(Ip::Address &to, int opcode, const char *payload, int len) {}; + virtual void SendEcho(Ip::Address &, int, const char *, int) {} /// Handle ICMP responses. virtual void Recv(void) {}; diff --git a/src/tests/testRefCount.cc b/src/tests/testRefCount.cc index f8784c0d0d..f99440a928 100644 --- a/src/tests/testRefCount.cc +++ b/src/tests/testRefCount.cc @@ -55,7 +55,7 @@ testRefCount::testCountability() ToRefCount anObject(new _ToRefCount); CPPUNIT_ASSERT_EQUAL(1, _ToRefCount::Instances); CPPUNIT_ASSERT_EQUAL(1, anObject->someMethod()); - anObject = anObject; + anObject = *&anObject; // test self-assign without -Wself-assign-overloaded warnings CPPUNIT_ASSERT_EQUAL(1, _ToRefCount::Instances); ToRefCount objectTwo (anObject); anObject = objectTwo; diff --git a/src/tests/testSBuf.cc b/src/tests/testSBuf.cc index 52ef70bc58..fa758b2f73 100644 --- a/src/tests/testSBuf.cc +++ b/src/tests/testSBuf.cc @@ -26,7 +26,7 @@ CPPUNIT_TEST_SUITE_REGISTRATION( testSBuf ); #include "event.h" #include "MemObject.h" void -eventAdd(const char *name, EVH * func, void *arg, double when, int, bool cbdata) +eventAdd(const char *, EVH *, void *, double, int, bool) {} int64_t MemObject::endOffset() const diff --git a/src/tests/testStoreController.cc b/src/tests/testStoreController.cc index b301417c54..a8c3c01226 100644 --- a/src/tests/testStoreController.cc +++ b/src/tests/testStoreController.cc @@ -87,9 +87,8 @@ testStoreController::testMaxSize() static StoreEntry * addedEntry(Store::Disk *aStore, String name, - String varySpec, - String varyKey - + String, + String ) { StoreEntry *e = new StoreEntry(); @@ -122,7 +121,7 @@ addedEntry(Store::Disk *aStore, static bool cbcalled; static void -searchCallback(void *cbdata) +searchCallback(void *) { cbcalled = true; } diff --git a/src/tests/testStoreHashIndex.cc b/src/tests/testStoreHashIndex.cc index a676caa3d4..595ad784f8 100644 --- a/src/tests/testStoreHashIndex.cc +++ b/src/tests/testStoreHashIndex.cc @@ -62,12 +62,11 @@ testStoreHashIndex::testMaxSize() Store::FreeMemory(); } -StoreEntry * +static StoreEntry * addedEntry(Store::Disk *aStore, String name, - String varySpec, - String varyKey - + String, + String ) { StoreEntry *e = new StoreEntry(); @@ -95,7 +94,7 @@ addedEntry(Store::Disk *aStore, return e; } -void commonInit() +static void commonInit() { static bool inited = false; @@ -116,7 +115,7 @@ void commonInit() static bool cbcalled; static void -searchCallback(void *cbdata) +searchCallback(void *) { cbcalled = true; } diff --git a/src/tests/testString.cc b/src/tests/testString.cc index 641ab9842b..cdcafa9ec4 100644 --- a/src/tests/testString.cc +++ b/src/tests/testString.cc @@ -7,18 +7,13 @@ */ #include "squid.h" -#include "event.h" +#include "mem/forward.h" #include "SquidString.h" #include "testString.h" #include "unitTestMain.h" CPPUNIT_TEST_SUITE_REGISTRATION( testString ); -/* let this test link sanely */ -void -eventAdd(const char *name, EVH * func, void *arg, double when, int, bool cbdata) -{} - /* init memory pools */ void diff --git a/src/tests/testUfs.cc b/src/tests/testUfs.cc index e88966ad7b..77423847f0 100644 --- a/src/tests/testUfs.cc +++ b/src/tests/testUfs.cc @@ -42,7 +42,7 @@ addSwapDir(MySwapDirPointer aStore) static bool cbcalled; static void -searchCallback(void *cbdata) +searchCallback(void *) { cbcalled = true; } diff --git a/src/tests/test_http_range.cc b/src/tests/test_http_range.cc index 48c01b0998..a90f7b535e 100644 --- a/src/tests/test_http_range.cc +++ b/src/tests/test_http_range.cc @@ -10,38 +10,11 @@ #include "fatal.h" #include "HttpHeader.h" #include "HttpHeaderRange.h" +#include "HttpHeaderTools.h" // TODO: refactor as cppunit test -void httpHeaderPutStr(HttpHeader * hdr, Http::HdrType type, const char *str) -{ - fatal ("dummy function\n"); -} - -HttpHeaderEntry *httpHeaderGetEntry(const HttpHeader * hdr, HttpHeaderPos * pos) -{ - fatal ("dummy function\n"); - return NULL; -} - -String httpHeaderGetList(const HttpHeader * hdr, Http::HdrType id) -{ - fatal ("dummy function\n"); - return String(); -} - -int httpHeaderHas(const HttpHeader * hdr, Http::HdrType type) -{ - fatal ("dummy function\n"); - return 0; -} - -void httpHeaderPutContRange(HttpHeader * hdr, const HttpHdrContRange * cr) -{ - fatal ("dummy function\n"); -} - -void +static void testRangeParser(char const *rangestring) { String aString (rangestring); @@ -61,7 +34,7 @@ testRangeParser(char const *rangestring) delete range; } -HttpHdrRange * +static HttpHdrRange * rangeFromString(char const *rangestring) { String aString (rangestring); @@ -73,7 +46,7 @@ rangeFromString(char const *rangestring) return range; } -void +static void testRangeIter () { HttpHdrRange *range=rangeFromString("bytes=0-3, 1-, -2"); @@ -94,7 +67,7 @@ testRangeIter () assert (i - range->end() == -2); } -void +static void testRangeCanonization() { HttpHdrRange *range=rangeFromString("bytes=0-3, 1-, -2"); @@ -153,7 +126,7 @@ testRangeCanonization() } int -main(int argc, char **argv) +main(int, char **) { try { Mem::Init(); diff --git a/src/tools.cc b/src/tools.cc index 04ea2e6c36..bcdea420e3 100644 --- a/src/tools.cc +++ b/src/tools.cc @@ -1136,7 +1136,10 @@ restoreCapabilities(bool keep) cap_free(caps); } #elif _SQUID_LINUX_ + (void)keep; Ip::Interceptor.StopTransparency("Missing needed capability support."); +#else + (void)keep; #endif /* HAVE_SYS_CAPABILITY_H */ } diff --git a/src/tunnel.cc b/src/tunnel.cc index eb06544032..325f33894c 100644 --- a/src/tunnel.cc +++ b/src/tunnel.cc @@ -47,6 +47,7 @@ #include "ssl/ServerBump.h" #endif #include "tools.h" +#include "tunnel.h" #if USE_DELAY_POOLS #include "DelayId.h" #endif @@ -237,8 +238,8 @@ private: method_(method), tunnel_(tunnel), answer_() {} /* CallDialer API */ - virtual bool canDial(AsyncCall &call) { return tunnel_.valid(); } - void dial(AsyncCall &call) { ((&(*tunnel_))->*method_)(answer_); } + virtual bool canDial(AsyncCall &) { return tunnel_.valid(); } + void dial(AsyncCall &) { ((&(*tunnel_))->*method_)(answer_); } virtual void print(std::ostream &os) const { os << '(' << tunnel_.get() << ", " << answer_ << ')'; } @@ -468,7 +469,7 @@ TunnelStateData::Connection::bytesWanted(int lowerbound, int upperbound) const #if USE_DELAY_POOLS return delayId.bytesWanted(lowerbound, upperbound); #else - + (void)lowerbound; return upperbound; #endif } diff --git a/src/tunnel.h b/src/tunnel.h new file mode 100644 index 0000000000..993b703c17 --- /dev/null +++ b/src/tunnel.h @@ -0,0 +1,19 @@ +/* + * Copyright (C) 1996-2021 The Squid Software Foundation and contributors + * + * Squid software is distributed under GPLv2+ license and includes + * contributions from numerous individuals and organizations. + * Please see the COPYING and CONTRIBUTORS files for details. + */ + +#ifndef TUNNEL_H_ +#define TUNNEL_H_ + +#include "comm/forward.h" +#include "sbuf/forward.h" + +class HttpRequest; +void switchToTunnel(HttpRequest *request, const Comm::ConnectionPointer &clientConn, const Comm::ConnectionPointer &srvConn, const SBuf &preReadServerData); + +#endif /* TUNNEL_H_ */ + diff --git a/src/unlinkd.cc b/src/unlinkd.cc index 527269399b..b6563e95aa 100644 --- a/src/unlinkd.cc +++ b/src/unlinkd.cc @@ -21,6 +21,7 @@ #include "StatCounters.h" #include "store/Disk.h" #include "tools.h" +#include "unlinkd.h" #include "xusleep.h" /* This code gets linked to Squid */ diff --git a/src/wccp.cc b/src/wccp.cc index 381217a428..15208ad985 100644 --- a/src/wccp.cc +++ b/src/wccp.cc @@ -17,6 +17,7 @@ #include "event.h" #include "fatal.h" #include "SquidConfig.h" +#include "wccp.h" #define WCCP_PORT 2048 #define WCCP_REVISION 0 diff --git a/src/wccp2.cc b/src/wccp2.cc index 06dac9ce94..a304125b96 100644 --- a/src/wccp2.cc +++ b/src/wccp2.cc @@ -23,6 +23,7 @@ #include "Parsing.h" #include "SquidConfig.h" #include "Store.h" +#include "wccp2.h" #if HAVE_NETDB_H #include @@ -461,8 +462,8 @@ int empty_portlist[WCCP2_NUMPORTS] = {0, 0, 0, 0, 0, 0, 0, 0}; /* END WCCP V2 PROTOCOL TYPES DEFINITION */ -void wccp2_add_service_list(int service, int service_id, int service_priority, - int service_proto, int service_flags, int ports[], int security_type, char *password); +static void wccp2_add_service_list(int service, int service_id, int service_priority, + int service_proto, int service_flags, int ports[], int security_type, char *password); static void wccp2SortCacheList(struct wccp2_cache_list_t *head); /* diff --git a/src/whois.cc b/src/whois.cc index 7b3a7cb9a5..7804a39a6c 100644 --- a/src/whois.cc +++ b/src/whois.cc @@ -20,6 +20,7 @@ #include "StatCounters.h" #include "Store.h" #include "tools.h" +#include "whois.h" #include diff --git a/test-suite/debug.cc b/test-suite/debug.cc index 3e8d8b8736..a847649250 100644 --- a/test-suite/debug.cc +++ b/test-suite/debug.cc @@ -21,7 +21,8 @@ public: char const *getACString() const; }; -std::ostream &operator << (std::ostream &aStream, StreamTest &anObject) +static std::ostream & +operator << (std::ostream &aStream, StreamTest &anObject) { return anObject.serialise(aStream); } diff --git a/test-suite/mem_hdr_test.cc b/test-suite/mem_hdr_test.cc index fecbf834c0..5a627487ec 100644 --- a/test-suite/mem_hdr_test.cc +++ b/test-suite/mem_hdr_test.cc @@ -16,7 +16,7 @@ #include #include -void +static void testLowAndHigh() { mem_hdr aHeader; @@ -40,7 +40,7 @@ testLowAndHigh() assert (!aHeader.hasContigousContentRange(Range(10,101))); } -void +static void testSplayOfNodes() { Splay aSplay; @@ -71,7 +71,7 @@ testSplayOfNodes() aSplay.destroy(); } -void +static void testHdrVisit() { mem_hdr aHeader; diff --git a/test-suite/splay.cc b/test-suite/splay.cc index b26ac43eb7..2c9ae8c0c4 100644 --- a/test-suite/splay.cc +++ b/test-suite/splay.cc @@ -33,16 +33,16 @@ public: int i; }; -int -compareintvoid(void * const &a, void * const &n) +static int +compareintvoid(void *const &a, void *const &n) { intnode *A = (intnode *)a; intnode *B = (intnode *)n; return A->i - B->i; } -int -compareint(intnode * const &a, intnode * const &b) +static int +compareint(intnode *const &a, intnode *const &b) { return a->i - b->i; } @@ -104,27 +104,27 @@ SplayCheck::WalkNodeRef (intnode const &a, void *) CheckNode (a); } -void -destintvoid(void * &data) +static void +destintvoid(void *&data) { intnode *i = (intnode *)data; xfree (i); } -void -destint(intnode * &data) +static void +destint(intnode *&data) { delete data; } -int +static int compareintref(intnode const &a, intnode const &b) { return a.i - b.i; } -void -destintref (intnode &) +static void +destintref(intnode &) {} int diff --git a/test-suite/syntheticoperators.cc b/test-suite/syntheticoperators.cc index 091f58c13e..578ea135a2 100644 --- a/test-suite/syntheticoperators.cc +++ b/test-suite/syntheticoperators.cc @@ -91,7 +91,7 @@ HasExplicit::Assignments(int const &newValue) Assignments_ = newValue; } -void +static void CheckHasExplicitWorks() { assert (HasExplicit::Instances() == 0); @@ -123,7 +123,7 @@ public: HasExplicit aMember; }; -void +static void CheckSyntheticWorks() { assert (HasExplicit::Instances() == 0); diff --git a/tools/cachemgr.cc b/tools/cachemgr.cc index 1d02fa34bb..8cc5ff6282 100644 --- a/tools/cachemgr.cc +++ b/tools/cachemgr.cc @@ -216,7 +216,7 @@ xstrtok(char **str, char del) return ""; } -bool +static bool hostname_check(const char *uri) { static CharacterSet hostChars = CharacterSet("host",".:[]_") + @@ -693,7 +693,7 @@ read_reply(int s, cachemgr_request * req) } istate = isActions; - /* yes, fall through, we do not want to loose the first line */ + /* [[fallthrough]] we do not want to lose the first line */ case isActions: if (strncmp(buf, "action:", 7) == 0) { @@ -709,7 +709,7 @@ read_reply(int s, cachemgr_request * req) } istate = isBody; - /* yes, fall through, we do not want to loose the first line */ + /* [[fallthrough]] we do not want to lose the first line */ case isBody: { diff --git a/tools/purge/purge.cc b/tools/purge/purge.cc index cae672525b..ae293a75aa 100644 --- a/tools/purge/purge.cc +++ b/tools/purge/purge.cc @@ -198,8 +198,8 @@ REList::match( const char* check ) const // ---------------------------------------------------------------------- -char* -concat( const char* start, ... ) +static char * +concat(const char *start, ...) // purpose: concatinate an arbitrary number of C strings. // paramtr: start (IN): first C string // ... (IN): further C strings, terminated with a NULL pointer @@ -231,7 +231,7 @@ concat( const char* start, ... ) return result; } -bool +static bool isxstring( const char* s, size_t testlen ) // purpose: test a string for conforming to xdigit // paramtr: s (IN): string to test @@ -307,9 +307,9 @@ log_extended( const char* fn, int code, long size, const SquidMetaList* meta ) static struct in_addr serverHost; static unsigned short serverPort; -bool -action( int fd, size_t metasize, - const char* fn, const char* url, const SquidMetaList& meta ) +static bool +action(int fd, size_t metasize, + const char *fn, const char *url, const SquidMetaList &meta) // purpose: if cmdline-requested, send the purge request to the cache // paramtr: fd (IN): open FD for the object file // metasize (IN): offset into data portion of file (meta data size) @@ -394,8 +394,8 @@ action( int fd, size_t metasize, return flag; } -bool -match( const char* fn, const REList* list ) +static bool +match(const char *fn, const REList *list) // purpose: do something with the given cache content filename // paramtr: fn (IN): filename of cache file // returns: true for successful action, false otherwise. @@ -488,8 +488,8 @@ match( const char* fn, const REList* list ) return flag; } -bool -filelevel( const char* directory, const REList* list ) +static bool +filelevel(const char *directory, const REList *list) // purpose: from given starting point, look for squid xxxxxxxx files. // example: "/var/spool/cache/08/7F" as input, do action over files // paramtr: directory (IN): starting point @@ -528,8 +528,8 @@ filelevel( const char* directory, const REList* list ) return flag; } -bool -dirlevel( const char* dirname, const REList* list, bool level=false ) +static bool +dirlevel(const char *dirname, const REList *list, bool level = false) // purpose: from given starting point, look for squid 00..FF directories. // paramtr: dirname (IN): starting point // list (IN): list of rexps to match URLs against @@ -565,8 +565,8 @@ dirlevel( const char* dirname, const REList* list, bool level=false ) return flag; } -int -checkForPortOnly( const char* arg ) +static int +checkForPortOnly(const char *arg) // purpose: see if somebody just put in a port instead of a hostname // paramtr: optarg (IN): argument from commandline // returns: 0..65535 is the valid port number in network byte order, @@ -583,8 +583,8 @@ checkForPortOnly( const char* arg ) return -1; } -void -helpMe( void ) +static void +helpMe(void) // purpuse: write help message and exit { printf( "\nUsage:\t%s\t[-a] [-c cf] [-d l] [-(f|F) fn | -(e|E) re] " @@ -613,10 +613,10 @@ helpMe( void ) } -void -parseCommandline( int argc, char* argv[], REList*& head, - char*& conffile, char*& copyDirPath, - struct in_addr& serverHostIp, unsigned short& serverHostPort ) +static void +parseCommandline(int argc, char *argv[], REList *&head, + char *&conffile, char *©DirPath, + struct in_addr &serverHostIp, unsigned short &serverHostPort) // paramtr: argc: see ::main(). // argv: see ::main(). // returns: Does terminate the program on errors! diff --git a/tools/purge/socket.cc b/tools/purge/socket.cc index d6be477a1a..f3e2279ba3 100644 --- a/tools/purge/socket.cc +++ b/tools/purge/socket.cc @@ -120,8 +120,8 @@ setSocketNoDelay( int sockfd, bool) return 0; } -int -commonCode( int& sockfd, bool nodelay, int sendBufferSize, int recvBufferSize ) +static int +commonCode(int &sockfd, bool nodelay, int sendBufferSize, int recvBufferSize) // purpose: common code in server sockets and client sockets // paramtr: sockfd (IO): socket filedescriptor // nodelay (IN): true=set TCP_NODELAY option. diff --git a/tools/squidclient/Transport.cc b/tools/squidclient/Transport.cc index 658da8b481..4bc7a9f4fe 100644 --- a/tools/squidclient/Transport.cc +++ b/tools/squidclient/Transport.cc @@ -503,6 +503,8 @@ Transport::MaybeStartTls(const char *hostname) return false; } } +#else + (void)hostname; #endif return true; } diff --git a/tools/squidclient/squidclient.cc b/tools/squidclient/squidclient.cc index 3b323c0558..2aac75a667 100644 --- a/tools/squidclient/squidclient.cc +++ b/tools/squidclient/squidclient.cc @@ -293,6 +293,8 @@ main(int argc, char *argv[]) case 'p': /* port number */ // rewind and let the Transport::Config parser handle optind -= 2; + Transport::Config.parseCommandOpts(argc, argv, c, optIndex); + continue; case '\3': // request over a TLS connection Transport::Config.parseCommandOpts(argc, argv, c, optIndex);