diff options
author | Heiko Schlichting <heiko@fu-berlin.de> | 2021-02-19 11:14:36 +0000 |
---|---|---|
committer | Jeremy Harris <jgh146exb@wizmail.org> | 2021-02-19 11:53:16 +0000 |
commit | 83811e3c1b8189c0a725ec53df699730e7767263 (patch) | |
tree | f1b02fa38f2114120241e4e0545aa461df5e4adc | |
parent | 6296a393aeab9fecc38916dfcbf1c94d54691650 (diff) |
Fix weight calculation for socks_proxy. Bug 2694
-rw-r--r-- | doc/doc-txt/ChangeLog | 4 | ||||
-rw-r--r-- | src/src/transports/smtp_socks.c | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/doc/doc-txt/ChangeLog b/doc/doc-txt/ChangeLog index 59fb46ad2..2c17877ab 100644 --- a/doc/doc-txt/ChangeLog +++ b/doc/doc-txt/ChangeLog @@ -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. - 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 diff --git a/src/src/transports/smtp_socks.c b/src/src/transports/smtp_socks.c index 41dc78147..cd8ed3e6d 100644 --- a/src/src/transports/smtp_socks.c +++ b/src/src/transports/smtp_socks.c @@ -190,7 +190,7 @@ for (rnd = random() % weights, i = 0; i < nproxies; i++) { sd = &proxies[i]; if (!sd->is_failed && sd->priority == pri) - if ((rnd -= sd->weight) <= 0) + if ((rnd -= sd->weight) < 0) return i; } |