]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
Activate extra compiler checks (#667)
authorFrancesco Chemolli <kinkie@squid-cache.org>
Thu, 12 Aug 2021 08:39:04 +0000 (08:39 +0000)
committerSquid Anubis <squid-anubis@squid-cache.org>
Thu, 12 Aug 2021 09:42:42 +0000 (09:42 +0000)
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.

233 files changed:
acinclude/compiler-flags.m4
acinclude/pam.m4
configure.ac
include/splay.h
lib/hash.cc
lib/libTrie/test/trie.cc
src/DelayTagged.cc
src/DelayUser.cc
src/DelayVector.cc
src/DiskIO/IpcIo/IpcIoFile.cc
src/FwdState.cc
src/FwdState.h
src/HttpHdrCc.cc
src/HttpHdrRange.cc
src/HttpHdrSc.h
src/HttpHdrScTarget.cc
src/HttpHeader.cc
src/LoadableModule.cc
src/LoadableModule.h
src/Makefile.am
src/MemObject.cc
src/MemStore.cc
src/MessageDelayPools.cc
src/MessageDelayPools.h
src/NullDelayId.h
src/PeerPoolMgr.cc
src/SquidConfig.h
src/Transients.cc
src/acl/Arp.cc
src/acl/Eui64.cc
src/acl/FilledChecklist.cc
src/acl/HttpStatus.cc
src/acl/Ip.cc
src/acl/external/AD_group/ext_ad_group_acl.cc
src/acl/external/LM_group/ext_lm_group_acl.cc
src/acl/external/kerberos_ldap_group/support_ldap.cc
src/acl/external/kerberos_ldap_group/support_sasl.cc
src/acl/external/session/ext_session_acl.cc
src/acl/external/unix_group/check_group.cc
src/adaptation/icap/ModXact.cc
src/anyp/Uri.cc
src/anyp/Uri.h
src/anyp/UriScheme.cc
src/anyp/UriScheme.h
src/auth/UserRequest.cc
src/auth/basic/SSPI/basic_sspi_auth.cc
src/auth/digest/UserRequest.cc
src/auth/negotiate/Config.cc
src/auth/negotiate/SSPI/negotiate_sspi_auth.cc
src/auth/negotiate/UserRequest.cc
src/auth/negotiate/kerberos/negotiate_kerberos_pac.cc
src/auth/negotiate/wrapper/negotiate_wrapper.cc
src/auth/ntlm/Config.cc
src/auth/ntlm/SSPI/ntlm_sspi_auth.cc
src/auth/ntlm/UserRequest.cc
src/auth/ntlm/fake/ntlm_fake_auth.cc
src/auth/toUtf.cc
src/cache_cf.cc
src/carp.cc
src/cbdata.cc
src/cbdata.h
src/cf_gen.cc
src/client_side.cc
src/client_side.h
src/client_side_reply.cc
src/client_side_reply.h
src/client_side_request.cc
src/clients/FtpClient.cc
src/clients/FtpGateway.cc
src/clients/HttpTunneler.cc
src/comm.cc
src/debug.cc
src/delay_pools.cc
src/dns_internal.cc
src/errorpage.cc
src/esi/Assign.cc
src/esi/Element.h
src/esi/Esi.cc
src/esi/Expression.cc
src/esi/Include.cc
src/esi/Libxml2Parser.cc
src/esi/Sequence.cc
src/esi/VarState.cc
src/format/Format.cc
src/fqdncache.cc
src/fs/rock/RockRebuild.cc
src/fs/rock/RockRebuild.h
src/fs/rock/RockSwapDir.cc
src/gopher.cc
src/helper.cc
src/htcp.cc
src/http.cc
src/http/RegisteredHeaders.cc
src/http/RegisteredHeaders.h
src/http/RegisteredHeadersHash.cci
src/http/url_rewriters/fake/fake.cc
src/icmp/IcmpPinger.h
src/icmp/IcmpSquid.cc
src/icmp/net_db.cc
src/icmp/pinger.cc
src/icp_v2.cc
src/ident/Ident.cc
src/int.cc
src/internal.cc
src/ip/Intercept.cc
src/ip/QosConfig.cc
src/ip/forward.h
src/ipcache.cc
src/main.cc
src/mem/forward.h
src/mem/old_api.cc
src/mgr/QueryParams.cc
src/mime_header.cc
src/mime_header.h
src/neighbors.cc
src/peer_digest.cc
src/peer_proxy_negotiate_auth.cc
src/peer_select.cc
src/peer_sourcehash.cc
src/peer_userhash.cc
src/refresh.cc
src/repl/heap/store_repl_heap.cc
src/repl_modules.sh
src/security/ErrorDetail.cc
src/security/Io.cc
src/security/NegotiationHistory.cc
src/security/PeerConnector.cc
src/security/PeerConnector.h
src/security/PeerOptions.cc
src/security/ServerOptions.cc
src/security/Session.cc
src/security/cert_generators/file/certificate_db.cc
src/security/cert_generators/file/security_file_certgen.cc
src/security/forward.h
src/send-announce.cc
src/servers/Http1Server.cc
src/snmp_core.cc
src/ssl/ErrorDetailManager.cc
src/ssl/PeekingPeerConnector.cc
src/ssl/bio.cc
src/ssl/bio.h
src/ssl/cert_validate_message.cc
src/ssl/cert_validate_message.h
src/ssl/helper.cc
src/ssl/support.cc
src/stat.cc
src/store/Controller.cc
src/store_client.cc
src/store_digest.cc
src/tests/SBufFindTest.cc
src/tests/SBufFindTest.h
src/tests/stub_EventLoop.cc
src/tests/stub_HttpHeader.cc
src/tests/stub_HttpReply.cc
src/tests/stub_MemObject.cc
src/tests/stub_MemStore.cc
src/tests/stub_SBufDetailedStats.cc
src/tests/stub_StatHist.cc
src/tests/stub_UdsOp.cc
src/tests/stub_cache_cf.cc
src/tests/stub_cache_manager.cc
src/tests/stub_carp.cc
src/tests/stub_client_db.cc
src/tests/stub_client_side.cc
src/tests/stub_comm.cc
src/tests/stub_debug.cc
src/tests/stub_errorpage.cc
src/tests/stub_event.cc
src/tests/stub_fatal.cc
src/tests/stub_fd.cc
src/tests/stub_helper.cc
src/tests/stub_http.cc
src/tests/stub_icp.cc
src/tests/stub_internal.cc
src/tests/stub_ipc_Forwarder.cc
src/tests/stub_ipcache.cc
src/tests/stub_libanyp.cc
src/tests/stub_libauth.cc
src/tests/stub_libcomm.cc
src/tests/stub_liberror.cc
src/tests/stub_libeui.cc
src/tests/stub_libformat.cc
src/tests/stub_libhttp.cc
src/tests/stub_libicmp.cc
src/tests/stub_liblog.cc
src/tests/stub_libmem.cc
src/tests/stub_libmgr.cc
src/tests/stub_libsecurity.cc
src/tests/stub_libsslsquid.cc
src/tests/stub_libstore.cc
src/tests/stub_main_cc.cc
src/tests/stub_mem_node.cc
src/tests/stub_mime.cc
src/tests/stub_neighbors.cc
src/tests/stub_pconn.cc
src/tests/stub_stat.cc
src/tests/stub_stmem.cc
src/tests/stub_store.cc
src/tests/stub_store_client.cc
src/tests/stub_store_digest.cc
src/tests/stub_store_rebuild.cc
src/tests/stub_store_stats.cc
src/tests/stub_store_swapout.cc
src/tests/stub_tools.cc
src/tests/stub_tunnel.cc
src/tests/stub_wccp2.cc
src/tests/stub_whois.cc
src/tests/testConfigParser.cc
src/tests/testHttp1Parser.cc
src/tests/testIcmp.h
src/tests/testRefCount.cc
src/tests/testSBuf.cc
src/tests/testStoreController.cc
src/tests/testStoreHashIndex.cc
src/tests/testString.cc
src/tests/testUfs.cc
src/tests/test_http_range.cc
src/tools.cc
src/tunnel.cc
src/tunnel.h [new file with mode: 0644]
src/unlinkd.cc
src/wccp.cc
src/wccp2.cc
src/whois.cc
test-suite/debug.cc
test-suite/mem_hdr_test.cc
test-suite/splay.cc
test-suite/syntheticoperators.cc
tools/cachemgr.cc
tools/purge/purge.cc
tools/purge/socket.cc
tools/squidclient/Transport.cc
tools/squidclient/squidclient.cc

index bba5261ebad3550a64145b2cc5301ae432f53dac..3b2331e58f9ba5a7483a71ac3e480eb03a69503d 100644 (file)
 #
 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"
index 358c73de32aa85387f559a08adb0be4d7d563cae..65386974286ff928d80528a48133a4cc8ca0633f 100644 (file)
@@ -21,7 +21,7 @@ AC_DEFUN([CHECK_STRUCT_PAM_CONV], [
     AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
 #include <security/pam_appl.h>
 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 <security/pam_appl.h>
 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
index dcdfa45cd767e877bfe40f4dabd1ea0138ab2df6..534cec994fdd79b96b41187afad74d84ec3e5504 100644 (file)
@@ -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 <arpa/inet.h>]],[[int fox=ntohs(1);]])
index 5884b3e8c5cdf15da91355cb6fde138a02799e32..f44a2b39f8facc9fddfbfd963e2cf002302e17f8 100644 (file)
@@ -423,7 +423,7 @@ SplayConstIterator<V>::operator ++ ()
 
 template <class V>
 SplayConstIterator<V>
