Upstream-Status is missing, and this looks like something that should be sent upstream first for review.
Alex On Thu, 5 Aug 2021 at 22:22, Joe Slater <joe.sla...@windriver.com> wrote: > Make cmd in pkg_installLibrary() LARGE_BUFFER_SIZE to avoid > pathname truncation if the install path is longer than about > 150 characters. For default compilation, the U_ASSERT does > not detect buffer overflow. > > Signed-off-by: Joe Slater <joe.sla...@windriver.com> > --- > ...pkgdata-increase-command-buffer-size.patch | 41 +++++++++++++++++++ > meta/recipes-support/icu/icu_69.1.bb | 1 + > 2 files changed, 42 insertions(+) > create mode 100644 > meta/recipes-support/icu/icu/0001-pkgdata-increase-command-buffer-size.patch > > diff --git > a/meta/recipes-support/icu/icu/0001-pkgdata-increase-command-buffer-size.patch > b/meta/recipes-support/icu/icu/0001-pkgdata-increase-command-buffer-size.patch > new file mode 100644 > index 0000000000..14d17f9742 > --- /dev/null > +++ > b/meta/recipes-support/icu/icu/0001-pkgdata-increase-command-buffer-size.patch > @@ -0,0 +1,41 @@ > +From ab6b1acdeed76899f8227c38ab7e7675c7673ff1 Mon Sep 17 00:00:00 2001 > +From: Joe Slater <joe.sla...@windriver.com> > +Date: Thu, 5 Aug 2021 09:23:48 -0700 > +Subject: [oe-core][PATCH 1/1] pkgdata: increase command buffer size > + > +Make cmd LARGE_BUFFER_SIZE to avoid pathname truncation > +when install paths are longer than about 150 characters. > + > +Signed-off-by: Joe Slater <joe.sla...@windriver.com> > +--- > + source/tools/pkgdata/pkgdata.cpp | 6 +++--- > + 1 file changed, 3 insertions(+), 3 deletions(-) > + > +diff --git a/source/tools/pkgdata/pkgdata.cpp > b/source/tools/pkgdata/pkgdata.cpp > +index 5ab682e..d4b70ef 100644 > +--- a/tools/pkgdata/pkgdata.cpp > ++++ b/tools/pkgdata/pkgdata.cpp > +@@ -1131,17 +1131,17 @@ normal_symlink_mode: > + > + static int32_t pkg_installLibrary(const char *installDir, const char > *targetDir, UBool noVersion) { > + int32_t result = 0; > +- char cmd[SMALL_BUFFER_MAX_SIZE]; > ++ char cmd[LARGE_BUFFER_MAX_SIZE]; > + > + auto ret = snprintf(cmd, > +- SMALL_BUFFER_MAX_SIZE, > ++ LARGE_BUFFER_MAX_SIZE, > + "cd %s && %s %s %s%s%s", > + targetDir, > + pkgDataFlags[INSTALL_CMD], > + libFileNames[LIB_FILE_VERSION], > + installDir, PKGDATA_FILE_SEP_STRING, > libFileNames[LIB_FILE_VERSION]); > + (void)ret; > +- U_ASSERT(0 <= ret && ret < SMALL_BUFFER_MAX_SIZE); > ++ U_ASSERT(0 <= ret && ret < LARGE_BUFFER_MAX_SIZE); > + > + result = runCommand(cmd); > + > +-- > +2.29.2 > + > diff --git a/meta/recipes-support/icu/icu_69.1.bb > b/meta/recipes-support/icu/icu_69.1.bb > index bfeea8d2f0..00c22372b5 100644 > --- a/meta/recipes-support/icu/icu_69.1.bb > +++ b/meta/recipes-support/icu/icu_69.1.bb > @@ -107,6 +107,7 @@ SRC_URI = "${BASE_SRC_URI};name=code \ > file://filter.json \ > file://fix-install-manx.patch \ > file://0001-icu-Added-armeb-support.patch \ > + file://0001-pkgdata-increase-command-buffer-size.patch \ > " > > SRC_URI_append_class-target = "\ > -- > 2.29.2 > > > > >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#154533): https://lists.openembedded.org/g/openembedded-core/message/154533 Mute This Topic: https://lists.openembedded.org/mt/84693849/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-