Eric Andersen | 6fd8c66 | 2001-02-13 20:04:30 +0000 | [diff] [blame] | 1 | /* vi: set sw=4 ts=4: */ |
| 2 | /* |
| 3 | * pivot_root.c - Change root file system. Based on util-linux 2.10s |
| 4 | * |
| 5 | * busyboxed by Evin Robertson |
Eric Andersen | d160a27 | 2001-02-24 19:17:07 +0000 | [diff] [blame] | 6 | * pivot_root syscall stubbed by Erik Andersen, so it will compile |
Eric Andersen | c7bda1c | 2004-03-15 08:29:22 +0000 | [diff] [blame] | 7 | * regardless of the kernel being used. |
Bernhard Reutner-Fischer | b1629b1 | 2006-05-19 19:29:19 +0000 | [diff] [blame] | 8 | * |
Rob Landley | e9a7a62 | 2006-09-22 02:52:41 +0000 | [diff] [blame] | 9 | * Licensed under GPL version 2, see file LICENSE in this tarball for details. |
Eric Andersen | 6fd8c66 | 2001-02-13 20:04:30 +0000 | [diff] [blame] | 10 | */ |
Denis Vlasenko | b6adbf1 | 2007-05-26 19:00:18 +0000 | [diff] [blame] | 11 | #include "libbb.h" |
Eric Andersen | 6fd8c66 | 2001-02-13 20:04:30 +0000 | [diff] [blame] | 12 | |
Eric Andersen | e76c3b0 | 2001-04-05 03:14:39 +0000 | [diff] [blame] | 13 | extern int pivot_root(const char * new_root,const char * put_old); |
Eric Andersen | 6fd8c66 | 2001-02-13 20:04:30 +0000 | [diff] [blame] | 14 | |
Denis Vlasenko | 9b49a5e | 2007-10-11 10:05:36 +0000 | [diff] [blame] | 15 | int pivot_root_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; |
Eric Andersen | 6fd8c66 | 2001-02-13 20:04:30 +0000 | [diff] [blame] | 16 | int pivot_root_main(int argc, char **argv) |
| 17 | { |
Denis Vlasenko | 5983914 | 2006-09-10 18:26:51 +0000 | [diff] [blame] | 18 | if (argc != 3) |
| 19 | bb_show_usage(); |
Eric Andersen | 6fd8c66 | 2001-02-13 20:04:30 +0000 | [diff] [blame] | 20 | |
Denis Vlasenko | f885c54 | 2007-02-06 00:35:36 +0000 | [diff] [blame] | 21 | if (pivot_root(argv[1], argv[2]) < 0) { |
| 22 | /* prints "pivot_root: <strerror text>" */ |
| 23 | bb_perror_nomsg_and_die(); |
| 24 | } |
Eric Andersen | 6fd8c66 | 2001-02-13 20:04:30 +0000 | [diff] [blame] | 25 | |
Denis Vlasenko | 5983914 | 2006-09-10 18:26:51 +0000 | [diff] [blame] | 26 | return EXIT_SUCCESS; |
Eric Andersen | 6fd8c66 | 2001-02-13 20:04:30 +0000 | [diff] [blame] | 27 | } |