-SplayConstIterator<V>::operator ++ (int dummy)
+SplayConstIterator<V>::operator ++ (int)
 {
     SplayConstIterator<V> result = *this;
     advance();
index be5e64668d06ea92499885d6fa2b70f94b59ed39..64c2a70ac7a9f10b72a38111679046903b36e0ea 100644 (file)
@@ -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;
     }
index 01fc2f704c487b1733286bc7348be4968e10e708..5b957df24975c5e75d2ed837a3026558fe25ea09 100644 (file)
@@ -12,7 +12,7 @@
 
 #include <iostream>
 
-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;
index 413bf79909765f2138350af35827589c5e616946..b3bd78ad15394327511cba73ed828e6e5bd7dafa 100644 (file)
@@ -83,14 +83,6 @@ struct DelayTaggedUpdater {
     int incr;
 };
 
-void
-DelayTaggedUpdateWalkee(DelayTaggedBucket::Pointer const &current, void *state)
-{
-    DelayTaggedUpdater *t = (DelayTaggedUpdater *)state;
-    /* This doesn't change the value of the DelayTaggedBucket, so is safe */
-    const_cast<DelayTaggedBucket *>(current.getRaw())->theBucket.update(t->spec, t->incr);
-}
-
 struct DelayTaggedUpdateVisitor {
     DelayTaggedUpdater *updater;
     explicit DelayTaggedUpdateVisitor(DelayTaggedUpdater *u) : updater(u) {}
index 4cb8f93c5b25ff066678ba2ae99806533c9aa274..4632211a5ed1a9c5bec6e1cbec4c1aafdf5aca66 100644 (file)
@@ -48,12 +48,6 @@ void
 DelayUserFree(DelayUserBucket::Pointer &)
 {}
 
-void
-DelayUserStatsWalkee(DelayUserBucket::Pointer const &current, 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 &current, void *state)
-{
-    DelayUserUpdater *t = (DelayUserUpdater *)state;
-    /* This doesn't change the value of the DelayUserBucket, so is safe */
-    const_cast<DelayUserBucket *>(current.getRaw())->theBucket.update(t->spec, t->incr);
-}
-
 struct DelayUserUpdateVisitor {
     DelayUserUpdater *t;
     DelayUserUpdateVisitor(DelayUserUpdater *updater) : t(updater) {}
index b637e3ad769d5e9da016da3e66c0fe5cb4d40f95..ce0afef36c81898a924dabfef6f4f5f91a04ae7b 100644 (file)
@@ -48,7 +48,7 @@ DelayVector::dump(StoreEntry *entry) const
 }
 
 void
-DelayVector::update(int incr)
+DelayVector::update(int)
 {
     /*
      * Each pool updates itself,
index 0ecbdb4bbf412185ab6a0da08cb1690f2e85a3e3..a69aa1c4eafef85ca2c7ddf3ca65e336d36f7a9b 100644 (file)
@@ -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 <<
index 5f297d2257e1fbf9166284039259e04110cb618b..d10efeb4a3ffd704dcc5dae47079dd04f980de6b 100644 (file)
@@ -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_ << ')';
     }
index eda01fb674638078a67420179c9bf9aa16e85d00..0361414f62bd2ef5a649d675a3a8d778c4fb89cc 100644 (file)
@@ -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;
index 92571c8318200b2e9e5d4e10f805b9a31c39ffa3..0bc64ada1bbe04f22858cdf6df541408004c23ae 100644 (file)
@@ -48,7 +48,8 @@ LookupTable<HttpHdrCcType> ccLookupTable(HttpHdrCcType::CC_OTHER,CcAttrs);
 std::vector<HttpHeaderFieldStat> 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<int>(CcAttrs[j].id) == j);
+        assert(static_cast<decltype(j)>(CcAttrs[j].id) == j);
     }
 }
 
index d5798d29320d650e594180aeb2270b6379fc9261..5c7a1ff6c4db84cbaf8745cb04259dc9c69b6833 100644 (file)
@@ -193,6 +193,8 @@ HttpHdrRangeSpec::mergeWith(const HttpHdrRangeSpec * donor)
             offset <= donor->offset && donor->offset < rhs;
     }
 
+#else
+    (void)donor;
 #endif
     return merged;
 }
index 0cf1a6cf69a4d88850c100883991556a2f54f525..8ef9b9dd6da447993bb2c5e27d9a3e724cc5b763 100644 (file)
@@ -11,6 +11,7 @@
 
 #include "http/forward.h"
 #include "HttpHdrScTarget.h"
+#include "mem/PoolingAllocator.h"
 #include "SquidString.h"
 
 #include <list>
@@ -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 */
 
index c8413dfa96594bb23c7e578938ba85e3efb6e8ea..6248d5a6a6e38b6d04c82789d47dd076588eeeda 100644 (file)
@@ -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)
index 77249d77267ceae2ab8cd24e39cd5574d3f8677a..6508f89aa40554051e5031d018d5f6328f2a1d2e 100644 (file)
@@ -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<int>(val);
index 806cecd845312be9dc417cdf61cebb06753bf5a9..186c4148ee3ebe6d76c2e0511a71f8f15302b299 100644 (file)
@@ -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());
 }
index 5ed0f7f34d0efb8932fbcf6a3f108fa2e834a9ec..953722ef7704d10ad694a38c1c7fa583cdb75093 100644 (file)
@@ -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();
 };
index 6033555cf918457c95bf0822005c8f70f13e967f..2dcc867579587395f06b836b75ba4858b9d4d76e 100644 (file)
@@ -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 \
index 2457cb447d1c72d7aa2310bbec8ca914685aa249..24d7b473001cee1fdb9fbc3e75b4e0c6d4f4073c 100644 (file)
@@ -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
 }
 
