Commit graph

17 commits

Author SHA1 Message Date
Sam James
480a07bd68 fixdep: add fstat error handling
When `fstat` fails, `st` is left uninitialised. In our case, Ben Kohler
noticed our release media builds were failing in Gentoo on x86 when building
busybox with occasional SIGBUS. This turned out to be EOVERFLOW (from 32-bit
ino_t) which wasn't being reported because nothing was checking the return value
from `fstat`.

Fix that to avoid UB (use of uninit var) and to give a more friendly
error to the user.

This actually turns out to be fixed already in the kernel from back in
2010 [0] and 2016 [1].

[0] a3ba81131a
[1] 46fe94ad18

Reported-by: Ben Kohler <bkohler@gentoo.org>
Signed-off-by: Sam James <sam@gentoo.org>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2024-09-27 20:03:30 +02:00
Arsen Arsenović
2d4a3d9e6c fixdep: avoid underflow when end of entry doesn't coincide with EOF
Bug: https://bugs.gentoo.org/893776
Closes: https://bugs.busybox.net/show_bug.cgi?id=15326
Signed-off-by: Arsen Arsenović <arsen@gentoo.org>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2023-02-27 13:09:44 +01:00
Denys Vlasenko
1a45b2ccea fix "warning array subscript has type 'char'"
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-04-14 19:12:43 +02:00
Denys Vlasenko
f2743a5b00 build system: stop including alloca.h, stdlib.h provides it
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2014-01-09 11:02:46 +01:00
Denys Vlasenko
dd1eb413f2 suppress "warning: implicit declaration of function 'alloca'"
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-09-15 10:37:04 +02:00
Macpaul Lin
b2fa0b6219 scripts: fix fixdep.c to let it workable in cygwin
Update retrun character detection in the fixdep.c
to let it work in cygwin.

Signed-off-by: Macpaul Lin <macpaul@andestech.com>
Signed-off-by: Greentime <green.hu@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-12-18 01:46:38 +01:00
Denys Vlasenko
e06884208a Revert "scripts: fix fixdep.c to let it workable in cygwin"
This reverts commit 10c36b8657.
2010-12-18 01:46:04 +01:00
Greentime
10c36b8657 scripts: fix fixdep.c to let it workable in cygwin
Update return character detection in the fixdep.c
to let it workable in cygwin.

Signed-off-by: Macpaul Lin <macpaul@andestech.com>
Signed-off-by: Greentime <green.hu@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-12-18 01:45:14 +01:00
Denys Vlasenko
2f41e7ea57 fix extra bogus files generation in include/config/*
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-06-17 20:20:24 +02:00
Jérémie Koenig
fbedacfc8c Hurd compat fixes. Mostly dealing with absent PATH_MAX
Signed-off-by: Jérémie Koenig <jk@jk.fr.eu.org>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-03-26 19:08:53 +01:00
Denis Vlasenko
5e34ff29bc *: mass renaming of USE_XXXX to IF_XXXX
and SKIP_XXXX to IF_NOT_XXXX - the second one was especially
badly named. It was not skipping anything!
2009-04-21 11:09:40 +00:00
Bernhard Reutner-Fischer
febe3c4211 - sed -e "s/char[[:space:]]*\*[[:space:]]*argv\[\]/char **argv/g" 2007-04-04 20:52:03 +00:00
Denis Vlasenko
cb04ff5c68 fixdep.c: avoit doing memcmp in most cases
uidgid_get.c: add forgotten copyright notice
pwd/grp/shadow: avoid collisions with libc names
2006-12-30 21:11:57 +00:00
Denis Vlasenko
80602a98bc saw commit of vapier@busybox.net (thanks!),
decided to stop doing FOUR memcmp's per each input character.
I should have fixed this much earlier...
2006-12-30 19:52:28 +00:00
Mike Frysinger
c255f8b492 prevent accessing memory that we dont own 2006-12-30 19:21:48 +00:00
Denis Vlasenko
9fa9950784 build system: check for ENABLE_, USE_ and SKIP_ (not only for CONFIG_) 2006-10-19 22:14:58 +00:00
Denis Vlasenko
7d219aab70 build system overhaul 2006-10-05 10:17:08 +00:00