projects
/
haproxy-2.1.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
c5bed92
)
BUG/MINOR: peers: Do not ignore a protocol error for dictionary entries.
author
Frédéric Lécaille
<flecaille@haproxy.com>
Thu, 12 Nov 2020 18:53:11 +0000
(19:53 +0100)
committer
Christopher Faulet
<cfaulet@haproxy.com>
Fri, 13 Nov 2020 15:51:25 +0000
(16:51 +0100)
If we could not decode the ID of a dictionary entry from a peer update message,
we must inform the remote peer about such an error as this is done for
any other decoding error.
(cherry picked from commit
f9e51beec118f1bbd558ed689fdad35046160529
)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
(cherry picked from commit
cd24d5cfbe58bf2b25a76d077a0923053cbf7838
)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
(cherry picked from commit
c4b0ea55b105ae65d9580e7b915460645f0be2fa
)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
src/peers.c
patch
|
blob
|
history
diff --git
a/src/peers.c
b/src/peers.c
index
fb7f80f
..
c05a96e
100644
(file)
--- a/
src/peers.c
+++ b/
src/peers.c
@@
-1511,8
+1511,9
@@
static int peer_treat_updatemsg(struct appctx *appctx, struct peer *p, int updt,
dc = p->dcache;
if (*msg_cur == end) {
/* Dictionary entry key without value. */
- if (id > dc->max_entries)
- break;
+ if (id > dc->max_entries) {
+ goto malformed_unlock;
+ }
/* IDs sent over the network are numbered from 1. */
de = dc->rx[id - 1].de;
}