index fb0a5992c85b246864bbdb66c624f5d1e3204f57..2b9d436d55e86858c84550ed25dbd278a8519a80 100644 (file)
@@ -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<const unsigned int>(slotLimit)) {
-                const int usedSlots = slotLimit - static_cast<const int>(slotsFree);
+            if (slotsFree <= static_cast<unsigned int>(slotLimit)) {
+                const int usedSlots = slotLimit - static_cast<int>(slotsFree);
                 storeAppendPrintf(&e, "Used slots:      %9d %.2f%%\n",
                                   usedSlots, (100.0 * usedSlots / slotLimit));
             }
index 35ecc9457f27fd3167ee38211d543f8f87675416..28f5615d78c9fdb4781874b7a75c22a3b1a77bef 100644 (file)
@@ -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)
index 5af73324818dd10a8c231815dafa112be6d5f656..e7de6c52ca2d34cf234ca6b96c413c359605fa6b 100644 (file)
@@ -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
index 456cfd052079ed53c133bbe49b8eb6f3049bf64f..5db3eb1aec5aa605d07db0832e964378fc5a6535 100644 (file)
@@ -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 */
index c9e80d25cd3c2b3228c3bc1e2299441f122c69e6..abfa86d2d5a111b4a3affab129cc16791fec9eba 100644 (file)
@@ -174,7 +174,7 @@ PeerPoolMgr::handleSecuredPeer(Security::EncryptorAnswer &answer)
 }
 
 void
-PeerPoolMgr::handleSecureClosure(const CommCloseCbParams &params)
+PeerPoolMgr::handleSecureClosure(const CommCloseCbParams &)
 {
     Must(closer != NULL);
     Must(securer != NULL);
index f9c2ff39f9326039d3797abb9c67c7f75fca7751..c25488a5676e62a3e560519e755804a4f2ed2b65 100644 (file)
@@ -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;
 
index 5ccecad928dbc1632b83d15b7e38ac6fa88c13de..69b6de65c15dcc0e559fe51a84cdba1aedb4677f 100644 (file)
@@ -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
 }
 
index d00b56ce5ca9971b671836e16761ecdfa799978c..91cb36dec2dd81d4aa9699050f736c99ab5441b2 100644 (file)
@@ -72,7 +72,7 @@ ACLARP::empty () const
  *       Solaris code by R. Gancarz <radekg@solaris.elektrownia-lagisza.com.pl>
  */
 
-Eui::Eui48 *
+static Eui::Eui48 *
 aclParseArpData(const char *t)
 {
     char buf[256];
index 8dc28735fdf17b064d90e017200fa4fff6675492..74ae0fba8cf6533737dd18bcf60947e088573240 100644 (file)
@@ -44,7 +44,7 @@ ACLEui64::empty () const
     return eui64Data.empty();
 }
 
-Eui::Eui64 *
+static Eui::Eui64 *
 aclParseEuiData(const char *t)
 {
     char buf[256];
index ac24664e82f36e41c9add7cdc11b2569fc4f9cd8..51e489c0bbc164706c48f0523890474a686af6c4 100644 (file)
@@ -273,6 +273,8 @@ ACLFilledChecklist::setIdent(const char *ident)
     assert(!rfc931[0]);
     if (ident)
         xstrncpy(rfc931, ident, USER_IDENT_SZ);
+#else
+    (void)ident;
 #endif
 }
 
index 4b0808b7264c3bb1ac228746b7d4f4ce38366a4b..118f0c2e5d873b6a971fd84edb47cf404f5e1db4 100644 (file)
@@ -91,7 +91,7 @@ ACLHTTPStatus::empty () const
     return data->empty();
 }
 
-acl_httpstatus_data*
+static acl_httpstatus_data*
 aclParseHTTPStatusData(const char *t)
 {
     int status;
index 9505e6d857d271ab2846d41e0e54b1fece4836a2..2cd794663f955f6e0fce6341c349308d0fb8df20 100644 (file)
@@ -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;
index 1d265c5bdbf5fefaf597de710b129a654b556b58..4a60817cc6ff1b709f049ff4fc9f374db00a6239 100644 (file)
@@ -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]);
index 79e857232c8c9ff053f75998974b371b487578fb..30490e2a77d4fcc980aaeb447f545435d4fc38d2 100644 (file)
@@ -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]);
index 61bf4b614462bc2c30e600769551d78751665205..0a005204722bb7b206e72d53fac4a92b334446d7 100644 (file)
@@ -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;
index bb6b89d8f84f110b0775a00513a4d1edfcce6376..831449920b8da27adb314ac4d2a42575e2b33726 100644 (file)
@@ -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;
 
index 8fcffccbb6d315ac21520e0eccb8d796c351b37d..5c7530daf82e4a670ef4666d594b2ab855266ca3 100644 (file)
@@ -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<decltype(key.data)>(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<decltype(key.data)>(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;
index 7462df61ab9a8cc061b738eae6c62a3bbba15be2..92eceb48f2a4aa8baaafe857cffb5e640d85bab3 100644 (file)
@@ -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);
index 6986eff7188d956ea8265ce791a02ae0d0d3d6ed..3faaa5ece0bef66bbccadfb90cc5d2fdee68d61d 100644 (file)
@@ -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
 }
 
index a9c5b5970b69475a3f8683236b030959b69e5a00..2c41905473787c75975c5c3a72c5850f19f85da6 100644 (file)
@@ -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);
index bf5964bea50345048a3dcd31b24e2eddaa1114ee..0ba96ed0d22c65038390ed2e63f503559bc263a9 100644 (file)
@@ -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 */
index bac54353c78ff9f6ac5be0270b94a9883a825d31..180d3fb61333d569da5820dbe9db8eccc1250341 100644 (file)
@@ -48,7 +48,7 @@ AnyP::UriScheme::Init()
     }
 }
 
-const AnyP::ProtocolType
+AnyP::ProtocolType
 AnyP::UriScheme::FindProtocolType(const SBuf &scheme)
 {
     if (scheme.isEmpty())
index 049a1ad89b9f7cacb4939efb49cf8db09352ffc4..35779c4c5454db22c5080d50a5611bf6669e4ff4 100644 (file)
@@ -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
index 1ffc3305be5df2ac975b0adf409619bd9a69aa10..388fe64b7f80be442e4e1fbf6d8a268eeeea1821 100644 (file)
@@ -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. */
index e4b5bc215a347f1e20b9252be727cd420dadb205..6e13fe47c3880e5cc5e1656e4c4a761f68e75752 100644 (file)
@@ -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]);
index 141535d15332a6fcad728e7a66dfe728b2d96353..4adab3198816326d958fd36255c94508b25b34f4 100644 (file)
@@ -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::Digest::UserRequest *>(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.");
index a018a34f93e75650c50377fb6a3f66620ec2eccb..a86084b780c964ab08a88a87ffd49e70003f7671 100644 (file)
@@ -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.
index 0ca9c2052f8fdc42ddda7a25342e9da843f5f11b..e37afca158e0d5c27593465ea7857a76fd97d032 100644 (file)
@@ -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();
index f35442fc65892be6d42c6308d9e6c2e6dde33787..3965e1940378c420d452399adc7be120510bfa6f 100644 (file)
@@ -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:
index b77d07121cccfc07d0ce286177588bdd03d92faf..b81874930e207addcacf5c3b313700f89ed2b340 100644 (file)
@@ -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) {
index 6ca26d77bf80fb2371e4c66b899f282b54cb938d..534b61a22177290c411c1113a522b1d057ed62e1 100644 (file)
@@ -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");
index 83681e809d73feff39176f5f91c789ec65cb886b..08ebb59a142f80d4e5699d94cba75bb69f00e4b3 100644 (file)
@@ -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.
index 7eec39d9da2600d8295923c74efb8846d8e155bf..8c77d13033b22415f74f60deb5670df31bce9a7c 100644 (file)
@@ -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();
index e6dd22eac24e0edb550fa5ec117f40c2ccbdcd2e..7a33cd4281bc6b59e64d27ee8578e271ac3f76de 100644 (file)
@@ -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:
index 34e859daa801407d79bb7ac59f55f3358896dd8e..3738c82525230cc43d801eb96b5c76adfb67b66b 100644 (file)
@@ -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();
index 5f19cd143e5400498cb8ecee155bd6abe9a3f224..bb94c8a08cb11a7e9ffd98c4842fe4a047d36800 100644 (file)
@@ -10,6 +10,8 @@
 #include "auth/toUtf.h"
 #include "sbuf/SBuf.h"
 
+#include <limits>
+
 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<unsigned char>::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<char>(u & 0x3f) | 0x80;
             u >>= 6;
-        // fall through
+        /* [[fallthrough]] */
         case 2:
             sequence[1] = static_cast<char>(u & 0x3f) | 0x80;
             u >>= 6;
-        // fall through
+        /* [[fallthrough]] */
         case 1:
             sequence[0] = static_cast<char>(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;
index 1d7950c61d4bcb96428315a9a9f6ec82c92f872d..5808631fc8e10455b1ae917321da81023a3932ab 100644 (file)
@@ -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<std::chrono::milliseconds>().count();
 }
index 0361195ddfa8d5b63f475ef75dc7824c24a49959..b9f8705029416e8c2d57ecde2d1c393b34161c43 100644 (file)
@@ -10,6 +10,7 @@
 
 #include "squid.h"
 #include "CachePeer.h"
+#include "carp.h"
 #include "HttpRequest.h"
 #include "mgr/Registration.h"
 #include "neighbors.h"
index 6ef1cc6fc34743d8f5744d04719bc9f0886cffc6..9c2be617de60a77f4411ba5483d9ac262f3ae7a6 100644 (file)
@@ -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
index 8e379521f71fef680e9fe6c1d4928498b9db9684..710441afaf0e58dd5148a7d3a7214ee007de2a3a 100644 (file)
@@ -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.
index a59ec05fa80254605eaa94545b36a6d697462053..483a05f03846851217e8f0d5044aa3fedcf86684 100644 (file)
@@ -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;
         }
     }
 
