blob: 5a62e1584dd4d954fcbed56f47ada0263a81efe6 [file] [log] [blame]
From d8950ad273d79ec516468289adbd427e681dbc66 Mon Sep 17 00:00:00 2001
From: Mingli Yu <mingli.yu@windriver.com>
Date: Mon, 30 Jul 2018 01:22:56 -0700
Subject: [PATCH] src/tcp.c: increase the size of szHname
Increase the size of szHname to fix below
error:
| ../../git/src/tcp.c: In function 'relpTcpSetRemHost':
| ../../git/src/tcp.c:352:57: error: '%s' directive output may be truncated writing up to 1024 bytes into a region of size 1011 [-Werror=format-truncation=]
| snprintf((char*)szHname, NI_MAXHOST, "[MALICIOUS:IP=%s]", szIP);
| ^~ ~~~~
| In file included from /poky-build/tmp/work/i586-poky-linux/librelp/1.2.16-r0/recipe-sysroot/usr/include/stdio.h:862,
| from ../../git/src/tcp.c:38:
| /poky-build/tmp/work/i586-poky-linux/librelp/1.2.16-r0/recipe-sysroot/usr/include/bits/stdio2.h:64:10: note: '__builtin___snprintf_chk' output between 16 and 1040 bytes into a destination of size 1025
| return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| __bos (__s), __fmt, __va_arg_pack ());
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| cc1: all warnings being treated as errors
| Makefile:536: recipe for target 'librelp_la-tcp.lo' failed
Upstream-Status: Submitted[https://github.com/rsyslog/librelp/pull/118]
Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
---
src/tcp.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/tcp.c b/src/tcp.c
index fb34dc7..2c38b0b 100644
--- a/src/tcp.c
+++ b/src/tcp.c
@@ -319,7 +319,7 @@ relpTcpSetRemHost(relpTcp_t *const pThis, struct sockaddr *pAddr)
relpEngine_t *pEngine;
int error;
unsigned char szIP[NI_MAXHOST] = "";
- unsigned char szHname[NI_MAXHOST] = "";
+ unsigned char szHname[1045] = "";
struct addrinfo hints, *res;
size_t len;
@@ -349,7 +349,7 @@ relpTcpSetRemHost(relpTcp_t *const pThis, struct sockaddr *pAddr)
if(getaddrinfo((char*)szHname, NULL, &hints, &res) == 0) {
freeaddrinfo (res);
/* OK, we know we have evil, so let's indicate this to our caller */
- snprintf((char*)szHname, NI_MAXHOST, "[MALICIOUS:IP=%s]", szIP);
+ snprintf((char*)szHname, sizeof(szHname), "[MALICIOUS:IP=%s]", szIP);
pEngine->dbgprint("Malicious PTR record, IP = \"%s\" HOST = \"%s\"", szIP, szHname);
iRet = RELP_RET_MALICIOUS_HNAME;
}
--
2.17.1