aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * libpwdgrp: reinstate Tito's optional atexit freeingDenys Vlasenko2015-01-031-0/+15
| | | | | | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * libpwdgrp: fix a memory leak in getXXnam (we did not save address of string buf)Denys Vlasenko2015-01-031-57/+74
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | function old new delta convert_to_struct 261 269 +8 const_sp_db 20 24 +4 const_pw_db 20 24 +4 const_gr_db 20 24 +4 tokenize 144 147 +3 parse_common 185 188 +3 get_S 82 85 +3 bb_internal_getpwent_r 188 185 -3 gr_off 4 - -4 getXXnam 171 165 -6 pw_off 7 - -7 getgrouplist_internal 237 229 -8 getXXnam_r 215 207 -8 sp_off 9 - -9 ------------------------------------------------------------------------------ (add/remove: 0/3 grow/shrink: 7/4 up/down: 29/-45) Total: -16 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * libpwdgrp: tweak comments, replace one xmalloc with xzallocDenys Vlasenko2015-01-031-23/+17
| | | | | | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * libpwdgrp: use FAST_FUNC to make "matching ABI" optimization more likely to ↵Denys Vlasenko2015-01-024-42/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | succeed See bb_internal_get*nam_r size reduction: function old new delta bb_internal_getpwent_r 167 176 +9 getXXnam_r 204 206 +2 sulogin_main 326 325 -1 su_main 471 470 -1 read_line_input 3832 3831 -1 print_stat 865 864 -1 prepare_socket_fd 283 282 -1 load_crontab 777 776 -1 fork_job 456 455 -1 do_shm 884 883 -1 do_sem 637 636 -1 do_msg 783 782 -1 complete_username 124 123 -1 bb_internal_getgrouplist 71 70 -1 xgetpwuid 27 25 -2 xgetpwnam 27 25 -2 xgetgrnam 27 25 -2 xgetgrgid 27 25 -2 uid2uname 18 16 -2 login_main 980 978 -2 gid2group 18 16 -2 get_shell_name 54 52 -2 change_identity 50 48 -2 bb_internal_initgroups 50 48 -2 argstr 1261 1259 -2 print_perms 177 174 -3 inetd_main 2077 2074 -3 run_applet_no_and_exit 446 442 -4 fileaction_setowngrp 89 85 -4 deluser_main 312 308 -4 bb_internal_getpwuid 19 15 -4 bb_internal_getpwnam 11 7 -4 bb_internal_getgrnam 14 10 -4 bb_internal_getgrgid 19 15 -4 adduser_main 865 861 -4 passwd_main 989 984 -5 get_passwd 97 92 -5 data_extract_all 887 882 -5 check_user_passwd 490 485 -5 get_groups 81 75 -6 ftpd_main 2178 2171 -7 bb_internal_getspnam_r 42 18 -24 bb_internal_getpwnam_r 39 15 -24 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 2/41 up/down: 11/-153) Total: -142 bytes text data bss dec hex filename 923167 928 17676 941771 e5ecb busybox_old 923023 928 17676 941627 e5e3b busybox_unstripped Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * libpwdgrp: rewritten to use malloced implementationTito Ragusa2015-01-025-1067/+359
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This removed buffer size limitations. function old new delta convert_to_struct - 269 +269 getXXnam_r - 204 +204 parse_common - 185 +185 getXXnam - 164 +164 tokenize - 126 +126 bb_internal_getpwent_r 102 167 +65 get_S 30 88 +58 getgrouplist_internal 195 240 +45 const_sp_db - 20 +20 const_pw_db - 20 +20 const_gr_db - 20 +20 bb_internal_endpwent 27 36 +9 bb_internal_endgrent 27 36 +9 decode_one_format 726 734 +8 bb_internal_setpwent 17 24 +7 volume_id_probe_iso9660 319 322 +3 scriptreplay_main 204 207 +3 mkfs_minix_main 2684 2687 +3 id_main 478 480 +2 hash_find 233 235 +2 pstree_main 321 322 +1 gr_off 3 4 +1 expand_one_var 1579 1578 -1 pwf 4 - -4 grf 4 - -4 pack_gzip 1787 1780 -7 addattr32 67 56 -11 buffer_fill_and_print 191 178 -13 dpkg_main 2944 2927 -17 bb_internal_setgrent 17 - -17 bb_internal_getpwuid 38 19 -19 bb_internal_getgrgid 44 19 -25 bb_internal_getpwnam 38 11 -27 bb_internal_getgrnam 44 14 -30 bb_internal_fgetpwent_r 51 - -51 bb_internal_fgetgrent_r 51 - -51 bb_internal_getspnam_r 121 42 -79 bb_internal_getpwnam_r 121 39 -82 bb_internal_getgrent_r 102 - -102 bb__parsepwent 110 - -110 bb_internal_getpwuid_r 113 - -113 bb_internal_getgrgid_r 113 - -113 bb__parsespent 120 - -120 bb_internal_getgrnam_r 121 - -121 bb__pgsreader 213 - -213 bb__parsegrent 226 - -226 ------------------------------------------------------------------------------ (add/remove: 8/13 grow/shrink: 14/11 up/down: 1224/-1556) Total: -332 bytes text data bss dec hex filename 923471 928 17684 942083 e6003 busybox_old 923167 928 17676 941771 e5ecb busybox_unstripped Signed-off-by: Tito Ragusa <farmatito@tiscali.it> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * modprobe: revert checking for /, stop doing basename() on modprobe argsDenys Vlasenko2015-01-013-15/+12
| | | | | | | | | | | | | | | | | | | | function old new delta process_module 726 719 -7 filename2modname 81 67 -14 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-21) Total: -21 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * Makefile: fix cscope targetBartosz Golaszewski2014-12-312-18/+9
| | | | | | | | | | | | | | | | | | | | This target doesn't work with current directory layout. Just make cscope index all .c and .h files. While we're at it: add cscope output files to .gitignore. Signed-off-by: Bartosz Golaszewski <bartekgola@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * ash: fix a SEGV in ${#1}Denys Vlasenko2014-12-291-9/+9
| | | | | | | | | | | | | | | | function old new delta varvalue 760 805 +45 evalvar 648 603 -45 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * udhcpd: account for script delay in leaseJohn Schroeder2014-12-251-1/+5
| | | | | | | | | | | | | | Prevent nasty surprises if script runs longer than lease time / 2. Signed-off-by: John Schroeder <jschroed@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * Start 1.24.0 development cycleDenys Vlasenko2014-12-241-2/+2
| | | | | | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* | ar: fix modification of existing archivesRon Yorston2015-03-041-1/+15
| | | | | | | | | | | | | | When modifying an existing archive the code opens the old file, unlinks it and creates a new file with the same name. This doesn't work on Windows where it isn't possible to unlink an open file. Instead we create a temporary file for output and change it's name when we're done.
* | Enable logname in mingw32 configurationRon Yorston2015-02-273-3/+21
| |
* | Make uid/gid handling more consistentRon Yorston2015-02-262-20/+61
| | | | | | | | | | | | | | | | Various fake POSIX routines returned different values for uid/gid: getuid/getgid used 1, stat used 0 and getpwuid used 1000. Standardise on 1000. Also, add fake getgrgid.
* | Merge commit '1_23_0' into mergeTIG_1_23_0Ron Yorston2015-01-239-14/+31
|\| | | | | | | | | Conflicts: libbb/lineedit.c
| * Bump version to 1.23.01_23_0Denys Vlasenko2014-12-241-1/+1
| | | | | | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * libbb: add sanity check in bb_arg_max()Denys Vlasenko2014-12-241-1/+9
| | | | | | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * randomconfig fixesDenys Vlasenko2014-12-224-7/+7
| | | | | | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * Make it possible to override LOGIN_FAIL_DELAY in CONFIG_EXTRA_CFLAGSPeter Kümmel2014-12-221-0/+2
| | | | | | | | | | Signed-off-by: Peter Kümmel <syntheticpp@gmx.net> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * udhcpc: account for script run timeDenys Vlasenko2014-12-211-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Based on the following user report: I ran into an issue where I was seeing a long delay in the scripts called in udhcp_run_script. I was using an old version of OpenWrt (kamikaze) and a satellite modem. An NTP script was being called and the modem would sometimes take a long time to respond to the DNS lookup when it was offline. This delay started affecting my lease time. The lease that I would get from my satellite modem before it was online would be short: only 60 seconds. The delay with NTP and the modem would typically be about 18 seconds. This would cause the first DHCP renew request from dhcpc to be a little late. Under certain circumstances, I could even see the first DHCP renew to occur after the lease had expired! function old new delta udhcpc_main 2816 2837 +21 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * nanddump: don't show --bb in usage when disabledBaruch Siach2014-12-181-1/+3
| | | | | | | | | | | | | | | | The --bb options now depends on LONG_OPTS. Omit mentions of --bb from usage text when LONG_OPTS is disabled. Signed-off-by: Baruch Siach <baruch@tkos.co.il> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * nandwrite: fix build when long options are disabledBaruch Siach2014-12-171-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | The Required_argument macro is only defined when long options are enabled. Fixes the following build error: miscutils/nandwrite.c: In function 'nandwrite_main': miscutils/nandwrite.c:120:10: error: expected ',' or ';' before 'Required_argument' Reported-by: Christian Kästner <kaestner at cs.cmu.edu> Signed-off-by: Baruch Siach <baruch at tkos.co.il> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * lineedit: don't block when looking for escape sequence in vi-modeRon Yorston2014-12-151-1/+1
| | | | | | | | | | | | | | | | | | | | In vi-mode lineedit tries to detect some escape sequences. After the ESC it reads the next character to check for certain values. This read should have a timeout or a user-entered ESC to switch to command mode doesn't properly handle the next character. Signed-off-by: Ron Yorston <rmy@tigress.co.uk> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* | Fix error: conflicting types for ‘pid_t’ with mingw64Tony Kelman2015-01-221-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Using x86_64-w64-mingw32-gcc cross-compiler for win64 gives an error: ``` In file included from include/libbb.h:163:0, from include/busybox.h:8, from applets/applets.c:9: include/mingw.h:10:13: error: conflicting types for ‘pid_t’ typedef int pid_t; ^ In file included from /usr/share/mingw-w64/include/process.h:12:0, from /usr/share/mingw-w64/include/unistd.h:11, from include/platform.h:313, from include/libbb.h:13, from include/busybox.h:8, from applets/applets.c:9: /usr/share/mingw-w64/include/sys/types.h:68:16: note: previous declaration of ‘pid_t’ was here typedef _pid_t pid_t; ^ make[1]: *** [applets/applets.o] Error 1 ``` This change fixes it and results in a successful build of 64-bit busybox.exe.
* | Update READMERon Yorston2015-01-073-33/+20
| |
* | Use MinGW-w64 by defaultRon Yorston2015-01-073-4/+4
| |
* | Changes to allow building with MinGW-w64Ron Yorston2015-01-056-0/+30
| |
* | Revert "Use putenv to implement unsetenv/clearenv"Ron Yorston2014-12-182-49/+12
| | | | | | | | This reverts commit fa147bd7ecb086f4fb9a4afea16b946693a822ce.
* | Update MinGW default configurationRon Yorston2014-12-141-3/+3
| |
* | Merge branch 'busybox' into mergeRon Yorston2014-12-1444-345/+645
|\| | | | | | | | | | | | | Conflicts: archival/libarchive/open_transformer.c libbb/lineedit.c miscutils/man.c
| * tar: fix "tar -cJ" ignoring -J option. closes 7706Denys Vlasenko2014-12-111-38/+28
| | | | | | | | | | | | | | | | | | function old new delta tar_main 895 938 +43 vfork_compressor 206 191 -15 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 1/1 up/down: 43/-15) Total: 28 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * lineedit: don't fall back to simple line input if tty is in raw modeDenys Vlasenko2014-12-101-2/+6
| | | | | | | | | | | | Testcase: shell command input after python ^Z should still work Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * Config: select PLATFORM_LINUX if using sendfile()Bartosz Golaszewski2014-12-101-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Man entry for sendfile: Not specified in POSIX.1-2001, or other standards. Other UNIX systems implement sendfile() with different semantics and prototypes. It should not be used in portable programs. Select PLATFORM_LINUX if enabling FEATURE_USE_SENDFILE. Signed-off-by: Bartosz Golaszewski <bartekgola@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * flashcp: change BUFSIZE to 4kJacob Kjaergaard2014-12-101-1/+1
| | | | | | | | | | | | | | | | some flash partitions can be smaller than the existing BUFSIZE thus write BUFSIZE will fail with "no space left on device" Signed-off-by: Jacob Kjaergaard <jacob.kjaergaard@prevas.dk> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * make xmalloc_open_zipped_read_close result NUL terminatedDenys Vlasenko2014-12-071-1/+2
| | | | | | | | | | | | Compat with xmalloc_open_read_close Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * libarchive: add capability to unpack to mem.bufferDenys Vlasenko2014-12-0714-125/+241
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The performance and number of processes for a "depmod -a" with gzipped modules was abysmal. This patch adds a code path without fork, benefiting all users of xmalloc_open_zipped_read_close. "modinfo radeon.ko.gz", a single-file reader, got 30% faster. "depmod -a", which used to fork over 800 times, got 20% faster. Heavily based on a patch by Lauri Kasanen <curaga@operamail.com> function old new delta setup_transformer_on_fd - 159 +159 transformer_write - 122 +122 fork_transformer - 112 +112 xmalloc_open_zipped_read_close 63 118 +55 read_bunzip 1866 1896 +30 xtransformer_write - 19 +19 unzip_main 2449 2462 +13 bbunpack 755 766 +11 unpack_lzma_stream 2717 2723 +6 unpack_xz_stream 2393 2397 +4 unpack_Z_stream 1173 1175 +2 inflate_unzip 111 105 -6 check_signature16 70 63 -7 unpack_bz2_stream 359 349 -10 unpack_unxz 12 - -12 unpack_unlzma 12 - -12 unpack_uncompress 12 - -12 unpack_gunzip 12 - -12 unpack_bunzip2 12 - -12 open_transformer 106 92 -14 inflate_unzip_internal 1945 1916 -29 unpack_gz_stream 693 655 -38 open_zipped 89 47 -42 setup_unzip_on_fd 142 53 -89 ------------------------------------------------------------------------------ (add/remove: 4/5 grow/shrink: 7/8 up/down: 533/-295) Total: 238 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * Rename transformer_aux_data_t -> transformer_state_tDenys Vlasenko2014-12-0713-70/+70
| | | | | | | | | | | | No code changes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * man: do not mangle $MANPATH in memoryDenys Vlasenko2014-11-301-3/+5
| | | | | | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * libbb: use sendfile() to copy data between file descriptorsBartosz Golaszewski2014-11-274-42/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Busybox already uses sendfile in httpd. This patch proposes to use it globally to copy data between file descriptors. It speeds up the copying on slow systems a lot - below are the times needed to copy a 450Mb file with and without this option enabled on a BeagleBone Black: sendfile: user 0m0.000s sys 0m8.170s read/write 4k: user 0m0.470s sys 0m16.300s function old new delta bb_full_fd_action 394 474 +80 Signed-off-by: Bartosz Golaszewski <bartekgola@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * man: accept a list of dirs in $MANPATHDenys Vlasenko2014-11-271-37/+49
| | | | | | | | | | | | | | | | | | | | function old new delta add_MANPATH - 143 +143 man_main 852 731 -121 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 0/1 up/down: 143/-121) Total: 22 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * libbb: use ARG_MAX for bb_arg_max() only if it's 60k+Denys Vlasenko2014-11-262-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sometimes ARG_MAX is small (like 32k) yet sysconf(_SC_ARG_MAX) is big, and people prefer using the bigger value. OTOH, with sufficiently large ARG_MAX, further wins from sysconf(_SC_ARG_MAX) being bigger are exponentially smaller: you can see 4 times fewer fork+execs when you run find, but when each execed process already takes a thousand parameters it's likely execution time is dominated by what that process does with each parameter. Thus, with this change ARG_MAX is used if it's sufficiently big, otherwise sysconf(_SC_ARG_MAX) is used. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * bbunit: fix WANT_TIMING compilationDenys Vlasenko2014-11-261-1/+1
| | | | | | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * gitignore: add testsuite/echo-neBartosz Golaszewski2014-11-261-0/+1
| | | | | | | | | | Signed-off-by: Bartosz Golaszewski <bartekgola at gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * udhcpd: if a lease from lease file coincides with a static one, ignore itDenys Vlasenko2014-11-251-1/+13
| | | | | | | | | | | | | | function old new delta read_leases 269 328 +59 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * init: do not run shutdown/reexec actions from signal handlerDenys Vlasenko2014-11-211-20/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | this is racy wrt various libc functions such as syslog() function old new delta check_delayed_sigs 182 352 +170 init_main 772 728 -44 restart_handler 74 - -74 halt_reboot_pwoff 79 - -79 ------------------------------------------------------------------------------ (add/remove: 0/2 grow/shrink: 1/1 up/down: 170/-197) Total: -27 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * modprobe,rmmod: reject module names with slashesDenys Vlasenko2014-11-201-0/+11
| | | | | | | | | | | | | | function old new delta add_probe 86 113 +27 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * typo fix in commentDenys Vlasenko2014-11-201-1/+1
| | | | | | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * ash,hush: do not segfault on $((2**63 / -1))Denys Vlasenko2014-11-181-4/+23
| | | | | | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * ash: fix handling of negative start value in ${v:start:len}Denys Vlasenko2014-11-171-1/+9
| | | | | | | | | | | | | | function old new delta subevalvar 1140 1168 +28 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * iproute: support onelink route option and print route flagsMichael Tokarev2014-11-171-1/+17
| | | | | | | | | | | | | | | | | | | | | | function old new delta print_route 1797 1865 +68 do_iproute 2097 2112 +15 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 2/0 up/down: 83/0) Total: 83 bytes Signed-off-by: Michael Tokarev <mjt@tls.msk.ru> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| * exit with 127 if appled name wasn't found - it's more POSIXyDenys Vlasenko2014-11-171-2/+4
| | | | | | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>