index 7da4c82925c61cd9b7ab07e042925e5885f063d4..2bd01b98c51af153beeb64da0556783fb151c083 100644 (file)
@@ -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;
 
index 80da334420bd462d9dc32b1a999e0c55c606236b..b6b9133bf3afdbab36b35f1abb335ef00df83afb 100644 (file)
@@ -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);
index 5b962e0821e43592324ac86d69b2925d2fa6a525..f3f62a941bc6350effe60966a217d99c31b1acb0 100644 (file)
@@ -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);
         }
index e80dd9d6208305cf1a0383490214da6d588b1c72..67d913df6eda098d20331d0d608dac453e946a20 100644 (file)
@@ -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 */
 
index 1fe241f9dbb04ba271408decc3a8c3f09cc4069c..866d78db9c188c8ffc702e4962999ac5a1074209 100644 (file)
@@ -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()
 {
index 98f4d6975c571b058fa65c8793e42ee17b392d58..807e5673487fa108753a572bf98a863b580bbeb8 100644 (file)
@@ -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.");
index 33d6dbfdd145f635ce9d7f0823e330372731e5a8..2f2e2cf68305d46a78da4abc4cdce202e5962634 100644 (file)
@@ -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;
 }
index 34bfc2e4908631930784281781c7b68ca7eb613e..0c5e98d8f9b7e1b5f362a13892ff61ca17f32a26 100644 (file)
@@ -98,7 +98,7 @@ Http::Tunneler::start()
 }
 
 void
-Http::Tunneler::handleConnectionClosure(const CommCloseCbParams &params)
+Http::Tunneler::handleConnectionClosure(const CommCloseCbParams &)
 {
     closer = nullptr;
     bailWith(new ErrorState(ERR_CONNECT_FAIL, Http::scBadGateway, request.getRaw(), al));
index dba7c60e9cabef24ba74988ec6268750242bc934..05122a4e29ec1ac77274fb6daf46284b2e614675 100644 (file)
@@ -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 &params)
 {
     Security::SessionSendGoodbye(fd_table[params.fd].ssl);
 }
 
-void
+static void
 comm_close_complete(const FdeCbParams &params)
 {
     fde *F = &fd_table[params.fd];
index b48f88128af73e7429d2d23fbefab595ff9e3237..fca6e8d58039dc39ee32c2f4679e95ce5092ed91 100644 (file)
@@ -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
index 1306527f5664c85f8b30dee01f393ac283bf0c96..86fe2e709a9778d2db999fc5c39c10b7968cd7c8 100644 (file)
@@ -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;
index cdb34cf201f048cc41ed8da7df05d56411d18c9b..03431f21bbdbf11916c34d4e196a966270741c9d 100644 (file)
@@ -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"
index 2136bc8257a9d9bae083ba7f578efb5170433d9c..8dc566cdafb919b5b0e52689204abc58a43fd6ee 100644 (file)
@@ -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)
index e4610fae1a79d39352ba381f41b0934f8e79995a..b29048ecbffc04d6f4b8a83004b2e69bb46c165b 100644 (file)
@@ -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());
index 41a6f86946470041dd67061d267a68336a8256c1..3329ca2f71a3f3e70a0eee6fa7c64ad4d1169c75 100644 (file)
@@ -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;
     }
index 3aa2ef94cc7d96e03bcba4c432470cfd1464c945..c67ac79c7000032c4613ed7bddc500a55e2517de 100644 (file)
@@ -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;
index 0348ef75869750f73815e3cd1f53f034c6ffa981..a1ebbee310e56be8edc45ee9447118141f43d2e5 100644 (file)
@@ -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;
index ce9b380d3e1299823b148651975d540b45bc7ec2..bccd67a1a5ff7e4b5e8e22497038362955e9c03b 100644 (file)
@@ -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);
index 2b9ba0a2e68026f4d95814b5f02b711ac3c1ed99..6c14c8c3a05bbc68a8c522d4ea800842b2b6c0c4 100644 (file)
@@ -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);
 
index d76cef102b9bef3ca551e6e9a3dee91a9f8748fd..2960688e9f9579c8ad928f30e458e71e2d9f7c12 100644 (file)
@@ -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;
 
index dd9b6b3931437e0d4585aa61b5d4deecf9c4e11e..d268b8c6605ce5a2f8919afc3f713f6dbfbd67a0 100644 (file)
@@ -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 */
 
index 94261c18e77f0581617ce638651e125fdfcad88b..54f7d57c097114ec0366223553e081df7ca7404c 100644 (file)
@@ -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<size_t>(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;
index cae7231743f1c8ccd6ef5cf82a50dc263b066bc4..fc0f7afe11cf5ac4f0665a9916751f3472b94322 100644 (file)
@@ -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"
index 2d350c3751a706464cd68bfeb705b8fa4675f055..0a062cc35146f4374e5d2f8d9738262536528eb4 100644 (file)
@@ -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();
index e1a98b471549ff8c9c5057f8fae87bec2ca34e28..12d7960d77dcf45ca2976b8aaede4302f9be6c35 100644 (file)
@@ -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<Stats> &);
index aeb06ba2e3eb8518c430d9bdb3915405a02cd627..a7c661bf0a967b3b31e7b420cb5b59614d422c67 100644 (file)
@@ -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<const unsigned int>(slotLimit)) {
-            const int usedSlots = slotLimit - static_cast<const int>(slotsFree);
+        if (slotsFree <= static_cast<unsigned int>(slotLimit)) {
+            const int usedSlots = slotLimit - static_cast<int>(slotsFree);
             storeAppendPrintf(&e, "Used slots:      %9d %.2f%%\n",
                               usedSlots, (100.0 * usedSlots / slotLimit));
         }
index f1cfb2f77aad74eb77a230ccc33a31f6c4345edd..a592984a5b4722a82ae1849dafa7d562d6b96c8c 100644 (file)
@@ -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 */
 
index e01749b3049a120be2ca4b2c7650ba6deca1f800..ccb77b2ac3374b4e6af36b3fa650e478c53a2ab4 100644 (file)
@@ -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
 }
 
index 7a2aace075b25b800d33e73dc899b62f5b74f347..d955761164214aa1f0d2b7ead2c5a47957f1af5d 100644 (file)
@@ -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
 }
 
