Fixed up copyright notices and such
No binary (build failed)
—
(log yok)
| @@ -1,3 +1,9 @@ | |
| + | 0.30 |
| + | Major changes -- lots of stuff rewritten. Many thanks to Lineo for |
| + | paying me to make these updates. If you have any problems with busybox, |
| + | or notice any bugs -- please let me know so I can fix it. |
| + | -Erik Andersen |
| + | |
| 0.28 | |
| mini-netcat (mnc) rewritten. | |
| @@ -8,4 +14,4 @@ | |
| Printf added as module. | |
| 0.26 | |
| Touch now creates files. -c option for no create. | |
| - | |
| + | |
| @@ -18,7 +18,10 @@ mini-gzip(gzip), mini-netcat(mnc) | |
| Copyright 1998 Charles P. Wright <[email protected]> | |
| - | Please see the top of the source files for more precise indivigual |
| + | bunches of stuff as noted in header files |
| + | Copyright (C) 1999 by Lineo, inc. and written by |
| + | Erik Andersen <[email protected]>, <[email protected]> |
| + | |
| copyright and license info. | |
| This program suite may be distributed under the GNU General Public License. | |
| @@ -1,6 +1,23 @@ | |
| + | # Makefile for busybox |
| + | # |
| + | # This program is free software; you can redistribute it and/or modify |
| + | # it under the terms of the GNU General Public License as published by |
| + | # the Free Software Foundation; either version 2 of the License, or |
| + | # (at your option) any later version. |
| + | # |
| + | # This program is distributed in the hope that it will be useful, |
| + | # but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | # General Public License for more details. |
| + | # |
| + | # You should have received a copy of the GNU General Public License |
| + | # along with this program; if not, write to the Free Software |
| + | # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | # |
| + | |
| PROG=busybox | |
| - | VERSION=0.29alpha1 |
| + | VERSION=0.30 |
| BUILDTIME=$(shell date "+%Y%m%d-%H%M") | |
| # Comment out the following to make a debuggable build | |
| @@ -3,9 +3,10 @@ Please see the LICENSE file for copyright information. | |
| Busybox is a multicall binary used to provide a minimal subset of | |
| POSIX style commands and specialized functions. | |
| - | It is geared toward 'mini-systems' like boot floppies. Specifically |
| - | it is used in the Debian Rescue/Install system (which caused the |
| - | original busybox to be made), the Linux Router Project, and others. |
| + | It is geared toward the very small, i.e. boot floppies, embedded- |
| + | systems, etc. Specifically it is used in the Debian Rescue/Install |
| + | system (which caused the original busybox to be made), the Linux Router |
| + | Project, and others. |
| As of version 0.20 there is a version number. : ) | |
| Also as of version 0.20, BB is modularized to allow an easy build of | |
| @@ -23,9 +24,3 @@ to figure out by trial and error. | |
| Please feed patches back to: | |
| Erik Andersen <[email protected]> | |
| - | and |
| - | Bruce Perens <[email protected]> |
| - | and |
| - | Dave Cinege <[email protected]> |
| - | and: |
| - | Enrique Zanardi <[email protected]> |
| @@ -7,7 +7,7 @@ MF="busybox.c" | |
| LIST="$(sed -n '/^#define/{s/^#define //p;}' $DF)" | |
| for def in ${LIST}; do | |
| - | i=`sed -n 's/^#ifdef '$def'.*\/\/\(.*$\)/\/\1\//gp' $MF` |
| + | i=`sed -n 's/^#ifdef \<'$def'\>.*\/\/\(.*$\)/\/\1\//gp' $MF` |
| j=`sed -n '/^#ifdef '$def'.*/,/^#endif/{ s/.*\"\(.*\)\".*/\1/gp; }' $MF` | |
| for k in $j; do | |
| echo $i$k | |
| @@ -1,13 +1,29 @@ | |
| /* | |
| + | * Mini tar implementation for busybox based on code taken from sash. |
| + | * |
| * Copyright (c) 1999 by David I. Bell | |
| * Permission is granted to use, distribute, or modify this source, | |
| * provided that this copyright notice remains intact. | |
| * | |
| - | * The "tar" command, taken from sash. |
| - | * This allows creation, extraction, and listing of tar files. |
| - | * |
| * Permission to distribute this code under the GPL has been granted. | |
| + | * |
| * Modified for busybox by Erik Andersen <[email protected]> | |
| + | * Adjusted to grok stdin/stdout options. |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| */ | |
| @@ -14,12 +14,12 @@ | |
| #define BB_DF | |
| #define BB_DMESG | |
| //#define BB_DUTMP | |
| - | #define BB_FDFLUSH |
| + | //#define BB_FDFLUSH |
| #define BB_FIND | |
| - | #define BB_FSCK_MINIX |
| - | #define BB_MKFS_MINIX |
| + | //#define BB_FSCK_MINIX |
| + | //#define BB_MKFS_MINIX |
| #define BB_GREP | |
| - | #define BB_HALT |
| + | //#define BB_HALT |
| #define BB_INIT | |
| #define BB_KILL | |
| //#define BB_LENGTH | |
| @@ -35,7 +35,7 @@ | |
| //#define BB_MNC | |
| #define BB_MORE | |
| #define BB_MOUNT | |
| - | #define BB_MT |
| + | //#define BB_MT |
| #define BB_MV | |
| //#define BB_PRINTF | |
| #define BB_PS | |
| @@ -43,7 +43,7 @@ | |
| #define BB_REBOOT | |
| #define BB_RM | |
| #define BB_RMDIR | |
| - | #define BB_SFDISK |
| + | //#define BB_SFDISK |
| #define BB_SLEEP | |
| #define BB_SWAPONOFF | |
| #define BB_SYNC | |
| @@ -7,7 +7,7 @@ MF="busybox.c" | |
| LIST="$(sed -n '/^#define/{s/^#define //p;}' $DF)" | |
| for def in ${LIST}; do | |
| - | i=`sed -n 's/^#ifdef '$def'.*\/\/\(.*$\)/\/\1\//gp' $MF` |
| + | i=`sed -n 's/^#ifdef \<'$def'\>.*\/\/\(.*$\)/\/\1\//gp' $MF` |
| j=`sed -n '/^#ifdef '$def'.*/,/^#endif/{ s/.*\"\(.*\)\".*/\1/gp; }' $MF` | |
| for k in $j; do | |
| echo $i$k | |
| @@ -2,7 +2,7 @@ | |
| * Mini Cat implementation for busybox | |
| * | |
| * Copyright (C) 1999 by Lineo, inc. | |
| - | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini chown/chmod/chgrp implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -107,7 +109,7 @@ int chmod_chown_chgrp_main(int argc, char **argv) | |
| } else { | |
| /* Find the selected group */ | |
| - | if ( whichApp==CHGRP_APP && groupName ) { |
| + | if ( whichApp==CHGRP_APP ) { |
| groupName = *argv; | |
| gid = my_getgrnam(groupName); | |
| if (gid == -1) | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini chroot implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini clear implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini clear implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,3 +1,24 @@ | |
| + | /* |
| + | * Mini loadkmap implementation for busybox |
| + | * |
| + | * Copyright (C) 1998 Enrique Zanardi <[email protected]> |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| + | */ |
| + | |
| #include "internal.h" | |
| #include <errno.h> | |
| #include <fcntl.h> | |
| @@ -2,7 +2,7 @@ | |
| * Mini Cat implementation for busybox | |
| * | |
| * Copyright (C) 1999 by Lineo, inc. | |
| - | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini chroot implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini cp implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,7 +1,7 @@ | |
| /* | |
| * Mini date implementation for busybox | |
| * | |
| - | * Copyright (C) 1999 by Erik Andersen <[email protected]> |
| + | * by Matthew Grant <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,30 +1,48 @@ | |
| /* | |
| + | * Mini dd implementation for busybox |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| + | * based in part on code taken from sash. |
| + | * |
| * Copyright (c) 1999 by David I. Bell | |
| * Permission is granted to use, distribute, or modify this source, | |
| * provided that this copyright notice remains intact. | |
| * | |
| - | * The "dd" command, originally taken from sash. |
| - | * |
| * Permission to distribute this code under the GPL has been granted. | |
| - | * Mostly rewritten and bugs fixed for busybox by Erik Andersen <[email protected]> |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| */ | |
| + | |
| #include "internal.h" | |
| #include <stdio.h> | |
| #include <fcntl.h> | |
| #include <errno.h> | |
| static const char dd_usage[] = | |
| - | "Copy a file, converting and formatting according to options\n\ |
| - | \n\ |
| - | usage: [if=name] [of=name] [bs=n] [count=n]\n\ |
| - | \tif=FILE\tread from FILE instead of stdin\n\ |
| - | \tof=FILE\twrite to FILE instead of stout\n\ |
| - | \tbs=n\tread and write N BYTES at a time\n\ |
| - | \tcount=n\tcopy only n input blocks\n\ |
| - | \tskip=n\tskip n input blocks\n\ |
| - | \n\ |
| - | BYTES may be suffixed: by k for x1024, b for x512, and w for x2.\n"; |
| + | "dd [if=name] [of=name] [bs=n] [count=n]\n" |
| + | "Copy a file, converting and formatting according to options\n\n" |
| + | "\tif=FILE\tread from FILE instead of stdin\n" |
| + | "\tof=FILE\twrite to FILE instead of stout\n" |
| + | "\tbs=n\tread and write N BYTES at a time\n" |
| + | "\tcount=n\tcopy only n input blocks\n" |
| + | //"\tskip=n\tskip n input blocks\n" |
| + | "\n" |
| + | "BYTES may be suffixed: by k for x1024, b for x512, and w for x2.\n"; |
| @@ -118,6 +136,7 @@ extern int dd_main (int argc, char **argv) | |
| goto usage; | |
| } | |
| } | |
| + | #if 0 |
| else if (strncmp(*argv, "skip", 4) == 0) { | |
| skipBlocks = atoi( *argv); | |
| if (skipBlocks <= 0) { | |
| @@ -126,8 +145,8 @@ extern int dd_main (int argc, char **argv) | |
| } | |
| } | |
| + | #endif |
| else { | |
| - | fprintf (stderr, "Got here. argv=%s\n", *argv); |
| goto usage; | |
| } | |
| argc--; | |
| @@ -1,3 +1,26 @@ | |
| + | /* |
| + | * Mini df implementation for busybox |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| + | * based on original code by (I think) Bruce Perens <[email protected]>. |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| + | */ |
| + | |
| #include "internal.h" | |
| #include <stdio.h> | |
| #include <mntent.h> | |
| @@ -5,42 +28,38 @@ | |
| #include <sys/vfs.h> | |
| #include <fstab.h> | |
| - | static const char df_usage[] = "df [filesystem ...]\n" |
| - | "\n" |
| - | "\tPrint the filesystem space used and space available.\n"; |
| + | static const char df_usage[] = "df [filesystem ...]\n" |
| + | "\n" "\tPrint the filesystem space used and space available.\n"; |
| - | static int |
| - | df(char* device, const char * mountPoint) |
| + | static int df(char *device, const char *mountPoint) |
| { | |
| - | struct statfs s; |
| - | long blocks_used; |
| - | long blocks_percent_used; |
| - | |
| - | if ( statfs(mountPoint, &s) != 0 ) { |
| - | perror(mountPoint); |
| - | return 1; |
| - | } |
| - | |
| - | if ( s.f_blocks > 0 ) { |
| - | blocks_used = s.f_blocks - s.f_bfree; |
| - | blocks_percent_used = (long) |
| - | (blocks_used * 100.0 / (blocks_used + s.f_bavail) + 0.5); |
| - | if ( strcmp(device, "/dev/root")==0) |
| - | device=(getfsfile ("/"))->fs_spec; |
| - | |
| - | printf( |
| - | "%-20s %9ld %9ld %9ld %3ld%% %s\n", |
| - | device, |
| - | (long)(s.f_blocks * (s.f_bsize / 1024.0)), |
| - | (long)((s.f_blocks - s.f_bfree) * (s.f_bsize / 1024.0)), |
| - | (long)(s.f_bavail * (s.f_bsize / 1024.0)), |
| - | blocks_percent_used, |
| - | mountPoint); |
| - | |
| - | } |
| - | |
| - | return 0; |
| + | struct statfs s; |
| + | long blocks_used; |
| + | long blocks_percent_used; |
| + | |
| + | if (statfs(mountPoint, &s) != 0) { |
| + | perror(mountPoint); |
| + | return 1; |
| + | } |
| + | |
| + | if (s.f_blocks > 0) { |
| + | blocks_used = s.f_blocks - s.f_bfree; |
| + | blocks_percent_used = (long) |
| + | (blocks_used * 100.0 / (blocks_used + s.f_bavail) + 0.5); |
| + | if (strcmp(device, "/dev/root") == 0) |
| + | device = (getfsfile("/"))->fs_spec; |
| + | |
| + | printf("%-20s %9ld %9ld %9ld %3ld%% %s\n", |
| + | device, |
| + | (long) (s.f_blocks * (s.f_bsize / 1024.0)), |
| + | (long) ((s.f_blocks - s.f_bfree) * (s.f_bsize / 1024.0)), |
| + | (long) (s.f_bavail * (s.f_bsize / 1024.0)), |
| + | blocks_percent_used, mountPoint); |
| + | |
| + | } |
| + | |
| + | return 0; |
| } | |
| /* | |
| @@ -50,87 +69,79 @@ df(char* device, const char * mountPoint) | |
| * Given any other file (or directory), find the mount table entry for its | |
| * filesystem. | |
| */ | |
| - | extern struct mntent * |
| - | findMountPoint(const char* name, const char* table) |
| + | extern struct mntent *findMountPoint(const char *name, const char *table) |
| { | |
| - | struct stat s; |
| - | dev_t mountDevice; |
| - | FILE * mountTable; |
| - | struct mntent * mountEntry; |
| - | |
| - | if ( stat(name, &s) != 0 ) |
| - | return 0; |
| - | |
| - | if ( (s.st_mode & S_IFMT) == S_IFBLK ) |
| - | mountDevice = s.st_rdev; |
| - | else |
| - | mountDevice = s.st_dev; |
| - | |
| - | |
| - | if ( (mountTable = setmntent(table, "r")) == 0 ) |
| - | return 0; |
| - | |
| - | while ( (mountEntry = getmntent(mountTable)) != 0 ) { |
| - | if ( strcmp(name, mountEntry->mnt_dir) == 0 |
| - | || strcmp(name, mountEntry->mnt_fsname) == 0 ) /* String match. */ |
| - | break; |
| - | if ( stat(mountEntry->mnt_fsname, &s) == 0 |
| - | && s.st_rdev == mountDevice ) /* Match the device. */ |
| - | break; |
| - | if ( stat(mountEntry->mnt_dir, &s) == 0 |
| - | && s.st_dev == mountDevice ) /* Match the directory's mount point. */ |
| - | break; |
| - | } |
| - | endmntent(mountTable); |
| - | return mountEntry; |
| + | struct stat s; |
| + | dev_t mountDevice; |
| + | FILE *mountTable; |
| + | struct mntent *mountEntry; |
| + | |
| + | if (stat(name, &s) != 0) |
| + | return 0; |
| + | |
| + | if ((s.st_mode & S_IFMT) == S_IFBLK) |
| + | mountDevice = s.st_rdev; |
| + | else |
| + | mountDevice = s.st_dev; |
| + | |
| + | |
| + | if ((mountTable = setmntent(table, "r")) == 0) |
| + | return 0; |
| + | |
| + | while ((mountEntry = getmntent(mountTable)) != 0) { |
| + | if (strcmp(name, mountEntry->mnt_dir) == 0 |
| + | || strcmp(name, mountEntry->mnt_fsname) == 0) /* String match. */ |
| + | break; |
| + | if (stat(mountEntry->mnt_fsname, &s) == 0 && s.st_rdev == mountDevice) /* Match the device. */ |
| + | break; |
| + | if (stat(mountEntry->mnt_dir, &s) == 0 && s.st_dev == mountDevice) /* Match the directory's mount point. */ |
| + | break; |
| + | } |
| + | endmntent(mountTable); |
| + | return mountEntry; |
| } | |
| - | extern int |
| - | df_main(int argc, char * * argv) |
| + | extern int df_main(int argc, char **argv) |
| { | |
| - | printf("%-20s %-14s %s %s %s %s\n", "Filesystem", |
| - | "1k-blocks", "Used", "Available", "Use%", "Mounted on"); |
| - | |
| - | if ( argc > 1 ) { |
| - | struct mntent* mountEntry; |
| - | int status; |
| - | |
| - | while ( argc > 1 ) { |
| - | if ( (mountEntry = findMountPoint(argv[1], "/proc/mounts")) == 0 ) |
| - | { |
| - | fprintf(stderr, "%s: can't find mount point.\n" ,argv[1]); |
| - | return 1; |
| - | } |
| - | status = df(mountEntry->mnt_fsname, mountEntry->mnt_dir); |
| - | if ( status != 0 ) |
| - | return status; |
| - | argc--; |
| - | argv++; |
| - | } |
| - | return 0; |
| - | } |
| - | else { |
| - | FILE * mountTable; |
| - | struct mntent * mountEntry; |
| - | |
| - | mountTable = setmntent("/proc/mounts", "r"); |
| - | if ( mountTable == 0) { |
| - | perror("/proc/mounts"); |
| - | exit( FALSE); |
| - | } |
| - | |
| - | while ( (mountEntry = getmntent (mountTable))) { |
| - | int status=df(mountEntry->mnt_fsname, mountEntry->mnt_dir); |
| - | if (status) |
| - | return status; |
| - | } |
| - | endmntent(mountTable); |
| + | printf("%-20s %-14s %s %s %s %s\n", "Filesystem", |
| + | "1k-blocks", "Used", "Available", "Use%", "Mounted on"); |
| + | |
| + | if (argc > 1) { |
| + | struct mntent *mountEntry; |
| + | int status; |
| + | |
| + | while (argc > 1) { |
| + | if ((mountEntry = findMountPoint(argv[1], "/proc/mounts")) == |
| + | 0) { |
| + | fprintf(stderr, "%s: can't find mount point.\n", argv[1]); |
| + | return 1; |
| + | } |
| + | status = df(mountEntry->mnt_fsname, mountEntry->mnt_dir); |
| + | if (status != 0) |
| + | return status; |
| + | argc--; |
| + | argv++; |
| } | |
| - | |
| return 0; | |
| - | } |
| - | |
| + | } else { |
| + | FILE *mountTable; |
| + | struct mntent *mountEntry; |
| + | |
| + | mountTable = setmntent("/proc/mounts", "r"); |
| + | if (mountTable == 0) { |
| + | perror("/proc/mounts"); |
| + | exit(FALSE); |
| + | } |
| + | while ((mountEntry = getmntent(mountTable))) { |
| + | int status = df(mountEntry->mnt_fsname, mountEntry->mnt_dir); |
| + | if (status) |
| + | return status; |
| + | } |
| + | endmntent(mountTable); |
| + | } |
| + | return 0; |
| + | } |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini ln implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini mkdir implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,3 +1,24 @@ | |
| + | /* |
| + | * Mini mknod implementation for busybox |
| + | * |
| + | * Copyright (C) 1995, 1996 by Bruce Perens <[email protected]>. |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| + | */ |
| + | |
| #include "internal.h" | |
| #include <stdio.h> | |
| #include <errno.h> | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini mv implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,9 +1,29 @@ | |
| + | /* |
| + | * Mini pwd implementation for busybox |
| + | * |
| + | * |
| + | * Copyright (C) 1995, 1996 by Bruce Perens <[email protected]>. |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| + | */ |
| + | |
| #include "internal.h" | |
| #include <stdio.h> | |
| #include <dirent.h> | |
| - | const char pwd_usage[] = "Print the current directory.\n"; |
| - | |
| extern int | |
| pwd_main(int argc, char * * argv) | |
| { | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini rm implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini rmdir implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,3 +1,25 @@ | |
| + | /* |
| + | * Mini sleep implementation for busybox |
| + | * |
| + | * |
| + | * Copyright (C) 1995, 1996 by Bruce Perens <[email protected]>. |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| + | */ |
| + | |
| #include "internal.h" | |
| #include <stdio.h> | |
| @@ -1,3 +1,25 @@ | |
| + | /* |
| + | * Mini sync implementation for busybox |
| + | * |
| + | * |
| + | * Copyright (C) 1995, 1996 by Bruce Perens <[email protected]>. |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| + | */ |
| + | |
| #include "internal.h" | |
| #include <stdio.h> | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini touch implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini cp implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,7 +1,7 @@ | |
| /* | |
| * Mini date implementation for busybox | |
| * | |
| - | * Copyright (C) 1999 by Erik Andersen <[email protected]> |
| + | * by Matthew Grant <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,30 +1,48 @@ | |
| /* | |
| + | * Mini dd implementation for busybox |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| + | * based in part on code taken from sash. |
| + | * |
| * Copyright (c) 1999 by David I. Bell | |
| * Permission is granted to use, distribute, or modify this source, | |
| * provided that this copyright notice remains intact. | |
| * | |
| - | * The "dd" command, originally taken from sash. |
| - | * |
| * Permission to distribute this code under the GPL has been granted. | |
| - | * Mostly rewritten and bugs fixed for busybox by Erik Andersen <[email protected]> |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| */ | |
| + | |
| #include "internal.h" | |
| #include <stdio.h> | |
| #include <fcntl.h> | |
| #include <errno.h> | |
| static const char dd_usage[] = | |
| - | "Copy a file, converting and formatting according to options\n\ |
| - | \n\ |
| - | usage: [if=name] [of=name] [bs=n] [count=n]\n\ |
| - | \tif=FILE\tread from FILE instead of stdin\n\ |
| - | \tof=FILE\twrite to FILE instead of stout\n\ |
| - | \tbs=n\tread and write N BYTES at a time\n\ |
| - | \tcount=n\tcopy only n input blocks\n\ |
| - | \tskip=n\tskip n input blocks\n\ |
| - | \n\ |
| - | BYTES may be suffixed: by k for x1024, b for x512, and w for x2.\n"; |
| + | "dd [if=name] [of=name] [bs=n] [count=n]\n" |
| + | "Copy a file, converting and formatting according to options\n\n" |
| + | "\tif=FILE\tread from FILE instead of stdin\n" |
| + | "\tof=FILE\twrite to FILE instead of stout\n" |
| + | "\tbs=n\tread and write N BYTES at a time\n" |
| + | "\tcount=n\tcopy only n input blocks\n" |
| + | //"\tskip=n\tskip n input blocks\n" |
| + | "\n" |
| + | "BYTES may be suffixed: by k for x1024, b for x512, and w for x2.\n"; |
| @@ -118,6 +136,7 @@ extern int dd_main (int argc, char **argv) | |
| goto usage; | |
| } | |
| } | |
| + | #if 0 |
| else if (strncmp(*argv, "skip", 4) == 0) { | |
| skipBlocks = atoi( *argv); | |
| if (skipBlocks <= 0) { | |
| @@ -126,8 +145,8 @@ extern int dd_main (int argc, char **argv) | |
| } | |
| } | |
| + | #endif |
| else { | |
| - | fprintf (stderr, "Got here. argv=%s\n", *argv); |
| goto usage; | |
| } | |
| argc--; | |
| @@ -1,3 +1,26 @@ | |
| + | /* |
| + | * Mini df implementation for busybox |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| + | * based on original code by (I think) Bruce Perens <[email protected]>. |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| + | */ |
| + | |
| #include "internal.h" | |
| #include <stdio.h> | |
| #include <mntent.h> | |
| @@ -5,42 +28,38 @@ | |
| #include <sys/vfs.h> | |
| #include <fstab.h> | |
| - | static const char df_usage[] = "df [filesystem ...]\n" |
| - | "\n" |
| - | "\tPrint the filesystem space used and space available.\n"; |
| + | static const char df_usage[] = "df [filesystem ...]\n" |
| + | "\n" "\tPrint the filesystem space used and space available.\n"; |
| - | static int |
| - | df(char* device, const char * mountPoint) |
| + | static int df(char *device, const char *mountPoint) |
| { | |
| - | struct statfs s; |
| - | long blocks_used; |
| - | long blocks_percent_used; |
| - | |
| - | if ( statfs(mountPoint, &s) != 0 ) { |
| - | perror(mountPoint); |
| - | return 1; |
| - | } |
| - | |
| - | if ( s.f_blocks > 0 ) { |
| - | blocks_used = s.f_blocks - s.f_bfree; |
| - | blocks_percent_used = (long) |
| - | (blocks_used * 100.0 / (blocks_used + s.f_bavail) + 0.5); |
| - | if ( strcmp(device, "/dev/root")==0) |
| - | device=(getfsfile ("/"))->fs_spec; |
| - | |
| - | printf( |
| - | "%-20s %9ld %9ld %9ld %3ld%% %s\n", |
| - | device, |
| - | (long)(s.f_blocks * (s.f_bsize / 1024.0)), |
| - | (long)((s.f_blocks - s.f_bfree) * (s.f_bsize / 1024.0)), |
| - | (long)(s.f_bavail * (s.f_bsize / 1024.0)), |
| - | blocks_percent_used, |
| - | mountPoint); |
| - | |
| - | } |
| - | |
| - | return 0; |
| + | struct statfs s; |
| + | long blocks_used; |
| + | long blocks_percent_used; |
| + | |
| + | if (statfs(mountPoint, &s) != 0) { |
| + | perror(mountPoint); |
| + | return 1; |
| + | } |
| + | |
| + | if (s.f_blocks > 0) { |
| + | blocks_used = s.f_blocks - s.f_bfree; |
| + | blocks_percent_used = (long) |
| + | (blocks_used * 100.0 / (blocks_used + s.f_bavail) + 0.5); |
| + | if (strcmp(device, "/dev/root") == 0) |
| + | device = (getfsfile("/"))->fs_spec; |
| + | |
| + | printf("%-20s %9ld %9ld %9ld %3ld%% %s\n", |
| + | device, |
| + | (long) (s.f_blocks * (s.f_bsize / 1024.0)), |
| + | (long) ((s.f_blocks - s.f_bfree) * (s.f_bsize / 1024.0)), |
| + | (long) (s.f_bavail * (s.f_bsize / 1024.0)), |
| + | blocks_percent_used, mountPoint); |
| + | |
| + | } |
| + | |
| + | return 0; |
| } | |
| /* | |
| @@ -50,87 +69,79 @@ df(char* device, const char * mountPoint) | |
| * Given any other file (or directory), find the mount table entry for its | |
| * filesystem. | |
| */ | |
| - | extern struct mntent * |
| - | findMountPoint(const char* name, const char* table) |
| + | extern struct mntent *findMountPoint(const char *name, const char *table) |
| { | |
| - | struct stat s; |
| - | dev_t mountDevice; |
| - | FILE * mountTable; |
| - | struct mntent * mountEntry; |
| - | |
| - | if ( stat(name, &s) != 0 ) |
| - | return 0; |
| - | |
| - | if ( (s.st_mode & S_IFMT) == S_IFBLK ) |
| - | mountDevice = s.st_rdev; |
| - | else |
| - | mountDevice = s.st_dev; |
| - | |
| - | |
| - | if ( (mountTable = setmntent(table, "r")) == 0 ) |
| - | return 0; |
| - | |
| - | while ( (mountEntry = getmntent(mountTable)) != 0 ) { |
| - | if ( strcmp(name, mountEntry->mnt_dir) == 0 |
| - | || strcmp(name, mountEntry->mnt_fsname) == 0 ) /* String match. */ |
| - | break; |
| - | if ( stat(mountEntry->mnt_fsname, &s) == 0 |
| - | && s.st_rdev == mountDevice ) /* Match the device. */ |
| - | break; |
| - | if ( stat(mountEntry->mnt_dir, &s) == 0 |
| - | && s.st_dev == mountDevice ) /* Match the directory's mount point. */ |
| - | break; |
| - | } |
| - | endmntent(mountTable); |
| - | return mountEntry; |
| + | struct stat s; |
| + | dev_t mountDevice; |
| + | FILE *mountTable; |
| + | struct mntent *mountEntry; |
| + | |
| + | if (stat(name, &s) != 0) |
| + | return 0; |
| + | |
| + | if ((s.st_mode & S_IFMT) == S_IFBLK) |
| + | mountDevice = s.st_rdev; |
| + | else |
| + | mountDevice = s.st_dev; |
| + | |
| + | |
| + | if ((mountTable = setmntent(table, "r")) == 0) |
| + | return 0; |
| + | |
| + | while ((mountEntry = getmntent(mountTable)) != 0) { |
| + | if (strcmp(name, mountEntry->mnt_dir) == 0 |
| + | || strcmp(name, mountEntry->mnt_fsname) == 0) /* String match. */ |
| + | break; |
| + | if (stat(mountEntry->mnt_fsname, &s) == 0 && s.st_rdev == mountDevice) /* Match the device. */ |
| + | break; |
| + | if (stat(mountEntry->mnt_dir, &s) == 0 && s.st_dev == mountDevice) /* Match the directory's mount point. */ |
| + | break; |
| + | } |
| + | endmntent(mountTable); |
| + | return mountEntry; |
| } | |
| - | extern int |
| - | df_main(int argc, char * * argv) |
| + | extern int df_main(int argc, char **argv) |
| { | |
| - | printf("%-20s %-14s %s %s %s %s\n", "Filesystem", |
| - | "1k-blocks", "Used", "Available", "Use%", "Mounted on"); |
| - | |
| - | if ( argc > 1 ) { |
| - | struct mntent* mountEntry; |
| - | int status; |
| - | |
| - | while ( argc > 1 ) { |
| - | if ( (mountEntry = findMountPoint(argv[1], "/proc/mounts")) == 0 ) |
| - | { |
| - | fprintf(stderr, "%s: can't find mount point.\n" ,argv[1]); |
| - | return 1; |
| - | } |
| - | status = df(mountEntry->mnt_fsname, mountEntry->mnt_dir); |
| - | if ( status != 0 ) |
| - | return status; |
| - | argc--; |
| - | argv++; |
| - | } |
| - | return 0; |
| - | } |
| - | else { |
| - | FILE * mountTable; |
| - | struct mntent * mountEntry; |
| - | |
| - | mountTable = setmntent("/proc/mounts", "r"); |
| - | if ( mountTable == 0) { |
| - | perror("/proc/mounts"); |
| - | exit( FALSE); |
| - | } |
| - | |
| - | while ( (mountEntry = getmntent (mountTable))) { |
| - | int status=df(mountEntry->mnt_fsname, mountEntry->mnt_dir); |
| - | if (status) |
| - | return status; |
| - | } |
| - | endmntent(mountTable); |
| + | printf("%-20s %-14s %s %s %s %s\n", "Filesystem", |
| + | "1k-blocks", "Used", "Available", "Use%", "Mounted on"); |
| + | |
| + | if (argc > 1) { |
| + | struct mntent *mountEntry; |
| + | int status; |
| + | |
| + | while (argc > 1) { |
| + | if ((mountEntry = findMountPoint(argv[1], "/proc/mounts")) == |
| + | 0) { |
| + | fprintf(stderr, "%s: can't find mount point.\n", argv[1]); |
| + | return 1; |
| + | } |
| + | status = df(mountEntry->mnt_fsname, mountEntry->mnt_dir); |
| + | if (status != 0) |
| + | return status; |
| + | argc--; |
| + | argv++; |
| } | |
| - | |
| return 0; | |
| - | } |
| - | |
| + | } else { |
| + | FILE *mountTable; |
| + | struct mntent *mountEntry; |
| + | |
| + | mountTable = setmntent("/proc/mounts", "r"); |
| + | if (mountTable == 0) { |
| + | perror("/proc/mounts"); |
| + | exit(FALSE); |
| + | } |
| + | while ((mountEntry = getmntent(mountTable))) { |
| + | int status = df(mountEntry->mnt_fsname, mountEntry->mnt_dir); |
| + | if (status) |
| + | return status; |
| + | } |
| + | endmntent(mountTable); |
| + | } |
| + | return 0; |
| + | } |
| @@ -1,8 +1,8 @@ | |
| - | |
| /* | |
| * Mini fdflush implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1995, 1996 by Bruce Perens <[email protected]>. |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini find implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini find implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini grep implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini grep implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,3 +1,25 @@ | |
| + | /* |
| + | * Mini halt implementation for busybox |
| + | * |
| + | * |
| + | * Copyright (C) 1995, 1996 by Bruce Perens <[email protected]>. |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| + | */ |
| + | |
| #include "internal.h" | |
| #include <signal.h> | |
| @@ -1,3 +1,26 @@ | |
| + | /* |
| + | * Mini init implementation for busybox |
| + | * |
| + | * |
| + | * Copyright (C) 1995, 1996 by Bruce Perens <[email protected]>. |
| + | * Adjusted by so many folks, it's impossible to keep track. |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| + | */ |
| + | |
| #include "internal.h" | |
| #include <stdio.h> | |
| #include <stdlib.h> | |
| @@ -1,3 +1,25 @@ | |
| + | /* |
| + | * Mini halt implementation for busybox |
| + | * |
| + | * |
| + | * Copyright (C) 1995, 1996 by Bruce Perens <[email protected]>. |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| + | */ |
| + | |
| #include "internal.h" | |
| #include <signal.h> | |
| @@ -1,3 +1,26 @@ | |
| + | /* |
| + | * Mini init implementation for busybox |
| + | * |
| + | * |
| + | * Copyright (C) 1995, 1996 by Bruce Perens <[email protected]>. |
| + | * Adjusted by so many folks, it's impossible to keep track. |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| + | */ |
| + | |
| #include "internal.h" | |
| #include <stdio.h> | |
| #include <stdlib.h> | |
| @@ -1,3 +1,25 @@ | |
| + | /* |
| + | * Mini reboot implementation for busybox |
| + | * |
| + | * |
| + | * Copyright (C) 1995, 1996 by Bruce Perens <[email protected]>. |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| + | */ |
| + | |
| #include "internal.h" | |
| #include <signal.h> | |
| @@ -1,7 +1,6 @@ | |
| /* | |
| - | * Busybox main header file |
| + | * Busybox main internal header file |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,3 +1,25 @@ | |
| + | /* |
| + | * Mini kill implementation for busybox |
| + | * |
| + | * Copyright (C) 1995, 1996 by Bruce Perens <[email protected]>. |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| + | */ |
| + | |
| + | |
| #include "internal.h" | |
| #include <stdio.h> | |
| #include <stdlib.h> | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini ln implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,3 +1,24 @@ | |
| + | /* |
| + | * Mini loadkmap implementation for busybox |
| + | * |
| + | * Copyright (C) 1998 Enrique Zanardi <[email protected]> |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| + | */ |
| + | |
| #include "internal.h" | |
| #include <errno.h> | |
| #include <fcntl.h> | |
| @@ -1,3 +1,25 @@ | |
| + | /* |
| + | * Mini update implementation for busybox |
| + | * |
| + | * |
| + | * Copyright (C) 1995, 1996 by Bruce Perens <[email protected]>. |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| + | */ |
| + | |
| #include "internal.h" | |
| #include <linux/unistd.h> | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini mkdir implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,3 +1,24 @@ | |
| + | /* |
| + | * Mini mknod implementation for busybox |
| + | * |
| + | * Copyright (C) 1995, 1996 by Bruce Perens <[email protected]>. |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| + | */ |
| + | |
| #include "internal.h" | |
| #include <stdio.h> | |
| #include <errno.h> | |
| @@ -1,7 +1,11 @@ | |
| /* | |
| * Mini more implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Blended by Erik Andersen <[email protected]>, <[email protected]> |
| + | * based on the original more implementation and code from the Debian |
| + | * boot-floppies team. |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,7 +1,7 @@ | |
| /* | |
| * Mini mount implementation for busybox | |
| * | |
| - | * Copyright (C) 1999 by Erik Andersen <[email protected]> |
| + | * Copyright (C) 1995, 1996 by Bruce Perens <[email protected]>. |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -22,8 +22,12 @@ | |
| * will try mounting stuff with all fses when passed -t auto | |
| * | |
| * 1999-04-17 Dave Cinege...Rewrote -t auto. Fixed ro mtab. | |
| - | * 1999-10-07 Erik Andersen. Rewrote of a lot of code. Removed mtab |
| - | * usage, major adjustments, and some serious dieting all around. |
| + | * |
| + | * 1999-10-07 Erik Andersen <[email protected]>, <[email protected]>. |
| + | * Rewrote of a lot of code. Removed mtab usage (I plan on |
| + | * putting it back as a compile-time option some time), |
| + | * major adjustments to option parsing, and some serious |
| + | * dieting all around. |
| */ | |
| #include "internal.h" | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini mv implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,3 +1,25 @@ | |
| + | /* |
| + | * Mini kill implementation for busybox |
| + | * |
| + | * Copyright (C) 1995, 1996 by Bruce Perens <[email protected]>. |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| + | */ |
| + | |
| + | |
| #include "internal.h" | |
| #include <stdio.h> | |
| #include <stdlib.h> | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini ps implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini ps implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,9 +1,29 @@ | |
| + | /* |
| + | * Mini pwd implementation for busybox |
| + | * |
| + | * |
| + | * Copyright (C) 1995, 1996 by Bruce Perens <[email protected]>. |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| + | */ |
| + | |
| #include "internal.h" | |
| #include <stdio.h> | |
| #include <dirent.h> | |
| - | const char pwd_usage[] = "Print the current directory.\n"; |
| - | |
| extern int | |
| pwd_main(int argc, char * * argv) | |
| { | |
| @@ -1,3 +1,25 @@ | |
| + | /* |
| + | * Mini reboot implementation for busybox |
| + | * |
| + | * |
| + | * Copyright (C) 1995, 1996 by Bruce Perens <[email protected]>. |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| + | */ |
| + | |
| #include "internal.h" | |
| #include <signal.h> | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini rm implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini rmdir implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,3 +1,25 @@ | |
| + | /* |
| + | * Mini sleep implementation for busybox |
| + | * |
| + | * |
| + | * Copyright (C) 1995, 1996 by Bruce Perens <[email protected]>. |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| + | */ |
| + | |
| #include "internal.h" | |
| #include <stdio.h> | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini swapon/swapoff implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,3 +1,25 @@ | |
| + | /* |
| + | * Mini sync implementation for busybox |
| + | * |
| + | * |
| + | * Copyright (C) 1995, 1996 by Bruce Perens <[email protected]>. |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| + | */ |
| + | |
| #include "internal.h" | |
| #include <stdio.h> | |
| @@ -1,13 +1,29 @@ | |
| /* | |
| + | * Mini tar implementation for busybox based on code taken from sash. |
| + | * |
| * Copyright (c) 1999 by David I. Bell | |
| * Permission is granted to use, distribute, or modify this source, | |
| * provided that this copyright notice remains intact. | |
| * | |
| - | * The "tar" command, taken from sash. |
| - | * This allows creation, extraction, and listing of tar files. |
| - | * |
| * Permission to distribute this code under the GPL has been granted. | |
| + | * |
| * Modified for busybox by Erik Andersen <[email protected]> | |
| + | * Adjusted to grok stdin/stdout options. |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| */ | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini touch implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini true/false implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini umount implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,3 +1,25 @@ | |
| + | /* |
| + | * Mini update implementation for busybox |
| + | * |
| + | * |
| + | * Copyright (C) 1995, 1996 by Bruce Perens <[email protected]>. |
| + | * |
| + | * This program is free software; you can redistribute it and/or modify |
| + | * it under the terms of the GNU General Public License as published by |
| + | * the Free Software Foundation; either version 2 of the License, or |
| + | * (at your option) any later version. |
| + | * |
| + | * This program is distributed in the hope that it will be useful, |
| + | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| + | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| + | * General Public License for more details. |
| + | * |
| + | * You should have received a copy of the GNU General Public License |
| + | * along with this program; if not, write to the Free Software |
| + | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| + | * |
| + | */ |
| + | |
| #include "internal.h" | |
| #include <linux/unistd.h> | |
| @@ -1,8 +1,8 @@ | |
| - | |
| /* | |
| * Mini fdflush implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1995, 1996 by Bruce Perens <[email protected]>. |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,7 +1,11 @@ | |
| /* | |
| * Mini more implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Blended by Erik Andersen <[email protected]>, <[email protected]> |
| + | * based on the original more implementation and code from the Debian |
| + | * boot-floppies team. |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,7 +1,7 @@ | |
| /* | |
| * Mini mount implementation for busybox | |
| * | |
| - | * Copyright (C) 1999 by Erik Andersen <[email protected]> |
| + | * Copyright (C) 1995, 1996 by Bruce Perens <[email protected]>. |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -22,8 +22,12 @@ | |
| * will try mounting stuff with all fses when passed -t auto | |
| * | |
| * 1999-04-17 Dave Cinege...Rewrote -t auto. Fixed ro mtab. | |
| - | * 1999-10-07 Erik Andersen. Rewrote of a lot of code. Removed mtab |
| - | * usage, major adjustments, and some serious dieting all around. |
| + | * |
| + | * 1999-10-07 Erik Andersen <[email protected]>, <[email protected]>. |
| + | * Rewrote of a lot of code. Removed mtab usage (I plan on |
| + | * putting it back as a compile-time option some time), |
| + | * major adjustments to option parsing, and some serious |
| + | * dieting all around. |
| */ | |
| #include "internal.h" | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini swapon/swapoff implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Mini umount implementation for busybox | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * |
| + | * Copyright (C) 1999 by Lineo, inc. |
| + | * Written by Erik Andersen <[email protected]>, <[email protected]> |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -1,7 +1,9 @@ | |
| /* | |
| * Utility routines. | |
| * | |
| - | * Copyright (C) 1998 by Erik Andersen <[email protected]> |
| + | * Copyright (C) tons of folks. Tracking down who wrote what |
| + | * isn't something I'm going to worry about... If you wrote something |
| + | * here, please feel free to acknowledge your work. |
| * | |
| * This program is free software; you can redistribute it and/or modify | |
| * it under the terms of the GNU General Public License as published by | |
| @@ -86,6 +88,7 @@ int isDirectory(const char *name) | |
| * and modes. Returns TRUE if successful, or FALSE on a failure with an | |
| * error message output. (Failure is not indicted if the attributes cannot | |
| * be set.) | |
| + | * -Erik Andersen |
| */ | |
| int | |
| copyFile( const char *srcName, const char *destName, | |