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] https://github.com/torvalds/linux/commit/a3ba81131aca243bfecfa78c42edec0cd69f72d6
[1] https://github.com/torvalds/linux/commit/46fe94ad18aa7ce6b3dad8c035fb538942020f2b
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
Yan Zhu
681e4f5d92
docproc: avoid segfault during file closing
...
In the function find_export_symbols, since the fopen file does not
exit when it fails, there is a dereference problem in fclose(fp),
which will cause a segmentation fault.
Signed-off-by: Yan Zhu <zhuyan2015@foxmail.com >
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2024-04-13 17:57:46 +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
Ron Yorston
27c1bc8dfb
build system: avoid build failure during bisection
...
Commit 4bdc914ff (build system: fix compiler warnings) added a
test on the return value of fgets() in split-include.c.
During bisection it's possible to go back to a state where a
configuration value didn't exist. This results in an empty
include file corresponding to the missing feature. If a
subsequent bisection returns to a state where the feature exists
split-include treats the empty file as an error and the build
fails.
Add a call to ferror() to distinguish between fgets() failing
due to an error and due to there being no data to read.
Signed-off-by: Ron Yorston <rmy@pobox.com >
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2021-04-13 18:26:46 +02:00
Denys Vlasenko
4bdc914ff9
build system: fix compiler warnings
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2019-01-06 20:12:16 +01:00
Maninder Singh
97c6491b4e
typo fixes
...
Signed-off-by: Maninder Singh <maninder1.s@samsung.com >
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2015-05-25 13:46:36 +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
Marek Polacek
b0b8884009
Fix double words in comments. No code changes
...
Signed-off-by: Marek Polacek <mpolacek@redhat.com >
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2011-04-16 17:33:43 +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
ba2dcccd79
*: trailing empty lines removed
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2010-07-26 01:49:12 +02:00
Pascal Bellard
926031b764
*: introduce and use xfork() and xvfork()
...
function old new delta
launch_helper 170 169 -1
setup_heredoc 312 302 -10
handle_dir_common 367 354 -13
expand_vars_to_list 2456 2443 -13
open_transformer 89 74 -15
data_extract_to_command 439 423 -16
do_ipaddr 1406 1389 -17
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/7 up/down: 0/-85) Total: -85 bytes
Signed-off-by: Pascal Bellard <pascal.bellard@ads-lu.com >
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2010-07-04 15:32:38 +02: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
Denys Vlasenko
f3ec0fb1b4
scripts/basic/docproc.c: remove stray NUL byte from the source
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2010-01-12 13:48:42 +01:00
Mike Frysinger
3322351724
add .gitignore files
...
Signed-off-by: Mike Frysinger <vapier@gentoo.org >
2009-05-05 09:05:30 -04: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
Denis Vlasenko
5415c856ea
libbb: [x]fopen_for_{read,write} introduced and used.
...
(by Valdimir)
function old new delta
config_open2 - 41 +41
config_read 507 542 +35
find_pair 169 187 +18
fopen_for_write - 14 +14
fopen_for_read - 14 +14
find_main 406 418 +12
xfopen_for_write - 10 +10
xfopen_for_read - 10 +10
popstring 134 140 +6
parse_inittab 396 401 +5
next_token 923 928 +5
pack_gzip 1659 1661 +2
bb__parsespent 117 119 +2
fallbackSort 1719 1717 -2
evalvar 1376 1374 -2
qrealloc 36 33 -3
...
...
...
...
singlemount 4579 4569 -10
process_stdin 443 433 -10
patch_main 1111 1101 -10
ifupdown_main 2175 2165 -10
file_action_grep 90 80 -10
uuidcache_init 649 637 -12
hush_main 797 785 -12
read_config 230 217 -13
dpkg_main 3835 3820 -15
read_line_input 3134 3110 -24
sysctl_main 232 203 -29
config_open 40 10 -30
WARN_BAD_LINE 44 - -44
login_main 1714 1575 -139
------------------------------------------------------------------------------
(add/remove: 5/1 grow/shrink: 8/74 up/down: 174/-737) Total: -563 bytes
2008-07-21 23:05:26 +00:00
Denis Vlasenko
4b924f3a5c
whitespace fixes
2007-05-30 00:29:55 +00:00
Denis Vlasenko
51742f4bb0
style fixes. No code changes
2007-04-12 00:32:05 +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
eb98be02ac
"kernel config" -> "busybox config"
...
suggested by Roberto A. Foglietta <roberto.foglietta@gmail.com >
2006-11-30 22:40:32 +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