index a635202a4d4a7dad222b41bdde870af576c366b4..4a7c3daf63462ae68941c1bc5a2e60f407a31827 100644 (file)
@@ -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<ConnStateData, ConnStateData::ServerConnectionContext> MyDialer;
         AsyncCall::Pointer call = asyncCall(11, 3, "ConnStateData::noteTakeServerConnectionControl",
                                             MyDialer(request->clientConnectionManager,
index 348a1bb821d842c28e514608cbcb6aca583ca6bf..bbd0bc4119356e81ede138db071e1466f5e9624a 100644 (file)
@@ -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) :
index 3a47ff552c7c97915bfe4cbd9e041abf409e0772..e37bef99d5741e93204ce8442cffbef7093c69b3 100644 (file)
@@ -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;       ///<header with field values defined as #(values) in HTTP/1.1
-    bool request;    ///<header is a request header
-    bool reply;      ///<header is a reply header
-    bool hopbyhop;   ///<header is hop by hop
-    bool denied304;  ///<header is not to be updated on receiving a 304 in cache revalidation (see HttpReply.cc)
+    bool list = false;; ///< header with field values defined as #(values) in HTTP/1.1
+    bool request = false; ///< header is a request header
+    bool reply = false; ///< header is a reply header
+    bool hopbyhop = false; ///< header is hop by hop
+    bool denied304 = false; ///< header is not to be updated on receiving a 304 in cache revalidation (see HttpReply.cc)
 };
 
 /** Class for looking up registered header definitions
index edd9b8efad3d9a1e462332893fad468469530100..123103479d1ff2c998dea8215bbd35049c55ebfb 100644 (file)
@@ -144,7 +144,7 @@ HttpHeaderHashTable::HttpHeaderHash (const char *str, size_t len)
     {
     default:
         hval += asso_values[static_cast<unsigned char>(str[8])];
-    /*FALLTHROUGH*/
+    /* [[fallthrough]] */
     case 8:
     case 7:
     case 6:
index 6e90404ba855a9a08d8d15164a576456647b7300..96213079d21c7738bb6b90f601f95c44eb715846 100644 (file)
@@ -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();
index 150eea69742e9b1fc724925e0f10aa1533a26107..0650dd2c1a4334a2b58cc752f1f8cac4fddac883 100644 (file)
@@ -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.
index d478f771f89a4b0fdad6e1dd487e3df32dbc5534..403cc4e1f66209c0f1d485d572eb4231593271b7 100644 (file)
@@ -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
 }
 
index ca5c64f86303e10edf0c41d34349df6eb78f0d0a..6a369b31443ae5550d3c9a0614a26bb120068e7d 100644 (file)
@@ -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;
 }
index 71c0ddcba4add447247ad67fa201554c92b41a59..49d3885f4de5b39aca3270e324eb4d82aa13acaf 100644 (file)
@@ -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;
index 3f3088e7f9dbbf2c5a2d81379c82ed735a9c4608..77a0ec45c2db00956f7ee9f125d3f4272b72c7f3 100644 (file)
@@ -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)
 {
index 48966e1406f87833d09ef8960e4f4e97f99aaa9a..d8d31560cdf790ed963fc8f5eed31f7b5ef704ba 100644 (file)
@@ -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<std::make_unsigned<decltype(res)>::type>(res) < sizeof(key));
+    assert(static_cast<unsigned int>(res) < sizeof(key));
 
     if (!ident_hash) {
         Init();
index 8eddf19e89c251031e7c60b82ce1aab92f97e948..8d51e30829abf38f9732bbd389259cc7b7aba820 100644 (file)
@@ -9,6 +9,7 @@
 /* DEBUG: section 21    Integer functions */
 
 #include "squid.h"
+#include "int.h"
 
 #include <cmath>
 
index b2803d6803ed1fcf7578921777f372a5a6608dca..6c9d837e28e891b26e30bfda5f6090d60756ff77 100644 (file)
@@ -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"
index 2afe0da556a20dcd991f85df6f29e7e79dbfe912..6611ee179cdee6d0e4829e8e0e6d6f68ced726aa 100644 (file)
@@ -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
 
index 611f8c83def420cf6553d9dcf6603124ea7a86c9..b1c67a5c47047887dc82b39dbd4d32a54c63730f 100644 (file)
@@ -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
index ce8eb3ebdb57d108bf8b7d8072e9262269d72eac..aaafef1f63bb2476adc54eacc1d61aa61f067658 100644 (file)
 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;
 
index 961358b8e2aa24031211f90e39675c70603d7b92..95f95bc819068d0ac2c161bf6989b7df2fd83a7e 100644 (file)
@@ -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"
index 29bb7bd1c4e1ef59fdf782cf418b6de18574923c..4576b761c54948ff5bc0d2b55fc2fa4ec4049113 100644 (file)
@@ -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
 }
 
index 79ed37e8907115a3c328f5b61371d64998924f25..b0047433564bf085d660343b01e37f72ca06995b 100644 (file)
@@ -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 */
 
index 0155e558b63c656c3924123a2b808679f70d607b..aedad0e1acc43924092aaac76342d85ef1c77e4b 100644 (file)
@@ -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);
index 7e79943876ae0c39b882f71fe22b78d94e30bb87..6ff049c68a4f13b73f58d2e169c177bbee15c99a 100644 (file)
@@ -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", ",");
index 1602c0570491e8b38ab1c00709679eac1c8c45cd..8a2cb80750c749c29e19d2559a57a44efbf48b81 100644 (file)
@@ -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);
+}
+
index b71af6dc852a7e9f97f627433312ad318a55d0d7..c7aaee55ead970a58b5ac32475bbb32ba8713b76 100644 (file)
 #ifndef SQUID_MIME_HEADER_H_
 #define SQUID_MIME_HEADER_H_
 
+#include "sbuf/forward.h"
+
+#include <cstddef>
+
 /**
  * Scan for the end of mime header block.
  *
  */
 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
index 488d1a154d0cf60a78d9d04242f1077de4c74d77..04e5803641588d1e65d210bbe20c579628f3fe78 100644 (file)
@@ -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 : "<none>") << ", lookup: " << lookup_t_str[lookup]  );
+#else
+    (void)request;
+    (void)p;
+    (void)lookup;
 #endif
 }
 
index 4ad35f09f1af8525694c5b7683367b2cfae0817b..bcf2a36f48c9eff2697d7532109fe67d3e334049 100644 (file)
@@ -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);
 
index 6ea75ed56af74a9f03796b64ba6fe4f35b408908..d1251858aaa861363be3e99cdeb3ebf76b3707ea 100644 (file)
@@ -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 */
 
index 97a8e9f2f17c004086305ede2d06e65fd78dbd7a..a4fe32bd6079fdf7ecb8eaf71364e84c2e1acef0 100644 (file)
@@ -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<std::make_unsigned<decltype(maxCount)>::type>(maxCount);
+    return maxCount >= 0 && foundPaths < static_cast<size_t>(maxCount);
 }
 
 void
index c6d351c47d30fc54cd2201418dddf6d71ac1964e..6713a99e00d722de5d356dbb1b6fb8b7d0f4b6fe 100644 (file)
@@ -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"
index 9cd935e52cdb6334b4a8352eb1eabcb89e552fe3..ade4cb8a293fe0fee343c5ad29a844cddc2c7a37 100644 (file)
@@ -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"
index bf74f4a98684580a633ad05d544758fefc3bf409..49e8694355ea0fea0390575f52560720671ed5d2 100644 (file)
@@ -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"
index 964ae6b96fa5dee026b6c90cefca5a6fc9b5eeab..aef71707913e0177a5d42854e6309a19980e962c 100644 (file)
@@ -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;
index eeb0ac80205a7900d30fcf388301fd8cd82a911c..1f0e02b41b4c8d7d25dbff58dc24843325151859 100755 (executable)
@@ -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
index 8aa54886179a25c5b794f961db77950bc7e750d6..0f64f67d17662bc57f095860e70dda5e5ee78790 100644 (file)
@@ -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)";
index bc30a7b3566e5687711b9b7d17810ff8f6074f13..67c31dca9e5e83f383a3989a43e2d2d445dac44e 100644 (file)
@@ -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");
index b68716384702d6ca9be074f4d00e4227dd6790bb..56deeb8693d563a79e6c5c125aa416ae6fbb4a31 100644 (file)
@@ -86,6 +86,8 @@ Security::NegotiationHistory::retrieveNegotiatedInfo(const Security::SessionPoin
                " SSL version " << version_ <<
                " negotiated cipher " << cipherName());
     }
