OSDN Git Service
Rob Landley [Thu, 31 Jul 2014 00:22:55 +0000 (19:22 -0500)]
As long as I had to write xabspath(), no point in wrapping realpath().
Rob Landley [Wed, 30 Jul 2014 01:04:38 +0000 (20:04 -0500)]
find.c: first pass at case case insensitivity and exec. (Needs more debugging.)
Rob Landley [Wed, 30 Jul 2014 01:02:31 +0000 (20:02 -0500)]
Actually set the again flag when calling the dirtree comeagain callback.
Rob Landley [Sun, 27 Jul 2014 20:19:49 +0000 (15:19 -0500)]
Patch from Isaac Dunham to work around the deficiencies in musl's regex engine (which break building under alpine linux).
Musl's regex engine doesn't support \| which changes the behavior of busybox
sed, breaks toybox grep... I need to come up with a musl patch, in the meantime
here's a workaround.
Rob Landley [Sat, 26 Jul 2014 18:30:40 +0000 (13:30 -0500)]
Move DIRTREE_COMEAGAIN second callback up to when the filehandle is still open, and add dir->again variable to distinguish second call instead of checking for -1 filehandle.
Rob Landley [Sat, 26 Jul 2014 18:27:07 +0000 (13:27 -0500)]
Default xcreate/xopen to O_CLOEXEC. (Pass O_CLOEXEC in the flags to switch it back off.)
This way we're not leaking filehandles to children from things like find -exec.
Rob Landley [Sat, 26 Jul 2014 18:22:59 +0000 (13:22 -0500)]
Document more cleanup.
Rob Landley [Tue, 22 Jul 2014 01:03:06 +0000 (20:03 -0500)]
Have single.sh enable I18N and FLOAT.
Rob Landley [Tue, 22 Jul 2014 00:57:36 +0000 (19:57 -0500)]
Improve gid/uid error messages.
Rob Landley [Tue, 22 Jul 2014 00:56:53 +0000 (19:56 -0500)]
Little endian and big endian versions of peek (for host.c).
Rob Landley [Tue, 22 Jul 2014 00:55:06 +0000 (19:55 -0500)]
Fix memory leak in error path.
Rob Landley [Mon, 21 Jul 2014 03:08:46 +0000 (22:08 -0500)]
Don't go into an endless loop if we hit a bad utf8 sequence without -q.
Rob Landley [Mon, 21 Jul 2014 02:34:49 +0000 (21:34 -0500)]
Isaac Dunham spotted that dhcp was also reimplementing daemon().
Rob Landley [Sun, 20 Jul 2014 21:34:36 +0000 (16:34 -0500)]
Add utf8 support to ls -C.
Use wcwidth() instead of strlen(), and extend the -q substitution to also
whiteout nonprintable characters that are nonparseable utf8 snippets.
Rob Landley [Sun, 20 Jul 2014 01:54:29 +0000 (20:54 -0500)]
find needs "c" suffix to -size.
Rob Landley [Fri, 18 Jul 2014 23:31:41 +0000 (18:31 -0500)]
Find bugfixes.
The check for -print vs -print0 was tested before I optimized out the "-" in the strcmps, and I didn't adjust the offset or retest it. (Ooops.)
Also, I wasn't clearing the ! value when descending into parentheticals, so "find . -name blah -o \! \( -stuff -o -thing \)" acted like it had a spurious second ! before -stuff inside the parentheses.
Rob Landley [Fri, 18 Jul 2014 03:52:58 +0000 (22:52 -0500)]
Apparently I deleted this locally but forgot to commit the removal. Oops.
Rob Landley [Fri, 18 Jul 2014 03:50:49 +0000 (22:50 -0500)]
Use libc daemon() instead of pending daemonize.
Rob Landley [Thu, 17 Jul 2014 01:43:58 +0000 (20:43 -0500)]
Write a new find. Not quite done, but the basics work.
Ashwini Sharma [Mon, 14 Jul 2014 10:44:29 +0000 (05:44 -0500)]
fdisk : partitions > 60, are deleted, offset entry for extended partitions was wrong.
fsck: memory leak/segfault resolved.
ftpget : warning for unused variable 'ptr' removed.
Rob Landley [Mon, 14 Jul 2014 10:38:27 +0000 (05:38 -0500)]
Implement -HL for cp.
Rob Landley [Mon, 7 Jul 2014 12:32:56 +0000 (07:32 -0500)]
Release notes for 0.4.9.
Rob Landley [Mon, 7 Jul 2014 12:32:33 +0000 (07:32 -0500)]
Added tag 0.4.9 for changeset
ffc015bddb26
Rob Landley [Mon, 7 Jul 2014 04:43:29 +0000 (23:43 -0500)]
Autodetect --bind and --loop mounts in a way that doesn't interfere with network filesystems or -t newtype mounts that trigger a module load.
Rob Landley [Mon, 7 Jul 2014 04:21:13 +0000 (23:21 -0500)]
minor cleanup: move a global variable into GLOBALS(), inline strchr_null(), some whitespace and bracket cleanups.
Rob Landley [Mon, 7 Jul 2014 04:17:55 +0000 (23:17 -0500)]
Minor cleanup pass.
Rob Landley [Mon, 7 Jul 2014 00:58:49 +0000 (19:58 -0500)]
Add nbd-client.
Rob Landley [Mon, 7 Jul 2014 00:14:05 +0000 (19:14 -0500)]
Promote killall5 by merging it into kill.
Slight conflict here: this puts killall5 in the posix directory. But the commands sharing code trumps that.
Rob Landley [Sun, 6 Jul 2014 04:26:05 +0000 (23:26 -0500)]
Try to lookup all umounts in /proc/mounts so we can auto-zap loopback devices.
Ashwini Sharma [Sat, 5 Jul 2014 02:46:00 +0000 (21:46 -0500)]
TAR - this supports archive creation and extraction based on the USTAR format (described in PAX Spec). For (de)compression '-z' gzip is supported.
Rob Landley [Sat, 5 Jul 2014 02:21:45 +0000 (21:21 -0500)]
Cut down from 1000+ file attribute tests to a more manageable number.
Divya Kothari [Sat, 5 Jul 2014 02:20:02 +0000 (21:20 -0500)]
I have developed few testsuites for toybox commands -
1. lsattr/chattr
2. mount
3. chmod
4. pgrep/pkill
5. groupadd
6. groupdel
7. useradd
Rob Landley [Fri, 4 Jul 2014 03:09:11 +0000 (22:09 -0500)]
Have "make test" run tests in testdir/testdir instead of same directory as command symlinks. (Makes cleanup easier.)
Rob Landley [Fri, 4 Jul 2014 01:30:52 +0000 (20:30 -0500)]
date -r wasn't saving the result in the right variable. (And make date -ur work.)
Rob Landley [Thu, 3 Jul 2014 23:42:44 +0000 (18:42 -0500)]
Fix rm -rf of chmod 000 directories.
Rob Landley [Mon, 30 Jun 2014 10:05:39 +0000 (05:05 -0500)]
Promote makedevs to other.
Rob Landley [Mon, 30 Jun 2014 09:58:37 +0000 (04:58 -0500)]
Bugfixes for cleaned up makedevs.
Newline after table = <stdin>, move start/increment/count loop around entire
device creation if/else staircase including chmod/chown code and use ptr to
record node vs toybuf.
Rob Landley [Sun, 29 Jun 2014 03:47:40 +0000 (22:47 -0500)]
Use dlist_terminate() in patch.
Rob Landley [Sun, 29 Jun 2014 03:36:02 +0000 (22:36 -0500)]
Add : as an alias for true (toysh needs this).
Rob Landley [Sun, 29 Jun 2014 03:17:00 +0000 (22:17 -0500)]
Make fallocate depend on probe for libc support.
Rob Landley [Sun, 29 Jun 2014 01:16:11 +0000 (20:16 -0500)]
Add fallocate probe for uClibc.
Rob Landley [Sun, 29 Jun 2014 01:02:57 +0000 (20:02 -0500)]
Promote mkpasswd from pending to other.
Rob Landley [Sun, 29 Jun 2014 01:02:01 +0000 (20:02 -0500)]
Cleanup read_password(), factor out set_terminal(), fix salt bug (des wants the salt raw, no $ at the beginning).
Rob Landley [Sat, 28 Jun 2014 03:26:02 +0000 (22:26 -0500)]
Update cleanup page, now linking to descriptions of all of the ifconfig cleanup.
Divya Kothari [Thu, 26 Jun 2014 12:25:20 +0000 (07:25 -0500)]
I have developed few testsuite for toybox commands - ls, ln, rm, mv, printf, dd, renice.
Rob Landley [Thu, 26 Jun 2014 03:54:59 +0000 (22:54 -0500)]
Cleanup pass on mkpasswd.c
Rob Landley [Wed, 25 Jun 2014 11:26:17 +0000 (06:26 -0500)]
Cleanup pass on makedevs. Need to test it before promoting.
Rob Landley [Wed, 25 Jun 2014 02:47:07 +0000 (21:47 -0500)]
Glibc and uClibc provide CERASE from termios.h, but musl requies you to #include a non-posix header and the maintainer considers this a feature. So just use the constant directly.
Rob Landley [Tue, 24 Jun 2014 13:19:24 +0000 (08:19 -0500)]
find_in_path() is supposed to work with a NULL path, but didn't. Fix it.
Rob Landley [Tue, 24 Jun 2014 12:00:13 +0000 (07:00 -0500)]
Tweak license page to explicitly say that zero clause BSD is functionally equivalent to placing the code in the public domain.
This license variant looks like BSD, but is an unrestricted permission grant that doesn't require you to copy specific license text into derivative works. (The second paragraph is about something we DON'T do, I.E. provide any sort of warantee, and is just boilerplate from BSD to make it look like a BSD license.)
Rob Landley [Tue, 24 Jun 2014 11:42:08 +0000 (06:42 -0500)]
Move deallocvt.c into openvt.c, cleanup both.
Rob Landley [Sat, 21 Jun 2014 18:03:42 +0000 (13:03 -0500)]
Forgot to check in main() part of TOYFLAG_LOCALE change.
Rob Landley [Thu, 12 Jun 2014 03:44:48 +0000 (22:44 -0500)]
The readme, a text file, has an HTML close paragraph tag.
(Sheer force of habit.)
Rob Landley [Thu, 12 Jun 2014 03:43:54 +0000 (22:43 -0500)]
Option parsing for nohup needs to stop at first nonoption argument. Minor cleanups.
Rob Landley [Thu, 12 Jun 2014 03:41:25 +0000 (22:41 -0500)]
Cleanup pass on login
Rob Landley [Thu, 12 Jun 2014 03:18:35 +0000 (22:18 -0500)]
Enable fallocate in defconfig.
Rob Landley [Thu, 12 Jun 2014 03:14:44 +0000 (22:14 -0500)]
Cleanup pass on host.c
Rob Landley [Thu, 12 Jun 2014 03:13:28 +0000 (22:13 -0500)]
Move toys.toycount initialization _after_ zeroing toys, so help -a works again.
Rob Landley [Wed, 11 Jun 2014 13:11:38 +0000 (08:11 -0500)]
Promote strings.
Rob Landley [Wed, 11 Jun 2014 13:02:55 +0000 (08:02 -0500)]
Cleanup strings.
Rob Landley [Wed, 11 Jun 2014 02:57:05 +0000 (21:57 -0500)]
Update toybox help to say how to install the static binary.
Isaac Dunham [Tue, 10 Jun 2014 13:29:10 +0000 (08:29 -0500)]
pending/useradd: unbreak build
When useradd started using xfork(), the conditional in else if (pid > 0)
became unnecessary, since else means pid is nonzero and xfork makes it
non-negative. However, the "if" was not deleted.
Rob Landley [Mon, 9 Jun 2014 12:13:05 +0000 (07:13 -0500)]
Promote rfkill.
Rob Landley [Mon, 9 Jun 2014 12:12:49 +0000 (07:12 -0500)]
Forgot to check in strstart().
Rob Landley [Mon, 9 Jun 2014 12:07:33 +0000 (07:07 -0500)]
Cleanup pass on rfkill.
Rob Landley [Mon, 9 Jun 2014 10:53:43 +0000 (05:53 -0500)]
host needs -lresolv
Rob Landley [Mon, 9 Jun 2014 10:51:04 +0000 (05:51 -0500)]
When locale is enabled, sprintf("%.123s", str) is counting characters, not bytes, so we can't globally enable locale without opening stack/heap smashing vulnerabilities. Make commands individually request setlocale() using TOYFLAGS instead.
Rob Landley [Sun, 8 Jun 2014 22:05:10 +0000 (17:05 -0500)]
Warning fix from Rich Felker.
Rob Landley [Sun, 8 Jun 2014 20:03:32 +0000 (15:03 -0500)]
Add host by Rich Felker.
Rob Landley [Sun, 8 Jun 2014 19:01:37 +0000 (14:01 -0500)]
Isaac Dunham also reported that some diff implementations can't handle nonseekable input, so write to a temporary file instead of <(command).
Use trap EXIT to make sure the temporary files get deleted.
Rob Landley [Sun, 8 Jun 2014 18:49:57 +0000 (13:49 -0500)]
Isaac Dunham pointed out that busybox diff only implements unified diffs, and sent a patch to convert bloatcheck to use that. I tweaked it a bit.
Rob Landley [Sun, 8 Jun 2014 18:24:02 +0000 (13:24 -0500)]
Replace large parenthetical in bloatcheck with a function.
Rob Landley [Sat, 7 Jun 2014 17:03:54 +0000 (12:03 -0500)]
Minor tweaks to code style section.
Rob Landley [Sat, 7 Jun 2014 15:42:20 +0000 (10:42 -0500)]
Make md5sum/sha1sum -b flag be "brief" output (just the hash).
(It's not like systems implementing -b binary and -t text still matter.)
Rob Landley [Tue, 3 Jun 2014 11:27:24 +0000 (06:27 -0500)]
mount: start on option parsing, implement loopback and bind mount autodetection.
Rob Landley [Tue, 3 Jun 2014 02:16:20 +0000 (21:16 -0500)]
Help text should have a blank line after usage: lines, and a couple other whitespace tweaks.
Isaac Dunham [Sun, 1 Jun 2014 22:47:19 +0000 (17:47 -0500)]
The tests for link and du are attached.
Isaac Dunham [Sun, 1 Jun 2014 18:50:39 +0000 (13:50 -0500)]
cpio: archive more files
While writing tests for cpio, I found that cpio tries to open empty
files if they're regular files, and fails to archive them if unreadable.
This can be easily avoided, and is not the usual behavior.
Felix Janda [Sat, 31 May 2014 09:18:30 +0000 (11:18 +0200)]
iconv: some fixes
- fix problem with sequences at buffer boundaries
- add (ignored) -c and -s options
- don't try to continue with a file when read() fails
Rob Landley [Sat, 31 May 2014 23:00:04 +0000 (18:00 -0500)]
Promote partprobe.
Rob Landley [Sat, 31 May 2014 22:59:27 +0000 (17:59 -0500)]
Cleanup partprobe.
Rob Landley [Sat, 31 May 2014 17:33:24 +0000 (12:33 -0500)]
Introduce xfork() and make commands use it, and make some WEXITSTATUS() use WIFEXITED() and WTERMSIG()+127.
Ashwini Sharma [Thu, 29 May 2014 13:21:48 +0000 (08:21 -0500)]
killall5 - kill all the processes not in its session.
Ashwini Sharma [Thu, 29 May 2014 13:20:30 +0000 (08:20 -0500)]
makedevs - making devices/nodes in a range. Supports reading the tabled entry from file.
Ashwini Sharma [Thu, 29 May 2014 13:18:50 +0000 (08:18 -0500)]
strings - print the strings in the file.
Rob Landley [Thu, 29 May 2014 11:49:59 +0000 (06:49 -0500)]
First stab at mount, very incomplete.
Rob Landley [Thu, 29 May 2014 11:29:12 +0000 (06:29 -0500)]
Make "losetup /dev/loop0 filename" work.
Sigh. Implement the complex cases and you screw up the simple cases you already tested...
Rob Landley [Thu, 29 May 2014 10:22:02 +0000 (05:22 -0500)]
Switch mtab_list to doubly linked so we can traverse in either order. Convert umount and df. Add dlist_terminate() to break lists for traversal in either direction.
Rob Landley [Tue, 27 May 2014 12:56:51 +0000 (07:56 -0500)]
Add mount options to data getmountlist collects.
Rob Landley [Tue, 27 May 2014 01:39:20 +0000 (20:39 -0500)]
Brush the dust off toysh.
Simplify the config micromanagement tangle to just a single "interactive"
option. Fix an unused variable and wrong variable type.
Rob Landley [Mon, 26 May 2014 17:25:47 +0000 (12:25 -0500)]
Isaac Dunham suggested xprintf() should call fflush() instead of ferror(), and posix-2008 doesn't say if fflush() covers ferror() (or can return success when the stream's error state is set), so call both.
Bertold Van den Bergh [Mon, 26 May 2014 01:49:51 +0000 (20:49 -0500)]
I have attached a patch adding a program that allows re-reading the partition table. This is often used on embedded systems booting from SD/USB devices that need to resize partitions on first boot.
Ashwini Sharma [Sun, 25 May 2014 16:52:27 +0000 (11:52 -0500)]
atolx_range() is already added into lib/lib.c, in vconfig.c atolx_range() can be used in place of locally defined strtorange() function.
Isaac Dunham [Sun, 25 May 2014 16:46:58 +0000 (11:46 -0500)]
logname and whoami are the same as id -un, so merge them.
Since the starting letters are greater than those for 'id' or 'groups',
we cn just check if the first letter is greater than 'i'.
Rob Landley [Sun, 25 May 2014 03:40:41 +0000 (22:40 -0500)]
Bugfix from Isaac Dunham (new pci database has # comments in it) and some minor cleanups I had in my tree already.
Rob Landley [Sat, 24 May 2014 19:41:30 +0000 (14:41 -0500)]
Pending commands should default n
Ashwini Sharma [Sat, 24 May 2014 19:40:02 +0000 (14:40 -0500)]
Single-user login.
Rob Landley [Sat, 24 May 2014 18:50:19 +0000 (13:50 -0500)]
The "not root" test happens before looking for --help, so "./sulogin --help" doesn't show it. Instead make the "not root" failure case always show help text.
Rob Landley [Sat, 24 May 2014 17:51:53 +0000 (12:51 -0500)]
Remove debug detritus I didn't mean to to check in, and treat an "this variable can never actually be used uninitialized but gcc's warning generator can't tell and fails spamwards" warning.
Rob Landley [Sat, 24 May 2014 17:49:21 +0000 (12:49 -0500)]
Pass the same $CFLAGS to the library probe as the final build, to work with broken build environments that provide different libraries for --static and dynamic builds.