Convert a chunk of usage.h to USE_ and SKIP_ (more to do there), and fix a
[oweals/busybox.git] / shell / hush.c
index ff29974b6558dd371f8a9fd731f22e6154263d69..0a46d125aa8080e67d18cc56c226e2147004bc28 100644 (file)
 #include "cmdedit.h"
 #else
 #define bb_applet_name "hush"
-#include "standalone.h"
+//#include "standalone.h"
 #define hush_main main
 #undef CONFIG_FEATURE_SH_FANCY_PROMPT
-#define BB_BANNER
+#define BB_BANNER ""
 #endif
 #define SPECIAL_VAR_SYMBOL 03
 #define FLAG_EXIT_FROM_LOOP 1
@@ -233,20 +233,20 @@ struct variables {
 /* globals, connect us to the outside world
  * the first three support $?, $#, and $1 */
 static char **global_argv;
-static unsigned int global_argc;
-static unsigned int last_return_code;
+static int global_argc;
+static int last_return_code;
 extern char **environ; /* This is in <unistd.h>, but protected with __USE_GNU */
 
 /* "globals" within this file */
 static char *ifs;
-static char map[256];
+static unsigned char map[256];
 static int fake_mode;
 static int interactive;
 static struct close_me *close_me_head;
 static const char *cwd;
 static struct pipe *job_list;
 static unsigned int last_bg_pid;
-static unsigned int last_jobid;
+static int last_jobid;
 static unsigned int shell_terminal;
 static char *PS1;
 static char *PS2;
@@ -305,7 +305,7 @@ static void debug_printf(const char *format, ...)
        va_end(args);
 }
 #else
-static inline void debug_printf(const char *format, ...) { }
+static inline void debug_printf(const char *format ATTRIBUTE_UNUSED, ...) { }
 #endif
 #define final_printf debug_printf
 
@@ -472,7 +472,7 @@ static int builtin_cd(struct child_prog *child)
 }
 
 /* built-in 'env' handler */
-static int builtin_env(struct child_prog *dummy)
+static int builtin_env(struct child_prog *dummy ATTRIBUTE_UNUSED)
 {
        char **e = environ;
        if (e == NULL) return EXIT_FAILURE;
@@ -604,7 +604,7 @@ static int builtin_fg_bg(struct child_prog *child)
 }
 
 /* built-in 'help' handler */
-static int builtin_help(struct child_prog *dummy)
+static int builtin_help(struct child_prog *dummy ATTRIBUTE_UNUSED)
 {
        const struct built_in_command *x;
 
@@ -620,7 +620,7 @@ static int builtin_help(struct child_prog *dummy)
 }
 
 /* built-in 'jobs' handler */
-static int builtin_jobs(struct child_prog *child)
+static int builtin_jobs(struct child_prog *child ATTRIBUTE_UNUSED)
 {
        struct pipe *job;
        char *status_string;
@@ -638,7 +638,7 @@ static int builtin_jobs(struct child_prog *child)
 
 
 /* built-in 'pwd' handler */
-static int builtin_pwd(struct child_prog *dummy)
+static int builtin_pwd(struct child_prog *dummy ATTRIBUTE_UNUSED)
 {
        puts(set_cwd());
        return EXIT_SUCCESS;
@@ -2457,7 +2457,7 @@ int parse_string(o_string *dest, struct p_context *ctx, const char *src)
 int parse_stream(o_string *dest, struct p_context *ctx,
        struct in_str *input, int end_trigger)
 {
-       unsigned int ch, m;
+       int ch, m;
        int redir_fd;
        redir_type redir_style;
        int next;
@@ -2614,10 +2614,10 @@ int parse_stream(o_string *dest, struct p_context *ctx,
        return 0;
 }
 
-static void mapset(const unsigned char *set, int code)
+static void mapset(const char *set, int code)
 {
        const unsigned char *s;
-       for (s=set; *s; s++) map[*s] = code;
+       for (s = (const unsigned char *)set; *s; s++) map[(int)*s] = code;
 }
 
 static void update_ifs_map(void)
@@ -2812,7 +2812,8 @@ int hush_main(int argc, char **argv)
        if (interactive) {
                /* Looks like they want an interactive shell */
 #ifndef CONFIG_FEATURE_SH_EXTRA_QUIET
-               printf( "\n\n" BB_BANNER " hush - the humble shell v0.01 (testing)\n");
+               printf( "\n\n%s hush - the humble shell v0.01 (testing)\n",
+                       BB_BANNER);
                printf( "Enter 'help' for a list of built-in commands.\n\n");
 #endif
                setup_job_control();