+#else
+    (void)session;
 #endif
 }
 
index 6d51b7fec61ed35d6eee5fd01c8f154361895496..418502ec56ce778594b4e2e52a3887485ab002cb 100644 (file)
@@ -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<Security::PeerConnector> peerConnector_; ///< The Security::PeerConnector object
 };
index 819dd1fa9b082705eaf9eb8710228c5f6f46b592..fb8e00b1ff2095b2dc6d82d64450ee063aeb91a0 100644 (file)
@@ -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.
index cf1d4ba744d1598efdda1722f34de119b18ceabd..648f9f2590ee881c2ab4143eb9bd6402dd376bf1 100644 (file)
@@ -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
 }
 
index 709617c1f8df2175f1992cd4836f4e96794a6f86..2613c279f2c2f4b3653c7e427a7b58b519e10980 100644 (file)
@@ -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<const unsigned char*>(staticContextSessionId.rawContent()), staticContextSessionId.length());
+#else
+    (void)ctx;
 #endif
 }
 
index 052d6cb148256d6675e8735f7d6d713fa34e666c..e3d8d7f6bb201477b293bb725ea9426c216c62e6 100644 (file)
@@ -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
index 7be0b3942c241b9324129d3abcacdb13085cdf86..455a7b6c2b4e4adeecc7c3c289c9ccba013ffbd4 100644 (file)
@@ -24,8 +24,6 @@
 #include <sys/file.h>
 #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)
index 0fb699b5aa505618dd8b1929bfbb242fc57951da..413a200d49aaf1c1bac80ad3fdc18dcecffac2be 100644 (file)
@@ -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 <cstring>
@@ -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(&current_time);
+    gettimeofday(&currentTime);
 #else
-    gettimeofday(&current_time, NULL);
+    gettimeofday(&currentTime, nullptr);
 #endif
-    return current_time.tv_sec;
+    return currentTime.tv_sec;
 }
 
 /**
index f7023e4bbed23a29d27f1d4895f85716bb64ffc0..53e1cc4fa329842f39dea9ef1d91a825f7935087 100644 (file)
@@ -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
 }
index d7ac4fd619fcadc5ed351a79ce02fd5ce0f3d911..a491eec9660f3cb4bf121643e754fbd58a1bea83 100644 (file)
@@ -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"
index 884fb35e1e81c2920d9484fa2b956304da836a29..b8a368278a6bc2e8ddbe3bd2de13ce731a78ab08 100644 (file)
@@ -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)
 {
index 778262d03fbc0c000294ce17c0e8415708823223..73454773528937ae9575cb972ed95e7726d56187 100644 (file)
@@ -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);
index 38b70ac087f1f1b81d456975865b2f2ba96a9017..579a3c30736cfd22d2cffb6fa104fd4301a40961 100644 (file)
@@ -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
index 67eb9e13287e0db929028a6ac991cfcae4bd36f6..39d032810b1ccd70d42dfb76436ab6f971fb7fb4 100644 (file)
 #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)
 {
index cc36f4306f091fcea509d6f69e5d54bbfe5bfab2..5bf35648ea19ccce99e4fbbf7005775e5a2d64e5 100644 (file)
@@ -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
 }
index d24f0035f911d6f5217dac8b9c199bbef05537a1..cf9c74125d753b72d2a6ad4c6af5367a29ffaacc 100644 (file)
@@ -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)
index 48fab388b7e8dd07534c5e660f300a51cf9ce8be..33f12513844500f068e2308796ebc0306cb33215 100644 (file)
@@ -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<CertItem> certs;
 
index d17e660f2cd16379342698809d1acd444fa7114d..70c85af923b7df59bf3ab7c0a300f80607f53222 100644 (file)
@@ -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<CertItem> const &, std::string const & name);
index c50e6b1a335831d5744edeb7b66a3fa9b6f9b964..958cdbe66f742e4d60c4e7fe8b59ad08ad689668 100644 (file)
@@ -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<submitData *>(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;
index 3ec51fdfad5476814b6ff1b4090aba53bc2119bd..e33fad6adfcbae642cf78da3a1143f18ae330d5c 100644 (file)
@@ -61,7 +61,7 @@ std::vector<const char *> 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<SBuf *>(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<SBuf *>(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<SBuf *>(BIO_get_data(bio));
     switch (cmd) {
     case BIO_CTRL_RESET:
index 26633b1a123155ba1db35910e992a325520f227e..497b9734e97f2e930a6a23a2b0e20e88c845a420 100644 (file)
@@ -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
 }
 
index 03c2fc76803fbc5bb1394b1eb6bdd949453a0429..a0ae0e72e875b8ac71c4a2f2a12cb53cc48896f5 100644 (file)
@@ -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
index 1579e80e28df10eeee1abbde78ec3f21cdcaa448..68baed5410c6d62afce0b6874e8270e8440be947 100644 (file)
@@ -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)
index f3ec29b933023e499d8144199fac98ba84a72c02..abc7e1be9287c7118005fefe68ad042f8751f5df 100644 (file)
@@ -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 */
index 01d9aee59f99300b69071d382e713fda598be2a1..eb523435d71ff39c5b43f4cba9ce6910dd518112 100644 (file)
@@ -28,7 +28,6 @@ SBufFindTest::SBufFindTest():
     maxHayLength(40),
     thePos(0),
     thePlacement(placeEof),
-    theStringPos(0),
     theBareNeedlePos(0),
     theFindString(0),
     theFindSBuf(0),
index 63f9b1195b18981b12fb7bc53d6832d0a61f010d..b531a2d944e2df95c562ab0f6f4349e1da6e5a9a 100644 (file)
@@ -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
 
index b6a4bd6886cbeeadc1986d1a017735eeb3422916..fdef57fb82dd471c0ae92e7352ee39ad6f3b8795 100644 (file)
@@ -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
 
index 0bae97903faf8ec27c8423b7edc53b92346d791f..7b58589de59fc480e3d8b3314b85f766efbaee6b 100644 (file)
@@ -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)
index d1bcbf03ad7c80d3f53b5e018060cd743fa3d034..005449d6d79ed80d4ddadb0e1eeaf1943e1b99a3 100644 (file)
@@ -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)
index c6296d9c71c4b90e62bfad23662057cc7dc20838..099b8be8708692d5006395ce1a623f378649dd6f 100644 (file)
@@ -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)
index 6a39a8bd498301251f11d39369f4ef67cf12d670..f0692bfef77b3c84a1b45ab0985a91c218801b41 100644 (file)
@@ -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
index adca4cb5649efbb70ea3f11ebdbb49c7c0062ed1..c9baed93cc1c0d4081dea31bcc755958cf906d2d 100644 (file)
@@ -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)
 
index 027ab9436924a8f6f28a7943bb90932d56d28be0..e37899488dd718f0b5bb8e8109f44aa3e99b1725 100644 (file)
 
 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
 
index e4f98670bd3b26306b39d36c182ac57459626833..8aa82deb724f339ff28007a15b95e6c79e40e9f8 100644 (file)
@@ -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
 
index 90d744ced1f5362641b05f456fb9deb433ee4481..87ddd1345c3accb1758c2ed8d0798f8b088bca91 100644 (file)
@@ -10,6 +10,7 @@
 
 #include "squid.h"
 #include "acl/Acl.h"
+#include "acl/Gadgets.h"
 #include "ConfigParser.h"
 #include "wordlist.h"
 
 
 #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
 
