Fix weight calculation for socks_proxy. Bug 2694
authorHeiko Schlichting <heiko@fu-berlin.de>
Fri, 19 Feb 2021 11:14:36 +0000 (11:14 +0000)
committerJeremy Harris <jgh146exb@wizmail.org>
Fri, 19 Feb 2021 11:53:16 +0000 (11:53 +0000)
doc/doc-txt/ChangeLog
src/src/transports/smtp_socks.c

index 59fb46ad2900f861bcab27a7cf15d697ba3ab4b8..2c17877abd947b9dab2ae35a68112e27e7f14c9c 100644 (file)
@@ -204,8 +204,8 @@ JH/42 Bug 2693: Harden against a peer which reneges on a 452 "too many
       would result in both lost and duplicate recipients for a message.
 
 JH/43 Bug 2694: Fix weighted distribution of work to multiple spamd servers.
       would result in both lost and duplicate recipients for a message.
 
 JH/43 Bug 2694: Fix weighted distribution of work to multiple spamd servers.
-      Previously the weighting was incorrectly applied.  Found and fixed by
-      Heiko Schlichting.
+      Previously the weighting was incorrectly applied.  Similar fix for socks
+      proxies.  Found and fixed by Heiko Schlichting.
 
 
 Exim version 4.94
 
 
 Exim version 4.94
index 41dc781473236fa489e1dbf2732b0d5a61addaf6..cd8ed3e6d990f47e53b06c35e1666d8623621086 100644 (file)
@@ -190,7 +190,7 @@ for (rnd = random() % weights, i = 0; i < nproxies; i++)
   {
   sd = &proxies[i];
   if (!sd->is_failed && sd->priority == pri)
   {
   sd = &proxies[i];
   if (!sd->is_failed && sd->priority == pri)
-    if ((rnd -= sd->weight) <= 0)
+    if ((rnd -= sd->weight) < 0)
       return i;
   }
 
       return i;
   }