← Commit list

00a1dbd23

Denys Vlasenko
Denys Vlasenko
2017-07-29
SUCCESS Duration: 142s

Subject

ash: make tryexec(cmd) parameter const char

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

shell/ash.c+4 -4
@@ -7687,7 +7687,7 @@ static int builtinloc = -1; /* index in path of %builtin, or -1 */
static void
-tryexec(IF_FEATURE_SH_STANDALONE(int applet_no,) char *cmd, char **argv, char **envp)
+tryexec(IF_FEATURE_SH_STANDALONE(int applet_no,) const char *cmd, char **argv, char **envp)
{
#if ENABLE_FEATURE_SH_STANDALONE
if (applet_no >= 0) {
@@ -7713,7 +7713,7 @@ tryexec(IF_FEATURE_SH_STANDALONE(int applet_no,) char *cmd, char **argv, char **
#else
execve(cmd, argv, envp);
#endif
- if (cmd != (char*) bb_busybox_exec_path && errno == ENOEXEC) {
+ if (cmd != bb_busybox_exec_path && errno == ENOEXEC) {
/* Run "cmd" as a shell script:
* http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html
* "If the execve() function fails with ENOEXEC, the shell
@@ -7730,8 +7730,8 @@ tryexec(IF_FEATURE_SH_STANDALONE(int applet_no,) char *cmd, char **argv, char **
* message and exit code 126. For one, this prevents attempts
* to interpret foreign ELF binaries as shell scripts.
*/
- argv[0] = cmd;
- cmd = (char*) bb_busybox_exec_path;
+ argv[0] = (char*) cmd;
+ cmd = bb_busybox_exec_path;
/* NB: this is only possible because all callers of shellexec()
* ensure that the argv[-1] slot exists!
*/