index ed5e5d9b4a165db5e64ee14333e059be303f38e8..e112faa29f0c68525fe61b59575e75cbab6bf79c 100644 (file)
@@ -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";
index 06c7b283976810835d8f75c9fd912545744cf0bd..3f1a9d7717403f625566cd2d9d4810ce4e518d63 100644 (file)
 #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)
 
index fd180d58e4dc40c077296b29ee3995cdf3561ff6..bf979d8627d4a415ff48601dc08f4e337d5e9f45 100644 (file)
@@ -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)
index a80732edfc677218f0874a64fea92642ef8f349e..4cc9abdc28de8078e1c512455d849a82c010276e 100644 (file)
@@ -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
index d2b15eb45661000dffdaaa2b3a969793a4c36e3b..607e4e88190fa19d4d4db76783378f59ddb41fc8 100644 (file)
@@ -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 <ostream>
 
-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)
 
index db5d8bfe3f102d9bf2925dcaf11591778c14ec2f..3ce8119ce666fdaebef9e71018f9d8d84b1fe10c 100644 (file)
@@ -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];
index 8684a3977018265a8f5818cc1eb30916fc7e684b..55e5d1f2778a6e20dad34c958e789a82cb44e7af 100644 (file)
@@ -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)
index 28b00cf96d1055128e0a95227eee60ee0096d942..f4c0d79f16f2310917d753b441ddd813877aa4bc 100644 (file)
@@ -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)
 
index 04d1b9617bb63fcef022bc5644a6520502595dc8..12ad932fc9a5e57f3e20f1d9d5871372db70f889 100644 (file)
@@ -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
 
index 0d0f44d661a6bc938a82489305d3101072a3fab1..15b7457ca54f949c50b668e83fd16249f3a3d0f9 100644 (file)
@@ -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
 
index 106b672a18ecd087ffbda2479e29df0a9f447452..7e25327f89e36b1acd6550715bbf80553c0d104e 100644 (file)
 #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);
 
index 8cf94e018c7e9534cedce664a86c588ec32c8982..575d5eaa44a9e9a06b6fcd3ba7dc22ecac8a1e0b 100644 (file)
@@ -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())
 
index 71eae6432f991c1bf6bcd2d58f2319d422ef86c9..3baa31e43865a9eaf11d8e25db1d9ea9ec6334c9 100644 (file)
 #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
index 0dd762a6109434774265cc788cf7a26105f7a78b..0a1c5a8131ad3af3acf076a5c133d58a37c474ba 100644 (file)
@@ -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)
 
index cca90529be953fd8e3cf78c32ade2329ae4cc3d3..f25e082eee5310fbcf28704afa3e37802e8dd362 100644 (file)
@@ -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);
index d9dc9af7d5ad0eaa3213a81bdcea4aaf8fabdc11..cbc9dfa8b0617dc20b4af6f9f165ea37ae94696f 100644 (file)
 #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)
 
index 5510510d624c7259edf91e35539e24c8335ccbc1..b798f6a2593e3eeff3fb8278667fd9867df1a95c 100644 (file)
@@ -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
 
index fa9f3de9fa89c2844e8eabca886a3bc47e4a12f7..3d98c32fc6671510efaa3cfc0a307485c283fa3d 100644 (file)
@@ -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;
index cf1c2d2fc39a6e375d9e7a52c44d4c5b79225d81..b73f0ec59af46a9ee0ab47f2b36fffa4dd4cfe84 100644 (file)
@@ -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 &params, 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]")
 
index 4b0769b771ba42472ae30942490b112b64660a1c..f5f977d2bd568d782eabadda786e0d8ca50ab349 100644 (file)
@@ -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())
 
index f83c70754279644a5cf8ce68c04b4d73478142a8..c028dfafab7c16f96417c17a7b6811f1e40876bf 100644 (file)
@@ -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
 
index f8ba3bcf507500a3b19fd6b4ce7c99b63cf376e9..50c20ea597e45320bb9f3e72e4d973309f25f6b1 100644 (file)
@@ -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
index b7fb53bbaab4840603f6c64e8d23ed1112ef863a..5feb3729b87557d49619201227e1a4fb89c7ef36 100644 (file)
@@ -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}
index 78ba3de861308da9c04e004a83aefe5b553ccd7e..efabcfbdc03098f1a017d2c2daf191f0de2754d0 100644 (file)
 //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
 
index 3fb4304bc84ca46bdf8b03c80abfa90873697aa6..b4a0b16813a6b4452aebcdadff92a4fa6b881f43 100644 (file)
@@ -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
index 0581d41ea73439906fc81eb5f79b116542e6da62..d8aeac088cfb17921fb072da961594f2a35e42ca 100644 (file)
@@ -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);
index 5479f964cdf5666878d7ee7a3171c0f588f5d561..cb2f292cdaf318c3fec01dca8768bc64053ff36c 100644 (file)
 
 // 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 &params) 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<int>& 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<int>&) STUB
+void Mgr::IntParam::pack(Ipc::TypedMsgHdr&) const STUB
+void Mgr::IntParam::unpackValue(const Ipc::TypedMsgHdr&) STUB
 static std::vector<int> static_vector;
 const std::vector<int>& 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<Mgr::Request*>(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)
 
index 1ee1889ca53eadc18dc26626cb5cfc622d823de2..6e89a4a6fe8e47d2c8636b447455d888232dca63 100644 (file)
@@ -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 {};
index 696ec974615135543c2f0dd670f20d791c7f0de5..4a51d46bff27387b015aeacbcaaadacc12a4037b 100644 (file)
@@ -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<const char *> 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
index 588805f9ecbae8f7ff4eb07042266bbfdcfd2e98..48b11d38703f0d7a4ca247e5ce6a1add228e7d78 100644 (file)
@@ -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
index a539d5078c921d1a8bf1f34efe5e27a714b4d7a0..743f942285ff77c855b8ab2618d480d205400d94 100644 (file)
@@ -7,6 +7,7 @@
  */
 
 #include "squid.h"
+#include "protos.h"
 
 #define STUB_API "stub_main_cc.cc"
 #include "tests/STUB.h"
index 0b38d21eb93d10c6ea7fafcfe85c21db022ae7b5..395e52fd8622e2cef6389d9b15601c87c9359609 100644 (file)
@@ -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)
 
index 5b9bb734839aac7e89b859c512c192c6645240fe..fd340dd718483dc6f58d5c6fe2ed3d5739a26142 100644 (file)
@@ -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)
 
index 88cc3218512519fe97bb60f8f533c7572f841bc6..c7fddee9d896c1846da6cd4931fbbd6deb564445 100644 (file)
 #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)
 
index 6eb70112f3b4eef8479adfc126c998a22913b6a0..81fd81739b6931c7a93e2f3b7ca3cd14d0cda4d3 100644 (file)
 #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<PeerPoolMgr>&) 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
index c1ba35c81d12f14ead6e6aa8286868891316b08c..3fa5f4290f37a5d7f48f9c39ea57f58b4eb841a1 100644 (file)
@@ -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"
index 0d8b3eef9e3497bd946decd6f362119bcb57afc1..5c2f6676591608bf035f7fc25c16896b8fad58ba 100644 (file)
@@ -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)
 
index 673115d7ac8f3b2bfa296a425943e9805c8cee8c..564628733e112df3e61f4def6672bad89e15aa09 100644 (file)
@@ -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<size_t> 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
 
index 2a138748e9b6bafacd5e5ff3dffe8cd8f030372d..a56891d486d5e139169e297a669246f3644197ec 100644 (file)
@@ -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)
 
index 5d35d57873f0eabb57da629c540ae793b468d8c6..e4628895bca476c0a5b2fb8654e8cc05fa034932 100644 (file)
@@ -7,6 +7,7 @@
  */
 
 #include "squid.h"
+#include "store_digest.h"
 
 #define STUB_API "store_digets.cc"
 #include "tests/STUB.h"
