source: MondoRescue/branches/3.0/mindi-busybox/coreutils/chroot.c@ 2899

Last change on this file since 2899 was 2725, checked in by Bruno Cornec, 13 years ago
  • Update mindi-busybox to 1.18.3 to avoid problems with the tar command which is now failing on recent versions with busybox 1.7.3
File size: 703 bytes
Line 
1/* vi: set sw=4 ts=4: */
2/*
3 * Mini chroot implementation for busybox
4 *
5 * Copyright (C) 1999-2004 by Erik Andersen <andersen@codepoet.org>
6 *
7 * Licensed under GPLv2 or later, see file LICENSE in this source tree.
8 */
9
10/* BB_AUDIT SUSv3 N/A -- Matches GNU behavior. */
11
12#include "libbb.h"
13
14int chroot_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
15int chroot_main(int argc UNUSED_PARAM, char **argv)
16{
17 ++argv;
18 if (!*argv)
19 bb_show_usage();
20 xchroot(*argv);
21 xchdir("/");
22
23 ++argv;
24 if (!*argv) { /* no 2nd param (PROG), use shell */
25 argv -= 2;
26 argv[0] = getenv("SHELL");
27 if (!argv[0]) {
28 argv[0] = (char *) DEFAULT_SHELL;
29 }
30 argv[1] = (char *) "-i";
31 }
32
33 BB_EXECVP_or_die(argv);
34}
Note: See TracBrowser for help on using the repository browser.