Denis Vlasenko
95b307103a
less: interpret backspace.
...
less is officially declared PAGER-capable! ;)
(this includes viewing of manpages)
2006-12-31 19:23:31 +00:00
Denis Vlasenko
806116b234
fixes from Yann E. MORIN <yann.morin.1998@anciens.enib.fr>
2006-12-31 12:14:16 +00:00
Denis Vlasenko
3bba545a54
done a dozen of randconfig test. guess what? ALL failed...
...
these are resulting fixes
2006-12-30 17:57:03 +00:00
Denis Vlasenko
9a44c4f91c
bb_xget[pw/gr]nam were horribly misnamed - fixed.
...
uidgid_get -> get_uidgid, add additional param
(numeric_ok). Make chown use it.
chown: fix "chown user: ...."
install: fix incorrect use of bb_xget[pw/gr]nam
2006-12-28 05:44:47 +00:00
Denis Vlasenko
bf0a201008
style fixes
...
last xcalloc replaced by xzalloc
2006-12-26 10:42:51 +00:00
Denis Vlasenko
5a4f0994b0
less: fix regexp search '/' on large files
2006-12-25 01:23:02 +00:00
Denis Vlasenko
7cea262273
small stupid changes. no code changes
2006-12-24 07:30:09 +00:00
Denis Vlasenko
f4dff77355
less: implement waiting for input using select(). Rather tricky business.
...
But we do not read entire input anymore up-front.
2006-12-24 07:14:17 +00:00
Denis Vlasenko
c5cb38f4d9
time: -200 bytes of text
2006-12-22 13:43:19 +00:00
Denis Vlasenko
f93ab47c45
time: fix option parsing bug, size optimizations
2006-12-22 12:36:13 +00:00
Denis Vlasenko
f1282a8792
less: a few fixes for cases where we overflow status line
2006-12-21 17:03:20 +00:00
Denis Vlasenko
f65d1338dc
less: restore TAB display (was showing as inverse I after prev changes :)
2006-12-21 15:23:45 +00:00
Denis Vlasenko
d51d14e36f
less: "(null)" is a bit strange. "standard input" is better :)
2006-12-21 13:57:37 +00:00
Denis Vlasenko
e147a72173
less: how many different kinds of status line we need, three?!
...
small fixes. [prev commit also added control char filtering
on input (e.g. regexp input, filename input for 'E' etc)]
2006-12-21 13:26:54 +00:00
Denis Vlasenko
e865e81d34
less: stop dying on bad regexps, quietly pipe data w/o
...
user interaction if stdout is not a tty.
size optimizations
2006-12-21 13:24:58 +00:00
Denis Vlasenko
bf66fbc8e2
introduce LONE_CHAR (optimized strcmp with one-char string)
2006-12-21 13:23:14 +00:00
Denis Vlasenko
3f3190e34c
less: total cleanup and bugfix.
...
Doesn't die horribly on binary files anymore.
In fact, they _100%_ work now. Control chars
are in reverse video, including DEL and that idiocy of VT-10x,
Meta-ESC [inventor of which should be prohibited from reproducing].
Regex search is fixed also. When you specify search ('/' key),
control chars turn into dots (unhighlighted),
and found occurrences highlighted instead. This is reversible.
Memory management fixed (was leaky as hell) and optimized.
Linewrapping fixed and thoroughly tested.
Max buffer size made configurable.
~ 600 bytes saved.
2006-12-21 00:22:03 +00:00
Denis Vlasenko
9a7cef930f
less: somewhat buggy applet, but nice. Muchly reduced
...
xstrdup'ing and memory consumption. Made linewrap saner.
regex matching code was awful - still buggy, but not as
leaky as before. Made buffer size configurable. Killed
several static and on-stack buffers. Hopefully eliminated
staircase effect on Ctrl-C (unable to reproduce).
2006-12-20 02:46:48 +00:00
Denis Vlasenko
b95636c52f
remove casts from xmalloc()
2006-12-19 23:36:04 +00:00
Denis Vlasenko
9f739445cd
inline strcmp(s, "-") [actually macro-ize it for now - gcc is too stupid]
2006-12-16 23:49:13 +00:00
Denis Vlasenko
2ea630f9a5
bb_makedev: fix for glibc 2.3.2
...
sed: fix C++ style declaration
2006-12-10 02:52:19 +00:00
Bernhard Reutner-Fischer
882e60c442
- shrink less.
...
01a: svn version
01b: merge past_eof and inp_stdin into flags.
01c: merge match_backwards into flags.
01d: add handling of <HOME> and <END> keys, remove set_tty_raw, use fflush_stdout_and_exit
01e: rewrite special-key handling to be smaller.
01f: changing the format saves 4 bytes (alot of places would benefit from this)
text data bss dec hex filename
9034 8 648 9690 25da less.o.01a
9023 8 640 9671 25c7 less.o.01b
9027 8 636 9671 25c7 less.o.01c
9068 8 636 9712 25f0 less.o.01d
8990 8 636 9634 25a2 less.o.01e
8986 8 636 9630 259e less.o.01f
2006-12-04 16:04:50 +00:00
Denis Vlasenko
d9e15f2068
style cleanup: return(a) -> return a, part 2
2006-11-27 16:49:55 +00:00
Denis Vlasenko
079f8afa0a
style cleanup: return(a) -> return a, part 1
2006-11-27 16:49:31 +00:00
Denis Vlasenko
cf749bc10c
small fixes:
...
fix xstrdup to not grossly overallocate memory
use xopen instean of xopen3 in several places
etc.
2006-11-26 15:45:17 +00:00
Bernhard Reutner-Fischer
32eddffa30
- revert r15563 (pull current version of taskset off the busybox_scratch branch)
2006-11-22 16:39:48 +00:00
Denis Vlasenko
89f0b3486d
rodata cleanup. "unable to" == "cannot". -300 bytes
2006-11-18 22:04:09 +00:00
Denis Vlasenko
5af906e7c8
rename: compare_string_array -> index_in_str_array
...
introduce index_in_substr_array and use it in
iproute2
2006-11-05 18:05:09 +00:00
Denis Vlasenko
aae0311356
smart_ulltoa5: make available in libbb
2006-11-05 00:44:39 +00:00
Denis Vlasenko
9225854144
mostly style fixes
2006-11-01 10:25:35 +00:00
Denis Vlasenko
d3d004dd35
last nail into error_msg() (de)capitalization
2006-10-27 09:02:31 +00:00
Denis Vlasenko
ddec5af6b0
rename functions to more understandable names
2006-10-26 23:25:17 +00:00
Denis Vlasenko
f0ed376eda
remove bb_printf and the like
2006-10-26 23:21:47 +00:00
Denis Vlasenko
c6f188def8
silly size savings and capitalization fixes
2006-10-26 00:37:00 +00:00
Denis Vlasenko
d18a3a20db
use skip_whitespace where appropriate
2006-10-25 12:46:03 +00:00
Bernhard Reutner-Fischer
a481d87ff7
- we take exactly one argument.
2006-10-24 20:06:55 +00:00
Denis Vlasenko
c108ed5497
raidautorun: new applet, by:
...
Thomas Jarosch (email?) and
Bernhard Fischer <rep.nop@aon.at>
2006-10-20 19:39:48 +00:00
Denis Vlasenko
e1a0d486e4
message string changes, mostly for consistency, also -32 bytes in .rodata
2006-10-20 13:28:22 +00:00
Denis Vlasenko
ea62077b85
add open_read_close() and similar stuff
2006-10-14 02:23:43 +00:00
Denis Vlasenko
2d5ca60bfb
bb_get_[chomped]line_from_file wasn't descriptive enough.
...
Renaming...
2006-10-12 22:43:20 +00:00
Denis Vlasenko
1db39b2f51
nmeter: new applet. ~4k
...
Fix build proble on x86_64
2006-10-11 20:59:02 +00:00
Denis Vlasenko
1385899416
attempt to regularize atoi mess.
2006-10-08 12:49:22 +00:00
Denis Vlasenko
f7a57848c2
eject: remove unmounting. It is buggy for many non-trivial
...
mounts, and can be done as shell script.
2006-10-07 15:00:29 +00:00
Denis Vlasenko
000b9ba91f
eject: -T fix
2006-10-05 23:12:49 +00:00
Denis Vlasenko
7d219aab70
build system overhaul
2006-10-05 10:17:08 +00:00
Denis Vlasenko
8f8f268cfd
bb_applet_name -> applet_name
2006-10-03 21:00:43 +00:00
Denis Vlasenko
67b23e6043
getopt_ulflags -> getopt32.
...
It is impossible to formulate sane ABI based on
size of ulong because it can be 32-bit or 64-bit.
Basically it means that you cannot portably use
more that 32 option chars in one call anyway...
Make it explicit.
2006-10-03 21:00:06 +00:00
Denis Vlasenko
40920825d5
rename bb_default_error_retval -> xfunc_error_retval
2006-10-03 20:28:06 +00:00
Denis Vlasenko
2e864cd219
eject: -T (implements single button open/close)
2006-10-02 20:49:25 +00:00
Denis Vlasenko
c16bd212e3
silly switch style fix
2006-09-27 19:51:06 +00:00
Denis Vlasenko
94d5d82bd8
crontab: we indent using tabs
2006-09-27 19:48:56 +00:00
Denis Vlasenko
c290563319
remove unneeded #includes, fix indentation
2006-09-23 16:01:09 +00:00
Denis Vlasenko
6429aabbf1
bb_askpass: shorten static password buffer. 256 is way too large.
...
simplify code a bit.
2006-09-23 12:22:11 +00:00
Denis Vlasenko
109d21fe74
adjtimex: getopt_ulflags'isation
2006-09-22 08:47:54 +00:00
Rob Landley
e9a7a6212b
Change license statements (and clean up headers) on some of the files that
...
Erik or I are primary copyright holders on.
2006-09-22 02:52:41 +00:00
Denis Vlasenko
9213a9e0f2
whitespace cleanup
2006-09-17 16:28:10 +00:00
Bernhard Reutner-Fischer
64d7e93081
- convert a few xopen3(,,0) into xopen(,). Also peruse the fact that xopen defaults to 0777 on it's own, so we don't need to xopen3(,,0777).
...
Saves a few bytes:
$ size busybox.old busybox text data bss dec hex filename
839676 8780 243592 1092048 10a9d0 busybox.old
839660 8780 243592 1092032 10a9c0 busybox
$ make CC=gcc-4.2-HEAD bloatcheck
function old new delta
static.vconfig_main 281 279 -2
static.rx_main 1076 1074 -2
static.mt_main 294 292 -2
static.gzip_main 753 751 -2
static.mkfs_minix_main 4034 4030 -4
static.unzip_main 1771 1766 -5
static.crontab_main 1513 1507 -6
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/7 up/down: 0/-23) Total: -23 bytes
2006-09-11 16:01:40 +00:00
Denis Vlasenko
049d6b8c08
Add CONFIG_FEATURE_SYSLOG which controls whether
...
bb_xx_msg will ever try to send output to syslog.
Add "select CONFIG_FEATURE_SYSLOG" to relevant applets.
This allows to omit syslog code if we do not have
any syslog-capable applets in the build.
2006-09-07 06:02:39 +00:00
Denis Vlasenko
6d655be5df
removed a lot of trailing \n in bb_msg() calls. It is added
...
automatically by function itself.
2006-09-06 19:02:46 +00:00
Rob Landley
98a915713d
Michael Opdenacker spotted that makefile should use () instead of {}.
2006-08-21 17:42:03 +00:00
Rob Landley
1ffe1ede54
Oops, Michael pointed out that my cleanup left some dead code in there.
2006-08-21 16:03:38 +00:00
Rob Landley
0e4690d4ef
Michael Opdenacker contributed a readahead applet.
2006-08-20 22:12:18 +00:00
Bernhard Reutner-Fischer
d591a360d3
- merge -r15463:15564 from busybox_scratch branch through these changesets:
...
------------------------------------------------------------------------
r15465 | aldot | 2006-06-21 20:48:06 +0200 (Wed, 21 Jun 2006) | 3 lines
- use CONFIG_BUSYBOX_EXEC_PATH as before it one was broken by a recent revert.
- use xchdir() since all is invain if it fails there anyways, supposedly
------------------------------------------------------------------------
r15466 | aldot | 2006-06-21 20:55:16 +0200 (Wed, 21 Jun 2006) | 2 lines
- adjust docs to take CONFIG_BUSYBOX_EXEC_PATH into account.
------------------------------------------------------------------------
r15467 | aldot | 2006-06-21 21:31:24 +0200 (Wed, 21 Jun 2006) | 18 lines
- partial fallout of my TREE_USED touchup against gcc-4.2: rip unused vars, save
s 144 bytes
text data bss dec hex filename
862434 10156 645924 1518514 172bb2 busybox.old
862322 10156 645892 1518370 172b22 busybox
function old new delta
z_len 4 - -4
textend 4 - -4
part_nb 4 - -4
insize 4 - -4
ifile_size 4 - -4
do_link 4 - -4
new_text 70 60 -10
ipaddr_list_link 33 23 -10
gzip_main 898 822 -76
------------------------------------------------------------------------------
(add/remove: 0/6 grow/shrink: 0/3 up/down: 0/-120) Total: -120 bytes
------------------------------------------------------------------------
r15468 | aldot | 2006-06-21 21:43:05 +0200 (Wed, 21 Jun 2006) | 19 lines
- remove useless global exports
function old new delta
rpm_main 940 1601 +661
rpm_getstring 107 112 +5
rpm_getint 148 153 +5
loop_through_files 103 106 +3
fileaction_dobackup 115 113 -2
fileaction_list 5 - -5
rpm_getcount 42 - -42
extract_cpio_gz 161 - -161
rpm_gettags 504 - -504
------------------------------------------------------------------------------
(add/remove: 0/4 grow/shrink: 4/1 up/down: 674/-714) Total: -40 bytes
text data bss dec hex filename
862322 10156 645892 1518370 172b22 busybox.old
862290 10156 645892 1518338 172b02 busybox
------------------------------------------------------------------------
r15555 | aldot | 2006-06-30 14:10:11 +0200 (Fri, 30 Jun 2006) | 22 lines
- shrink syslog a little bit, move a big buffer (for 'line') off the bss, fold s
emaphore stuff into single caller manually.
stats:
function old new delta
logMessage 395 427 +32
message 1245 1257 +12
opts - 4 +4
small 1 - -1
local_logging 4 - -4
doRemoteLog 4 - -4
circular_logging 4 - -4
syslogd_main 1299 1285 -14
static.res 36 16 -20
.rodata 186650 186586 -64
static.line 1025 - -1025
------------------------------------------------------------------------------
(add/remove: 1/5 grow/shrink: 2/3 up/down: 48/-1136) Total: -1088 bytes
cow@s37:~/src/busybox_scratch$ size sysklogd/syslogd.o{.orig,}
text data bss dec hex filename
3723 348 5242 9313 2461 sysklogd/syslogd.o.orig
3697 348 4188 8233 2029 sysklogd/syslogd.o
==============================================================================
Overall bloatcheck for the changeset mentioned above:
function old new delta
rpm_main 953 1608 +655
logMessage 395 427 +32
message 1245 1257 +12
opts - 4 +4
rpm_getstring 107 110 +3
rpm_getint 148 151 +3
loop_through_files 103 104 +1
small 1 - -1
fileaction_dobackup 115 113 -2
z_len 4 - -4
textend 4 - -4
part_nb 4 - -4
local_logging 4 - -4
insize 4 - -4
ifile_size 4 - -4
do_link 4 - -4
doRemoteLog 4 - -4
circular_logging 4 - -4
fileaction_list 5 - -5
new_text 70 60 -10
ipaddr_list_link 33 23 -10
clear_bufs 31 21 -10
syslogd_main 1287 1273 -14
builtin_help 190 176 -14
static.res 36 16 -20
builtin_source 229 199 -30
rpm_getcount 42 - -42
gzip_main 842 786 -56
.rodata 227176 227112 -64
lash_main 609 527 -82
busy_loop 3883 3739 -144
extract_cpio_gz 155 - -155
rpm_gettags 501 - -501
static.line 1025 - -1025
------------------------------------------------------------------------------
(add/remove: 1/15 grow/shrink: 6/12 up/down: 710/-2221) Total: -1511 bytes
2006-08-20 17:35:13 +00:00
Rob Landley
403777ffae
Patch from tito to improve options parsing.
2006-08-03 20:22:37 +00:00
Rob Landley
86b4d64aa3
These should have been part of 15767 too.
2006-08-03 17:58:17 +00:00
Rob Landley
d921b2ecc0
Remove bb_ prefixes from xfuncs.c (and a few other places), consolidate
...
things like xasprintf() into xfuncs.c, remove xprint_file_by_name() (it only
had one user), clean up lots of #includes... General cleanup pass. What I've
been doing for the last couple days.
And it conflicts! I've removed httpd.c from this checkin due to somebody else
touching that file. It builds for me. I have to catch a bus. (Now you know
why I'm looking forward to Mercurial.)
2006-08-03 15:41:12 +00:00
Rob Landley
c052576821
Tito said that strings is a complete rewrite.
2006-07-31 16:37:57 +00:00
Rob Landley
534374755d
Cleaup read() and write() variants, plus a couple of new functions like
...
xlseek and fdlength() for the new mkswap.
2006-07-16 08:14:35 +00:00
Rob Landley
1f9145c5c3
More minor tweaks.
2006-07-12 21:31:16 +00:00
"Robert P. J. Day"
801ab14013
Add one-line GPL boilerplate to numerous (but not all yet) source files.
2006-07-12 07:56:04 +00:00
Mike Frysinger
259472e741
remove duplicate CONFIG_TASKSET option
2006-07-03 05:22:36 +00:00
"Robert P. J. Day"
63fc1a9e08
Standardize on the vi editing directives being on the first line.
2006-07-02 19:47:05 +00:00
Rob Landley
12d9419273
Revert taskset for 1.2.0. It emits a warning, breaks building under RH9,
...
and nobody seemed interested in fixing it despite repeated complaints.
I'll worry about it in the 1.3 timeframe...
2006-06-30 22:20:43 +00:00
Mike Frysinger
cd68a2e1a8
fix watchdog on no-mmu systems by adding -F option for rexec
2006-06-26 21:31:17 +00:00
Rob Landley
11c7a7bed6
Various cleanups I made while going through Erik Hovland's patch submissions,
...
some of which are even from him. :)
2006-06-25 22:39:24 +00:00
Bernhard Reutner-Fischer
f087798e8b
- convert old-style parameter declarations (K&R) to modern style.
2006-06-25 22:08:53 +00:00
Rob Landley
399d45f1c6
Aurelien Jacobs pointed out inline functions that could be removed. Doing so
...
shrank the code a bit.
2006-06-21 01:49:17 +00:00
Rob Landley
22d26fc6ae
Patch from Yann Morin to put BLKGETSIZE64 in platform.h had rather a lot of
...
fallout due to the #include <sys/mount.h>. Removed that #include from various
applets and fixed up those that were unhappy when that #include was made
because they'd block copied stuff out of it. (Sigh.)
2006-06-15 15:49:36 +00:00
Rob Landley
176f2df69b
Patch from Erik Hovland, via Tito.
2006-06-08 14:19:48 +00:00
Rob Landley
9c6f9552ec
Some day, maybe gcc will be able to optimize out static functions that are
...
never used so we don't have to #ifdef them. Wouldn't that be nice?
2006-06-08 14:11:36 +00:00
Mike Frysinger
9be7435203
initial support for no-mmu systems
2006-06-07 21:48:43 +00:00
Mike Frysinger
2fc534f3f1
hint at where the Magic comes from
2006-06-07 21:37:49 +00:00
Bernhard Reutner-Fischer
f915a77386
- do away with the comment that noted that the current implementation
...
unly supports linux.
2006-06-07 21:26:09 +00:00
Rob Landley
6d8ce170b0
Fix from Tito to read from stdin only when it's not a tty.
2006-06-07 21:22:42 +00:00
Rob Landley
4c5ad2fc90
Consolidate devfs garbage and mark it as obsolete.
2006-06-07 20:11:53 +00:00
Bernhard Reutner-Fischer
16d3e4e0af
- add applet taskset to set/retrieve the CPU affinity of a process
...
text data bss dec hex filename
584 0 0 584 248 taskset.o.gcc-2.95
509 0 0 509 1fd taskset.o.gcc-3.3
505 0 0 505 1f9 taskset.o.gcc-3.4
506 0 0 506 1fa taskset.o.gcc-4.0
498 0 0 498 1f2 taskset.o.gcc-4.1
495 0 0 495 1ef taskset.o.gcc-4.2-HEAD
2006-06-07 15:44:59 +00:00
Mike Frysinger
ea93f8a397
Tito writes: this patch fixes two potential bugs with the -i -I flags that could be reset during option parsing
2006-06-07 14:25:22 +00:00
Rob Landley
0753f4a15e
Callers to identify() converted the endianness of the buffer. So did
...
identify(). This meant big endian systems had a NUXI problem. Removed
the redundant conversion from the callers, and made some in-passing cleanups
while I was there.
2006-06-07 00:27:25 +00:00
Mike Frysinger
8e640a1043
use vfork() instead of vork() since the only thing we do is execve() an app after fork (allows time to work on no-mmu)
2006-06-06 06:08:34 +00:00
Bernhard Reutner-Fischer
5084c78cbe
- remove superfluous call of stack_machine(0) upon exit.
2006-06-03 21:19:09 +00:00
Bernhard Reutner-Fischer
5f6d67b7d6
- no need to have timer_duration in the data section.
...
- cleanup a little bit while at it.
2006-06-03 20:53:18 +00:00
Bernhard Reutner-Fischer
b1312c9125
- use bb_msg_write_error in 3 places
...
- whitespace
2006-06-03 20:09:02 +00:00
Bernhard Reutner-Fischer
c89982dcd7
- move #include busybox.h to the very top so we pull in the config
...
and eventual platform specific includes in early.
2006-06-03 19:49:21 +00:00
Rob Landley
0620841758
Patch from Tito to remove long options from hdparm.
2006-05-31 22:52:57 +00:00
Bernhard Reutner-Fischer
c418d482ba
- s/defined(__uClinux__)/BB_NOMMU/
...
This needs a second pass to:
+ add bb_daemon(unsigned char no_chdir, unsigned char no_close, const char*flag)
+ eventually globally export argc and argv, so we don't need to pass it to
bb_daemon().
2006-05-31 10:19:51 +00:00
Rob Landley
a6e131dab3
Size reductions, mostly switching things to use libbb functions.
2006-05-29 06:43:55 +00:00
Rob Landley
bba7f08d27
Add SWAP_LE?? and SWAP_BE?? macros, and make things use them. Converts values
...
to/from little endian or big endian, which is a NOP if that's what the current
platform already is.
2006-05-29 05:51:12 +00:00
Rob Landley
81dab2cf83
Fix hdparm to use PRIu64 instead of typecasting to long long (which is 128 bits
...
on 64 bit platforms), and move #include <inttypes.h> to libbb.h.
2006-05-28 01:56:08 +00:00
Rob Landley
8fba99f35e
Move portability stuff to platform.h, and clean up adjtimex.c a bit while
...
I'm in the area.
2006-05-27 22:08:01 +00:00
Rob Landley
299a6b4d7b
Consolidate #include <sys/time.h> so libbb.h does it.
2006-05-27 21:42:58 +00:00