diff options
Diffstat (limited to 'meta-networking/recipes-daemons/iscsi-initiator-utils/files/0001-Fix-i586-build-issues-with-string-length-overflow.patch')
-rw-r--r-- | meta-networking/recipes-daemons/iscsi-initiator-utils/files/0001-Fix-i586-build-issues-with-string-length-overflow.patch | 115 |
1 files changed, 0 insertions, 115 deletions
diff --git a/meta-networking/recipes-daemons/iscsi-initiator-utils/files/0001-Fix-i586-build-issues-with-string-length-overflow.patch b/meta-networking/recipes-daemons/iscsi-initiator-utils/files/0001-Fix-i586-build-issues-with-string-length-overflow.patch deleted file mode 100644 index f945c636f7..0000000000 --- a/meta-networking/recipes-daemons/iscsi-initiator-utils/files/0001-Fix-i586-build-issues-with-string-length-overflow.patch +++ /dev/null @@ -1,115 +0,0 @@ -From 24ce8f62e042e69497e1299212504c356179e15b Mon Sep 17 00:00:00 2001 -From: Lee Duncan <lduncan@suse.com> -Date: Tue, 6 Nov 2018 11:16:06 -0800 -Subject: [PATCH] Fix i586 build issues with string length overflow. - -Gcc7 warns of possible string print overflow, on i586, -when printing password length (via a macro), generating -errors like: - -[ 59s] ^~~~~~~~~~~~~~~~~~~~ -[ 59s] In file included from /usr/include/stdio.h:862:0, -[ 59s] from idbm.h:27, -[ 59s] from context.h:22, -[ 59s] from idbm.c:59: -[ 59s] /usr/include/bits/stdio2.h:64:10: note: -'__builtin___snprintf_chk' output between 2 and 11 bytes into a -destination of size 8 -[ 59s] return __builtin___snprintf_chk (__s, __n, -__USE_FORTIFY_LEVEL - 1, -[ 59s] ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -~~~~~~~~~~ -[ 59s] __bos (__s), __fmt, __va_arg_pack ()); -[ 59s] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -[ 59s] cc1: all warnings being treated as errors -[ 59s] make[1]: *** [<builtin>: idbm.o] Error 1 -[ 59s] make[1]: Leaving directory - -The fix is to limit the size of the string printed, so that no -overflow is possible. - -The print macros in usr/idbm.c were updated, as well, to match -the newer version in libopeniscsiusr/idbm.c, also to help the -i586 build. - -Upstream-Status: Backport[https://github.com/open-iscsi/open-iscsi/commit/24ce8f62e042e69497e1299212504c356179e15b] - -Signed-off-by: Mingli Yu <mingli.yu@windriver.com> ---- - libopeniscsiusr/idbm.c | 2 +- - usr/idbm.c | 11 ++++++----- - 2 files changed, 7 insertions(+), 6 deletions(-) - -diff --git a/libopeniscsiusr/idbm.c b/libopeniscsiusr/idbm.c -index 7724de2..055dd9a 100644 ---- a/libopeniscsiusr/idbm.c -+++ b/libopeniscsiusr/idbm.c -@@ -676,7 +676,7 @@ updated: - if (!passwd_done && !strcmp(#_param, name)) { \ - passwd_done = 1; \ - name = #_param "_length"; \ -- snprintf(passwd_len, 8, "%d", (int)strlen(value)); \ -+ snprintf(passwd_len, 8, "%.7d", (int)strlen(value) & 0xffff); \ - value = passwd_len; \ - goto setup_passwd_len; \ - } -diff --git a/usr/idbm.c b/usr/idbm.c -index a0207e2..89a6c27 100644 ---- a/usr/idbm.c -+++ b/usr/idbm.c -@@ -30,6 +30,7 @@ - #include <fcntl.h> - #include <sys/stat.h> - #include <sys/file.h> -+#include <inttypes.h> - - #include "idbm.h" - #include "idbm_fields.h" -@@ -65,7 +66,7 @@ static struct idbm *db; - #define __recinfo_int(_key, _info, _rec, _name, _show, _n, _mod) do { \ - _info[_n].type = TYPE_INT; \ - strlcpy(_info[_n].name, _key, NAME_MAXVAL); \ -- snprintf(_info[_n].value, VALUE_MAXVAL, "%d", _rec->_name); \ -+ snprintf(_info[_n].value, VALUE_MAXVAL, "%" PRIi32, _rec->_name); \ - _info[_n].data = &_rec->_name; \ - _info[_n].data_len = sizeof(_rec->_name); \ - _info[_n].visible = _show; \ -@@ -76,7 +77,7 @@ static struct idbm *db; - #define __recinfo_uint8(_key, _info, _rec, _name, _show, _n, _mod) do { \ - _info[_n].type = TYPE_UINT8; \ - strlcpy(_info[_n].name, _key, NAME_MAXVAL); \ -- snprintf(_info[_n].value, VALUE_MAXVAL, "%d", _rec->_name); \ -+ snprintf(_info[_n].value, VALUE_MAXVAL, "%" PRIu8, _rec->_name); \ - _info[_n].data = &_rec->_name; \ - _info[_n].data_len = sizeof(_rec->_name); \ - _info[_n].visible = _show; \ -@@ -87,7 +88,7 @@ static struct idbm *db; - #define __recinfo_uint16(_key, _info, _rec, _name, _show, _n, _mod) do { \ - _info[_n].type = TYPE_UINT16; \ - strlcpy(_info[_n].name, _key, NAME_MAXVAL); \ -- snprintf(_info[_n].value, VALUE_MAXVAL, "%d", _rec->_name); \ -+ snprintf(_info[_n].value, VALUE_MAXVAL, "%" PRIu16, _rec->_name); \ - _info[_n].data = &_rec->_name; \ - _info[_n].data_len = sizeof(_rec->_name); \ - _info[_n].visible = _show; \ -@@ -98,7 +99,7 @@ static struct idbm *db; - #define __recinfo_uint32(_key, _info, _rec, _name, _show, _n, _mod) do { \ - _info[_n].type = TYPE_UINT32; \ - strlcpy(_info[_n].name, _key, NAME_MAXVAL); \ -- snprintf(_info[_n].value, VALUE_MAXVAL, "%d", _rec->_name); \ -+ snprintf(_info[_n].value, VALUE_MAXVAL, "%" PRIu32, _rec->_name); \ - _info[_n].data = &_rec->_name; \ - _info[_n].data_len = sizeof(_rec->_name); \ - _info[_n].visible = _show; \ -@@ -1041,7 +1042,7 @@ updated: - if (!passwd_done && !strcmp(#_param, name)) { \ - passwd_done = 1; \ - name = #_param "_length"; \ -- snprintf(passwd_len, 8, "%d", (int)strlen(value)); \ -+ snprintf(passwd_len, 8, "%.7" PRIi32, (int)strlen(value) & 0xffff); \ - value = passwd_len; \ - goto setup_passwd_len; \ - } --- -2.7.4 - |