(In reply to Michael Andres from comment #6) > This bug, as well as bug#955557, suffer from a buffer overflows in > backend_get_updates_thread. This one inside libzypp the other one outside. > > OTOH, libzypp (and also it's PathInfo class) is heavily used by zypper and > yast. All their tests succeed on i586. Also no similar bug reports from i586 > systems about zypper/yast. > > Also no problems in other backend jobs; just in backend_get_updates_thread. > > Franky, I doubt that we'll find the problem inside the libzypp code. > > > (In reply to Jonathan Kang from comment #3) > > We can see the stack smashing happened in > > libzypp-16.4.3/zypp/PathInfo.cc:172. > > > > I looked the implementation of PathInfo class, and found it calls xstat64() > > somehow in this 32-bit machine, which is quite odd. > > (https://www.tcm.phy.cam.ac.uk/sw/inodes64.html) The 64 in stat64 refers to > the size of the filesystem inodes, not tho the systems architecture. The > glibc stat() wrapper function hides these details from applications and > under the hood calls whatever is appropriate. Replacing > if (PathInfo("/etc/PackageKit/ZYpp.conf").isExist()) with > if (g_file_test ("/etc/PackageKit/ZYpp.conf", G_FILE_TEST_EXISTS)) to check if "/etc/PackageKit/ZYpp.conf" fixes the problem. So I highly doubt that there is something wrong with PathInfo.