preparatory patch for -Wwrite-strings #4
authorDenis Vlasenko <vda.linux@googlemail.com>
Mon, 29 Jan 2007 22:51:58 +0000 (22:51 -0000)
committerDenis Vlasenko <vda.linux@googlemail.com>
Mon, 29 Jan 2007 22:51:58 +0000 (22:51 -0000)
14 files changed:
findutils/find.c
libbb/lineedit.c
modutils/insmod.c
networking/arp.c
networking/httpd.c
networking/ifupdown.c
networking/libiproute/iptunnel.c
networking/libiproute/rt_names.c
networking/libiproute/utils.c
networking/libiproute/utils.h
runit/runsv.c
runit/runsvdir.c
runit/svlogd.c
sysklogd/syslogd.c

index 42cee87e1fe8851ca0ad9e0ad43960eebafa66c7..0c22ee6d1b6e434c95139d2658a66f0844b0e6f1 100644 (file)
@@ -497,7 +497,7 @@ static action*** parse_params(char **argv)
                        }
                        ap = ALLOC_ACTION(paren);
                        ap->subexpr = parse_params(argv + 1);
-                       *endarg = ")"; /* restore NULLed parameter */
+                       *endarg = (char*) ")"; /* restore NULLed parameter */
                        argv = endarg;
                }
                else if (strcmp(arg, "-prune") == 0) {
@@ -537,7 +537,7 @@ int find_main(int argc, char **argv)
 #endif
        }
        if (firstopt == 1) {
-               argv[0] = ".";
+               argv[0] = (char*)".";
                argv--;
                firstopt++;
        }
@@ -553,7 +553,7 @@ int find_main(int argc, char **argv)
        while ((arg = argp[0])) {
                if (strcmp(arg, "-follow") == 0) {
                        dereference = TRUE;
-                       argp[0] = "-a";
+                       argp[0] = (char*)"-a";
                }
 #if ENABLE_FEATURE_FIND_XDEV
                else if (strcmp(arg, "-xdev") == 0) {
@@ -569,7 +569,7 @@ int find_main(int argc, char **argv)
                                        xdev_dev[i-1] = stbuf.st_dev;
                                }
                        }
-                       argp[0] = "-a";
+                       argp[0] = (char*)"-a";
                }
 #endif
                argp++;
index bce06843be348bb4ef01bf69d8eec604bac9fb77..34389086831d1babd40166c33f0c301d69f14bb5 100644 (file)
@@ -81,8 +81,8 @@ static int num_ok_lines = 1;
 #endif
 
 #if ENABLE_FEATURE_GETUSERNAME_AND_HOMEDIR
-static char *user_buf = "";
-static char *home_pwd_buf = "";
+static char *user_buf = (char*)"";
+static char *home_pwd_buf = (char*)"";
 #endif
 
 #if ENABLE_FEATURE_TAB_COMPLETION
@@ -422,7 +422,7 @@ static void exe_n_cwd_tab_completion(char *command, int type)
        char *pfind = strrchr(command, '/');
 
        npaths = 1;
-       path1[0] = ".";
+       path1[0] = (char*)".";
 
        if (pfind == NULL) {
                /* no dir, if flags==EXE_ONLY - get paths, else "." */
@@ -447,7 +447,7 @@ static void exe_n_cwd_tab_completion(char *command, int type)
 
                while ((next = readdir(dir)) != NULL) {
                        int len1;
-                       char *str_found = next->d_name;
+                       const char *str_found = next->d_name;
 
                        /* matched? */
                        if (strncmp(str_found, pfind, strlen(pfind)))
index 241db45e8482fff89cd346e0d08044b03fbb08c2..edbdfab0e9c97e0a0b2aebe97c43c1b750c87f26 100644 (file)
@@ -2540,7 +2540,7 @@ new_process_module_arguments(struct obj_file *f, int argc, char **argv)
                                        } else {
                                                /* last string */
                                                str = q;
-                                               q = "";
+                                               q = (char*)"";
                                        }
                                }
 
index 6bd12656a6521d62248e10021c227a92537bc064..33191d89b3fb40b6e504002d97308ac8c3008471 100644 (file)
@@ -46,7 +46,7 @@ static const struct aftype *ap; /* current address family       */
 static const struct hwtype *hw; /* current hardware type        */
 static int sockfd;              /* active socket descriptor     */
 static smallint hw_set;         /* flag if hw-type was set (-H) */
