- Add new patches (see https://www.haproxy.org/bugs/bugs-1.8.8.html) - Raise patch-level to 04 Signed-off-by: Christian Lachner <gladiac@gmail.com>
38 lines
1.2 KiB
Diff
38 lines
1.2 KiB
Diff
commit edb4427ab7c070a16cb9a23460f68b3fc3c041bb
|
|
Author: Willy Tarreau <w@1wt.eu>
|
|
Date: Sun May 6 14:50:09 2018 +0200
|
|
|
|
BUG/MINOR: lua: ensure large proxy IDs can be represented
|
|
|
|
In function hlua_fcn_new_proxy() too small a buffer was passed to
|
|
snprintf(), resulting in large proxy or listener IDs to make
|
|
snprintf() fail. It is unlikely to meet this case but let's fix it
|
|
anyway.
|
|
|
|
This fix must be backported to all stable branches where it applies.
|
|
|
|
(cherry picked from commit 29d698040d6bb56b29c036aeba05f0d52d8ce94b)
|
|
Signed-off-by: Willy Tarreau <w@1wt.eu>
|
|
|
|
diff --git a/src/hlua_fcn.c b/src/hlua_fcn.c
|
|
index a8d53d45..1df08f85 100644
|
|
--- a/src/hlua_fcn.c
|
|
+++ b/src/hlua_fcn.c
|
|
@@ -796,7 +796,7 @@ int hlua_fcn_new_proxy(lua_State *L, struct proxy *px)
|
|
struct server *srv;
|
|
struct listener *lst;
|
|
int lid;
|
|
- char buffer[10];
|
|
+ char buffer[17];
|
|
|
|
lua_newtable(L);
|
|
|
|
@@ -836,7 +836,7 @@ int hlua_fcn_new_proxy(lua_State *L, struct proxy *px)
|
|
if (lst->name)
|
|
lua_pushstring(L, lst->name);
|
|
else {
|
|
- snprintf(buffer, 10, "sock-%d", lid);
|
|
+ snprintf(buffer, sizeof(buffer), "sock-%d", lid);
|
|
lid++;
|
|
lua_pushstring(L, buffer);
|
|
}
|