support "#!/bin/busybox"-style wrappers. Needed for SELinux.

Patch by Yuichi Nakamura <ynakam@hitachisoft.jp>
This commit is contained in:
Denis Vlasenko
2007-08-25 18:25:24 +00:00
parent 5222677176
commit 737d131e5e
5 changed files with 94 additions and 37 deletions

View File

@@ -600,9 +600,10 @@ static int busybox_main(char **argv)
/* "busybox <applet> arg1 arg2 ..." */
argv++;
}
/* we want "<argv[0]>: applet not found", not "busybox: ..." */
applet_name = argv[0];
run_applet_and_exit(argv[0], argv);
/* We support "busybox /a/path/to/applet args..." too. Allows for
* "#!/bin/busybox"-style wrappers */
applet_name = bb_get_last_path_component(argv[0]);
run_applet_and_exit(applet_name, argv);
bb_error_msg_and_die("applet not found");
}