]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
fix timeout bug when expecting 0 ICP replies
authorwessels <>
Thu, 5 Mar 1998 15:28:01 +0000 (15:28 +0000)
committerwessels <>
Thu, 5 Mar 1998 15:28:01 +0000 (15:28 +0000)
removed fatal_dump() calls

src/peer_select.cc

index 294bd1715f9f544c5f6d1ff63c36c17f0902be15..ce23cf03ccfe32d085bb76cb4367d50fa7906157 100644 (file)
@@ -1,6 +1,6 @@
 
 /*
- * $Id: peer_select.cc,v 1.38 1998/02/24 21:17:07 wessels Exp $
+ * $Id: peer_select.cc,v 1.39 1998/03/05 08:28:01 wessels Exp $
  *
  * DEBUG: section 44    Peer Selection Algorithm
  * AUTHOR: Duane Wessels
@@ -92,8 +92,7 @@ peerSelectIcpPing(request_t * request, int direct, StoreEntry * entry)
     debug(44, 3) ("peerSelectIcpPing: %s\n", storeUrl(entry));
     if (entry->ping_status != PING_NONE)
        return 0;
-    if (direct == DIRECT_YES)
-       fatal_dump("direct == DIRECT_YES");
+    assert(direct != DIRECT_YES);
     if (!EBIT_TEST(entry->flag, HIERARCHICAL) && direct != DIRECT_NO)
        return 0;
     if (Config.onoff.single_parent_bypass && !Config.onoff.source_ping)
@@ -305,15 +304,16 @@ peerSelectFoo(ps_state * psstate)
        return;
     }
     if (peerSelectIcpPing(request, direct, entry)) {
-       if (entry->ping_status != PING_NONE)
-           fatal_dump("peerSelectFoo: bad ping_status");
+       assert(entry->ping_status == PING_NONE);
        debug(44, 3) ("peerSelect: Doing ICP pings\n");
        psstate->icp.n_sent = neighborsUdpPing(request,
            entry,
            peerHandleIcpReply,
            psstate,
            &psstate->icp.n_replies_expected);
-       if (psstate->icp.n_sent > 0) {
+       if (psstate->icp.n_sent == 0)
+           debug(44, 0) ("WARNING: neighborsUdpPing returned 0\n");
+       if (psstate->icp.n_replies_expected > 0) {
            entry->ping_status = PING_WAITING;
            eventAdd("peerPingTimeout",
                peerPingTimeout,
@@ -321,7 +321,6 @@ peerSelectFoo(ps_state * psstate)
                Config.neighborTimeout);
            return;
        }
-       debug_trap("peerSelect: neighborsUdpPing returned 0");
     }
     debug(44, 3) ("peerSelectFoo: After peerSelectIcpPing.\n");
     if (peerCheckNetdbDirect(psstate)) {