index 006fef7692ffec26eee78c5f12ef45ed1b05b3e0..71a51196bb2ea17cae5e5d1b85230084d324be0a 100644 (file)
@@ -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;
index f14fa4330d4336403528c1772409b78938f09a8c..6cd50ac91d873c0fc6c8d9945178fce0f6bfaaf7 100644 (file)
@@ -15,7 +15,7 @@
 #include <cstring>
 
 StoreInfoStats &
-StoreInfoStats::operator +=(const StoreInfoStats &stats) STUB_RETVAL(*this)
+StoreInfoStats::operator +=(const StoreInfoStats &) STUB_RETVAL(*this)
 
 StoreIoStats::StoreIoStats()
 {
index ed59ff5f13a85e0c0101946b55597460757f6bbc..3b8a42116ed92dd1b879149eaa0418a071fda32b 100644 (file)
 
 #include <iostream>
 
-/* 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
 
index 280c97e044ca50098d7edbaa1ea681bc2b33dc6f..36b7a2a7edf69e878ab8428e8864d176620a6d29 100644 (file)
@@ -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_
index 4aad0f5d4b74319c97d44e5eadb386dffab74ff2..53a1ac9ac719ceef20bf76baa179513f4bbe0511 100644 (file)
@@ -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
index ece04553b8b2c7ba92d084c825cba12c832f7db3..6bc571d457d9d4ecfbfd21337f40df3abc870a64 100644 (file)
@@ -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
index 4ab77488c9a1ec9fa47ad10d125c49f5a36b1700..91f1d7fbf9de5283b3b52a21c5adbc78c72dbf1b 100644 (file)
@@ -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
 
index 1924d52d10c0f5d219b50eb834ced6ae60013da3..44039815d79bb1a7946e05ac0c2f03e3751e4674 100644 (file)
@@ -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()
 {
 }
index 362133a2732bddd03e8eaba7ca089aed225dcafa..3105b0b1b1fad49dc1548e55919fc19aed9dc8fc 100644 (file)
@@ -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);
index 598fb0defe38a86d2009d73269e847a992121d8b..83c25f6d45fc9137a64224ec0362495c1eb8c555 100644 (file)
@@ -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) {};
index f8784c0d0dd4a4ff1ae38f1de284d2530280fe43..f99440a928685878246d2cda606a4e071a8cbdf8 100644 (file)
@@ -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;
index 52ef70bc58e9b96e5dee23b73c3ef7a01521e3dc..fa758b2f731e51ba93e9685842d8f35ec2a253e3 100644 (file)
@@ -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
index b301417c54ee3201088552053ca42c24c3822393..a8c3c01226b1c0fa208dfe7338800efa85fb6633 100644 (file)
@@ -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;
 }
index a676caa3d43dd747a18eccd9461e0220d627f52d..595ad784f8ca420c76988a36096dfd193015c93f 100644 (file)
@@ -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;
 }
index 641ab9842b768e4f98416d1cd5cfd43a8c117ba2..cdcafa9ec439c23ae7f72ccf3bb5a9360325930a 100644 (file)
@@ -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
index e88966ad7b7a02c603df75770b32ea1b5a1e6214..77423847f040507b365592b319856a7567f65c76 100644 (file)
@@ -42,7 +42,7 @@ addSwapDir(MySwapDirPointer aStore)
 static bool cbcalled;
 
 static void
-searchCallback(void *cbdata)
+searchCallback(void *)
 {
     cbcalled = true;
 }
index 48c01b0998416e58f131e6d5e8252a9ed56ed3c5..a90f7b535efa0c9b5e9fcc52e9bd1c43fb6ac832 100644 (file)
 #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();
index 04ea2e6c3644be3e7c4667b4e54823e7bd5e3d5a..bcdea420e3db7d8dcafe6fef88a1cd0301b6049a 100644 (file)
@@ -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 */
 }
 
index eb0654403252398f8ff5e289cff2aafc02e2e38b..325f33894c50965ac21e4b61f46c148223f236d9 100644 (file)
@@ -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 (file)
index 0000000..993b703
--- /dev/null
@@ -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_ */
+
index 527269399bdb94a2ab0920eee2b4daa663058d5a..b6563e95aac941659706008e345a566c44b9ee71 100644 (file)
@@ -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 */
index 381217a4286e89b64cd2686c1706a5ab6ff68a3a..15208ad9857d2b5786dd9d57e879fbbe763676ec 100644 (file)
@@ -17,6 +17,7 @@
 #include "event.h"
 #include "fatal.h"
 #include "SquidConfig.h"
+#include "wccp.h"
 
 #define WCCP_PORT 2048
 #define WCCP_REVISION 0
index 06dac9ce9444e8ef6343ddf64e50d77e0b86692a..a304125b96e261ac0b88115e39958a97fc9dbf4b 100644 (file)
@@ -23,6 +23,7 @@
 #include "Parsing.h"
 #include "SquidConfig.h"
 #include "Store.h"
+#include "wccp2.h"
 
 #if HAVE_NETDB_H
 #include <netdb.h>
@@ -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);
 
 /*
index 7b3a7cb9a5e978c916ecf93029f28f9bb353e768..7804a39a6cbf9ad110dc45e6e15f135d76c39ce2 100644 (file)
@@ -20,6 +20,7 @@
 #include "StatCounters.h"
 #include "Store.h"
 #include "tools.h"
+#include "whois.h"
 
 #include <cerrno>
 
index 3e8d8b87361b565e0b98cb7e1c5b9ebec770fa14..a8476492506a677e3f20d2d23f99cc2fdbee4cbd 100644 (file)
@@ -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);
 }
index fecbf834c066aa931b7404ba828e6cc4a3d79a4f..5a627487eca27cc37c00fb23f3ea00f379416f1b 100644 (file)
@@ -16,7 +16,7 @@
 #include <iostream>
 #include <sstream>
 
-void
+static void
 testLowAndHigh()
 {
     mem_hdr aHeader;
@@ -40,7 +40,7 @@ testLowAndHigh()
     assert (!aHeader.hasContigousContentRange(Range<int64_t>(10,101)));
 }
 
-void
+static void
 testSplayOfNodes()
 {
     Splay<mem_node *> aSplay;
@@ -71,7 +71,7 @@ testSplayOfNodes()
     aSplay.destroy();
 }
 
-void
+static void
 testHdrVisit()
 {
     mem_hdr aHeader;
index b26ac43eb7f5a933894fe571533f2b08dac97286..2c9ae8c0c4578435934d07e26065f68fbc4c57e7 100644 (file)
@@ -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
index 091f58c13e9ab62cd4193cda42fc8355e912d112..578ea135a2bd79bc06fdabdd185d592b13757f6d 100644 (file)
@@ -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);
index 1d02fa34bb7732d13b2ca76e8b191778c3c92efa..8cc5ff628287dd184529e1b81eb7010fedc1fb95 100644 (file)
@@ -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:
         {
index cae672525b4fc1506103d536dff8c7c8877e0295..ae293a75aa2b80a4adefd387850554c8dfe031cd 100644 (file)
@@ -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 *&copyDirPath,
+                 struct in_addr &serverHostIp, unsigned short &serverHostPort)
 // paramtr: argc: see ::main().
 //          argv: see ::main().
 // returns: Does terminate the program on errors!
index d6be477a1a0962149f5b8d0c6efd302ecd3bb970..f3e2279ba3a5b6d0898fe55f52f79a05208b2335 100644 (file)
@@ -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.
index 658da8b48176e1b0d4a9b213534ffdd5b9b459ac..4bc7a9f4fe871129053fc6611ac80d228feeb308 100644 (file)
@@ -503,6 +503,8 @@ Transport::MaybeStartTls(const char *hostname)
             return false;
         }
     }
+#else
+    (void)hostname;
 #endif
     return true;
 }
index 3b323c0558d0ad50243aee5cce7eacf4d596e727..2aac75a667070bf84f2abce1075264e1dd9b7182 100644 (file)
@@ -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);