*: add -Wunused-parameter; fix resulting breakage
authorDenis Vlasenko <vda.linux@googlemail.com>
Mon, 17 Mar 2008 09:00:54 +0000 (09:00 -0000)
committerDenis Vlasenko <vda.linux@googlemail.com>
Mon, 17 Mar 2008 09:00:54 +0000 (09:00 -0000)
function                                             old     new   delta
procps_scan                                         1265    1298     +33
aliascmd                                             278     283      +5
parse_file_cmd                                       116     120      +4
dname_enc                                            373     377      +4
setcmd                                                90      93      +3
execcmd                                               57      60      +3
count_lines                                           72      74      +2
process_command_subs                                 340     339      -1
test_main                                            409     407      -2
mknod_main                                           179     177      -2
handle_incoming_and_exit                            2653    2651      -2
argstr                                              1312    1310      -2
shiftcmd                                             131     128      -3
exitcmd                                               46      43      -3
dotcmd                                               297     294      -3
breakcmd                                              86      83      -3
evalpipe                                             353     349      -4
evalcommand                                         1180    1176      -4
evalcmd                                              109     105      -4
send_tree                                            374     369      -5
mkfifo_main                                           82      77      -5
evalsubshell                                         152     147      -5
typecmd                                               75      69      -6
letcmd                                                61      55      -6
add_cmd                                             1190    1183      -7
main                                                 891     883      -8
ash_main                                            1415    1407      -8
parse_stream                                        1377    1367     -10
alloc_procps_scan                                     55       -     -55
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 7/21 up/down: 54/-148)          Total: -94 bytes
   text    data     bss     dec     hex filename
 797195     658    7428  805281   c49a1 busybox_old
 797101     658    7428  805187   c4943 busybox_unstripped

138 files changed:
Makefile.flags
archival/bbunzip.c
archival/dpkg.c
console-tools/clear.c
console-tools/loadfont.c
console-tools/loadkmap.c
console-tools/reset.c
console-tools/resize.c
coreutils/cat.c
coreutils/catv.c
coreutils/chmod.c
coreutils/chown.c
coreutils/comm.c
coreutils/cut.c
coreutils/du.c
coreutils/echo.c
coreutils/env.c
coreutils/expand.c
coreutils/id.c
coreutils/libcoreutils/coreutils.h
coreutils/libcoreutils/getopt_mk_fifo_nod.c
coreutils/mkfifo.c
coreutils/mknod.c
coreutils/pwd.c
coreutils/readlink.c
coreutils/rm.c
coreutils/rmdir.c
coreutils/sort.c
coreutils/split.c
coreutils/sync.c
coreutils/tac.c
coreutils/touch.c
coreutils/tr.c
coreutils/true.c
coreutils/tty.c
coreutils/uniq.c
coreutils/uudecode.c
coreutils/wc.c
coreutils/who.c
coreutils/whoami.c
debianutils/mktemp.c
debianutils/pipe_progress.c
debianutils/run_parts.c
e2fsprogs/chattr.c
e2fsprogs/fsck.c
e2fsprogs/lsattr.c
editors/cmp.c
editors/diff.c
editors/patch.c
editors/sed.c
editors/vi.c
findutils/find.c
findutils/grep.c
include/busybox.h
include/libbb.h
ipsvd/tcpudp.c
libbb/appletlib.c
libbb/procps.c
libbb/recursive_action.c
loginutils/adduser.c
loginutils/chpasswd.c
loginutils/cryptpw.c
loginutils/getty.c
loginutils/login.c
loginutils/passwd.c
loginutils/sulogin.c
loginutils/vlock.c
miscutils/chat.c
miscutils/crond.c
miscutils/crontab.c
miscutils/eject.c
miscutils/last.c
miscutils/microcom.c
miscutils/strings.c
modutils/insmod.c
modutils/lsmod.c
networking/arp.c
networking/arping.c
networking/dnsd.c
networking/ftpgetput.c
networking/httpd.c
networking/ifenslave.c
networking/ifupdown.c
networking/inetd.c
networking/interface.c
networking/ip.c
networking/isrv_identd.c
networking/libiproute/ll_map.c
networking/nc_bloaty.c
networking/netstat.c
networking/ping.c
networking/pscan.c
networking/route.c
networking/sendmail.c
networking/slattach.c
networking/telnetd.c
networking/tftp.c
networking/udhcp/dhcpc.c
networking/udhcp/dhcpd.c
networking/udhcp/dumpleases.c
networking/wget.c
printutils/lpd.c
printutils/lpr.c
procps/fuser.c
procps/nmeter.c
procps/pgrep.c
procps/pidof.c
procps/ps.c
procps/renice.c
procps/sysctl.c
procps/top.c
procps/uptime.c
procps/watch.c
runit/chpst.c
runit/runsv.c
runit/runsvdir.c
runit/sv.c
runit/svlogd.c
shell/ash.c
shell/hush.c
shell/msh.c
sysklogd/klogd.c
sysklogd/logread.c
sysklogd/syslogd.c
util-linux/dmesg.c
util-linux/fsck_minix.c
util-linux/hwclock.c
util-linux/ipcs.c
util-linux/mdev.c
util-linux/mkfs_minix.c
util-linux/more.c
util-linux/mount.c
util-linux/rdate.c
util-linux/readprofile.c
util-linux/rtcwake.c
util-linux/script.c
util-linux/switch_root.c
util-linux/umount.c

index 26552222d0094545df9074c637b0092e5061fa9a..61bff4f6690be453366d4dff773d70fe68c11746 100644 (file)
@@ -20,6 +20,7 @@ CPPFLAGS += \
 # flag checks are grouped together to speed the checks up a bit..
 CFLAGS += $(call cc-option,-Wall -Wshadow -Wwrite-strings,)
 CFLAGS += $(call cc-option,-Wundef -Wstrict-prototypes,)
+CFLAGS += $(call cc-option,-Wunused -Wunused-parameter,)
 # If you want to add "-Wmissing-prototypes -Wmissing-declarations" above
 # (or anything else for that matter) make sure that it is still possible
 # to build bbox without warnings. Current offender: find.c:alloc_action().
index b467f1b1928f29efbcffc830a647c92e4e6cbc36..327b3cf2cf1999c59a9a55e95b8f18f37daf3e5c 100644 (file)
@@ -159,7 +159,7 @@ USE_DESKTOP(long long) int unpack_bunzip2(void)
 }
 
 int bunzip2_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int bunzip2_main(int argc, char **argv)
+int bunzip2_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        getopt32(argv, "cfvdt");
        argv += optind;
@@ -257,7 +257,7 @@ USE_DESKTOP(long long) int unpack_gunzip(void)
 }
 
 int gunzip_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int gunzip_main(int argc, char **argv)
+int gunzip_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        getopt32(argv, "cfvdt");
        argv += optind;
@@ -295,7 +295,7 @@ USE_DESKTOP(long long) int unpack_unlzma(void)
 }
 
 int unlzma_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int unlzma_main(int argc, char **argv)
+int unlzma_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        getopt32(argv, "cf");
        argv += optind;
@@ -337,7 +337,7 @@ USE_DESKTOP(long long) int unpack_uncompress(void)
 }
 
 int uncompress_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int uncompress_main(int argc, char **argv)
+int uncompress_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        getopt32(argv, "cf");
        argv += optind;
index e90e82b641be059f108d4e5a3fed84dd1180d4de..7693342f7ca664c6dc237f9af569cb4cb9a15449 100644 (file)
@@ -949,7 +949,7 @@ static int package_satisfies_dependency(int package, int depend_type)
        return 0;
 }
 
