preparatory patch for -Wwrite-strings #6
authorDenis Vlasenko <vda.linux@googlemail.com>
Mon, 29 Jan 2007 23:43:52 +0000 (23:43 -0000)
committerDenis Vlasenko <vda.linux@googlemail.com>
Mon, 29 Jan 2007 23:43:52 +0000 (23:43 -0000)
include/libbb.h
modutils/modprobe.c
networking/interface.c
networking/libiproute/ll_proto.c
networking/libiproute/rtm_map.c
networking/libiproute/rtm_map.h
runit/sv.c

index 99a9422f0cd699b2ff1b04052c029dee8e38560e..ed1c41a02e298bea102a901b070a0db5e0c0dcb1 100644 (file)
 
 /* This structure defines protocol families and their handlers. */
 struct aftype {
-       char *name;
-       char *title;
+       const char *name;
+       const char *title;
        int af;
        int alen;
        char *(*print) (unsigned char *);
@@ -143,8 +143,8 @@ struct aftype {
 
 /* This structure defines hardware protocols and their handlers. */
 struct hwtype {
-       char *name;
-       char *title;
+       const char *name;
+       const char *title;
        int type;
        int alen;
        char *(*print) (unsigned char *);
index dcab493f15ee8b1f9b3557fc022beda06ac562b6..94f7b22c2f74d6c73d0932d769861de253a42a52 100644 (file)
@@ -37,9 +37,9 @@ struct dep_t {        /* one-way list of dependency rules */
 
 struct mod_list_t {    /* two-way list of modules to process */
        /* a module description */
-       char *  m_name;
-       char *  m_path;
-       struct mod_opt_t *  m_options;
+       const char * m_name;
+       char * m_path;
+       struct mod_opt_t * m_options;
 
        struct mod_list_t * m_prev;
        struct mod_list_t * m_next;
@@ -577,7 +577,7 @@ done:
        return ret;
 }
 
-static int mod_process(struct mod_list_t *list, int do_insert)
+static int mod_process(const struct mod_list_t *list, int do_insert)
 {
        int rc = 0;
        char **argv = NULL;
@@ -603,16 +603,16 @@ static int mod_process(struct mod_list_t *list, int do_insert)
                argv = xmalloc(6 * sizeof(char*));
                if (do_insert) {
                        if (already_loaded(list->m_name) != 1) {
-                               argv[argc++] = "insmod";
+                               argv[argc++] = (char*)"insmod";
                                if (ENABLE_FEATURE_2_4_MODULES) {
                                        if (do_syslog)
-                                               argv[argc++] = "-s";
+                                               argv[argc++] = (char*)"-s";
                                        if (autoclean)
-                                               argv[argc++] = "-k";
+                                               argv[argc++] = (char*)"-k";
                                        if (quiet)
-                                               argv[argc++] = "-q";
+                                               argv[argc++] = (char*)"-q";
                                        else if (verbose) /* verbose and quiet are mutually exclusive */
-                                               argv[argc++] = "-v";
+                                               argv[argc++] = (char*)"-v";
                                }
                                argv[argc++] = list->m_path;
                                if (ENABLE_FEATURE_CLEAN_UP)
@@ -629,10 +629,10 @@ static int mod_process(struct mod_list_t *list, int do_insert)
                } else {
                        /* modutils uses short name for removal */
                        if (already_loaded(list->m_name) != 0) {
-                               argv[argc++] = "rmmod";
+                               argv[argc++] = (char*)"rmmod";
                                if (do_syslog)
-                                       argv[argc++] = "-s";
-                               argv[argc++] = list->m_name;
+                                       argv[argc++] = (char*)"-s";
+                               argv[argc++] = (char*)list->m_name;
                                if (ENABLE_FEATURE_CLEAN_UP)
                                        argc_malloc = argc;
                        }
@@ -810,13 +810,14 @@ static void check_dep(char *mod, struct mod_list_t **head, struct mod_list_t **t
 
 static int mod_insert(char *mod, int argc, char **argv)
 {
-       struct mod_list_t *tail = 0;
-       struct mod_list_t *head = 0;
+       struct mod_list_t *tail = NULL;
+       struct mod_list_t *head = NULL;
        int rc;
 
        // get dep list for module mod
        check_dep(mod, &head, &tail);
 
+       rc = 1;
        if (head && tail) {
                if (argc) {
                        int i;
@@ -826,7 +827,8 @@ static int mod_insert(char *mod, int argc, char **argv)
                }
 
                // process tail ---> head
-               if ((rc = mod_process(tail, 1)) != 0) {
+               rc = mod_process(tail, 1);
+               if (rc) {
                        /*
                         * In case of using udev, multiple instances of modprobe can be
                         * spawned to load the same module (think of two same usb devices,
@@ -837,31 +839,26 @@ static int mod_insert(char *mod, int argc, char **argv)
                                rc = 0;
                }
        }
-       else
-               rc = 1;
-
        return rc;
 }
 
 static int mod_remove(char *mod)
 {
        int rc;
-       static struct mod_list_t rm_a_dummy = { "-a", NULL, NULL, NULL, NULL };
+       static const struct mod_list_t rm_a_dummy = { "-a", NULL, NULL, NULL, NULL };
 
-       struct mod_list_t *head = 0;
-       struct mod_list_t *tail = 0;
+       struct mod_list_t *head = NULL;
+       struct mod_list_t *tail = NULL;
 
        if (mod)
                check_dep(mod, &head, &tail);
        else  // autoclean
-               head = tail = &rm_a_dummy;
+               head = tail = (struct mod_list_t*) &rm_a_dummy;
 
+       rc = 1;
        if (head && tail)
                rc = mod_process(head, 0);  // process head ---> tail
-       else
-               rc = 1;
        return rc;
-
 }
 
 int modprobe_main(int argc, char** argv)
index fbcf50152e56f529df3af5d88d57df9612ccf876..f345cb09d1d1fc087c113079b034c96c2d2a9629 100644 (file)
  *                     (default AF was wrong)
  */
 
-#include "inet_common.h"
-#include <stdio.h>
-#include <errno.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-#include <fcntl.h>
-#include <ctype.h>
-#include <sys/ioctl.h>
-#include <sys/types.h>
 #include <net/if.h>
 #include <net/if_arp.h>
+#include "inet_common.h"
 #include "busybox.h"
 
 #ifdef CONFIG_FEATURE_IPV6
@@ -178,8 +169,7 @@ static char *INET6_sprint(struct sockaddr *sap, int numeric)
 
        if (sap->sa_family == 0xFFFF || sap->sa_family == 0)
                return safe_strncpy(buff, "[NONE SET]", sizeof(buff));
-       if (INET6_rresolve
-               (buff, sizeof(buff), (struct sockaddr_in6 *) sap, numeric) != 0)
+       if (INET6_rresolve(buff, sizeof(buff), (struct sockaddr_in6 *) sap, numeric))
                return safe_strncpy(buff, "[UNKNOWN]", sizeof(buff));
        return buff;
 }
@@ -771,7 +761,7 @@ static int if_fetch(struct interface *ife)
 static int do_if_fetch(struct interface *ife)
 {
        if (if_fetch(ife) < 0) {
-               char *errmsg;
+               const char *errmsg;
 
                if (errno == ENODEV) {
                        /* Give better error message for this case. */
index 20f26ca3fb9aca37d089663c52092b64afc88c21..aad460b5f8b535cdb45eef099241152df6f0b29c 100644 (file)
@@ -24,7 +24,7 @@
 #define __PF(f,n) { ETH_P_##f, #n },
 static struct {
        int id;
-       char *name;
+       const char *name;
 } llproto_names[] = {
 __PF(LOOP,loop)
 __PF(PUP,pup)
index 7eb4c7122f4dba9dcb2b556999205885ccb335be..c16406b8bef99acd32834e329feee0af8c87a538 100644 (file)
 
 #include <stdlib.h>
 #include <string.h>
-
 #include "rt_names.h"
 #include "utils.h"
 
-char *rtnl_rtntype_n2a(int id, char *buf, int len)
+const char *rtnl_rtntype_n2a(int id, char *buf, int len)
 {
        switch (id) {
        case RTN_UNSPEC:
index b9c8c503f30dc77cd6ad56fee66d9c4bbfb0c0f2..cbbcc214d4081aa46d18278530879435f66558bd 100644 (file)
@@ -2,7 +2,7 @@
 #ifndef __RTM_MAP_H__
 #define __RTM_MAP_H__ 1
 
-char *rtnl_rtntype_n2a(int id, char *buf, int len);
+const char *rtnl_rtntype_n2a(int id, char *buf, int len);
 int rtnl_rtntype_a2n(int *id, char *arg);
 
 int get_rt_realms(uint32_t *realms, char *arg);
index 6594e1451b3c924171ad1712344c60ef7dab1568..6b154c1a845726fa3aba78906b24554463fb1289 100644 (file)
@@ -7,33 +7,33 @@
 #include "runit_lib.h"
 
 static char *action;
-static char *acts;
-static char *varservice = "/var/service/";
+static const char *acts;
+static const char *varservice = "/var/service/";
 static char **service;
 static char **servicex;
 static unsigned services;
-static unsigned rc = 0;
-static unsigned verbose = 0;
+static unsigned rc;
+static unsigned verbose;
 static unsigned long waitsec = 7;
-static unsigned kll = 0;
+static unsigned kll;
 static struct taia tstart, tnow, tdiff;
 static struct tai tstatus;
 
-static int (*act)(char*) = 0;
-static int (*cbk)(char*) = 0;
+static int (*act)(const char*);
+static int (*cbk)(const char*);
 
 static int curdir, fd, r;
 static char svstatus[20];
 
 #define usage() bb_show_usage()
 
-static void fatal_cannot(char *m1)
+static void fatal_cannot(const char *m1)
 {
        bb_perror_msg("fatal: cannot %s", m1);
        _exit(151);
 }
 
-static void out(char *p, char *m1)
+static void out(const char *p, const char *m1)
 {
        printf("%s%s: %s", p, *service, m1);
        if (errno) {
@@ -51,15 +51,16 @@ static void out(char *p, char *m1)
 #define TIMEOUT "timeout: "
 #define KILL    "kill: "
 
-static void fail(char *m1) { ++rc; out(FAIL, m1); }
-static void failx(char *m1) { errno = 0; fail(m1); }
-static void warn_cannot(char *m1) { ++rc; out("warning: cannot ", m1); }
-static void warnx_cannot(char *m1) { errno = 0; warn_cannot(m1); }
-static void ok(char *m1) { errno = 0; out(OK, m1); }
+static void fail(const char *m1) { ++rc; out(FAIL, m1); }
+static void failx(const char *m1) { errno = 0; fail(m1); }
+static void warn_cannot(const char *m1) { ++rc; out("warning: cannot ", m1); }
+static void warnx_cannot(const char *m1) { errno = 0; warn_cannot(m1); }
+static void ok(const char *m1) { errno = 0; out(OK, m1); }
 
 static int svstatus_get(void)
 {
-       if ((fd = open_write("supervise/ok")) == -1) {
+       fd = open_write("supervise/ok");
+       if (fd == -1) {
                if (errno == ENODEV) {
                        *acts == 'x' ? ok("runsv not running")
                                     : failx("runsv not running");
@@ -69,7 +70,8 @@ static int svstatus_get(void)
                return -1;
        }
        close(fd);
-       if ((fd = open_read("supervise/status")) == -1) {
+       fd = open_read("supervise/status");
+       if (fd == -1) {
                warn_cannot("open supervise/status");
                return -1;
        }
@@ -83,7 +85,7 @@ static int svstatus_get(void)
        return 1;
 }
 
-static unsigned svstatus_print(char *m)
+static unsigned svstatus_print(const char *m)
 {
        int pid;
        int normallyup = 0;
@@ -121,7 +123,7 @@ static unsigned svstatus_print(char *m)
        return pid ? 1 : 2;
 }
 
-static int status(char *unused)
+static int status(const char *unused)
 {
        r = svstatus_get();
        switch (r) { case -1: case 0: return 0; }
@@ -156,8 +158,8 @@ static int checkscript(void)
                return 0;
        }
        if (!pid) {
-               prog[0] = "./check";
-               prog[1] = 0;
+               prog[0] = (char*)"./check";
+               prog[1] = NULL;
                close(1);
                execve("check", prog, environ);
                bb_perror_msg(WARN"cannot run %s/check", *service);
@@ -171,7 +173,7 @@ static int checkscript(void)
        return !wait_exitcode(w);
 }
 
-static int check(char *a)
+static int check(const char *a)
 {
        unsigned pid;
 
@@ -200,15 +202,18 @@ static int check(char *a)
                if ((!pid && tstart.sec.x > tstatus.x) || (pid && svstatus[17] != 'd'))
                        return 0;
        }
-       printf(OK); svstatus_print(*service); puts(""); /* will also flush the output */
+       printf(OK);
+       svstatus_print(*service);
+       puts(""); /* will also flush the output */
        return 1;
 }
 
-static int control(char *a)
+static int control(const char *a)
 {
        if (svstatus_get() <= 0) return -1;
        if (svstatus[17] == *a) return 0;
-       if ((fd = open_write("supervise/control")) == -1) {
+       fd = open_write("supervise/control");
+       if (fd == -1) {
                if (errno != ENODEV)
                        warn_cannot("open supervise/control");
                else
@@ -245,15 +250,20 @@ int sv_main(int argc, char **argv)
        if (opt & 4) usage();
        if (!(action = *argv++)) usage();
        --argc;
-       service = argv; services = argc;
+       service = argv;
+       services = argc;
        if (!*service) usage();
 
-       taia_now(&tnow); tstart = tnow;
-       if ((curdir = open_read(".")) == -1)
+       taia_now(&tnow);
+       tstart = tnow;
+       curdir = open_read(".");
+       if (curdir == -1)
                fatal_cannot("open current directory");
 
-       act = &control; acts = "s";
-       if (verbose) cbk = &check;
+       act = &control;
+       acts = "s";
+       if (verbose)
+               cbk = &check;
        switch (*action) {
        case 'x': case 'e':
                acts = "x"; break;
@@ -289,7 +299,9 @@ int sv_main(int argc, char **argv)
                        cbk = &check;
                        break;
                }
-               act = &status; cbk = 0; break;
+               act = &status;
+               cbk = NULL;
+               break;
        case 'r':
                if (!str_diff(action, "restart")) {
                        acts = "tcu";