Changeset 1765 in MondoRescue for branches/2.2.5/mindi-busybox/coreutils/rm.c
- Timestamp:
- Nov 4, 2007, 3:16:40 AM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2.2.5/mindi-busybox/coreutils/rm.c
r821 r1765 5 5 * Copyright (C) 2001 Matt Kraai <kraai@alumni.carnegiemellon.edu> 6 6 * 7 * 8 * This program is free software; you can redistribute it and/or modify 9 * it under the terms of the GNU General Public License as published by 10 * the Free Software Foundation; either version 2 of the License, or 11 * (at your option) any later version. 12 * 13 * This program is distributed in the hope that it will be useful, 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 16 * General Public License for more details. 17 * 18 * You should have received a copy of the GNU General Public License 19 * along with this program; if not, write to the Free Software 20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 21 * 7 * Licensed under GPLv2 or later, see file LICENSE in this tarball for details. 22 8 */ 23 9 … … 30 16 */ 31 17 32 #include <unistd.h> 33 #include "busybox.h" 18 #include "libbb.h" 34 19 20 /* This is a NOFORK applet. Be very careful! */ 21 22 int rm_main(int argc, char **argv); 35 23 int rm_main(int argc, char **argv) 36 24 { 37 25 int status = 0; 38 26 int flags = 0; 39 unsigned longopt;27 unsigned opt; 40 28 41 bb_opt_complementally = "f-i:i-f"; 42 opt = bb_getopt_ulflags(argc, argv, "fiRr"); 43 if(opt & 1) 44 flags |= FILEUTILS_FORCE; 45 if(opt & 2) 29 opt_complementary = "f-i:i-f"; 30 opt = getopt32(argv, "fiRr"); 31 argv += optind; 32 if (opt & 1) 33 flags |= FILEUTILS_FORCE; 34 if (opt & 2) 46 35 flags |= FILEUTILS_INTERACTIVE; 47 if (opt & 12)36 if (opt & 12) 48 37 flags |= FILEUTILS_RECUR; 49 38 50 if (* (argv += optind)!= NULL) {39 if (*argv != NULL) { 51 40 do { 52 41 const char *base = bb_get_last_path_component(*argv); 53 42 54 if ( (base[0] == '.') && (!base[1] || ((base[1] == '.') && !base[2]))) {55 bb_error_msg("cannot remove `.' or `..'");43 if (DOT_OR_DOTDOT(base)) { 44 bb_error_msg("cannot remove '.' or '..'"); 56 45 } else if (remove_file(*argv, flags) >= 0) { 57 46 continue;
Note:
See TracChangeset
for help on using the changeset viewer.