make busybox --install work even if /proc/self/exe doesn't exist
# size busybox_old busybox_unstripped text data bss dec hex filename 680095 2704 15648 698447 aa84f busybox_old 680099 2704 15648 698451 aa853 busybox_unstripped
This commit is contained in:
@@ -65,7 +65,7 @@ int exists_execable(const char *filename)
|
||||
*/
|
||||
int bb_execvp(const char *file, char *const argv[])
|
||||
{
|
||||
return execvp(find_applet_by_name(file) ? CONFIG_BUSYBOX_EXEC_PATH : file,
|
||||
return execvp(find_applet_by_name(file) ? bb_busybox_exec_path : file,
|
||||
argv);
|
||||
}
|
||||
#endif
|
||||
|
@@ -37,8 +37,9 @@ const char bb_path_gshadow_file[] = "/etc/gshadow";
|
||||
const char bb_path_nologin_file[] = "/etc/nologin";
|
||||
const char bb_path_securetty_file[] = "/etc/securetty";
|
||||
const char bb_path_motd_file[] = "/etc/motd";
|
||||
const char bb_default_login_shell[] = LIBBB_DEFAULT_LOGIN_SHELL;
|
||||
const char bb_dev_null[] = "/dev/null";
|
||||
const char bb_busybox_exec_path[] = CONFIG_BUSYBOX_EXEC_PATH;
|
||||
const char bb_default_login_shell[] = LIBBB_DEFAULT_LOGIN_SHELL;
|
||||
|
||||
const int const_int_0;
|
||||
const int const_int_1 = 1;
|
||||
|
@@ -220,8 +220,8 @@ void forkexit_or_rexec(char **argv)
|
||||
/* high-order bit of first char in argv[0] is a hidden
|
||||
* "we have (alrealy) re-execed, don't do it again" flag */
|
||||
argv[0][0] |= 0x80;
|
||||
execv(CONFIG_BUSYBOX_EXEC_PATH, argv);
|
||||
bb_perror_msg_and_die("exec %s", CONFIG_BUSYBOX_EXEC_PATH);
|
||||
execv(bb_busybox_exec_path, argv);
|
||||
bb_perror_msg_and_die("exec %s", bb_busybox_exec_path);
|
||||
}
|
||||
#else
|
||||
/* Dance around (void)...*/
|
||||
|
Reference in New Issue
Block a user