-static int check_deps(deb_file_t **deb_file, int deb_start, int dep_max_count)
+static int check_deps(deb_file_t **deb_file, int deb_start /*, int dep_max_count - ?? */)
 {
        int *conflicts = NULL;
        int conflicts_num = 0;
@@ -1689,7 +1689,7 @@ int dpkg_main(int argc, char **argv)
 
        /* Check that the deb file arguments are installable */
        if (!(opt & OPT_force_ignore_depends)) {
-               if (!check_deps(deb_file, 0, deb_count)) {
+               if (!check_deps(deb_file, 0 /*, deb_count*/)) {
                        bb_error_msg_and_die("dependency check failed");
                }
        }
index 769ce312149057a4b3deb6f58c0b7a6dd1293654..0d94e35b827724d9218974edc58fa27bfb7500f2 100644 (file)
@@ -13,7 +13,7 @@
 #include "libbb.h"
 
 int clear_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int clear_main(int argc, char **argv)
+int clear_main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
 {
        return printf("\033[H\033[J") != 6;
 }
index 882b8817ad75c3658d2d2b9c7468e87fab6998ef..843f4b035b0821c162227241d6c419ba8369251f 100644 (file)
@@ -167,7 +167,7 @@ static void loadnewfont(int fd)
 }
 
 int loadfont_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int loadfont_main(int argc, char **argv)
+int loadfont_main(int argc, char **argv ATTRIBUTE_UNUSED)
 {
        int fd;
 
index 40885ee0cb99482126b21dea229c0e8d42f83966..bea5a771f3ef62303c45cb4bb291866dd2901798 100644 (file)
@@ -26,7 +26,7 @@ struct kbentry {
 #define MAX_NR_KEYMAPS  256
 
 int loadkmap_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int loadkmap_main(int argc, char **argv)
+int loadkmap_main(int argc, char **argv ATTRIBUTE_UNUSED)
 {
        struct kbentry ke;
        int i, j, fd;
index bc18cd05038e031957ab9242cbe2163a375022f3..f36ef544ce41608e38cec4129d4dc7c8fa505036 100644 (file)
@@ -18,7 +18,7 @@ int stty_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
 #endif
 
 int reset_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int reset_main(int argc, char **argv)
+int reset_main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
 {
        static const char *const args[] = {
                "stty", "sane", NULL
index 7f72b9a4659bfba5a94547688e4998fa634132ba..01b1442f6706f369a335543c8c32af234192e0e3 100644 (file)
@@ -21,10 +21,10 @@ onintr(int sig ATTRIBUTE_UNUSED)
 }
 
 int resize_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int resize_main(int argc, char **argv)
+int resize_main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
 {
        struct termios new;
-       struct winsize w = { 0,0,0,0 };
+       struct winsize w = { 0, 0, 0, 0 };
        int ret;
 
        /* We use _stderr_ in order to make resize usable
index 18a74b81d2fea7ef9287e90016d88e52c7084254..181d96a2c9828b74eeab0892648b9ce731511d22 100644 (file)
@@ -44,7 +44,7 @@ int bb_cat(char **argv)
 }
 
 int cat_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int cat_main(int argc, char **argv)
+int cat_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        getopt32(argv, "u");
        argv += optind;
index 5f5f1bf8681f99ce1c8f1a018d8aeb60660aaf01..a5ee534e2d928872ff408e72043f0f529ee360b4 100644 (file)
@@ -13,7 +13,7 @@
 #include "libbb.h"
 
 int catv_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int catv_main(int argc, char **argv)
+int catv_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int retval = EXIT_SUCCESS;
        int fd;
index a58e4f8e12323b1eac2e85a3b20ffb6249a4620f..1bd0bd5c2920db4f302039c61236086d45579f15 100644 (file)
@@ -68,7 +68,7 @@ static int fileAction(const char *fileName, struct stat *statbuf, void* param, i
 }
 
 int chmod_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int chmod_main(int argc, char **argv)
+int chmod_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int retval = EXIT_SUCCESS;
        char *arg, **argp;
index df3b77dacb16873332e51e1d3990bd90bfed8367..eaaefaf292b93366d8318da3de0368c566bcb517 100644 (file)
@@ -42,7 +42,7 @@ typedef int (*chown_fptr)(const char *, uid_t, gid_t);
 static struct bb_uidgid_t ugid = { -1, -1 };
 
 static int fileAction(const char *fileName, struct stat *statbuf,
-               void *cf, int depth)
+               void *cf, int depth ATTRIBUTE_UNUSED)
 {
        uid_t u = (ugid.uid == (uid_t)-1) ? statbuf->st_uid : ugid.uid;
        gid_t g = (ugid.gid == (gid_t)-1) ? statbuf->st_gid : ugid.gid;
@@ -62,7 +62,7 @@ static int fileAction(const char *fileName, struct stat *statbuf,
 }
 
 int chown_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int chown_main(int argc, char **argv)
+int chown_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int retval = EXIT_SUCCESS;
        int flags;
index 67088e06c1dfdd56f060be1f28d2f25f1b1ed910..4dbc0d4778a785663138fbb5ea159fd502966739 100644 (file)
@@ -36,7 +36,7 @@ static void writeline(char *line, int class, int flags)
 }
 
 int comm_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int comm_main(int argc, char **argv)
+int comm_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
 #define LINE_LEN 100
 #define BB_EOF_0 0x1
index 4f0bed3e760070fa375761f7d46431d81f5de061..ed6f8f6087b6a16ec94443da0d3095f7ce2a7263 100644 (file)
@@ -162,7 +162,7 @@ static void cut_file(FILE *file, char delim)
 }
 
 int cut_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int cut_main(int argc, char **argv)
+int cut_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        char delim = '\t';      /* delimiter, default is tab */
        char *sopt, *ltok;
index 3941151e1da3a261c6006049279981c730e8c3a6..7495f7a7bbc0f24d68fb372ef6e468c6f5e857d6 100644 (file)
@@ -141,7 +141,7 @@ static unsigned long du(const char *filename)
 }
 
 int du_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int du_main(int argc, char **argv)
+int du_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        unsigned long total;
        int slink_depth_save;
index 771f610b0b7d9184b5963fc1eab2e5b0ce331451..fd6c950eaf235c1c6fe609dc9fdc7dfc646e0643 100644 (file)
@@ -31,7 +31,7 @@
  * using call -> jump optimization */
 
 int echo_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int echo_main(int argc, char **argv)
+int echo_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        const char *arg;
 #if !ENABLE_FEATURE_FANCY_ECHO
index 7273d39fc9f1a533cf295b34273a5ece26242bee..f678565eb9f38cb4fd0eb720f754cc966ff75048 100644 (file)
@@ -40,7 +40,7 @@ static const char env_longopts[] ALIGN1 =
 #endif
 
 int env_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int env_main(int argc, char **argv)
+int env_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        /* cleanenv was static - why? */
        char *cleanenv[1];
index 96a74a33632bac0d45ecca809fee89d38d66f56a..c0133956fc27e4d88969894de632f9ac05c9b97a 100644 (file)
@@ -126,7 +126,7 @@ static void unexpand(FILE *file, unsigned int tab_size, unsigned opt)
 #endif
 
 int expand_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int expand_main(int argc, char **argv)
+int expand_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        /* Default 8 spaces for 1 tab */
        const char *opt_t = "8";
index 7dba80284997197d17c98927ca2577f050343ac1..9afb100886c7e38775b2b5f4cad40c38b3283d2c 100644 (file)
@@ -37,7 +37,7 @@ static int printf_full(unsigned int id, const char *arg, const char prefix)
 }
 
 int id_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int id_main(int argc, char **argv)
+int id_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        struct passwd *p;
        uid_t uid;
index 687c7cc5c55f10b7c4fbb07e6da8527bac269a24..c1796b381ce5b02affb4bc48c090c620b9ce4a41 100644 (file)
@@ -11,6 +11,6 @@ typedef int (*stat_func)(const char *fn, struct stat *ps);
 int cp_mv_stat2(const char *fn, struct stat *fn_stat, stat_func sf);
 int cp_mv_stat(const char *fn, struct stat *fn_stat);
 
-mode_t getopt_mk_fifo_nod(int argc, char **argv);
+mode_t getopt_mk_fifo_nod(char **argv);
 
 #endif
index 377621568a1854d9046f38352aaf3a3817d152b5..32e55a56b9a768e18be8b0cafd9ae75362fa4a71 100644 (file)
@@ -23,7 +23,7 @@
 #include "libbb.h"
 #include "coreutils.h"
 
-mode_t getopt_mk_fifo_nod(int argc, char **argv)
+mode_t getopt_mk_fifo_nod(char **argv)
 {
        mode_t mode = 0666;
        char *smode = NULL;
index d298adae039416582cb31d69b953bf5c66e3098f..d9261b96afacd8920f8977a29e8bb546772fd63d 100644 (file)
 #include "libcoreutils/coreutils.h"
 
 int mkfifo_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int mkfifo_main(int argc, char **argv)
+int mkfifo_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        mode_t mode;
        int retval = EXIT_SUCCESS;
 
-       mode = getopt_mk_fifo_nod(argc, argv);
+       mode = getopt_mk_fifo_nod(argv);
 
        argv += optind;
        if (!*argv) {
index 55f53103398bef84bf729a186c2a94ace91f34d5..0c694948e7c6db524886bd17f689749f262020d9 100644 (file)
@@ -24,7 +24,7 @@ int mknod_main(int argc, char **argv)
        dev_t dev;
        const char *name;
 
-       mode = getopt_mk_fifo_nod(argc, argv);
+       mode = getopt_mk_fifo_nod(argv);
        argv += optind;
        argc -= optind;
 
index ac604db97f4bf01c78e38aadfcd7e4de255faa16..9279dbee627b90c0eb9165c45ab20e1d522c00ce 100644 (file)
@@ -12,7 +12,7 @@
 /* This is a NOFORK applet. Be very careful! */
 
 int pwd_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int pwd_main(int argc, char **argv)
+int pwd_main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
 {
        char *buf;
 
index 1ab94595a9164c069f19e91f79bd597c17f694ac..3f13a366053b8eb7bc6ff1d5ba35715ca1dc38fe 100644 (file)
@@ -11,7 +11,7 @@
 #include "libbb.h"
 
 int readlink_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int readlink_main(int argc, char **argv)
+int readlink_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        char *buf;
        char *fname;
index a123156d28b8d25e8bf2f8c878d22155e483aad8..1774ce296323589a6fda6e97b0453381ba4d6d7d 100644 (file)
@@ -20,7 +20,7 @@
 /* This is a NOFORK applet. Be very careful! */
 
 int rm_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int rm_main(int argc, char **argv)
+int rm_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int status = 0;
        int flags = 0;
index 96bee231b89dcb3ddc0db76c87eaed7643810c75..cb6046617d47534f8468d2ef3ca9a5d2ffc07bf7 100644 (file)
@@ -19,7 +19,7 @@
 #define IGNORE_NON_EMPTY 0x02
 
 int rmdir_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int rmdir_main(int argc, char **argv)
+int rmdir_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int status = EXIT_SUCCESS;
        int flags;
index d8df4c53260e63a8aa9de10c3a9a6f375e034562..510f7a235cca96d382abe9f36de4a75e889f11ff 100644 (file)
@@ -275,7 +275,7 @@ static unsigned str2u(char **str)
 #endif
 
 int sort_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int sort_main(int argc, char **argv)
+int sort_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        FILE *fp, *outfile = stdout;
        char *line, **lines = NULL;
index 895a04b06232724d2f59faa4b951a2b287fea892..cf26a9322df39a7a2b44c939ecc45b2e3e71df0c 100644 (file)
@@ -56,7 +56,7 @@ enum { READ_BUFFER_SIZE = COMMON_BUFSIZE - 1 };
 #define SPLIT_OPT_a (1<<2)
 
 int split_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int split_main(int argc, char **argv)
+int split_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        unsigned suffix_len = 2;
        char *pfx;
index 9dbdd98aa682b736c7860e58c075e6ba28829d62..5c9d0926f78241cbdc85790ac6053b9a2150f09b 100644 (file)
@@ -14,8 +14,9 @@
 /* This is a NOFORK applet. Be very careful! */
 
 int sync_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int sync_main(int argc, char **argv)
+int sync_main(int argc, char **argv ATTRIBUTE_UNUSED)
 {
+       /* coreutils-6.9 compat */
        bb_warn_ignoring_args(argc - 1);
 
        sync();
index 7951be2554a1c208e25af6d0a5cb1a5babd59a95..ddadcc7bc6d2368c08de47be42a8753ab1fc8596 100644 (file)
@@ -26,7 +26,7 @@ struct lstring {
 };
 
 int tac_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int tac_main(int argc, char **argv)
+int tac_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        char **name;
        FILE *f;
index 3fe8b64ad1d1446787023f868d07fcd4118194fa..0b58179e79ad63072a4862ba31746a5177fd799a 100644 (file)
@@ -22,7 +22,7 @@
 /* This is a NOFORK applet. Be very careful! */
 
 int touch_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int touch_main(int argc, char **argv)
+int touch_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int fd;
        int status = EXIT_SUCCESS;
index a28ab465ee5616dc71be3f49109d779d0e8e6b22..d0af63a362dd639ff3c05195b4aa26745a995056 100644 (file)
@@ -174,7 +174,7 @@ static int complement(char *buffer, int buffer_len)
 }
 
 int tr_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int tr_main(int argc, char **argv)
+int tr_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int output_length = 0, input_length;
        int i;
index 2b5919320d75ed4938f29e3266d63032d837dad0..565e68b83c774ee98874f238388e9a3410d7fc37 100644 (file)
@@ -15,7 +15,7 @@
 /* This is a NOFORK applet. Be very careful! */
 
 int true_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int true_main(int argc, char **argv)
+int true_main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
 {
        return EXIT_SUCCESS;
 }
index b0a50ff61028ab89c57b99b69ef49b3f2aed49e4..48e15117c27e2075a845e5d77828648a5c4d2dd4 100644 (file)
@@ -13,7 +13,7 @@
 #include "libbb.h"
 
 int tty_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int tty_main(int argc, char **argv)
+int tty_main(int argc, char **argv SKIP_INCLUDE_SUSv2(ATTRIBUTE_UNUSED))
 {
        const char *s;
        USE_INCLUDE_SUSv2(int silent;)  /* Note: No longer relevant in SUSv3. */
@@ -22,15 +22,17 @@ int tty_main(int argc, char **argv)
        xfunc_error_retval = 2; /* SUSv3 requires > 1 for error. */
 
        USE_INCLUDE_SUSv2(silent = getopt32(argv, "s");)
+       USE_INCLUDE_SUSv2(argc -= optind;)
+       SKIP_INCLUDE_SUSv2(argc -= 1;)
 
        /* gnu tty outputs a warning that it is ignoring all args. */
-       bb_warn_ignoring_args(argc - optind);
+       bb_warn_ignoring_args(argc);
 
        retval = 0;
 
        s = ttyname(0);
        if (s == NULL) {
-       /* According to SUSv3, ttyname can on fail with EBADF or ENOTTY.
+       /* According to SUSv3, ttyname can fail with EBADF or ENOTTY.
         * We know the file descriptor is good, so failure means not a tty. */
                s = "not a tty";
                retval = 1;
index cda1e61a98f909ed2020bbd697c43661e7e762fc..d0729607c49b469365eef3d421941e2999bb260d 100644 (file)
@@ -28,7 +28,7 @@ static FILE *xgetoptfile_uniq_s(char **argv, int read0write2)
 }
 
 int uniq_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int uniq_main(int argc, char **argv)
+int uniq_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        FILE *in, *out;
        unsigned long dups, skip_fields, skip_chars, i;
index 46836624c33df986c107bae2aad858a40cfe562d..34a22398c29950e1add22002b012fe6ef3ec15d4 100644 (file)
@@ -127,7 +127,7 @@ static void read_base64(FILE *src_stream, FILE *dst_stream)
 }
 
 int uudecode_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int uudecode_main(int argc, char **argv)
+int uudecode_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        FILE *src_stream = stdin;
        char *outname = NULL;
index 58ea1c7db2262cd65ef59e2aaa261f4b0e81ab6a..de3c895bd90ef4422f66b395aff0d19607a2e597 100644 (file)
@@ -69,7 +69,7 @@ enum {
 };
 
 int wc_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int wc_main(int argc, char **argv)
+int wc_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        FILE *fp;
        const char *s, *arg;
index e6bd0afa8cc2ec43527da113117758ec4b3e7ddd..a206ec54b580670a5d00f50339a11d12878da590 100644 (file)
@@ -41,7 +41,7 @@ static void idle_string(char *str6, time_t t)
 }
 
 int who_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int who_main(int argc, char **argv)
+int who_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        char str6[6];
        struct utmp *ut;
index e2fdfc955a5faa16d28655c203b05df7dde04a33..d35572ecea89cd8b2af2d637a7828478d730c21e 100644 (file)
@@ -14,7 +14,7 @@
 /* This is a NOFORK applet. Be very careful! */
 
 int whoami_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int whoami_main(int argc, char **argv)
+int whoami_main(int argc, char **argv ATTRIBUTE_UNUSED)
 {
        if (argc > 1)
                bb_show_usage();
index 7ed624526bfec835b17d278b9b7789c35b160d46..b011fc10c8fb3431a8f83545398a4695bc57d933 100644 (file)
@@ -12,7 +12,7 @@
 #include "libbb.h"
 
 int mktemp_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int mktemp_main(int argc, char **argv)
+int mktemp_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        // -d      Make a directory instead of a file
        // -q      Fail silently if an error occurs [bbox: ignored]
index 4bfdf6aa41d7164f6735912dde8311b3083ac774..cbdd38ff42fb8f2cf4e80f83d5d676d88946c556 100644 (file)
@@ -15,7 +15,7 @@
  * Activity is indicated by a '.' to stderr
  */
 int pipe_progress_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int pipe_progress_main(int argc, char **argv)
+int pipe_progress_main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
 {
        RESERVE_CONFIG_BUFFER(buf, PIPE_PROGRESS_SIZE);
        time_t t = time(NULL);
index 20f8b3ab8d98e32ab3ea18dd842c2348589b83ef..2adad026d9142b1cc82caa5adb6e9b217c13cc06 100644 (file)
@@ -79,7 +79,7 @@ static int bb_alphasort(const void *p1, const void *p2)
        return (option_mask32 & OPT_r) ? -r : r;
 }
 
-static int act(const char *file, struct stat *statbuf, void *args, int depth)
+static int act(const char *file, struct stat *statbuf, void *args ATTRIBUTE_UNUSED, int depth)
 {
        if (depth == 1)
                return TRUE;
@@ -113,7 +113,7 @@ static const char runparts_longopts[] ALIGN1 =
 #endif
 
 int run_parts_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int run_parts_main(int argc, char **argv)
+int run_parts_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        const char *umask_p = "22";
        llist_t *arg_list = NULL;
index 0f19af8e416f938e9b3fd40122e54e8744e5f12e..e783d3e89481ef04c764ae2b3184ed9a01caf485 100644 (file)
@@ -125,7 +125,7 @@ static void change_attributes(const char *name, struct globals *gp)
 }
 
 int chattr_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int chattr_main(int argc, char **argv)
+int chattr_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        struct globals g;
        char *arg;
index 6769a72373763e644d6042f2a21dd076cbd48647..178792f6fc885182fa2ab86ecce03d47fe595ce5 100644 (file)
@@ -1128,7 +1128,7 @@ static void signal_cancel(int sig ATTRIBUTE_UNUSED)
 }
 
 int fsck_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int fsck_main(int argc, char **argv)
+int fsck_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int i, status;
        /*int interactive;*/
index a11f2437bb14beb9a5520524a00d609a924b4707..c58948698a8a9732c593cd0d5ae5a2432643a23d 100644 (file)
@@ -58,7 +58,7 @@ static void list_attributes(const char *name)
 }
 
 static int lsattr_dir_proc(const char *dir_name, struct dirent *de,
-                          void *private)
+                          void *private ATTRIBUTE_UNUSED)
 {
        struct stat st;
        char *path;
@@ -96,7 +96,7 @@ static void lsattr_args(const char *name)
 }
 
 int lsattr_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int lsattr_main(int argc, char **argv)
+int lsattr_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        getopt32(argv, "Radlv");
        argv += optind;
index 6dfe0401b184852fbda42713148b4f8db36ff1b9..9189b3150a1ee428f0e3a94dd5cc86db29c3e862 100644 (file)
@@ -43,7 +43,7 @@ static const char opt_chars[] ALIGN1 = "sl";
 #define CMP_OPT_l (1<<1)
 
 int cmp_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int cmp_main(int argc, char **argv)
+int cmp_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        FILE *fp1, *fp2, *outfile = stdout;
        const char *filename1, *filename2 = "-";
index 1359af838c25fffa7e0bcdf94a66dfbc9ececea5..f9e82ba02d5b17bab334c0cce96bc7565b43ec30 100644 (file)
@@ -1205,7 +1205,7 @@ static void diffdir(char *p1, char *p2)
 
 
 int diff_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int diff_main(int argc, char **argv)
+int diff_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        bool gotstdin = 0;
        char *U_opt;
index 1b283a1332d078adf33101972a829e2e70207e29..ff1a01d2e51ac834cb951cfb6984061316fd8d1f 100644 (file)
@@ -78,7 +78,7 @@ static int file_doesnt_exist(const char *filename)
 }
 
 int patch_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int patch_main(int argc, char **argv)
+int patch_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int patch_level = -1;
        char *patch_line;
index c2b9e94b63034ba53969c3089ab773859c8f638a..a0994aec0215503817dbffdd1a2ab405dcba7d92 100644 (file)
@@ -301,7 +301,7 @@ static int get_address(const char *my_str, int *linenum, regex_t ** regex)
 }
 
 /* Grab a filename.  Whitespace at start is skipped, then goes to EOL. */
-static int parse_file_cmd(sed_cmd_t *sed_cmd, const char *filecmdstr, char **retval)
+static int parse_file_cmd(/*sed_cmd_t *sed_cmd,*/ const char *filecmdstr, char **retval)
 {
        int start = 0, idx, hack = 0;
 
@@ -375,7 +375,7 @@ static int parse_subst_cmd(sed_cmd_t *sed_cmd, const char *substr)
                case 'w':
                {
                        char *temp;
-                       idx += parse_file_cmd(sed_cmd, substr+idx, &temp);
+                       idx += parse_file_cmd(/*sed_cmd,*/ substr+idx, &temp);
                        break;
                }
                /* Ignore case (gnu exension) */
@@ -436,7 +436,7 @@ static const char *parse_cmd_args(sed_cmd_t *sed_cmd, const char *cmdstr)
        } else if (strchr("rw", sed_cmd->cmd)) {
                if (sed_cmd->end_line || sed_cmd->end_match)
                        bb_error_msg_and_die("command only uses one address");
-               cmdstr += parse_file_cmd(sed_cmd, cmdstr, &sed_cmd->string);
+               cmdstr += parse_file_cmd(/*sed_cmd,*/ cmdstr, &sed_cmd->string);
                if (sed_cmd->cmd == 'w') {
                        sed_cmd->sw_file = xfopen(sed_cmd->string, "w");
                        sed_cmd->sw_last_char = '\n';
index 572e0497252f43d454cb52fffe00e46da3dfe799..c2d4457e9bc80e67178c28b9a593df0287c13723 100644 (file)
@@ -301,7 +301,7 @@ static void status_line_bold(const char *, ...);
 static void not_implemented(const char *); // display "Not implemented" message
 static int format_edit_status(void);   // format file status on status line
 static void redraw(int);       // force a full screen refresh
-static char* format_line(char*, int);
+static char* format_line(char* /*, int*/);
 static void refresh(int);      // update the terminal from screen[]
 
 static void Indicate_Error(void);       // use flash or beep to indicate error
@@ -2764,7 +2764,7 @@ static void redraw(int full_screen)
 }
 
 //----- Format a text[] line into a buffer ---------------------
-static char* format_line(char *src, int li)
+static char* format_line(char *src /*, int li*/)
 {
        unsigned char c;
        int co;
@@ -2848,7 +2848,7 @@ static void refresh(int full_screen)
                int cs, ce;                             // column start & end
                char *out_buf;
                // format current text line
-               out_buf = format_line(tp, li);
+               out_buf = format_line(tp /*, li*/);
 
                // skip to the end of the current text[] line
                if (tp < end) {
index 8c0397798b2ee0e5857dfe605a18313bb12f9c87..50c790161ea0d94e471f74130249e50c0da53f03 100644 (file)
@@ -74,7 +74,9 @@ typedef struct {
 #endif
 } action;
 #define ACTS(name, arg...) typedef struct { action a; arg; } action_##name;
-#define ACTF(name)         static int func_##name(const char *fileName, struct stat *statbuf, action_##name* ap)
+#define ACTF(name)         static int func_##name(const char *fileName ATTRIBUTE_UNUSED, \
+                                                  struct stat *statbuf ATTRIBUTE_UNUSED, \
+                                                  action_##name* ap ATTRIBUTE_UNUSED)
                          ACTS(print)
                          ACTS(name,  const char *pattern; bool iname;)
 USE_FEATURE_FIND_PATH(   ACTS(path,  const char *pattern;))
index 1094dcc639696ac12d64860a580eebbbb03f70c4..c4cfcb8527abbf14e597deaddb990fcc7d92a1cb 100644 (file)
@@ -371,7 +371,7 @@ static void load_regexes_from_file(llist_t *fopt)
        }
 }
 
-static int file_action_grep(const char *filename, struct stat *statbuf, void* matched, int depth)
+static int file_action_grep(const char *filename, struct stat *statbuf ATTRIBUTE_UNUSED, void* matched, int depth ATTRIBUTE_UNUSED)
 {
        FILE *file = fopen(filename, "r");
        if (file == NULL) {
index ec6953e875d512240e1ac616111d83323e0f2697..52720244b347fc5858a831e7865c33a7ef40da10 100644 (file)
@@ -59,7 +59,9 @@ extern const uint8_t applet_install_loc[];
 /* Length of these names has effect on size of libbusybox
  * and "individual" binaries. Keep them short.
  */
-void lbb_prepare(const char *applet, char **argv) MAIN_EXTERNALLY_VISIBLE;
+void lbb_prepare(const char *applet
+       USE_FEATURE_INDIVIDUAL(, char **argv)
+       ) MAIN_EXTERNALLY_VISIBLE;
 #if ENABLE_BUILD_LIBBUSYBOX
 #if ENABLE_FEATURE_SHARED_BUSYBOX
 int lbb_main(int argc, char **argv) EXTERNALLY_VISIBLE;
index 09deba671be06c79a5c81a9f6c89fecc58625f89..ee1ef518e329f9f2a0dcb4d363a5c5ae9c794b9d 100644 (file)
@@ -1120,7 +1120,7 @@ enum {
                        | PSSCAN_STIME | PSSCAN_UTIME | PSSCAN_START_TIME
                        | PSSCAN_TTY,
 };
-procps_status_t* alloc_procps_scan(int flags);
+//procps_status_t* alloc_procps_scan(void);
 void free_procps_scan(procps_status_t* sp);
 procps_status_t* procps_scan(procps_status_t* sp, int flags);
 /* Format cmdline (up to col chars) into char buf[col+1] */
index 2e8dffa0f2a72436f8333ce296635bef53e2d53a..8f23ca6400cf21812036a3ca0af0cbc9c9056c90 100644 (file)
@@ -143,7 +143,7 @@ static void connection_status(void)
                bb_error_msg("status %u/%u", cnum, cmax);
 }
 
-static void sig_child_handler(int sig)
+static void sig_child_handler(int sig ATTRIBUTE_UNUSED)
 {
        int wstat;
        int pid;
@@ -161,7 +161,7 @@ static void sig_child_handler(int sig)
 }
 
 int tcpudpsvd_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int tcpudpsvd_main(int argc, char **argv)
+int tcpudpsvd_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        char *str_c, *str_C, *str_b, *str_t;
        char *user;
index fec99c5cef2e1d11744222b33183363ebf88f999..de27dd80eee520b9171064cbb00a0b18062dd823 100644 (file)
@@ -123,7 +123,8 @@ int find_applet_by_name(const char *name)
 int *const bb_errno __attribute__ ((section (".data")));
 #endif
 
-void lbb_prepare(const char *applet, char **argv)
+void lbb_prepare(const char *applet
+               USE_FEATURE_INDIVIDUAL(, char **argv))
 {
 #ifdef __GLIBC__
        (*(int **)&bb_errno) = __errno_location();
@@ -662,10 +663,10 @@ void run_applet_and_exit(const char *name, char **argv)
 #if ENABLE_BUILD_LIBBUSYBOX
 int lbb_main(int argc, char **argv)
 #else
-int main(int argc, char **argv)
+int main(int argc ATTRIBUTE_UNUSED, char **argv)
 #endif
 {
-       lbb_prepare("busybox", argv);
+       lbb_prepare("busybox" USE_FEATURE_INDIVIDUAL(, argv));
 
 #if !BB_MMU
        /* NOMMU re-exec trick sets high-order bit in first byte of name */
index 015ad80efa7c0f2e368c08d009dacc3645d57ce3..f67f7dcdeba1f03f491b0dddfbbdfd67cfb046e5 100644 (file)
@@ -93,7 +93,7 @@ static int read_to_buf(const char *filename, void *buf)
        return ret;
 }
 
-procps_status_t *alloc_procps_scan(int flags)
+static procps_status_t *alloc_procps_scan(void)
 {
        unsigned n = getpagesize();
        procps_status_t* sp = xzalloc(sizeof(procps_status_t));
@@ -175,7 +175,7 @@ procps_status_t *procps_scan(procps_status_t* sp, int flags)
        struct stat sb;
 
        if (!sp)
-               sp = alloc_procps_scan(flags);
+               sp = alloc_procps_scan();
 
        for (;;) {
                entry = readdir(sp->dir);
index 37363bb3eb8bf49ef0fe6088534992abe0b0c1f0..513aff31579b363ee7f7bc31587ff336ba730438 100644 (file)
  * is so stinking huge.
  */
 
-static int true_action(const char *fileName, struct stat *statbuf,
-                                               void* userData, int depth)
+static int true_action(const char *fileName ATTRIBUTE_UNUSED,
+               struct stat *statbuf ATTRIBUTE_UNUSED,
+               void* userData ATTRIBUTE_UNUSED,
+               int depth ATTRIBUTE_UNUSED)
 {
        return TRUE;
 }
index 7b5283e9932779402d94af009cb4d47bc76919d9..d409eabb9427f0d121e9dd6cec4bf3cc2b8a7820 100644 (file)
@@ -85,7 +85,7 @@ static const char adduser_longopts[] ALIGN1 =
  * can be customized via command-line parameters.
  */
 int adduser_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int adduser_main(int argc, char **argv)
+int adduser_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        struct passwd pw;
        const char *usegroup = NULL;
index 7d47899fe1df08bc2b805725ad564c44254fd516..83e5e0c1f3b9f3dbc409b96200eb83950e907be6 100644 (file)
@@ -21,7 +21,7 @@ static const char chpasswd_longopts[] ALIGN1 =
 #define OPT_MD5                2
 
 int chpasswd_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int chpasswd_main(int argc, char **argv)
+int chpasswd_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        char *name, *pass;
        char salt[sizeof("$N$XXXXXXXX")];
index 06817a681c9da7adf9fa5cc6594d390a8172b332..c5170c6a4a7e2e4383d1abd19d55d8f6de1bb574 100644 (file)
@@ -8,7 +8,7 @@
 #include "libbb.h"
 
 int cryptpw_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int cryptpw_main(int argc, char **argv)
+int cryptpw_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        char salt[sizeof("$N$XXXXXXXX")];
 
index 246bb4711ef561825b3d20ac30da1e41ec2dca1c..c8c54e3b94a250a1021cfc79f30fd585bc242071 100644 (file)
@@ -367,7 +367,7 @@ static void auto_baud(char *buf, unsigned size_buf, struct termios *tp)
 }
 
 /* do_prompt - show login prompt, optionally preceded by /etc/issue contents */
-static void do_prompt(struct options *op, struct termios *tp)
+static void do_prompt(struct options *op)
 {
 #ifdef ISSUE
        print_login_issue(op->issue, op->tty);
@@ -390,7 +390,7 @@ static int all_is_upcase(const char *s)
 /* get_logname - get user name, establish parity, speed, erase, kill, eol;
  * return NULL on BREAK, logname on success */
 static char *get_logname(char *logname, unsigned size_logname,
-               struct options *op, struct chardata *cp, struct termios *tp)
+               struct options *op, struct chardata *cp)
 {
        char *bp;
        char c;                         /* input character, full eight bits */
@@ -414,7 +414,7 @@ static char *get_logname(char *logname, unsigned size_logname,
        logname[0] = '\0';
        while (!logname[0]) {
                /* Write issue file and prompt, with "parity" bit == 0. */
-               do_prompt(op, tp);
+               do_prompt(op);
 
                /* Read name, watch for break, parity, erase, kill, end-of-line. */
                bp = logname;
@@ -621,7 +621,7 @@ static void update_utmp(const char *line, char *fakehost)
 #endif /* CONFIG_FEATURE_UTMP */
 
 int getty_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int getty_main(int argc, char **argv)
+int getty_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int n;
        char *fakehost = NULL;          /* Fake hostname for ut_host */
@@ -670,7 +670,7 @@ int getty_main(int argc, char **argv)
 
 #ifdef DEBUGGING
        dbf = xfopen(DEBUGTERM, "w");
-       for (n = 1; n < argc; n++) {
+       for (n = 1; argv[n]; n++) {
                debug(argv[n]);
                debug("\n");
        }
@@ -750,7 +750,7 @@ int getty_main(int argc, char **argv)
                        /* Read the login name. */
                        debug("reading login name\n");
                        logname = get_logname(line_buf, sizeof(line_buf),
-                                       &options, &chardata, &termios);
+                                       &options, &chardata);
                        if (logname)
                                break;
                        /* we are here only if options.numspeed > 1 */
index a3caa0fcab7668bccd58d94507df2aacc10fe67d..79e7494bf6598125ee2a8de8386195cb4cd50fea 100644 (file)
@@ -114,7 +114,7 @@ static void write_utent(struct utmp *utptr, const char *username)
 #endif /* !ENABLE_FEATURE_UTMP */
 
 #if ENABLE_FEATURE_NOLOGIN
-static void die_if_nologin_and_non_root(int amroot)
+static void die_if_nologin(void)
 {
        FILE *fp;
        int c;
@@ -135,7 +135,7 @@ static void die_if_nologin_and_non_root(int amroot)
        puts("\r\n[Disconnect bypassed -- root login allowed]\r");
 }
 #else
-static ALWAYS_INLINE void die_if_nologin_and_non_root(int amroot) {}
+static ALWAYS_INLINE void die_if_nologin(void) {}
 #endif
 
 #if ENABLE_FEATURE_SECURETTY && !ENABLE_PAM
@@ -406,7 +406,8 @@ int login_main(int argc, char **argv)
        }
 
        alarm(0);
-       die_if_nologin_and_non_root(pw->pw_uid == 0);
+       if (!amroot)
+               die_if_nologin();
 
        write_utent(&utent, username);
 
index 2f85e9f217cf89d9b43b9a5ab29e7ae04b912681..3353db1fadff72ed968ede0106bb0b6c8e16f296 100644 (file)
@@ -70,7 +70,7 @@ static char* new_password(const struct passwd *pw, uid_t myuid, int algo)
 }
 
 int passwd_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int passwd_main(int argc, char **argv)
+int passwd_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        enum {
                OPT_algo = 0x1, /* -a - password algorithm */
index 3a1a8e9f5b0ab80fe235828ecfbc9f0e7fedea73..caa1a83351a8f2e01005db4cad8079d362c927b4 100644 (file)
@@ -15,7 +15,7 @@
 
 
 int sulogin_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int sulogin_main(int argc, char **argv)
+int sulogin_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        char *cp;
        int timeout = 0;
index ff60d78ffe5c5fc698bb67020eaf5078928a7110..96c1f679a2137d5520e2cd53b2cd7d1eadd19532 100644 (file)
 #include <sys/vt.h>
 #include "libbb.h"
 
-static void release_vt(int signo)
+static void release_vt(int signo ATTRIBUTE_UNUSED)
 {
        /* If -a, param is 0, which means:
         * "no, kernel, we don't allow console switch away from us!" */
        ioctl(STDIN_FILENO, VT_RELDISP, (unsigned long) !option_mask32);
 }
 
-static void acquire_vt(int signo)
+static void acquire_vt(int signo ATTRIBUTE_UNUSED)
 {
        /* ACK to kernel that switch to console is successful */
        ioctl(STDIN_FILENO, VT_RELDISP, VT_ACKACQ);
 }
 
 int vlock_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int vlock_main(int argc, char **argv)
+int vlock_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        struct vt_mode vtm;
        struct termios term;
index 4f55738ec4eccc8aca0c41c691c65b65eef3f46e..50c5ad976c63934b2158ed64fead1670dc4002aa 100644 (file)
@@ -103,7 +103,7 @@ static size_t unescape(char *s, int *nocr)
 
 
 int chat_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int chat_main(int argc, char **argv)
+int chat_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
 // should we dump device output? to what fd? by default no.
 // this can be controlled later via ECHO {ON|OFF} chat directive
index 6d4825e85850817ac390a866775b8e897875a45c..75555c874e48c85f836bdc58e6d669296167f651 100644 (file)
@@ -158,7 +158,7 @@ static void crondlog(const char *ctl, ...)
 }
 
 int crond_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int crond_main(int ac, char **av)
+int crond_main(int ac ATTRIBUTE_UNUSED, char **av)
 {
        unsigned opt;
 
index cb261ed18c24973b2f83321787aae9621bb06d25..94d69f032d9e39132aa4fef0fbcfde9bb0ae3641 100644 (file)
@@ -88,7 +88,7 @@ static int open_as_user(const struct passwd *pas, const char *file)
 }
 
 int crontab_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int crontab_main(int argc, char **argv)
+int crontab_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        const struct passwd *pas;
        const char *crontab_dir = CRONTABS;
index 746a0184e93135db456cb2096e3f87309901ac99..3d27ce545235751259c038fc95cfad14b455c6b8 100644 (file)
@@ -79,7 +79,7 @@ static void eject_cdrom(const int fd, const unsigned long flags,
 }
 
 int eject_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int eject_main(int argc, char **argv)
+int eject_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        unsigned long flags;
        const char *device;
index fc5916ec2164d126a08bc99ec182b190e6d6be02..f4d9a812ed350668a66c2c2df350449c1fd74f88 100644 (file)
@@ -27,7 +27,7 @@
 #endif
 
 int last_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int last_main(int argc, char **argv)
+int last_main(int argc, char **argv ATTRIBUTE_UNUSED)
 {
        struct utmp ut;
        int n, file = STDIN_FILENO;
index 5219335a6eb0e92641543a6e0b161af4d6ebc064..5ce430a03291fbf3dc8b5ae9f36a737750a51013 100644 (file)
@@ -41,7 +41,7 @@ static int xset1(int fd, struct termios *tio, const char *device)
 }
 
 int microcom_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int microcom_main(int argc, char **argv)
+int microcom_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int sfd;
        int nfd;
index d75becceac86e4f3e6e024f455bd64491a561ba7..57a2c0a17274b47a8e52621d0a7fc88b7658bee3 100644 (file)
@@ -17,7 +17,7 @@
 #define SIZE                   8
 
 int strings_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int strings_main(int argc, char **argv)
+int strings_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int n, c, status = EXIT_SUCCESS;
        unsigned opt;
index 4620f6f95f88497cbc6d91257f01c987ad26e006..079de69402af3178c1dc9914b8a0567b6a96ca50 100644 (file)
@@ -651,7 +651,7 @@ static struct obj_symbol *arch_new_symbol(void);
 
 static enum obj_reloc arch_apply_relocation(struct obj_file *f,
                                      struct obj_section *targsec,
-                                     struct obj_section *symsec,
+                                     /*struct obj_section *symsec,*/
                                      struct obj_symbol *sym,
                                      ElfW(RelM) *rel, ElfW(Addr) value);
 
@@ -792,8 +792,9 @@ static char *m_fullName;
 /*======================================================================*/
 
 
-static int check_module_name_match(const char *filename, struct stat *statbuf,
-                               void *userdata, int depth)
+static int check_module_name_match(const char *filename,
+               struct stat *statbuf ATTRIBUTE_UNUSED,
+               void *userdata, int depth ATTRIBUTE_UNUSED)
 {
        char *fullname = (char *) userdata;
        char *tmp;
@@ -835,7 +836,7 @@ static struct obj_symbol *arch_new_symbol(void)
 static enum obj_reloc
 arch_apply_relocation(struct obj_file *f,
                                struct obj_section *targsec,
-                               struct obj_section *symsec,
+                               /*struct obj_section *symsec,*/
                                struct obj_symbol *sym,
                                ElfW(RelM) *rel, ElfW(Addr) v)
 {
@@ -1751,7 +1752,7 @@ static int arch_list_add(ElfW(RelM) *rel, struct arch_list_entry **list,
 
 #if defined(USE_SINGLE)
 
-static int arch_single_init(ElfW(RelM) *rel, struct arch_single_entry *single,
+static int arch_single_init(/*ElfW(RelM) *rel,*/ struct arch_single_entry *single,
                             int offset, int size)
 {
        if (single->allocated == 0) {
@@ -1899,7 +1900,7 @@ static void arch_create_got(struct obj_file *f)
 #if defined(USE_GOT_ENTRIES)
                        if (got_allocate) {
                                got_offset += arch_single_init(
-                                               rel, &intsym->gotent,
+                                               /*rel,*/ &intsym->gotent,
                                                got_offset, GOT_ENTRY_SIZE);
 
                                got_needed = 1;
@@ -1913,7 +1914,7 @@ static void arch_create_got(struct obj_file *f)
                                                plt_offset, PLT_ENTRY_SIZE);
 #else
                                plt_offset += arch_single_init(
-                                               rel, &intsym->pltent,
+                                               /*rel,*/ &intsym->pltent,
                                                plt_offset, PLT_ENTRY_SIZE);
 #endif
                                plt_needed = 1;
@@ -3220,7 +3221,7 @@ static int obj_relocate(struct obj_file *f, ElfW(Addr) base)
 
                        /* Do it! */
                        switch (arch_apply_relocation
-                                       (f, targsec, symsec, intsym, rel, value)
+                                       (f, targsec, /*symsec,*/ intsym, rel, value)
                        ) {
                        case obj_reloc_ok:
                                break;
@@ -3299,7 +3300,7 @@ static int obj_create_image(struct obj_file *f, char *image)
 
 /*======================================================================*/
 
-static struct obj_file *obj_load(FILE * fp, int loadprogbits)
+static struct obj_file *obj_load(FILE * fp, int loadprogbits ATTRIBUTE_UNUSED)
 {
        struct obj_file *f;
        ElfW(Shdr) * section_headers;
@@ -4193,9 +4194,9 @@ static const char *moderror(int err)
 
 #if !ENABLE_FEATURE_2_4_MODULES
 int insmod_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int insmod_main(int argc, char **argv)
+int insmod_main(int argc ATTRIBUTE_UNUSED, char **argv)
 #else
-static int insmod_ng_main(int argc, char **argv)
+static int insmod_ng_main(int argc ATTRIBUTE_UNUSED, char **argv)
 #endif
 {
        long ret;
index f1f78ff9f660796dfc89209267dbb49eb1bae841..baf0e2a9db014106e4b92489c9d6e64953bdc136 100644 (file)
@@ -141,7 +141,7 @@ int lsmod_main(int argc, char **argv)
 #else /* CONFIG_FEATURE_QUERY_MODULE_INTERFACE */
 
 int lsmod_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int lsmod_main(int argc, char **argv)
+int lsmod_main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
 {
        FILE *file = xfopen("/proc/modules", "r");
 
index 36985fc5ad8b5ce01317e3667772b4efd51ad886..c9b9d1d0db31f9fdafaaf7cdcd618f2dc8dc723a 100644 (file)
@@ -435,7 +435,7 @@ static int arp_show(char *name)
 }
 
 int arp_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int arp_main(int argc, char **argv)
+int arp_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        char *hw_type;
        char *protocol;
index 2277ec55ef4158e43393a03a13a9d569507b632a..6a17b18eebdb467c2413cdfb324becb45be902ef 100644 (file)
@@ -245,7 +245,7 @@ static bool recv_pack(unsigned char *buf, int len, struct sockaddr_ll *FROM)
 }
 
 int arping_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int arping_main(int argc, char **argv)
+int arping_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        const char *device = "eth0";
        char *source = NULL;
index 0a52783771add939d5fa8f367f86fdc18e561689..b269bc52a5cd86cca6224828c52aee2054815ce2 100644 (file)
@@ -321,15 +321,15 @@ static int process_packet(uint8_t * buf)
 /*
  * Exit on signal
  */
-static void interrupt(int x)
+static void interrupt(int sig)
 {
        /* unlink("/var/run/dnsd.lock"); */
        bb_error_msg("interrupt, exiting\n");
-       exit(2);
+       kill_myself_with_sig(sig);
 }
 
 int dnsd_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int dnsd_main(int argc, char **argv)
+int dnsd_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        const char *listen_interface = "0.0.0.0";
        char *sttl, *sport;
@@ -387,6 +387,9 @@ int dnsd_main(int argc, char **argv)
 // Or else we can exhibit usual UDP ugliness:
 // [ip1.multihomed.ip2] <=  query to ip1  <= peer
 // [ip1.multihomed.ip2] => reply from ip2 => peer (confused)
+
+// TODO: recv_from_to
+
                r = recvfrom(udps, buf, sizeof(buf), 0, &lsa->u.sa, &fromlen);
                if (OPT_verbose)
                        bb_info_msg("Got UDP packet");
index 91f6fcd0d13c57d6db3816facbd3665cd5a718e9..6e2d96093574f309f573a07d273d28af861c234a 100644 (file)
@@ -297,7 +297,7 @@ static const char ftpgetput_longopts[] ALIGN1 =
 #endif
 
 int ftpgetput_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int ftpgetput_main(int argc, char **argv)
+int ftpgetput_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        /* content-length of the file */
        unsigned opt;
index 7b7446ed9f4359d9cb8ebcfc04de8f8fe8f44d39..54f288c7a2d1d7e1784bc5d813d405c9fa885ec5 100644 (file)
@@ -1754,7 +1754,7 @@ static Htaccess_Proxy *find_proxy_entry(const char *url)
  * Handle timeouts
  */
 static void exit_on_signal(int sig) ATTRIBUTE_NORETURN;
-static void exit_on_signal(int sig)
+static void exit_on_signal(int sig ATTRIBUTE_UNUSED)
 {
        send_headers_and_exit(HTTP_REQUEST_TIMEOUT);
 }
@@ -2275,7 +2275,7 @@ enum {
 
 
 int httpd_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int httpd_main(int argc, char **argv)
+int httpd_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int server_socket = server_socket; /* for gcc */
        unsigned opt;
index 76aaa761473f104fdd60e2f46a0ae1180d9a7016..1e3d5bb959692266a392c8770876ffee33e700dd 100644 (file)
@@ -150,7 +150,7 @@ static int release(char *master_ifname, char *slave_ifname);
 
 
 int ifenslave_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int ifenslave_main(int argc, char **argv)
+int ifenslave_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        char *master_ifname, *slave_ifname;
        int rv;
index 58e69530c439f2f2e2a17f01f5c1aad8f812aad8..6aa929a3039af450e57ff794b3379c5117181895 100644 (file)
@@ -530,7 +530,7 @@ static int dhcp_down(struct interface_defn_t *ifd, execfn *exec)
 #endif
 }
 
-static int manual_up_down(struct interface_defn_t *ifd, execfn *exec)
+static int manual_up_down(struct interface_defn_t *ifd ATTRIBUTE_UNUSED, execfn *exec ATTRIBUTE_UNUSED)
 {
        return 1;
 }
index 41824dbc8c69e8807a24b47b4494a4dc2dce82f6..0ddfa6b456e54c352d5f1080538c7dc4d9183c61 100644 (file)
@@ -1128,7 +1128,7 @@ static void clean_up_and_exit(int sig ATTRIBUTE_UNUSED)
 }
 
 int inetd_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int inetd_main(int argc, char **argv)
+int inetd_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        struct sigaction sa, saved_pipe_handler;
        servtab_t *sep, *sep2;
@@ -1492,7 +1492,7 @@ static void init_ring(void)
 }
 /* Character generator. MMU arches only. */
 /* ARGSUSED */
-static void chargen_stream(int s, servtab_t *sep)
+static void chargen_stream(int s, servtab_t *sep ATTRIBUTE_UNUSED)
 {
        char *rs;
        int len;
index 04d12b37e4e6695afeb2eebd9ede04dd0e0fe347..367d2b0bc4a02c19ef4296498056e62ccc28ae7a 100644 (file)
@@ -237,7 +237,7 @@ static char *UNSPEC_print(unsigned char *ptr)
 }
 
 /* Display an UNSPEC socket address. */
-static const char *UNSPEC_sprint(struct sockaddr *sap, int numeric)
+static const char *UNSPEC_sprint(struct sockaddr *sap, int numeric ATTRIBUTE_UNUSED)
 {
        if (sap->sa_family == 0xFFFF || sap->sa_family == 0)
                return "[NONE SET]";
index 5d9785194cb955dbc9d7d0140c54518937a07a06..bb409c5ce4725c75b74666d6cb9565f2ddd6def7 100644 (file)
@@ -37,35 +37,35 @@ static int ip_do(int (*ip_func)(char **argv), char **argv)
 
 #if ENABLE_FEATURE_IP_ADDRESS
 int ipaddr_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int ipaddr_main(int argc, char **argv)
+int ipaddr_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
     return ip_do(do_ipaddr, argv);
 }
 #endif
 #if ENABLE_FEATURE_IP_LINK
 int iplink_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int iplink_main(int argc, char **argv)
+int iplink_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
     return ip_do(do_iplink, argv);
 }
 #endif
 #if ENABLE_FEATURE_IP_ROUTE
 int iproute_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int iproute_main(int argc, char **argv)
+int iproute_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
     return ip_do(do_iproute, argv);
 }
 #endif
 #if ENABLE_FEATURE_IP_RULE
 int iprule_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int iprule_main(int argc, char **argv)
+int iprule_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
     return ip_do(do_iprule, argv);
 }
 #endif
 #if ENABLE_FEATURE_IP_TUNNEL
 int iptunnel_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int iptunnel_main(int argc, char **argv)
+int iptunnel_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
     return ip_do(do_iptunnel, argv);
 }
@@ -73,7 +73,7 @@ int iptunnel_main(int argc, char **argv)
 
 
 int ip_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int ip_main(int argc, char **argv)
+int ip_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        static const char keywords[] ALIGN1 =
                USE_FEATURE_IP_ADDRESS("address\0")
index 33338572d986e094981a242e7cec39a9e5f2c68c..d60c9fbafb09f5156e683aecf6fcfc5adb1dd2d9 100644 (file)
@@ -76,7 +76,7 @@ static int do_rd(int fd, void **paramp)
        return retval;
 }
 
-static int do_timeout(void **paramp)
+static int do_timeout(void **paramp ATTRIBUTE_UNUSED)
 {
        return 1; /* terminate session */
 }
@@ -93,7 +93,7 @@ static void inetd_mode(void)
 }
 
 int fakeidentd_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int fakeidentd_main(int argc, char **argv)
+int fakeidentd_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        enum {
                OPT_foreground = 0x1,
index 7b5de92c27d40cb95227a35481a08ed11f868040..3cfc9ccec774376dacbc9b5b25fb5622acdf2d0b 100644 (file)
@@ -39,7 +39,9 @@ static struct idxmap *find_by_index(int idx)
        return NULL;
 }
 
-int ll_remember_index(struct sockaddr_nl *who, struct nlmsghdr *n, void *arg)
+int ll_remember_index(struct sockaddr_nl *who ATTRIBUTE_UNUSED,
+               struct nlmsghdr *n,
+               void *arg ATTRIBUTE_UNUSED)
 {
        int h;
        struct ifinfomsg *ifi = NLMSG_DATA(n);
index ce4829584f06acbd54b37e0e2196fc31fee1a458..34f715fc50346f168b11b523db517f30dbb4822f 100644 (file)
@@ -177,7 +177,7 @@ static void unarm(void)
 }
 
 /* timeout and other signal handling cruft */
-static void tmtravel(int sig)
+static void tmtravel(int sig ATTRIBUTE_UNUSED)
 {
        unarm();
        longjmp(jbuf, 1);
index 399ff9b42fe4710f20b4a097b50aa573ae6a7d96..fd8d8ecf3a3b6bcf16198e9716b82c6db31d144a 100644 (file)
@@ -486,7 +486,7 @@ static void do_info(const char *file, const char *name, int (*proc)(int, char *)
 }
 
 int netstat_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int netstat_main(int argc, char **argv)
+int netstat_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        const char *net_conn_line_header = PRINT_NET_CONN_HEADER;
        unsigned opt;
index 11138c036d657569597a75444bd92d8ef8cfe9e2..93b2e02f1eb51dee9c4c48521eb27571c8c6e680 100644 (file)
@@ -174,7 +174,7 @@ static void ping6(len_and_sockaddr *lsa)
 #endif
 
 int ping_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int ping_main(int argc, char **argv)
+int ping_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        len_and_sockaddr *lsa;
 #if ENABLE_PING6
@@ -495,7 +495,7 @@ static void unpack4(char *buf, int sz, struct sockaddr_in *from)
        }
 }
 #if ENABLE_PING6
-static void unpack6(char *packet, int sz, struct sockaddr_in6 *from, int hoplimit)
+static void unpack6(char *packet, int sz, /*struct sockaddr_in6 *from,*/ int hoplimit)
 {
        struct icmp6_hdr *icmppkt;
        char buf[INET6_ADDRSTRLEN];
@@ -658,7 +658,7 @@ static void ping6(len_and_sockaddr *lsa)
                                hoplimit = *(int*)CMSG_DATA(mp);
                        }
                }
-               unpack6(packet, c, &from, hoplimit);
+               unpack6(packet, c, /*&from,*/ hoplimit);
                if (pingcount > 0 && nreceived >= pingcount)
                        break;
        }
@@ -683,7 +683,7 @@ static void ping(len_and_sockaddr *lsa)
 }
 
 int ping_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int ping_main(int argc, char **argv)
+int ping_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        len_and_sockaddr *lsa;
        char *opt_c, *opt_s;
index 830419371dd81ce98eb7c2c3dfc3108693423bcc..022d21254635fc178a45d6dd80c6c3168d9146ca 100644 (file)
@@ -31,7 +31,7 @@ static const char *port_name(unsigned port)
 #define MONOTONIC_US() ((unsigned)monotonic_us())
 
 int pscan_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int pscan_main(int argc, char **argv)
+int pscan_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        const char *opt_max_port = "1024";      /* -P: default max port */
        const char *opt_min_port = "1";         /* -p: default min port */
index 6f945b9f88a6cd6cf74abc15492b87828d98eed5..53e3988c1484aeb7beb23bfb3eb49fafce700048 100644 (file)
@@ -539,7 +539,7 @@ void bb_displayroutes(int noresolve, int netstatfmt)
 
 #if ENABLE_FEATURE_IPV6
 
-static void INET6_displayroutes(int noresolve)
+static void INET6_displayroutes(void)
 {
        char addr6[128], *naddr6;
        /* In addr6x, we store both 40-byte ':'-delimited ipv6 addresses.
@@ -642,7 +642,7 @@ static const char tbl_verb[] ALIGN1 =
 ;
 
 int route_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int route_main(int argc, char **argv)
+int route_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        unsigned opt;
        int what;
@@ -675,7 +675,7 @@ int route_main(int argc, char **argv)
                int noresolve = (opt & ROUTE_OPT_n) ? 0x0fff : 0;
 #if ENABLE_FEATURE_IPV6
                if (opt & ROUTE_OPT_INET6)
-                       INET6_displayroutes(noresolve);
+                       INET6_displayroutes();
                else
 #endif
                        bb_displayroutes(noresolve, opt & ROUTE_OPT_e);
index eb356dcf5cdd910bbe95e19faeccd54fec165edb..241028b9264b992e75abd65b766e9dfc696b6285 100644 (file)
@@ -252,7 +252,7 @@ static void pop3_message(const char *filename)
 #endif
 
 int sendgetmail_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int sendgetmail_main(int argc, char **argv)
+int sendgetmail_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        llist_t *opt_recipients = NULL;
 
index 1987eb39c31561cd58c5afc142fe2af29661a8b6..3ffbb3ba85d4a485e54132145b9c319432424f0c 100644 (file)
@@ -114,13 +114,13 @@ static void set_state(struct termios *state, int encap)
        }
 }
 
-static void sig_handler(int signo)
+static void sig_handler(int signo ATTRIBUTE_UNUSED)
 {
        restore_state_and_exit(0);
 }
 
 int slattach_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int slattach_main(int argc, char **argv)
+int slattach_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        /* Line discipline code table */
        static const char proto_names[] ALIGN1 =
index 05de49e8a4523b0a868aace2482a93494ef60af8..20c57925f4d45ec37fd69ab3abb483931130aa25 100644 (file)
@@ -338,7 +338,7 @@ free_session(struct tsession *ts)
 
 #endif
 
-static void handle_sigchld(int sig)
+static void handle_sigchld(int sig ATTRIBUTE_UNUSED)
 {
        pid_t pid;
        struct tsession *ts;
@@ -360,7 +360,7 @@ static void handle_sigchld(int sig)
 }
 
 int telnetd_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int telnetd_main(int argc, char **argv)
+int telnetd_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        fd_set rdfdset, wrfdset;
        unsigned opt;
index 6cad295e3b6e5235b70df62377e9933858db51bd..14c340b2229c3cb2c44a635e5d08c8d8ae692072 100644 (file)
@@ -392,7 +392,7 @@ static int tftp( USE_GETPUT(const int cmd,)
 }
 
 int tftp_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int tftp_main(int argc, char **argv)
+int tftp_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        len_and_sockaddr *peer_lsa;
        const char *localfile = NULL;
index 7fca184abeb84d41495faeff985666679e5221bc..576b1cbb861f74de5f72185ce8a4a2dbae0567ac 100644 (file)
@@ -129,7 +129,7 @@ static uint8_t* alloc_dhcp_option(int code, const char *str, int extra)
 
 
 int udhcpc_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int udhcpc_main(int argc, char **argv)
+int udhcpc_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        uint8_t *temp, *message;
        char *str_c, *str_V, *str_h, *str_F, *str_r, *str_T, *str_A, *str_t;
index eb7323da704e64c25f4b8f1fbccc633c55f86ee6..263719657b84bbb9e56baf265a4f7c5b513a59de 100644 (file)
@@ -23,7 +23,7 @@ struct dhcpOfferedAddr *leases;
 
 
 int udhcpd_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int udhcpd_main(int argc, char **argv)
+int udhcpd_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        fd_set rfds;
        struct timeval tv;
index 218e6bc572f3388c3b9d67f8f9cf7b761aa8fd91..83b384177a0d2921b15f18fea9ee229991cfe909 100644 (file)
@@ -8,7 +8,7 @@
 #include "dhcpd.h"
 
 int dumpleases_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int dumpleases_main(int argc, char **argv)
+int dumpleases_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int fd;
        int i;
index a77a2add768ba246b0b9ad4439a45c1dddeab4f6..dc1dc2ad98283f581693119d821398e2951d89ac 100644 (file)
@@ -387,7 +387,7 @@ static char *gethdr(char *buf, size_t bufsiz, FILE *fp /*, int *istrunc*/)
 
 
 int wget_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int wget_main(int argc, char **argv)
+int wget_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        char buf[512];
        struct host_info server, target;
index 916fd62139d635b6c7d3a991452dfca49bc2e4cf..49e3fd744eedb228c600c572661c1092f0227513 100644 (file)
@@ -11,7 +11,7 @@
 // TODO: xmalloc_reads is vulnerable to remote OOM attack!
 
 int lpd_main(int argc, char *argv[]) MAIN_EXTERNALLY_VISIBLE;
-int lpd_main(int argc, char *argv[])
+int lpd_main(int argc ATTRIBUTE_UNUSED, char *argv[])
 {
        int spooling;
        char *s, *queue;
index 153e6ab9606f7cd0f9d7b20679ad3bedd4eeeaf1..5313d5a2008daf234b8e20a40fa37aedf52c9270 100644 (file)
@@ -42,7 +42,7 @@ static void get_response_or_say_and_die(int fd, const char *errmsg)
 }
 
 int lpqr_main(int argc, char *argv[]) MAIN_EXTERNALLY_VISIBLE;
-int lpqr_main(int argc, char *argv[])
+int lpqr_main(int argc ATTRIBUTE_UNUSED, char *argv[])
 {
        enum {
                OPT_P           = 1 << 0, // -P queue[@host[:port]]. If no -P is given use $PRINTER, then "lp@localhost:515"
index d625b16ab36183fd952098622a4bfb9ed54d62cf..48c9bdc1e3a48f0ad3095c077eafac001158e782 100644 (file)
@@ -267,7 +267,7 @@ static int kill_pid_list(pid_list *plist, int sig)
 }
 
 int fuser_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int fuser_main(int argc, char **argv)
+int fuser_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        pid_list *plist;
        inode_list *ilist;
index 7ab2865c8bccfbaea94f0bd6f44841d912bae76c..b6e754b7ae2f1db49dbc429cd821910e62d810be 100644 (file)
@@ -275,7 +275,7 @@ typedef struct a { \
 S_STAT(s_stat)
 S_STAT_END(s_stat)
 
-static void collect_literal(s_stat *s)
+static void collect_literal(s_stat *s ATTRIBUTE_UNUSED)
 {
 }
 
@@ -294,7 +294,7 @@ static s_stat* init_delay(const char *param)
        return NULL;
 }
 
-static s_stat* init_cr(const char *param)
+static s_stat* init_cr(const char *param ATTRIBUTE_UNUSED)
 {
        final_str = "\r";
        return (s_stat*)0;
@@ -436,7 +436,7 @@ static void collect_ctx(ctx_stat *s)
        scale(data[0] - old);
 }
 
-static s_stat* init_ctx(const char *param)
+static s_stat* init_ctx(const char *param ATTRIBUTE_UNUSED)
 {
        ctx_stat *s = xmalloc(sizeof(ctx_stat));
        s->collect = collect_ctx;
@@ -478,7 +478,7 @@ static void collect_blk(blk_stat *s)
        scale(data[1]*512);
 }
 
-static s_stat* init_blk(const char *param)
+static s_stat* init_blk(const char *param ATTRIBUTE_UNUSED)
 {
        blk_stat *s = xmalloc(sizeof(blk_stat));
        s->collect = collect_blk;
@@ -491,7 +491,7 @@ S_STAT(fork_stat)
        ullong old;
 S_STAT_END(fork_stat)
 
-static void collect_thread_nr(fork_stat *s)
+static void collect_thread_nr(fork_stat *s ATTRIBUTE_UNUSED)
 {
        ullong data[1];
 
@@ -660,7 +660,7 @@ static s_stat* init_mem(const char *param)
 S_STAT(swp_stat)
 S_STAT_END(swp_stat)
 
-static void collect_swp(swp_stat *s)
+static void collect_swp(swp_stat *s ATTRIBUTE_UNUSED)
 {
        ullong s_total[1];
        ullong s_free[1];
@@ -673,7 +673,7 @@ static void collect_swp(swp_stat *s)
        scale((s_total[0]-s_free[0]) << 10);
 }
 
-static s_stat* init_swp(const char *param)
+static s_stat* init_swp(const char *param ATTRIBUTE_UNUSED)
 {
        swp_stat *s = xmalloc(sizeof(swp_stat));
        s->collect = collect_swp;
@@ -684,7 +684,7 @@ static s_stat* init_swp(const char *param)
 S_STAT(fd_stat)
 S_STAT_END(fd_stat)
 
-static void collect_fd(fd_stat *s)
+static void collect_fd(fd_stat *s ATTRIBUTE_UNUSED)
 {
        ullong data[2];
 
@@ -696,7 +696,7 @@ static void collect_fd(fd_stat *s)
        scale(data[0] - data[1]);
 }
 
-static s_stat* init_fd(const char *param)
+static s_stat* init_fd(const char *param ATTRIBUTE_UNUSED)
 {
        fd_stat *s = xmalloc(sizeof(fd_stat));
        s->collect = collect_fd;
index e4dfacb547f49babfe7ef9af14829a93efc32e11..1ffc87db075688242630fe86791c1794adc6f1e9 100644 (file)
@@ -45,7 +45,7 @@ static void act(unsigned pid, char *cmd, int signo, unsigned opt)
 }
 
 int pgrep_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int pgrep_main(int argc, char **argv)
+int pgrep_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        unsigned pid = getpid();
        int signo = SIGTERM;
index 86d1957a63ac01feed5b006b11ab42be4827b0e0..46e646d6e53d95491f69523cc6de734c71f609ad 100644 (file)
@@ -17,7 +17,7 @@ enum {
 };
 
 int pidof_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int pidof_main(int argc, char **argv)
+int pidof_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        unsigned first = 1;
        unsigned opt;
index f9d346ccf60bd9fdca4aef7af2c48279a4ee5368..647e03fc4f49b3f820fb22ffd1203454665029cc 100644 (file)
@@ -422,7 +422,7 @@ static void format_process(const procps_status_t *ps)
 }
 
 int ps_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int ps_main(int argc, char **argv)
+int ps_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        procps_status_t *p;
        llist_t* opt_o = NULL;
index ab0d3a1c44ee7bd1a69e26c549fb3b64e83d19df..d2dcf152c2101fe71b716bb6a242d343144f5425 100644 (file)
@@ -27,7 +27,7 @@ void BUG_bad_PRIO_PGRP(void);
 void BUG_bad_PRIO_USER(void);
 
 int renice_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int renice_main(int argc, char **argv)
+int renice_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        static const char Xetpriority_msg[] ALIGN1 = "%cetpriority";
 
index 3a0af02d20d1bbb1afd5113ab166d9242f73a02b..1995382ad4baa86db91ec354942d78fe30d2196a 100644 (file)
@@ -57,7 +57,7 @@ enum {
 };
 
 int sysctl_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int sysctl_main(int argc, char **argv)
+int sysctl_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int retval;
        int opt;
index f4bb5094aa2554a48378f16515f906211b909920..fdd7584c8a2c5fbad22672f803983af08de5a252 100644 (file)
@@ -735,7 +735,7 @@ enum {
 };
 
 int top_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int top_main(int argc, char **argv)
+int top_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int count, lines, col;
        unsigned interval;
index 07e8d607d771007bcc0625ec4b94416ff8a45f21..b729055a5f795bd41dce6c4687b1f50b2b40bce3 100644 (file)
@@ -26,7 +26,7 @@
 
 
 int uptime_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int uptime_main(int argc, char **argv)
+int uptime_main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
 {
        int updays, uphours, upminutes;
        struct sysinfo info;
index b4955258eb1996dc804b0722f34ebffe7def233e..5b774e8084adb040d7f4c5560431444ab45be6c1 100644 (file)
@@ -24,7 +24,7 @@
 // (procps 3.x and procps 2.x are forks, not newer/older versions of the same)
 
 int watch_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int watch_main(int argc, char **argv)
+int watch_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        unsigned opt;
        unsigned period = 2;
index b306974bb01ccaa1386499fe646179b5b58b566b..fcac8ee3c272d6c61b8d179f89fb93ba342a046e 100644 (file)
@@ -290,7 +290,7 @@ static void envdir(int, char **) ATTRIBUTE_NORETURN;
 static void softlimit(int, char **) ATTRIBUTE_NORETURN;
 
 int chpst_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int chpst_main(int argc, char **argv)
+int chpst_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        INIT_G();
 
@@ -349,7 +349,7 @@ int chpst_main(int argc, char **argv)
        bb_perror_msg_and_die("exec %s", argv[0]);
 }
 
-static void setuidgid(int argc, char **argv)
+static void setuidgid(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        const char *account;
 
@@ -361,7 +361,7 @@ static void setuidgid(int argc, char **argv)
        bb_perror_msg_and_die("exec %s", argv[0]);
 }
 
-static void envuidgid(int argc, char **argv)
+static void envuidgid(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        const char *account;
 
@@ -373,7 +373,7 @@ static void envuidgid(int argc, char **argv)
        bb_perror_msg_and_die("exec %s", argv[0]);
 }
 
-static void envdir(int argc, char **argv)
+static void envdir(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        const char *dir;
 
@@ -385,7 +385,7 @@ static void envdir(int argc, char **argv)
        bb_perror_msg_and_die("exec %s", argv[0]);
 }
 
-static void softlimit(int argc, char **argv)
+static void softlimit(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        char *a,*c,*d,*f,*l,*m,*o,*p,*r,*s,*t;
        getopt32(argv, "+a:c:d:f:l:m:o:p:r:s:t:",
index 5d4e1584e9e57b7ede49aa86943268b704a96924..0da03e6b383b3182d7c992932f6b3c5b673511e5 100644 (file)
@@ -128,12 +128,12 @@ static void warn_cannot(const char *m)
        bb_perror_msg("%s: warning: cannot %s", dir, m);
 }
 
-static void s_child(int sig_no)
+static void s_child(int sig_no ATTRIBUTE_UNUSED)
 {
        write(selfpipe.wr, "", 1);
 }
 
-static void s_term(int sig_no)
+static void s_term(int sig_no ATTRIBUTE_UNUSED)
 {
        sigterm = 1;
        write(selfpipe.wr, "", 1); /* XXX */
@@ -432,7 +432,7 @@ static int ctrl(struct svdir *s, char c)
 }
 
 int runsv_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int runsv_main(int argc, char **argv)
+int runsv_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        struct stat s;
        int fd;
index 0ab672ef4f81526b9b949e5db87e8a1e32335b3f..bca5c901c31df707aa7ef8da889d0ce4548506b2 100644 (file)
@@ -72,11 +72,11 @@ static void warnx(const char *m1)
        warn3x(m1, "", "");
 }
 
-static void s_term(int sig_no)
+static void s_term(int sig_no ATTRIBUTE_UNUSED)
 {
        exitsoon = 1;
 }
-static void s_hangup(int sig_no)
+static void s_hangup(int sig_no ATTRIBUTE_UNUSED)
 {
        exitsoon = 2;
 }
@@ -207,7 +207,7 @@ static int setup_log(void)
 }
 
 int runsvdir_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int runsvdir_main(int argc, char **argv)
+int runsvdir_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        struct stat s;
        dev_t last_dev = last_dev; /* for gcc */
index 141f7a8bc3ae376a1c783824a4db2d5faff162cf..45d5572f81e615607591006ab37bd4590fe6bbcf 100644 (file)
@@ -293,7 +293,7 @@ static unsigned svstatus_print(const char *m)
        return pid ? 1 : 2;
 }
 
-static int status(const char *unused)
+static int status(const char *unused ATTRIBUTE_UNUSED)
 {
        int r;
 
index c69cb545cd158533c38ec4873af81c8ca4e7a002..4458bd787235f41aebbd2edd0e95e590ef519b1e 100644 (file)
@@ -783,14 +783,14 @@ static int buffer_pread(/*int fd, */char *s, unsigned len)
        return i;
 }
 
-static void sig_term_handler(int sig_no)
+static void sig_term_handler(int sig_no ATTRIBUTE_UNUSED)
 {
        if (verbose)
                bb_error_msg(INFO"sig%s received", "term");
        exitasap = 1;
 }
 
-static void sig_child_handler(int sig_no)
+static void sig_child_handler(int sig_no ATTRIBUTE_UNUSED)
 {
        int pid, l;
 
@@ -807,14 +807,14 @@ static void sig_child_handler(int sig_no)
        }
 }
 
-static void sig_alarm_handler(int sig_no)
+static void sig_alarm_handler(int sig_no ATTRIBUTE_UNUSED)
 {
        if (verbose)
                bb_error_msg(INFO"sig%s received", "alarm");
        rotateasap = 1;
 }
 
-static void sig_hangup_handler(int sig_no)
+static void sig_hangup_handler(int sig_no ATTRIBUTE_UNUSED)
 {
        if (verbose)
                bb_error_msg(INFO"sig%s received", "hangup");
index 069909118ffa9e744e319ab23afdcef8e1fc1531..580918cebac8a7ec1c65b8b93f38d64ac6cb0ef7 100644 (file)
@@ -2472,7 +2472,7 @@ docd(const char *dest, int flags)
 }
 
 static int
-cdcmd(int argc, char **argv)
+cdcmd(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
 {
        const char *dest;
        const char *path;
@@ -2536,7 +2536,7 @@ cdcmd(int argc, char **argv)
 }
 
 static int
-pwdcmd(int argc, char **argv)
+pwdcmd(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
 {
        int flags;
        const char *dir = curdir;
@@ -3138,19 +3138,20 @@ printalias(const struct alias *ap)
  * TODO - sort output
  */
 static int
-aliascmd(int argc, char **argv)
+aliascmd(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        char *n, *v;
        int ret = 0;
        struct alias *ap;
 
-       if (argc == 1) {
+       if (!argv[1]) {
                int i;
 
-               for (i = 0; i < ATABSIZE; i++)
+               for (i = 0; i < ATABSIZE; i++) {
                        for (ap = atab[i]; ap; ap = ap->next) {
                                printalias(ap);
                        }
+               }
                return 0;
        }
        while ((n = *++argv) != NULL) {
@@ -3172,7 +3173,7 @@ aliascmd(int argc, char **argv)
 }
 
 static int
-unaliascmd(int argc, char **argv)
+unaliascmd(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
 {
        int i;
 
@@ -3245,7 +3246,7 @@ struct job {
 static pid_t backgndpid;        /* pid of last background process */
 static smallint job_warning;    /* user was warned about stopped jobs (can be 2, 1 or 0). */
 
-static struct job *makejob(union node *, int);
+static struct job *makejob(/*union node *,*/ int);
 static int forkshell(struct job *, union node *, int);
 static int waitforjob(struct job *);
 
@@ -3612,8 +3613,8 @@ setjobctl(int on)
 static int
 killcmd(int argc, char **argv)
 {
+       int i = 1;
        if (argv[1] && strcmp(argv[1], "-l") != 0) {
-               int i = 1;
                do {
                        if (argv[i][0] == '%') {
                                struct job *jp = getjob(argv[i], 0);
@@ -3675,7 +3676,7 @@ restartjob(struct job *jp, int mode)
 }
 
 static int
-fg_bgcmd(int argc, char **argv)
+fg_bgcmd(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        struct job *jp;
        FILE *out;
@@ -3962,7 +3963,7 @@ showjobs(FILE *out, int mode)
 }
 
 static int
-jobscmd(int argc, char **argv)
+jobscmd(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int mode, m;
 
@@ -4015,7 +4016,7 @@ getstatus(struct job *job)
 }
 
 static int
-waitcmd(int argc, char **argv)
+waitcmd(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        struct job *job;
        int retval;
@@ -4121,7 +4122,7 @@ growjobtab(void)
  * Called with interrupts off.
  */
 static struct job *
-makejob(union node *node, int nprocs)
+makejob(/*union node *node,*/ int nprocs)
 {
        int i;
        struct job *jp;
@@ -4156,7 +4157,7 @@ makejob(union node *node, int nprocs)
        if (nprocs > 1) {
                jp->ps = ckmalloc(nprocs * sizeof(struct procstat));
        }
-       TRACE(("makejob(0x%lx, %d) returns %%%d\n", (long)node, nprocs,
+       TRACE(("makejob(%d) returns %%%d\n", nprocs,
                                jobno(jp)));
        return jp;
 }
@@ -4484,7 +4485,7 @@ static void closescript(void);
 
 /* Called after fork(), in child */
 static void
-forkchild(struct job *jp, union node *n, int mode)
+forkchild(struct job *jp, /*union node *n,*/ int mode)
 {
        int oldlvl;
 
@@ -4584,7 +4585,7 @@ forkshell(struct job *jp, union node *n, int mode)
                ash_msg_and_raise_error("cannot fork");
        }
        if (pid == 0)
-               forkchild(jp, n, mode);
+               forkchild(jp, /*n,*/ mode);
        else
                forkparent(jp, n, mode, pid);
        return pid;
@@ -5371,7 +5372,7 @@ evalbackcmd(union node *n, struct backcmd *result)
 
                if (pipe(pip) < 0)
                        ash_msg_and_raise_error("pipe call failed");
-               jp = makejob(n, 1);
+               jp = makejob(/*n,*/ 1);
                if (forkshell(jp, n, FORK_NOJOB) == 0) {
                        FORCE_INT_ON;
                        close(pip[0]);
@@ -5668,7 +5669,7 @@ argstr(char *p, int flag, struct strlist *var_str_list)
 }
 
 static char *
-scanleft(char *startp, char *rmesc, char *rmescend, char *str, int quotes,
+scanleft(char *startp, char *rmesc, char *rmescend ATTRIBUTE_UNUSED, char *str, int quotes,
        int zero)
 {
        char *loc;
@@ -6407,7 +6408,7 @@ expsort(struct strlist *str)
 }
 
 static void
-expandmeta(struct strlist *str, int flag)
+expandmeta(struct strlist *str /*, int flag*/)
 {
        static const char metachars[] ALIGN1 = {
                '*', '?', '[', 0
@@ -6488,7 +6489,7 @@ expandarg(union node *arg, struct arglist *arglist, int flag)
                ifsbreakup(p, &exparg);
                *exparg.lastp = NULL;
                exparg.lastp = &exparg.list;
-               expandmeta(exparg.list, flag);
+               expandmeta(exparg.list /*, flag*/);
        } else {
                if (flag & EXP_REDIR) /*XXX - for now, just remove escapes */
                        rmescapes(p);
@@ -6838,7 +6839,7 @@ addcmdentry(char *name, struct cmdentry *entry)
 }
 
 static int
-hashcmd(int argc, char **argv)
+hashcmd(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
 {
        struct tblentry **pp;
        struct tblentry *cmdp;
@@ -7139,7 +7140,7 @@ describe_command(char *command, int describe_command_verbose)
 }
 
 static int
-typecmd(int argc, char **argv)
+typecmd(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int i = 1;
        int err = 0;
@@ -7150,7 +7151,7 @@ typecmd(int argc, char **argv)
                i++;
                verbose = 0;
        }
-       while (i < argc) {
+       while (argv[i]) {
                err |= describe_command(argv[i++], verbose);
        }
        return err;
@@ -7158,7 +7159,7 @@ typecmd(int argc, char **argv)
 
 #if ENABLE_ASH_CMDCMD
 static int
-commandcmd(int argc, char **argv)
+commandcmd(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
 {
        int c;
        enum {
@@ -7768,7 +7769,7 @@ evalsubshell(union node *n, int flags)
        if (!backgnd && flags & EV_EXIT && !trap[0])
                goto nofork;
        INT_OFF;
-       jp = makejob(n, 1);
+       jp = makejob(/*n,*/ 1);
        if (forkshell(jp, n, backgnd) == 0) {
                INT_ON;
                flags |= EV_EXIT;
@@ -7843,7 +7844,7 @@ evalpipe(union node *n, int flags)
                pipelen++;
        flags |= EV_EXIT;
        INT_OFF;
-       jp = makejob(n, pipelen);
+       jp = makejob(/*n,*/ pipelen);
        prevfd = -1;
        for (lp = n->npipe.cmdlist; lp; lp = lp->next) {
                prehash(lp->n);
@@ -8098,7 +8099,7 @@ mklocal(char *name)
  * The "local" command.
  */
 static int
-localcmd(int argc, char **argv)
+localcmd(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        char *name;
 
@@ -8110,21 +8111,21 @@ localcmd(int argc, char **argv)
 }
 
 static int
-falsecmd(int argc, char **argv)
+falsecmd(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
 {
        return 1;
 }
 
 static int
-truecmd(int argc, char **argv)
+truecmd(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
 {
        return 0;
 }
 
 static int
-execcmd(int argc, char **argv)
+execcmd(int argc ATTRIBUTE_UNUSED, char **argv)
 {
-       if (argc > 1) {
+       if (argv[1]) {
                iflag = 0;              /* exit on error */
                mflag = 0;
                optschanged();
@@ -8137,7 +8138,7 @@ execcmd(int argc, char **argv)
  * The return command.
  */
 static int
-returncmd(int argc, char **argv)
+returncmd(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        /*
         * If called outside a function, do what ksh does;
@@ -8296,7 +8297,7 @@ isassignment(const char *p)
        return *q == '=';
 }
 static int
-bltincmd(int argc, char **argv)
+bltincmd(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
 {
        /* Preserve exitstatus of a previous possible redirection
         * as POSIX mandates */
@@ -8466,7 +8467,7 @@ evalcommand(union node *cmd, int flags)
                /* Fork off a child process if necessary. */
                if (!(flags & EV_EXIT) || trap[0]) {
                        INT_OFF;
-                       jp = makejob(cmd, 1);
+                       jp = makejob(/*cmd,*/ 1);
                        if (forkshell(jp, cmd, FORK_FG) != 0) {
                                exitstatus = waitforjob(jp);
                                INT_ON;
@@ -8596,9 +8597,9 @@ prehash(union node *n)
  * in the standard shell so we don't make it one here.
  */
 static int
-breakcmd(int argc, char **argv)
+breakcmd(int argc ATTRIBUTE_UNUSED, char **argv)
 {
-       int n = argc > 1 ? number(argv[1]) : 1;
+       int n = argv[1] ? number(argv[1]) : 1;
 
        if (n <= 0)
                ash_msg_and_raise_error(illnum, argv[1]);
@@ -9095,7 +9096,7 @@ chkmail(void)
 }
 
 static void
-changemail(const char *val)
+changemail(const char *val ATTRIBUTE_UNUSED)
 {
        mail_var_path_changed = 1;
 }
@@ -9247,13 +9248,13 @@ options(int cmdline)
  * The shift builtin command.
  */
 static int
-shiftcmd(int argc, char **argv)
+shiftcmd(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int n;
        char **ap1, **ap2;
 
        n = 1;
-       if (argc > 1)
+       if (argv[1])
                n = number(argv[1]);
        if (n > shellparam.nparam)
                ash_msg_and_raise_error("can't shift that many");
@@ -9308,11 +9309,11 @@ showvars(const char *sep_prefix, int on, int off)
  * The set command builtin.
  */
 static int
-setcmd(int argc, char **argv)
+setcmd(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
 {
        int retval;
 
-       if (argc == 1)
+       if (!argv[1])
                return showvars(nullstr, 0, VUNSET);
        INT_OFF;
        retval = 1;
@@ -11015,20 +11016,19 @@ evalstring(char *s, int mask)
  * The eval command.
  */
 static int
-evalcmd(int argc, char **argv)
+evalcmd(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        char *p;
        char *concat;
-       char **ap;
 
-       if (argc > 1) {
+       if (argv[1]) {
                p = argv[1];
-               if (argc > 2) {
+               argv += 2;
+               if (argv[0]) {
                        STARTSTACKSTR(concat);
-                       ap = argv + 2;
                        for (;;) {
                                concat = stack_putstr(p, concat);
-                               p = *ap++;
+                               p = *argv++;
                                if (p == NULL)
                                        break;
                                STPUTC(' ', concat);
@@ -11139,16 +11139,15 @@ dotcmd(int argc, char **argv)
        for (sp = cmdenviron; sp; sp = sp->next)
                setvareq(ckstrdup(sp->text), VSTRFIXED | VTEXTFIXED);
 
-       if (argc >= 2) {        /* That's what SVR2 does */
-               char *fullname;
-
-               fullname = find_dot_file(argv[1]);
-
-               if (argc > 2) {
+       if (argv[1]) {        /* That's what SVR2 does */
+               char *fullname = find_dot_file(argv[1]);
+               argv += 2;
+               argc -= 2;
+               if (argc) { /* argc > 0, argv[0] != NULL */
                        saveparam = shellparam;
                        shellparam.malloced = 0;
-                       shellparam.nparam = argc - 2;
-                       shellparam.p = argv + 2;
+                       shellparam.nparam = argc;
+                       shellparam.p = argv;
                };
 
                setinputfile(fullname, INPUT_PUSH_FILE);
@@ -11156,7 +11155,7 @@ dotcmd(int argc, char **argv)
                cmdloop(0);
                popfile();
 
-               if (argc > 2) {
+               if (argc) {
                        freeparam(&shellparam);
                        shellparam = saveparam;
                };
@@ -11166,11 +11165,11 @@ dotcmd(int argc, char **argv)
 }
 
 static int
-exitcmd(int argc, char **argv)
+exitcmd(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        if (stoppedjobs())
                return 0;
-       if (argc > 1)
+       if (argv[1])
                exitstatus = number(argv[1]);
        raise_exception(EXEXIT);
        /* NOTREACHED */
@@ -11404,7 +11403,7 @@ find_command(char *name, struct cmdentry *entry, int act, const char *path)
  * The trap builtin.
  */
 static int
-trapcmd(int argc, char **argv)
+trapcmd(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
 {
        char *action;
        char **ap;
@@ -11457,7 +11456,7 @@ trapcmd(int argc, char **argv)
  * Lists available builtins
  */
 static int
-helpcmd(int argc, char **argv)
+helpcmd(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
 {
        int col, i;
 
@@ -11492,7 +11491,7 @@ helpcmd(int argc, char **argv)
  * The export and readonly commands.
  */
 static int
-exportcmd(int argc, char **argv)
+exportcmd(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        struct var *vp;
        char *name;
@@ -11543,7 +11542,7 @@ unsetfunc(const char *name)
  * with the same name.
  */
 static int
-unsetcmd(int argc, char **argv)
+unsetcmd(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
 {
        char **ap;
        int i;
@@ -11581,7 +11580,7 @@ static const unsigned char timescmd_str[] ALIGN1 = {
 };
 
 static int
-timescmd(int ac, char **av)
+timescmd(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
 {
        long clk_tck, s, t;
        const unsigned char *p;
@@ -11633,17 +11632,16 @@ dash_arith(const char *s)
  *  Copyright (C) 2003 Vladimir Oleynik <dzo@simtreas.ru>
  */
 static int
-letcmd(int argc, char **argv)
+letcmd(int argc ATTRIBUTE_UNUSED, char **argv)
 {
-       char **ap;
-       arith_t i = 0;
+       arith_t i;
 
-       ap = argv + 1;
-       if (!*ap)
+       argv++;
+       if (!*argv)
                ash_msg_and_raise_error("expression expected");
-       for (ap = argv + 1; *ap; ap++) {
-               i = dash_arith(*ap);
-       }
+       do {
+               i = dash_arith(*argv);
+       } while (*++argv);
 
        return !i;
 }
@@ -11668,7 +11666,7 @@ typedef enum __rlimit_resource rlim_t;
  * This uses unbuffered input, which may be avoidable in some cases.
  */
 static int
-readcmd(int argc, char **argv)
+readcmd(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
 {
        char **ap;
        int backslash;
@@ -11859,7 +11857,7 @@ readcmd(int argc, char **argv)
 }
 
 static int
-umaskcmd(int argc, char **argv)
+umaskcmd(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        static const char permuser[3] ALIGN1 = "ugo";
        static const char permmode[3] ALIGN1 = "rwx";
@@ -12034,7 +12032,7 @@ printlim(enum limtype how, const struct rlimit *limit,
 }
 
 static int
-ulimitcmd(int argc, char **argv)
+ulimitcmd(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED)
 {
        int c;
        rlim_t val = 0;
@@ -12868,7 +12866,7 @@ init(void)
  * Process the shell command line arguments.
  */
 static void
-procargs(int argc, char **argv)
+procargs(char **argv)
 {
        int i;
        const char *xminusc;
@@ -12876,7 +12874,7 @@ procargs(int argc, char **argv)
 
        xargv = argv;
        arg0 = xargv[0];
-       if (argc > 0)
+       /* if (xargv[0]) - mmm, this is always true! */
                xargv++;
        for (i = 0; i < NOPTS; i++)
                optlist[i] = 2;
@@ -12976,7 +12974,7 @@ extern int etext();
  * is used to figure out how far we had gotten.
  */
 int ash_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int ash_main(int argc, char **argv)
+int ash_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        char *shinit;
        volatile int state;
@@ -13039,7 +13037,8 @@ int ash_main(int argc, char **argv)
 #endif
        init();
        setstackmark(&smark);
-       procargs(argc, argv);
+       procargs(argv);
+
 #if ENABLE_FEATURE_EDITING_SAVEHISTORY
        if (iflag) {
                const char *hp = lookupvar("HISTFILE");
index c61607dd39f24f91b0ca19c3a0b065367670a1b2..2d5697269da70fce4ba3c3b6b79dc4d2fa2e585a 100644 (file)
@@ -536,11 +536,13 @@ static int done_pipe(struct p_context *ctx, pipe_style type);
 static int redirect_dup_num(struct in_str *input);
 static int redirect_opt_num(o_string *o);
 #if ENABLE_HUSH_TICK
-static int process_command_subs(o_string *dest, struct p_context *ctx, struct in_str *input, const char *subst_end);
+static int process_command_subs(o_string *dest, /*struct p_context *ctx,*/
+               struct in_str *input, const char *subst_end);
 #endif
 static int parse_group(o_string *dest, struct p_context *ctx, struct in_str *input, int ch);
 static const char *lookup_param(const char *src);
-static int handle_dollar(o_string *dest, struct p_context *ctx, struct in_str *input);
+static int handle_dollar(o_string *dest, /*struct p_context *ctx,*/
+               struct in_str *input);
 static int parse_stream(o_string *dest, struct p_context *ctx, struct in_str *input0, const char *end_trigger);
 /*   setup: */
 static int parse_and_run_stream(struct in_str *inp, int parse_flag);
@@ -741,14 +743,14 @@ static void set_every_sighandler(void (*handler)(int))
        signal(SIGCHLD, handler);
 }
 
-static void handler_ctrl_c(int sig)
+static void handler_ctrl_c(int sig ATTRIBUTE_UNUSED)
 {
        debug_printf_jobs("got sig %d\n", sig);
 // as usual we can have all kinds of nasty problems with leaked malloc data here
        siglongjmp(toplevel_jb, 1);
 }
 
-static void handler_ctrl_z(int sig)
+static void handler_ctrl_z(int sig ATTRIBUTE_UNUSED)
 {
        pid_t pid;
 
@@ -3257,8 +3259,10 @@ static FILE *generate_stream_from_list(struct pipe *head)
 }
 
 /* Return code is exit status of the process that is run. */
-static int process_command_subs(o_string *dest, struct p_context *ctx,
-       struct in_str *input, const char *subst_end)
+static int process_command_subs(o_string *dest,
+               /*struct p_context *ctx,*/
+               struct in_str *input,
+               const char *subst_end)
 {
        int retcode, ch, eol_cnt;
        o_string result = NULL_O_STRING;
@@ -3351,7 +3355,7 @@ static const char *lookup_param(const char *src)
 }
 
 /* return code: 0 for OK, 1 for syntax error */
-static int handle_dollar(o_string *dest, struct p_context *ctx, struct in_str *input)
+static int handle_dollar(o_string *dest, /*struct p_context *ctx,*/ struct in_str *input)
 {
        int ch = b_peek(input);  /* first character after the $ */
        unsigned char quote_mask = dest->o_quote ? 0x80 : 0;
@@ -3409,7 +3413,7 @@ static int handle_dollar(o_string *dest, struct p_context *ctx, struct in_str *i
 #if ENABLE_HUSH_TICK
                case '(':
                        b_getch(input);
-                       process_command_subs(dest, ctx, input, ")");
+                       process_command_subs(dest, /*ctx,*/ input, ")");
                        break;
 #endif
                case '-':
@@ -3507,7 +3511,7 @@ static int parse_stream(o_string *dest, struct p_context *ctx,
                        b_addqchr(dest, b_getch(input), dest->o_quote);
                        break;
                case '$':
-                       if (handle_dollar(dest, ctx, input) != 0) {
+                       if (handle_dollar(dest, /*ctx,*/ input) != 0) {
                                debug_printf_parse("parse_stream return 1: handle_dollar returned non-0\n");
                                return 1;
                        }
@@ -3532,7 +3536,7 @@ static int parse_stream(o_string *dest, struct p_context *ctx,
                        break;
 #if ENABLE_HUSH_TICK
                case '`':
-                       process_command_subs(dest, ctx, input, "`");
+                       process_command_subs(dest, /*ctx,*/ input, "`");
                        break;
 #endif
                case '>':
index 5ed6dfd1df2c34ddc9f3b242946f5898e03a0946..63f365962e293ed744a97a57fd2923da46b5c4d0 100644 (file)
@@ -589,7 +589,7 @@ static const struct builtincmd builtincmds[] = {
 };
 
 static struct op *scantree(struct op *);
-static struct op *dowholefile(int, int);
+static struct op *dowholefile(int /*, int*/);
 
 
 /* Globals */
@@ -1448,7 +1448,7 @@ static void next(int f)
        PUSHIO(afile, f, filechar);
 }
 
-static void onintr(int s)                                      /* ANSI C requires a parameter */
+static void onintr(int s ATTRIBUTE_UNUSED) /* ANSI C requires a parameter */
 {
        signal(SIGINT, onintr);
        intr = 1;
@@ -1864,11 +1864,11 @@ static struct op *command(int cf)
        return t;
 }
 
-static struct op *dowholefile(int type, int mark)
+static struct op *dowholefile(int type /*, int mark*/)
 {
        struct op *t;
 
-       DBGPRINTF(("DOWHOLEFILE: enter, type=%d, mark=%d\n", type, mark));
+       DBGPRINTF(("DOWHOLEFILE: enter, type=%d\n", type /*, mark*/));
 
        multiline++;
        t = c_list();
@@ -2477,7 +2477,7 @@ static int execute(struct op *t, int *pin, int *pout, int no_fork)
 
                newfile(evalstr(t->op_words[0], DOALL));
 
-               t->left = dowholefile(TLIST, 0);
+               t->left = dowholefile(TLIST /*, 0*/);
                t->right = NULL;
 
                outtree = outtree_save;
@@ -3155,7 +3155,7 @@ static int run(struct ioarg *argp, int (*f) (struct ioarg *))
  * built-in commands: doX
  */
 
-static int dohelp(struct op *t, char **args)
+static int dohelp(struct op *t ATTRIBUTE_UNUSED, char **args ATTRIBUTE_UNUSED)
 {
        int col;
        const struct builtincmd *x;
@@ -3191,12 +3191,12 @@ static int dohelp(struct op *t, char **args)
        return EXIT_SUCCESS;
 }
 
-static int dolabel(struct op *t, char **args)
+static int dolabel(struct op *t ATTRIBUTE_UNUSED, char **args ATTRIBUTE_UNUSED)
 {
        return 0;
 }
 
-static int dochdir(struct op *t, char **args)
+static int dochdir(struct op *t ATTRIBUTE_UNUSED, char **args)
 {
        const char *cp, *er;
 
@@ -3217,7 +3217,7 @@ static int dochdir(struct op *t, char **args)
        return 1;
 }
 
-static int doshift(struct op *t, char **args)
+static int doshift(struct op *t ATTRIBUTE_UNUSED, char **args)
 {
        int n;
 
@@ -3236,7 +3236,7 @@ static int doshift(struct op *t, char **args)
 /*
  * execute login and newgrp directly
  */
-static int dologin(struct op *t, char **args)
+static int dologin(struct op *t ATTRIBUTE_UNUSED, char **args)
 {
        const char *cp;
 
@@ -3251,7 +3251,7 @@ static int dologin(struct op *t, char **args)
        return 1;
 }
 
-static int doumask(struct op *t, char **args)
+static int doumask(struct op *t ATTRIBUTE_UNUSED, char **args)
 {
        int i;
        char *cp;
@@ -3301,7 +3301,7 @@ static int doexec(struct op *t, char **args)
        return 1;
 }
 
-static int dodot(struct op *t, char **args)
+static int dodot(struct op *t ATTRIBUTE_UNUSED, char **args)
 {
        int i;
        const char *sp;
@@ -3355,7 +3355,7 @@ static int dodot(struct op *t, char **args)
        return -1;
 }
 
-static int dowait(struct op *t, char **args)
+static int dowait(struct op *t ATTRIBUTE_UNUSED, char **args)
 {
        int i;
        char *cp;
@@ -3371,7 +3371,7 @@ static int dowait(struct op *t, char **args)
        return 0;
 }
 
-static int doread(struct op *t, char **args)
+static int doread(struct op *t ATTRIBUTE_UNUSED, char **args)
 {
        char *cp, **wp;
        int nb = 0;
@@ -3398,12 +3398,12 @@ static int doread(struct op *t, char **args)
        return nb <= 0;
 }
 
-static int doeval(struct op *t, char **args)
+static int doeval(struct op *t ATTRIBUTE_UNUSED, char **args)
 {
        return RUN(awordlist, args + 1, wdchar);
 }
 
-static int dotrap(struct op *t, char **args)
+static int dotrap(struct op *t ATTRIBUTE_UNUSED, char **args)
 {
        int n, i;
        int resetsig;
@@ -3484,12 +3484,12 @@ static int getn(char *as)
        return n * m;
 }
 
-static int dobreak(struct op *t, char **args)
+static int dobreak(struct op *t ATTRIBUTE_UNUSED, char **args)
 {
        return brkcontin(args[1], 1);
 }
 
-static int docontinue(struct op *t, char **args)
+static int docontinue(struct op *t ATTRIBUTE_UNUSED, char **args)
 {
        return brkcontin(args[1], 0);
 }
@@ -3517,7 +3517,7 @@ static int brkcontin(char *cp, int val)
        /* NOTREACHED */
 }
 
-static int doexit(struct op *t, char **args)
+static int doexit(struct op *t ATTRIBUTE_UNUSED, char **args)
 {
        char *cp;
 
@@ -3533,13 +3533,13 @@ static int doexit(struct op *t, char **args)
        return 0;
 }
 
-static int doexport(struct op *t, char **args)
+static int doexport(struct op *t ATTRIBUTE_UNUSED, char **args)
 {
        rdexp(args + 1, export, EXPORT);
        return 0;
 }
 
-static int doreadonly(struct op *t, char **args)
+static int doreadonly(struct op *t ATTRIBUTE_UNUSED, char **args)
 {
        rdexp(args + 1, ronly, RONLY);
        return 0;
@@ -3575,7 +3575,7 @@ static void badid(char *s)
        err(": bad identifier");
 }
 
-static int doset(struct op *t, char **args)
+static int doset(struct op *t ATTRIBUTE_UNUSED, char **args)
 {
        struct var *vp;
        char *cp;
@@ -3650,7 +3650,7 @@ static void times_fmt(char *buf, clock_t val, unsigned clk_tck)
 #endif
 }
 
-static int dotimes(struct op *t, char **args)
+static int dotimes(struct op *t ATTRIBUTE_UNUSED, char **args ATTRIBUTE_UNUSED)
 {
        struct tms buf;
        unsigned clk_tck = sysconf(_SC_CLK_TCK);
index 01d5971781c3226941115ba9a42cb0c2626f9136..983a59784c0119076128cfc72c2626b47c312296 100644 (file)
@@ -37,7 +37,7 @@ enum {
 };
 
 int klogd_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int klogd_main(int argc, char **argv)
+int klogd_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int i = i; /* silence gcc */
        char *start;
index 62846463c4c50e72496a5c11df15e06efb4a26ad..6f4429fd97fb2d2cb90ac98220b68f4fe1cb123d 100644 (file)
@@ -68,7 +68,7 @@ static void interrupted(int sig ATTRIBUTE_UNUSED)
 }
 
 int logread_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int logread_main(int argc, char **argv)
+int logread_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int cur;
        int log_semid; /* ipc semaphore id */
index 596984e3fad50d734ee2fd293428255ca3f9e572..371b5588fa1de09906ae48c8348cbc3732b0e9c3 100644 (file)
@@ -633,7 +633,7 @@ static void do_syslogd(void)
 }
 
 int syslogd_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int syslogd_main(int argc, char **argv)
+int syslogd_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        char OPTION_DECL;
 
index cdd385ede459317cb01a6bc24e35f2f14777c865..9e834ffd348be27b3bfc2ad3ef495b10194e580d 100644 (file)
@@ -13,7 +13,7 @@
 #include "libbb.h"
 
 int dmesg_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int dmesg_main(int argc, char **argv)
+int dmesg_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int len;
        char *buf;
index 63f915ac5e17185ae4e76a848bdea48c714df507..058e8bed7742b8fdfcbbd097222341aa21cbfb6b 100644 (file)
@@ -1204,7 +1204,7 @@ void check2(void);
 #endif
 
 int fsck_minix_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int fsck_minix_main(int argc, char **argv)
+int fsck_minix_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        struct termios tmp;
        int retcode = 0;
index f226535fa4e89bc17317cfe0948e425cdcce5716..44522dfd7f3360388e001258ee4b0c2c79205d2d 100644 (file)
@@ -91,7 +91,7 @@ static void from_sys_clock(int utc)
 #define HWCLOCK_OPT_RTCFILE     0x20
 
 int hwclock_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int hwclock_main(int argc, char **argv)
+int hwclock_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        unsigned opt;
        int utc;
index 97b98f300176f888316033c35e92fc0504d16d83..4b5c597e5e0b1685399e0be6c4e576692fdde30d 100644 (file)
@@ -559,7 +559,7 @@ static void print_sem(int semid)
 }
 
 int ipcs_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int ipcs_main(int argc, char **argv)
+int ipcs_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int id = 0;
        unsigned flags = 0;
index 9c33feb3590df32fc21fe0b251f6a3351a8053da..0edaf10473afb0113fbca5f47107972e6aa670ca 100644 (file)
@@ -244,8 +244,10 @@ static void make_device(char *path, int delete)
 }
 
 /* File callback for /sys/ traversal */
-static int fileAction(const char *fileName, struct stat *statbuf,
-                      void *userData, int depth)
+static int fileAction(const char *fileName,
+                      struct stat *statbuf ATTRIBUTE_UNUSED,
+                      void *userData,
+                      int depth ATTRIBUTE_UNUSED)
 {
        size_t len = strlen(fileName) - 4;
        char *scratch = userData;
@@ -261,8 +263,10 @@ static int fileAction(const char *fileName, struct stat *statbuf,
 }
 
 /* Directory callback for /sys/ traversal */
-static int dirAction(const char *fileName, struct stat *statbuf,
-                      void *userData, int depth)
+static int dirAction(const char *fileName ATTRIBUTE_UNUSED,
+                      struct stat *statbuf ATTRIBUTE_UNUSED,
+                      void *userData ATTRIBUTE_UNUSED,
+                      int depth)
 {
        return (depth >= MAX_SYSFS_DEPTH ? SKIP : TRUE);
 }
index a784b72f4f7b19510d495acf4ba9c9c8272e681d..3fbdc20208c42453529540e7b62567b0e6c8ad3f 100644 (file)
@@ -495,7 +495,7 @@ static size_t do_check(char *buffer, size_t try, unsigned current_block)
        return try;
 }
 
-static void alarm_intr(int alnum)
+static void alarm_intr(int alnum ATTRIBUTE_UNUSED)
 {
        if (G.currently_testing >= SB_ZONES)
                return;
@@ -621,7 +621,7 @@ static void setup_tables(void)
 }
 
 int mkfs_minix_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int mkfs_minix_main(int argc, char **argv)
+int mkfs_minix_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        struct mntent *mp;
        unsigned opt;
index 2d5535991a447423d7bff9eb1712c24861a9eb25..257f40168db6e779ef3e10bfda6ab9772f6d54c6 100644 (file)
@@ -36,7 +36,7 @@ struct globals {
 #define setTermSettings(fd, argp) tcsetattr(fd, TCSANOW, argp)
 #define getTermSettings(fd, argp) tcgetattr(fd, argp)
 
-static void gotsig(int sig)
+static void gotsig(int sig ATTRIBUTE_UNUSED)
 {
        bb_putchar('\n');
        setTermSettings(cin_fileno, &initial_settings);
@@ -51,7 +51,7 @@ static void gotsig(int sig)
 #define CONVERTED_TAB_SIZE 8
 
 int more_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int more_main(int argc, char **argv)
+int more_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int c = c; /* for gcc */
        int lines;
index 796e1e10306506c516877ea827e888c26f73e8a5..6e63a01fc2ac06477bfcd07072373143752e3982 100644 (file)
@@ -909,7 +909,7 @@ static inline int daemonize(void) { return -ENOSYS; }
 #endif
 
 // TODO
-static inline int we_saw_this_host_before(const char *hostname)
+static inline int we_saw_this_host_before(const char *hostname ATTRIBUTE_UNUSED)
 {
        return 0;
 }
index 150efbec4e760ff71232d2d91612d5b145c8102d..9e7bdba35abe38ac33d929f3239f37cc33a58734 100644 (file)
@@ -12,7 +12,7 @@
 
 enum { RFC_868_BIAS = 2208988800UL };
 
-static void socket_timeout(int sig)
+static void socket_timeout(int sig ATTRIBUTE_UNUSED)
 {
        bb_error_msg_and_die("timeout connecting to time server");
 }
@@ -43,7 +43,7 @@ static time_t askremotedate(const char *host)
 }
 
 int rdate_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int rdate_main(int argc, char **argv)
+int rdate_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        time_t remote_time;
        unsigned long flags;
index c6152558ca2d6a3a380143f3060738d1884a9a38..ef78659515f728e01a07a6d5c70b5aa4a4ba26c8 100644 (file)
@@ -42,7 +42,7 @@ static const char defaultmap[] ALIGN1 = "/boot/System.map";
 static const char defaultpro[] ALIGN1 = "/proc/profile";
 
 int readprofile_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int readprofile_main(int argc, char **argv)
+int readprofile_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        FILE *map;
        const char *mapFile, *proFile, *mult = 0;
index 2b1ab1fcaab02457093007bde6b87c491c5c8a8c..6df7334fec2f6f548e72d07d731d52c035247100 100644 (file)
@@ -107,7 +107,7 @@ static void suspend_system(const char *suspend)
 #define RTCWAKE_OPT_TIME         0x40
 
 int rtcwake_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int rtcwake_main(int argc, char **argv)
+int rtcwake_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        unsigned opt;
        const char *rtcname = NULL;
index a4aaa422f7f10e932e273bb3596e366f7b7ac1c2..c37fd9d616fc62360e6c49499374de04606af518 100644 (file)
 
 static smallint fd_count = 2;
 
-static void handle_sigchld(int sig)
+static void handle_sigchld(int sig ATTRIBUTE_UNUSED)
 {
        fd_count = 0;
 }
 
-int script_main(int argc, char *argv[]) MAIN_EXTERNALLY_VISIBLE;
-int script_main(int argc, char *argv[])
+int script_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
+int script_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int opt;
        int mode;
index 3a1741179e492031163814178817c3c62142b213..c030b99e187bd186a61e7d548e31ef599fd0c58b 100644 (file)
@@ -65,7 +65,7 @@ static void delete_contents(const char *directory)
 }
 
 int switch_root_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int switch_root_main(int argc, char **argv)
+int switch_root_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        char *newroot, *console = NULL;
        struct stat st1, st2;
index 3f7c0abbdf4735b67e3afbc5b22688b81ee13f76..6136fa97cd4c87e7154d002c7d6f73a5ad91c7fc 100644 (file)
@@ -27,7 +27,7 @@
 //#define MNT_DETACH 0x00000002 /* Just detach from the tree */
 
 int umount_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
-int umount_main(int argc, char **argv)
+int umount_main(int argc ATTRIBUTE_UNUSED, char **argv)
 {
        int doForce;
        char *const path = xmalloc(PATH_MAX + 2); /* to save stack */