-static char *device = "";       /* current device               */
+static const char *device = ""; /* current device               */
 
 static const char *const options[] = {
        "pub",
@@ -317,7 +317,7 @@ static int arp_set(char **args)
 
 /* Print the contents of an ARP request block. */
 static void
-arp_disp(char *name, char *ip, int type, int arp_flags,
+arp_disp(const char *name, char *ip, int type, int arp_flags,
                 char *hwa, char *mask, char *dev)
 {
        const struct hwtype *xhw;
@@ -371,7 +371,7 @@ static int arp_show(char *name)
        char dev[100];
        int type, flags;
        FILE *fp;
-       char *hostname;
+       const char *hostname;
        int num;
        unsigned entries = 0, shown = 0;
 
index ea9fe0974f2b9e606eed525546ea1c67d79374a0..e3f798c4cf90df69205e7d3b03eaa4c7a5e7912f 100644 (file)
@@ -653,17 +653,16 @@ static char *encodeString(const char *string)
        /* take the simple route and encode everything */
        /* could possibly scan once to get length.     */
        int len = strlen(string);
-       char *out = malloc(len * 6 + 1);
+       char *out = xmalloc(len * 6 + 1);
        char *p = out;
        char ch;
 
-       if (!out) return "";
        while ((ch = *string++)) {
                // very simple check for what to encode
                if (isalnum(ch)) *p++ = ch;
                else p += sprintf(p, "&#%d;", (unsigned char) ch);
        }
-       *p = 0;
+       *p = '\0';
        return out;
 }
 #endif          /* FEATURE_HTTPD_ENCODE_URL_STR */
@@ -1051,15 +1050,15 @@ static int sendCgi(const char *url,
                /* (Older versions of bbox seem to do some decoding) */
                setenv1("QUERY_STRING", config->query);
                setenv1("SERVER_SOFTWARE", httpdVersion);
-               putenv("SERVER_PROTOCOL=HTTP/1.0");
-               putenv("GATEWAY_INTERFACE=CGI/1.1");
+               putenv((char*)"SERVER_PROTOCOL=HTTP/1.0");
+               putenv((char*)"GATEWAY_INTERFACE=CGI/1.1");
                /* Having _separate_ variables for IP and port defeats
                 * the purpose of having socket abstraction. Which "port"
                 * are you using on Unix domain socket?
                 * IOW - REMOTE_PEER="1.2.3.4:56" makes much more sense.
                 * Oh well... */
                {
-                       char *p = config->rmt_ip_str ? : "";
+                       char *p = config->rmt_ip_str ? : (char*)"";
                        char *cp = strrchr(p, ':');
                        if (ENABLE_FEATURE_IPV6 && cp && strchr(cp, ']'))
                                cp = NULL;
@@ -1078,7 +1077,7 @@ static int sendCgi(const char *url,
 #if ENABLE_FEATURE_HTTPD_BASIC_AUTH
                if (config->remoteuser) {
                        setenv1("REMOTE_USER", config->remoteuser);
-                       putenv("AUTH_TYPE=Basic");
+                       putenv((char*)"AUTH_TYPE=Basic");
                }
 #endif
                if (config->referer)
index adbc37e43e4daad06541ff63cf03ef13ad90f218..4ec3d37a88266c7e359110fb148455c9d0106f96 100644 (file)
@@ -842,7 +842,7 @@ static struct interfaces_file_t *read_interfaces(const char *filename)
        return defn;
 }
 
-static char *setlocalenv(char *format, const char *name, const char *value)
+static char *setlocalenv(const char *format, const char *name, const char *value)
 {
        char *result;
        char *here;
index a67803ff43ca73e067ee8fa06d3b529992f2f496..e2e75fce06084c1b6ca09c7d9b3fd6f12e5535e7 100644 (file)
@@ -85,7 +85,7 @@ static char *do_ioctl_get_ifname(int idx)
 
 
 
-static int do_get_ioctl(char *basedev, struct ip_tunnel_parm *p)
+static int do_get_ioctl(const char *basedev, struct ip_tunnel_parm *p)
 {
        struct ifreq ifr;
        int fd;
@@ -102,7 +102,7 @@ static int do_get_ioctl(char *basedev, struct ip_tunnel_parm *p)
        return err;
 }
 
-static int do_add_ioctl(int cmd, char *basedev, struct ip_tunnel_parm *p)
+static int do_add_ioctl(int cmd, const char *basedev, struct ip_tunnel_parm *p)
 {
        struct ifreq ifr;
        int fd;
@@ -123,7 +123,7 @@ static int do_add_ioctl(int cmd, char *basedev, struct ip_tunnel_parm *p)
        return err;
 }
 
-static int do_del_ioctl(char *basedev, struct ip_tunnel_parm *p)
+static int do_del_ioctl(const char *basedev, struct ip_tunnel_parm *p)
 {
        struct ifreq ifr;
        int fd;
index 686326ff9196083051ae0fd28a413fd78086dff0..797c83b4e82e28a136dedd0e0a686eafc9ad7469 100644 (file)
@@ -13,7 +13,7 @@
 #include "libbb.h"
 #include "rt_names.h"
 
-static void rtnl_tab_initialize(char *file, const char **tab, int size)
+static void rtnl_tab_initialize(const char *file, const char **tab, int size)
 {
        char buf[512];
        FILE *fp;
@@ -30,10 +30,11 @@ static void rtnl_tab_initialize(char *file, const char **tab, int size)
                        p++;
                if (*p == '#' || *p == '\n' || *p == 0)
                        continue;
-               if (sscanf(p, "0x%x %s\n", &id, namebuf) != 2 &&
-                   sscanf(p, "0x%x %s #", &id, namebuf) != 2 &&
-                   sscanf(p, "%d %s\n", &id, namebuf) != 2 &&
-                   sscanf(p, "%d %s #", &id, namebuf) != 2) {
+               if (sscanf(p, "0x%x %s\n", &id, namebuf) != 2
+                && sscanf(p, "0x%x %s #", &id, namebuf) != 2
+                && sscanf(p, "%d %s\n", &id, namebuf) != 2
+                && sscanf(p, "%d %s #", &id, namebuf) != 2
+               ) {
                        bb_error_msg("database %s is corrupted at %s",
                                file, p);
                        return;
index 5e06656f68c57b6644b34bebc055716af554203f..591c8933a390bf53d263eaec36e813ee580f7015 100644 (file)
@@ -178,7 +178,7 @@ int get_prefix_1(inet_prefix * dst, char *arg, int family)
 
        slash = strchr(arg, '/');
        if (slash)
-               *slash = 0;
+               *slash = '\0';
        err = get_addr_1(dst, arg, family);
        if (err == 0) {
                switch (dst->family) {
@@ -237,26 +237,22 @@ uint32_t get_addr32(char *name)
 
 void incomplete_command(void)
 {
-       bb_error_msg("command line is not complete, try option \"help\"");
-       exit(-1);
+       bb_error_msg_and_die("command line is not complete, try option \"help\"");
 }
 
-void invarg(const char * const arg, const char * const opt)
+void invarg(const char *arg, const char *opt)
 {
-       bb_error_msg(bb_msg_invalid_arg, arg, opt);
-       exit(-1);
+       bb_error_msg_and_die(bb_msg_invalid_arg, arg, opt);
 }
 
-void duparg(char *key, char *arg)
+void duparg(const char *key, const char *arg)
 {
-       bb_error_msg("duplicate \"%s\": \"%s\" is the second value", key, arg);
-       exit(-1);
+       bb_error_msg_and_die("duplicate \"%s\": \"%s\" is the second value", key, arg);
 }
 
-void duparg2(char *key, char *arg)
+void duparg2(const char *key, const char *arg)
 {
-       bb_error_msg("either \"%s\" is duplicate, or \"%s\" is garbage", key, arg);
-       exit(-1);
+       bb_error_msg_and_die("either \"%s\" is duplicate, or \"%s\" is garbage", key, arg);
 }
 
 int matches(const char *cmd, const char *pattern)
index 5af8ba744508ae44bdc4df5049ebfa6333639b8e..ebf2af1943a1959b4336070bbe7a401e16a42c49 100644 (file)
@@ -75,9 +75,9 @@ extern int get_s8(int8_t *val, char *arg, int base);
 extern const char *format_host(int af, int len, void *addr, char *buf, int buflen);
 extern const char *rt_addr_n2a(int af, int len, void *addr, char *buf, int buflen);
 
-void invarg(const char * const, const char * const) ATTRIBUTE_NORETURN;
-void duparg(char *, char *) ATTRIBUTE_NORETURN;
-void duparg2(char *, char *) ATTRIBUTE_NORETURN;
+void invarg(const char *, const char *) ATTRIBUTE_NORETURN;
+void duparg(const char *, const char *) ATTRIBUTE_NORETURN;
+void duparg2(const char *, const char *) ATTRIBUTE_NORETURN;
 int matches(const char *arg, const char *pattern);
 extern int inet_addr_match(inet_prefix *a, inet_prefix *b, int bits);
 
index 018a80eeb4d1aacbfbf6e445350b6fe651327bd3..03187a8b7bbab8cea911ea3d670b346c9f311116 100644 (file)
@@ -42,26 +42,26 @@ static char *dir;
 
 #define usage() bb_show_usage()
 
-static void fatal2_cannot(char *m1, char *m2)
+static void fatal2_cannot(const char *m1, const char *m2)
 {
        bb_perror_msg_and_die("%s: fatal: cannot %s%s", dir, m1, m2);
        /* was exiting 111 */
 }
-static void fatal_cannot(char *m)
+static void fatal_cannot(const char *m)
 {
        fatal2_cannot(m, "");
        /* was exiting 111 */
 }
-static void fatal2x_cannot(char *m1, char *m2)
+static void fatal2x_cannot(const char *m1, const char *m2)
 {
        bb_error_msg_and_die("%s: fatal: cannot %s%s", dir, m1, m2);
        /* was exiting 111 */
 }
-static void warn_cannot(char *m)
+static void warn_cannot(const char *m)
 {
        bb_perror_msg("%s: warning: cannot %s", dir, m);
 }
-static void warnx_cannot(char *m)
+static void warnx_cannot(const char *m)
 {
        bb_error_msg("%s: warning: cannot %s", dir, m);
 }
@@ -280,12 +280,12 @@ static void startservice(struct svdir *s)
        char *run[2];
 
        if (s->state == S_FINISH)
-               run[0] = "./finish";
+               run[0] = (char*)"./finish";
        else {
-               run[0] = "./run";
+               run[0] = (char*)"./run";
                custom(s, 'u');
        }
-       run[1] = 0;
+       run[1] = NULL;
 
        if (s->pid != 0) stopservice(s); /* should never happen */
        while ((p = fork()) == -1) {
index 22f2a0505fdefcf70115de61c56f83ee2add543b..7e1dd6c306e2b99e49637bbfacab610430076837 100644 (file)
@@ -28,20 +28,20 @@ static int exitsoon;
 static int pgrp;
 
 #define usage() bb_show_usage()
-static void fatal2_cannot(char *m1, char *m2)
+static void fatal2_cannot(const char *m1, const char *m2)
 {
        bb_perror_msg_and_die("%s: fatal: cannot %s%s", svdir, m1, m2);
        /* was exiting 100 */
 }
-static void warn3x(char *m1, char *m2, char *m3)
+static void warn3x(const char *m1, const char *m2, const char *m3)
 {
        bb_error_msg("%s: warning: %s%s%s", svdir, m1, m2, m3);
 }
-static void warn2_cannot(char *m1, char *m2)
+static void warn2_cannot(const char *m1, const char *m2)
 {
        warn3x("cannot ", m1, m2);
 }
-static void warnx(char *m1)
+static void warnx(const char *m1)
 {
        warn3x(m1, "", "");
 }
@@ -55,7 +55,7 @@ static void s_hangup(int sig_no)
        exitsoon = 2;
 }
 
-static void runsv(int no, char *name)
+static void runsv(int no, const char *name)
 {
        int pid = fork();
 
@@ -67,8 +67,8 @@ static void runsv(int no, char *name)
                /* child */
                char *prog[3];
 
-               prog[0] = "runsv";
-               prog[1] = name;
+               prog[0] = (char*)"runsv";
+               prog[1] = (char*)name;
                prog[2] = NULL;
                sig_uncatch(SIGHUP);
                sig_uncatch(SIGTERM);
index 41a7c860e8ab6ce0d68ff5ab1a67a53749906021..59b1e57214fe96d05088b64fdc69a6bae455e95a 100644 (file)
@@ -75,7 +75,7 @@ static struct logdir {
        char match;
        char matcherr;
 } *dir;
-static unsigned dirn = 0;
+static unsigned dirn;
 
 #define FATAL "fatal: "
 #define WARNING "warning: "
@@ -83,18 +83,18 @@ static unsigned dirn = 0;
 #define INFO "info: "
 
 #define usage() bb_show_usage()
-static void fatalx(char *m0)
+static void fatalx(const char *m0)
 {
        bb_error_msg_and_die(FATAL"%s", m0);
 }
-static void warn(char *m0) {
+static void warn(const char *m0) {
        bb_perror_msg(WARNING"%s", m0);
 }
-static void warn2(char *m0, char *m1)
+static void warn2(const char *m0, const char *m1)
 {
        bb_perror_msg(WARNING"%s: %s", m0, m1);
 }
-static void warnx(char *m0, char *m1)
+static void warnx(const char *m0, const char *m1)
 {
        bb_error_msg(WARNING"%s: %s", m0, m1);
 }
@@ -103,12 +103,12 @@ static void pause_nomem(void)
        bb_error_msg(PAUSE"out of memory");
        sleep(3);
 }
-static void pause1cannot(char *m0)
+static void pause1cannot(const char *m0)
 {
        bb_perror_msg(PAUSE"cannot %s", m0);
        sleep(3);
 }
-static void pause2cannot(char *m0, char *m1)
+static void pause2cannot(const char *m0, const char *m1)
 {
        bb_perror_msg(PAUSE"cannot %s %s", m0, m1);
        sleep(3);
@@ -168,8 +168,8 @@ static unsigned processorstart(struct logdir *ld)
                        bb_perror_msg_and_die(FATAL"cannot %s processor %s", "move filedescriptor for", ld->name);
 
 // getenv("SHELL")?
-               prog[0] = "sh";
-               prog[1] = "-c";
+               prog[0] = (char*)"sh";
+               prog[1] = (char*)"-c";
                prog[2] = ld->processor;
                prog[3] = '\0';
                execve("/bin/sh", prog, environ);
index dca488ec35f01c6c6db00238b1a555e756c05350..bfa9a446cfc3422c3c8576dd14c07b8460fcc462 100644 (file)
@@ -25,7 +25,7 @@
 #define DEBUG 0
 
 /* Path to the unix socket */
-static char *dev_log_name;
+static const char *dev_log_name;
 
 /* Path for the file where all log messages are written */
 static const char *logFilePath = "/var/log/messages";
@@ -444,7 +444,7 @@ static void split_escape_and_log(char *tmpbuf, int len)
 
 static void quit_signal(int sig)
 {
-       timestamp_and_log(LOG_SYSLOG | LOG_INFO, "syslogd exiting", 0);
+       timestamp_and_log(LOG_SYSLOG | LOG_INFO, (char*)"syslogd exiting", 0);
        puts("syslogd exiting");
        unlink(dev_log_name);
        if (ENABLE_FEATURE_IPC_SYSLOG)
@@ -455,7 +455,7 @@ static void quit_signal(int sig)
 static void do_mark(int sig)
 {
        if (markInterval) {
-               timestamp_and_log(LOG_SYSLOG | LOG_INFO, "-- MARK --", 0);
+               timestamp_and_log(LOG_SYSLOG | LOG_INFO, (char*)"-- MARK --", 0);
                alarm(markInterval);
        }
 }
@@ -501,7 +501,8 @@ static void do_syslogd(void)
                ipcsyslog_init();
        }
 
-       timestamp_and_log(LOG_SYSLOG | LOG_INFO, "syslogd started: BusyBox v" BB_VER, 0);
+       timestamp_and_log(LOG_SYSLOG | LOG_INFO,
+                       (char*)"syslogd started: BusyBox v" BB_VER, 0);
 
        for (;;) {
                FD_ZERO(&fds);