aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Rob Landley <rob@landley.net>2006-03-06 20:47:33 +0000
committerGravatar Rob Landley <rob@landley.net>2006-03-06 20:47:33 +0000
commitdfba741457cc81eb2ed3a9d4c074fbad74aa3249 (patch)
tree588d140a71e857cb32c80d1faad6f3073b119aa7
parent1f5e25bf3eca768b8cee1c689ac154d8f51662f9 (diff)
downloadbusybox-dfba741457cc81eb2ed3a9d4c074fbad74aa3249.tar.gz
busybox-dfba741457cc81eb2ed3a9d4c074fbad74aa3249.tar.bz2
Robert P. Day removed 8 gazillion occurrences of "extern" on function
definitions. (That should only be on prototypes.)
-rw-r--r--applets/applets.c2
-rw-r--r--archival/ar.c2
-rw-r--r--archival/cpio.c2
-rw-r--r--archival/dpkg_deb.c2
-rw-r--r--archival/gunzip.c2
-rw-r--r--archival/libunarchive/archive_xread_all.c2
-rw-r--r--archival/libunarchive/archive_xread_all_eof.c2
-rw-r--r--archival/libunarchive/check_header_gzip.c2
-rw-r--r--archival/libunarchive/data_align.c2
-rw-r--r--archival/libunarchive/data_extract_all.c2
-rw-r--r--archival/libunarchive/data_extract_to_buffer.c2
-rw-r--r--archival/libunarchive/data_extract_to_stdout.c2
-rw-r--r--archival/libunarchive/data_skip.c2
-rw-r--r--archival/libunarchive/decompress_bunzip2.c2
-rw-r--r--archival/libunarchive/decompress_uncompress.c2
-rw-r--r--archival/libunarchive/decompress_unzip.c8
-rw-r--r--archival/libunarchive/filter_accept_all.c2
-rw-r--r--archival/libunarchive/filter_accept_list.c2
-rw-r--r--archival/libunarchive/filter_accept_list_reassign.c2
-rw-r--r--archival/libunarchive/filter_accept_reject_list.c2
-rw-r--r--archival/libunarchive/find_list_entry.c2
-rw-r--r--archival/libunarchive/get_header_ar.c2
-rw-r--r--archival/libunarchive/get_header_cpio.c2
-rw-r--r--archival/libunarchive/get_header_tar.c2
-rw-r--r--archival/libunarchive/get_header_tar_bz2.c2
-rw-r--r--archival/libunarchive/get_header_tar_gz.c2
-rw-r--r--archival/libunarchive/header_list.c2
-rw-r--r--archival/libunarchive/header_skip.c2
-rw-r--r--archival/libunarchive/header_verbose_list.c2
-rw-r--r--archival/libunarchive/open_transformer.c2
-rw-r--r--archival/libunarchive/seek_by_char.c2
-rw-r--r--archival/libunarchive/seek_by_jump.c2
-rw-r--r--archival/libunarchive/unpack_ar_archive.c2
-rw-r--r--archival/rpm2cpio.c2
-rw-r--r--archival/uncompress.c2
-rw-r--r--archival/unzip.c2
-rw-r--r--console-tools/clear.c2
-rw-r--r--console-tools/loadfont.c2
-rw-r--r--console-tools/reset.c2
-rw-r--r--coreutils/basename.c2
-rw-r--r--coreutils/cat.c2
-rw-r--r--coreutils/cp.c2
-rw-r--r--coreutils/cut.c2
-rw-r--r--coreutils/df.c2
-rw-r--r--coreutils/dirname.c2
-rw-r--r--coreutils/echo.c2
-rw-r--r--coreutils/env.c2
-rw-r--r--coreutils/false.c2
-rw-r--r--coreutils/fold.c2
-rw-r--r--coreutils/hostid.c2
-rw-r--r--coreutils/id.c2
-rw-r--r--coreutils/install.c2
-rw-r--r--coreutils/length.c2
-rw-r--r--coreutils/libcoreutils/cp_mv_stat.c4
-rw-r--r--coreutils/libcoreutils/getopt_mk_fifo_nod.c2
-rw-r--r--coreutils/ln.c2
-rw-r--r--coreutils/logname.c2
-rw-r--r--coreutils/ls.c2
-rw-r--r--coreutils/mkdir.c2
-rw-r--r--coreutils/mkfifo.c2
-rw-r--r--coreutils/mknod.c2
-rw-r--r--coreutils/mv.c2
-rw-r--r--coreutils/pwd.c2
-rw-r--r--coreutils/rm.c2
-rw-r--r--coreutils/rmdir.c2
-rw-r--r--coreutils/seq.c2
-rw-r--r--coreutils/sleep.c2
-rw-r--r--coreutils/stty.c4
-rw-r--r--coreutils/sync.c2
-rw-r--r--coreutils/test.c2
-rw-r--r--coreutils/touch.c2
-rw-r--r--coreutils/tr.c2
-rw-r--r--coreutils/true.c2
-rw-r--r--coreutils/tty.c2
-rw-r--r--coreutils/usleep.c2
-rw-r--r--coreutils/uudecode.c2
-rw-r--r--coreutils/watch.c2
-rw-r--r--coreutils/who.c2
-rw-r--r--coreutils/whoami.c2
-rw-r--r--coreutils/yes.c2
-rw-r--r--debianutils/mktemp.c2
-rw-r--r--debianutils/pipe_progress.c2
-rw-r--r--debianutils/which.c2
-rw-r--r--e2fsprogs/blkid/dev.c6
-rw-r--r--e2fsprogs/blkid/tag.c4
-rw-r--r--e2fsprogs/e2fsck.c2
-rw-r--r--editors/awk.c2
-rw-r--r--editors/patch.c2
-rw-r--r--editors/sed.c2
-rw-r--r--editors/vi.c2
-rw-r--r--findutils/grep.c2
-rw-r--r--init/init.c2
-rw-r--r--init/init_shared.c2
-rw-r--r--init/mesg.c2
-rw-r--r--libbb/bb_echo.c2
-rw-r--r--libbb/concat_path_file.c2
-rw-r--r--libbb/concat_subpath_file.c2
-rw-r--r--libbb/copyfd.c4
-rw-r--r--libbb/device_open.c2
-rw-r--r--libbb/error_msg.c2
-rw-r--r--libbb/error_msg_and_die.c2
-rw-r--r--libbb/find_mount_point.c2
-rw-r--r--libbb/find_pid_by_name.c4
-rw-r--r--libbb/find_root_device.c2
-rw-r--r--libbb/get_line_from_file.c4
-rw-r--r--libbb/herror_msg.c2
-rw-r--r--libbb/herror_msg_and_die.c2
-rw-r--r--libbb/kernel_version.c2
-rw-r--r--libbb/llist.c8
-rw-r--r--libbb/obscure.c2
-rw-r--r--libbb/parse_mode.c2
-rw-r--r--libbb/perror_msg.c2
-rw-r--r--libbb/perror_msg_and_die.c2
-rw-r--r--libbb/perror_nomsg.c2
-rw-r--r--libbb/perror_nomsg_and_die.c2
-rw-r--r--libbb/print_file.c4
-rw-r--r--libbb/printf.c4
-rw-r--r--libbb/procps.c2
-rw-r--r--libbb/pw_encrypt.c2
-rw-r--r--libbb/remove_file.c2
-rw-r--r--libbb/run_parts.c2
-rw-r--r--libbb/safe_strncpy.c2
-rw-r--r--libbb/skip_whitespace.c2
-rw-r--r--libbb/vdprintf.c2
-rw-r--r--libbb/verror_msg.c2
-rw-r--r--libbb/vherror_msg.c2
-rw-r--r--libbb/vperror_msg.c2
-rw-r--r--libbb/warn_ignoring_args.c2
-rw-r--r--libbb/xfuncs.c20
-rw-r--r--libbb/xgetlarg.c2
-rw-r--r--libbb/xreadlink.c2
-rw-r--r--loginutils/login.c2
-rw-r--r--loginutils/passwd.c2
-rw-r--r--loginutils/sulogin.c2
-rw-r--r--loginutils/vlock.c2
-rw-r--r--miscutils/eject.c2
-rw-r--r--miscutils/last.c2
-rw-r--r--miscutils/makedevs.c2
-rw-r--r--miscutils/mt.c2
-rw-r--r--miscutils/time.c2
-rw-r--r--modutils/insmod.c4
-rw-r--r--modutils/lsmod.c4
-rw-r--r--modutils/modprobe.c2
-rw-r--r--modutils/rmmod.c2
-rw-r--r--networking/ifupdown.c2
-rw-r--r--networking/libiproute/ipaddress.c4
-rw-r--r--networking/ping.c4
-rw-r--r--networking/ping6.c4
-rw-r--r--networking/telnet.c2
-rw-r--r--procps/free.c2
-rw-r--r--procps/kill.c2
-rw-r--r--procps/pidof.c2
-rw-r--r--procps/ps.c2
-rw-r--r--procps/uptime.c2
-rw-r--r--shell/cmdedit.c4
-rw-r--r--shell/msh.c2
-rw-r--r--sysklogd/klogd.c2
-rw-r--r--sysklogd/logger.c2
-rw-r--r--sysklogd/logread.c2
-rw-r--r--sysklogd/syslogd.c2
-rw-r--r--util-linux/fbset.c2
-rw-r--r--util-linux/fdflush.c2
-rw-r--r--util-linux/fsck_minix.c2
-rw-r--r--util-linux/hwclock.c2
-rw-r--r--util-linux/mkfs_minix.c2
-rw-r--r--util-linux/more.c2
-rw-r--r--util-linux/swaponoff.c2
-rw-r--r--util-linux/umount.c2
168 files changed, 199 insertions, 199 deletions
diff --git a/applets/applets.c b/applets/applets.c
index de1a871e0..bbe12034a 100644
--- a/applets/applets.c
+++ b/applets/applets.c
@@ -405,7 +405,7 @@ static void check_suid (struct BB_applet *applet)
-extern void bb_show_usage (void)
+void bb_show_usage (void)
{
const char *format_string;
const char *usage_string = usage_messages;
diff --git a/archival/ar.c b/archival/ar.c
index 05cb231aa..7782af89f 100644
--- a/archival/ar.c
+++ b/archival/ar.c
@@ -57,7 +57,7 @@ static void header_verbose_list_ar(const file_header_t *file_header)
#define AR_OPT_CREATE 0x20
#define AR_OPT_INSERT 0x40
-extern int ar_main(int argc, char **argv)
+int ar_main(int argc, char **argv)
{
archive_handle_t *archive_handle;
unsigned long opt;
diff --git a/archival/cpio.c b/archival/cpio.c
index 820f03e9b..26f845bc9 100644
--- a/archival/cpio.c
+++ b/archival/cpio.c
@@ -38,7 +38,7 @@
#define CPIO_OPT_CREATE_LEADING_DIR 0x20
#define CPIO_OPT_PRESERVE_MTIME 0x40
-extern int cpio_main(int argc, char **argv)
+int cpio_main(int argc, char **argv)
{
archive_handle_t *archive_handle;
char *cpio_filename = NULL;
diff --git a/archival/dpkg_deb.c b/archival/dpkg_deb.c
index 29e9719cb..fa89e44a0 100644
--- a/archival/dpkg_deb.c
+++ b/archival/dpkg_deb.c
@@ -28,7 +28,7 @@
#define DPKG_DEB_OPT_EXTRACT 8
#define DPKG_DEB_OPT_EXTRACT_VERBOSE 16
-extern int dpkg_deb_main(int argc, char **argv)
+int dpkg_deb_main(int argc, char **argv)
{
archive_handle_t *ar_archive;
archive_handle_t *tar_archive;
diff --git a/archival/gunzip.c b/archival/gunzip.c
index 76738b017..4fb77044a 100644
--- a/archival/gunzip.c
+++ b/archival/gunzip.c
@@ -75,7 +75,7 @@ static char *license_msg[] = {
#define GUNZIP_OPT_TEST 4
#define GUNZIP_OPT_DECOMPRESS 8
-extern int gunzip_main(int argc, char **argv)
+int gunzip_main(int argc, char **argv)
{
char status = EXIT_SUCCESS;
unsigned long opt;
diff --git a/archival/libunarchive/archive_xread_all.c b/archival/libunarchive/archive_xread_all.c
index ba9ade2d5..ebd64dc14 100644
--- a/archival/libunarchive/archive_xread_all.c
+++ b/archival/libunarchive/archive_xread_all.c
@@ -20,7 +20,7 @@
#include "unarchive.h"
#include "libbb.h"
-extern void archive_xread_all(const archive_handle_t *archive_handle, void *buf, const size_t count)
+void archive_xread_all(const archive_handle_t *archive_handle, void *buf, const size_t count)
{
ssize_t size;
diff --git a/archival/libunarchive/archive_xread_all_eof.c b/archival/libunarchive/archive_xread_all_eof.c
index f1eea2928..d85879797 100644
--- a/archival/libunarchive/archive_xread_all_eof.c
+++ b/archival/libunarchive/archive_xread_all_eof.c
@@ -20,7 +20,7 @@
#include "unarchive.h"
#include "libbb.h"
-extern ssize_t archive_xread_all_eof(archive_handle_t *archive_handle, unsigned char *buf, size_t count)
+ssize_t archive_xread_all_eof(archive_handle_t *archive_handle, unsigned char *buf, size_t count)
{
ssize_t size;
diff --git a/archival/libunarchive/check_header_gzip.c b/archival/libunarchive/check_header_gzip.c
index 9e065c4fd..a8ecf3799 100644
--- a/archival/libunarchive/check_header_gzip.c
+++ b/archival/libunarchive/check_header_gzip.c
@@ -3,7 +3,7 @@
#include "libbb.h"
#include "unarchive.h" /* for external decl of check_header_gzip */
-extern void check_header_gzip(int src_fd)
+void check_header_gzip(int src_fd)
{
union {
unsigned char raw[8];
diff --git a/archival/libunarchive/data_align.c b/archival/libunarchive/data_align.c
index 1d433957d..e4a364006 100644
--- a/archival/libunarchive/data_align.c
+++ b/archival/libunarchive/data_align.c
@@ -22,7 +22,7 @@
#include "libbb.h"
#include "unarchive.h"
-extern void data_align(archive_handle_t *archive_handle, const unsigned short boundary)
+void data_align(archive_handle_t *archive_handle, const unsigned short boundary)
{
const unsigned short skip_amount = (boundary - (archive_handle->offset % boundary)) % boundary;
diff --git a/archival/libunarchive/data_extract_all.c b/archival/libunarchive/data_extract_all.c
index 42e442336..588b081a5 100644
--- a/archival/libunarchive/data_extract_all.c
+++ b/archival/libunarchive/data_extract_all.c
@@ -27,7 +27,7 @@
#include "libbb.h"
#include "unarchive.h"
-extern void data_extract_all(archive_handle_t *archive_handle)
+void data_extract_all(archive_handle_t *archive_handle)
{
file_header_t *file_header = archive_handle->file_header;
int dst_fd;
diff --git a/archival/libunarchive/data_extract_to_buffer.c b/archival/libunarchive/data_extract_to_buffer.c
index db5521bcb..1255fe1da 100644
--- a/archival/libunarchive/data_extract_to_buffer.c
+++ b/archival/libunarchive/data_extract_to_buffer.c
@@ -17,7 +17,7 @@
#include "libbb.h"
#include "unarchive.h"
-extern void data_extract_to_buffer(archive_handle_t *archive_handle)
+void data_extract_to_buffer(archive_handle_t *archive_handle)
{
const unsigned int size = archive_handle->file_header->size;
diff --git a/archival/libunarchive/data_extract_to_stdout.c b/archival/libunarchive/data_extract_to_stdout.c
index df2bca6ef..f1be5dc67 100644
--- a/archival/libunarchive/data_extract_to_stdout.c
+++ b/archival/libunarchive/data_extract_to_stdout.c
@@ -17,7 +17,7 @@
#include "unarchive.h"
#include <unistd.h>
-extern void data_extract_to_stdout(archive_handle_t *archive_handle)
+void data_extract_to_stdout(archive_handle_t *archive_handle)
{
bb_copyfd_size(archive_handle->src_fd, STDOUT_FILENO, archive_handle->file_header->size);
}
diff --git a/archival/libunarchive/data_skip.c b/archival/libunarchive/data_skip.c
index b82c9065b..0c6e26e54 100644
--- a/archival/libunarchive/data_skip.c
+++ b/archival/libunarchive/data_skip.c
@@ -21,7 +21,7 @@
#include "unarchive.h"
#include "libbb.h"
-extern void data_skip(archive_handle_t *archive_handle)
+void data_skip(archive_handle_t *archive_handle)
{
archive_handle->seek(archive_handle, archive_handle->file_header->size);
}
diff --git a/archival/libunarchive/decompress_bunzip2.c b/archival/libunarchive/decompress_bunzip2.c
index 7f700ca7f..88d88b85f 100644
--- a/archival/libunarchive/decompress_bunzip2.c
+++ b/archival/libunarchive/decompress_bunzip2.c
@@ -684,7 +684,7 @@ static int start_bunzip(bunzip_data **bdp, int in_fd, unsigned char *inbuf,
/* Example usage: decompress src_fd to dst_fd. (Stops at end of bzip data,
not end of file.) */
-extern int uncompressStream(int src_fd, int dst_fd)
+int uncompressStream(int src_fd, int dst_fd)
{
char *outbuf;
bunzip_data *bd;
diff --git a/archival/libunarchive/decompress_uncompress.c b/archival/libunarchive/decompress_uncompress.c
index c8d8b4af9..539d4ef90 100644
--- a/archival/libunarchive/decompress_uncompress.c
+++ b/archival/libunarchive/decompress_uncompress.c
@@ -95,7 +95,7 @@ static unsigned short codetab[HSIZE];
* with those of the compress() routine. See the definitions above.
*/
-extern int uncompress(int fd_in, int fd_out)
+int uncompress(int fd_in, int fd_out)
{
unsigned char *stackp;
long int code;
diff --git a/archival/libunarchive/decompress_unzip.c b/archival/libunarchive/decompress_unzip.c
index ea8169592..7776dee69 100644
--- a/archival/libunarchive/decompress_unzip.c
+++ b/archival/libunarchive/decompress_unzip.c
@@ -892,7 +892,7 @@ static int inflate_get_next_window(void)
}
/* Initialise bytebuffer, be careful not to overfill the buffer */
-extern void inflate_init(unsigned int bufsize)
+void inflate_init(unsigned int bufsize)
{
/* Set the bytebuffer size, default is same as gunzip_wsize */
bytebuffer_max = bufsize + 8;
@@ -900,12 +900,12 @@ extern void inflate_init(unsigned int bufsize)
bytebuffer_size = 0;
}
-extern void inflate_cleanup(void)
+void inflate_cleanup(void)
{
free(bytebuffer);
}
-extern int inflate_unzip(int in, int out)
+int inflate_unzip(int in, int out)
{
ssize_t nwrote;
typedef void (*sig_type) (int);
@@ -952,7 +952,7 @@ extern int inflate_unzip(int in, int out)
return 0;
}
-extern int inflate_gunzip(int in, int out)
+int inflate_gunzip(int in, int out)
{
unsigned int stored_crc = 0;
unsigned int count;
diff --git a/archival/libunarchive/filter_accept_all.c b/archival/libunarchive/filter_accept_all.c
index baf9e4b71..bf5d8aaa9 100644
--- a/archival/libunarchive/filter_accept_all.c
+++ b/archival/libunarchive/filter_accept_all.c
@@ -22,7 +22,7 @@
#include "unarchive.h"
/* Accept any non-null name, its not really a filter at all */
-extern char filter_accept_all(archive_handle_t *archive_handle)
+char filter_accept_all(archive_handle_t *archive_handle)
{
if (archive_handle->file_header->name) {
return(EXIT_SUCCESS);
diff --git a/archival/libunarchive/filter_accept_list.c b/archival/libunarchive/filter_accept_list.c
index e1c4827bf..bedd0e178 100644
--- a/archival/libunarchive/filter_accept_list.c
+++ b/archival/libunarchive/filter_accept_list.c
@@ -24,7 +24,7 @@
/*
* Accept names that are in the accept list, ignoring reject list.
*/
-extern char filter_accept_list(archive_handle_t *archive_handle)
+char filter_accept_list(archive_handle_t *archive_handle)
{
if (find_list_entry(archive_handle->accept, archive_handle->file_header->name)) {
return(EXIT_SUCCESS);
diff --git a/archival/libunarchive/filter_accept_list_reassign.c b/archival/libunarchive/filter_accept_list_reassign.c
index a09f564a3..5b8385c0d 100644
--- a/archival/libunarchive/filter_accept_list_reassign.c
+++ b/archival/libunarchive/filter_accept_list_reassign.c
@@ -28,7 +28,7 @@
* e.g. if its a .tar.gz modify archive_handle->sub_archive to process a .tar.gz
* or if its a .tar.bz2 make archive_handle->sub_archive handle that
*/
-extern char filter_accept_list_reassign(archive_handle_t *archive_handle)
+char filter_accept_list_reassign(archive_handle_t *archive_handle)
{
/* Check the file entry is in the accept list */
if (find_list_entry(archive_handle->accept, archive_handle->file_header->name)) {
diff --git a/archival/libunarchive/filter_accept_reject_list.c b/archival/libunarchive/filter_accept_reject_list.c
index 657f7a0bd..1ac414675 100644
--- a/archival/libunarchive/filter_accept_reject_list.c
+++ b/archival/libunarchive/filter_accept_reject_list.c
@@ -24,7 +24,7 @@
/*
* Accept names that are in the accept list and not in the reject list
*/
-extern char filter_accept_reject_list(archive_handle_t *archive_handle)
+char filter_accept_reject_list(archive_handle_t *archive_handle)
{
const char *key = archive_handle->file_header->name;
const llist_t *accept_entry = find_list_entry(archive_handle->accept, key);
diff --git a/archival/libunarchive/find_list_entry.c b/archival/libunarchive/find_list_entry.c
index 7ed9e332f..d14e51aa7 100644
--- a/archival/libunarchive/find_list_entry.c
+++ b/archival/libunarchive/find_list_entry.c
@@ -18,7 +18,7 @@
#include <stdlib.h>
#include "unarchive.h"
-extern const llist_t *find_list_entry(const llist_t *list, const char *filename)
+const llist_t *find_list_entry(const llist_t *list, const char *filename)
{
while (list) {
if (fnmatch(list->data, filename, 0) == 0) {
diff --git a/archival/libunarchive/get_header_ar.c b/archival/libunarchive/get_header_ar.c
index e3a71951f..385f33dbf 100644
--- a/archival/libunarchive/get_header_ar.c
+++ b/archival/libunarchive/get_header_ar.c
@@ -21,7 +21,7 @@
#include "unarchive.h"
#include "libbb.h"
-extern char get_header_ar(archive_handle_t *archive_handle)
+char get_header_ar(archive_handle_t *archive_handle)
{
file_header_t *typed = archive_handle->file_header;
union {
diff --git a/archival/libunarchive/get_header_cpio.c b/archival/libunarchive/get_header_cpio.c
index bdd80dfea..2bbcd8e5d 100644
--- a/archival/libunarchive/get_header_cpio.c
+++ b/archival/libunarchive/get_header_cpio.c
@@ -28,7 +28,7 @@ typedef struct hardlinks_s {
struct hardlinks_s *next;
} hardlinks_t;
-extern char get_header_cpio(archive_handle_t *archive_handle)
+char get_header_cpio(archive_handle_t *archive_handle)
{
static hardlinks_t *saved_hardlinks = NULL;
static unsigned short pending_hardlinks = 0;
diff --git a/archival/libunarchive/get_header_tar.c b/archival/libunarchive/get_header_tar.c
index eeabf3f5b..682179a02 100644
--- a/archival/libunarchive/get_header_tar.c
+++ b/archival/libunarchive/get_header_tar.c
@@ -22,7 +22,7 @@ static char *longname = NULL;
static char *linkname = NULL;
#endif
-extern char get_header_tar(archive_handle_t *archive_handle)
+char get_header_tar(archive_handle_t *archive_handle)
{
file_header_t *file_header = archive_handle->file_header;
union {
diff --git a/archival/libunarchive/get_header_tar_bz2.c b/archival/libunarchive/get_header_tar_bz2.c
index d49d6b96a..e874beee1 100644
--- a/archival/libunarchive/get_header_tar_bz2.c
+++ b/archival/libunarchive/get_header_tar_bz2.c
@@ -24,7 +24,7 @@
#include "libbb.h"
#include "unarchive.h"
-extern char get_header_tar_bz2(archive_handle_t *archive_handle)
+char get_header_tar_bz2(archive_handle_t *archive_handle)
{
/* Cant lseek over pipe's */
archive_handle->seek = seek_by_char;
diff --git a/archival/libunarchive/get_header_tar_gz.c b/archival/libunarchive/get_header_tar_gz.c
index 9c708a951..62df7b268 100644
--- a/archival/libunarchive/get_header_tar_gz.c
+++ b/archival/libunarchive/get_header_tar_gz.c
@@ -19,7 +19,7 @@
#include "libbb.h"
#include "unarchive.h"
-extern char get_header_tar_gz(archive_handle_t *archive_handle)
+char get_header_tar_gz(archive_handle_t *archive_handle)
{
unsigned char magic[2];
diff --git a/archival/libunarchive/header_list.c b/archival/libunarchive/header_list.c
index 5849a762e..36a2d330a 100644
--- a/archival/libunarchive/header_list.c
+++ b/archival/libunarchive/header_list.c
@@ -1,7 +1,7 @@
#include <stdio.h>
#include "unarchive.h"
-extern void header_list(const file_header_t *file_header)
+void header_list(const file_header_t *file_header)
{
puts(file_header->name);
}
diff --git a/archival/libunarchive/header_skip.c b/archival/libunarchive/header_skip.c
index 963d113a4..5b3d46cb8 100644
--- a/archival/libunarchive/header_skip.c
+++ b/archival/libunarchive/header_skip.c
@@ -1,6 +1,6 @@
#include <stdio.h>
#include "unarchive.h"
-extern void header_skip(const file_header_t *file_header ATTRIBUTE_UNUSED)
+void header_skip(const file_header_t *file_header ATTRIBUTE_UNUSED)
{
}
diff --git a/archival/libunarchive/header_verbose_list.c b/archival/libunarchive/header_verbose_list.c
index f7601b732..7dc902e71 100644
--- a/archival/libunarchive/header_verbose_list.c
+++ b/archival/libunarchive/header_verbose_list.c
@@ -4,7 +4,7 @@
#include "libbb.h"
#include "unarchive.h"
-extern void header_verbose_list(const file_header_t *file_header)
+void header_verbose_list(const file_header_t *file_header)
{
struct tm *mtime = localtime(&(file_header->mtime));
diff --git a/archival/libunarchive/open_transformer.c b/archival/libunarchive/open_transformer.c
index fb149fc0b..0d362a5ab 100644
--- a/archival/libunarchive/open_transformer.c
+++ b/archival/libunarchive/open_transformer.c
@@ -20,7 +20,7 @@
#include "libbb.h"
/* transformer(), more than meets the eye */
-extern int open_transformer(int src_fd, int (*transformer)(int src_fd, int dst_fd))
+int open_transformer(int src_fd, int (*transformer)(int src_fd, int dst_fd))
{
int fd_pipe[2];
int pid;
diff --git a/archival/libunarchive/seek_by_char.c b/archival/libunarchive/seek_by_char.c
index a50d566f5..02874db51 100644
--- a/archival/libunarchive/seek_by_char.c
+++ b/archival/libunarchive/seek_by_char.c
@@ -24,7 +24,7 @@
*
* TODO: rename to seek_by_read
*/
-extern void seek_by_char(const archive_handle_t *archive_handle, const unsigned int jump_size)
+void seek_by_char(const archive_handle_t *archive_handle, const unsigned int jump_size)
{
if (jump_size) {
bb_copyfd_size(archive_handle->src_fd, -1, jump_size);
diff --git a/archival/libunarchive/seek_by_jump.c b/archival/libunarchive/seek_by_jump.c
index 578870d9b..fb99b26a7 100644
--- a/archival/libunarchive/seek_by_jump.c
+++ b/archival/libunarchive/seek_by_jump.c
@@ -22,7 +22,7 @@
#include "libbb.h"
#include "unarchive.h"
-extern void seek_by_jump(const archive_handle_t *archive_handle, const unsigned int amount)
+void seek_by_jump(const archive_handle_t *archive_handle, const unsigned int amount)
{
if (lseek(archive_handle->src_fd, (off_t) amount, SEEK_CUR) == (off_t) -1) {
#ifdef CONFIG_FEATURE_UNARCHIVE_TAPE
diff --git a/archival/libunarchive/unpack_ar_archive.c b/archival/libunarchive/unpack_ar_archive.c
index fa48c6fca..7bb40af5b 100644
--- a/archival/libunarchive/unpack_ar_archive.c
+++ b/archival/libunarchive/unpack_ar_archive.c
@@ -19,7 +19,7 @@
#include "unarchive.h"
#include "busybox.h"
-extern void unpack_ar_archive(archive_handle_t *ar_archive)
+void unpack_ar_archive(archive_handle_t *ar_archive)
{
char magic[7];
diff --git a/archival/rpm2cpio.c b/archival/rpm2cpio.c
index 8316d2242..45a660113 100644
--- a/archival/rpm2cpio.c
+++ b/archival/rpm2cpio.c
@@ -66,7 +66,7 @@ static void skip_header(int rpm_fd)
}
/* No getopt required */
-extern int rpm2cpio_main(int argc, char **argv)
+int rpm2cpio_main(int argc, char **argv)
{
struct rpm_lead lead;
int rpm_fd;
diff --git a/archival/uncompress.c b/archival/uncompress.c
index 3bd87093e..8a874d09d 100644
--- a/archival/uncompress.c
+++ b/archival/uncompress.c
@@ -30,7 +30,7 @@
#define GUNZIP_TO_STDOUT 1
#define GUNZIP_FORCE 2
-extern int uncompress_main(int argc, char **argv)
+int uncompress_main(int argc, char **argv)
{
int status = EXIT_SUCCESS;
unsigned long flags;
diff --git a/archival/unzip.c b/archival/unzip.c
index f95e31206..9cf987664 100644
--- a/archival/unzip.c
+++ b/archival/unzip.c
@@ -125,7 +125,7 @@ static void unzip_extract(zip_header_t *zip_header, int src_fd, int dst_fd)
}
}
-extern int unzip_main(int argc, char **argv)
+int unzip_main(int argc, char **argv)
{
zip_header_t zip_header;
enum {v_silent, v_normal, v_list} verbosity = v_normal;
diff --git a/console-tools/clear.c b/console-tools/clear.c
index 020cdfb47..054803703 100644
--- a/console-tools/clear.c
+++ b/console-tools/clear.c
@@ -27,7 +27,7 @@
#include "busybox.h"
-extern int clear_main(int argc, char **argv)
+int clear_main(int argc, char **argv)
{
return printf("\033[H\033[J") != 6;
}
diff --git a/console-tools/loadfont.c b/console-tools/loadfont.c
index d9bbb2072..31c6d2495 100644
--- a/console-tools/loadfont.c
+++ b/console-tools/loadfont.c
@@ -39,7 +39,7 @@ struct psf_header {
static void loadnewfont(int fd);
-extern int loadfont_main(int argc, char **argv)
+int loadfont_main(int argc, char **argv)
{
int fd;
diff --git a/console-tools/reset.c b/console-tools/reset.c
index 5a7e88d7b..792618f5c 100644
--- a/console-tools/reset.c
+++ b/console-tools/reset.c
@@ -28,7 +28,7 @@
#include <unistd.h>
#include "busybox.h"
-extern int reset_main(int argc, char **argv)
+int reset_main(int argc, char **argv)
{
if (isatty(1)) {
/* See 'man 4 console_codes' for details:
diff --git a/coreutils/basename.c b/coreutils/basename.c
index 7b8b7b6f0..91652cfed 100644
--- a/coreutils/basename.c
+++ b/coreutils/basename.c
@@ -37,7 +37,7 @@
#include <string.h>
#include "busybox.h"
-extern int basename_main(int argc, char **argv)
+int basename_main(int argc, char **argv)
{
size_t m, n;
char *s;
diff --git a/coreutils/cat.c b/coreutils/cat.c
index 62af6c5d5..9645f6143 100644
--- a/coreutils/cat.c
+++ b/coreutils/cat.c
@@ -40,7 +40,7 @@
#include <unistd.h>
#include "busybox.h"
-extern int cat_main(int argc, char **argv)
+int cat_main(int argc, char **argv)
{
FILE *f;
int retval = EXIT_SUCCESS;
diff --git a/coreutils/cp.c b/coreutils/cp.c
index ac572548f..87f229196 100644
--- a/coreutils/cp.c
+++ b/coreutils/cp.c
@@ -28,7 +28,7 @@
#include "busybox.h"
#include "libcoreutils/coreutils.h"
-extern int cp_main(int argc, char **argv)
+int cp_main(int argc, char **argv)
{
struct stat source_stat;
struct stat dest_stat;
diff --git a/coreutils/cut.c b/coreutils/cut.c
index 839bab68e..526a99393 100644
--- a/coreutils/cut.c
+++ b/coreutils/cut.c
@@ -289,7 +289,7 @@ static void cut_file(FILE *file)
}
-extern int cut_main(int argc, char **argv)
+int cut_main(int argc, char **argv)
{
unsigned long opt;
char *sopt, *sdopt;
diff --git a/coreutils/df.c b/coreutils/df.c
index ef08f91d4..bd487ee95 100644
--- a/coreutils/df.c
+++ b/coreutils/df.c
@@ -46,7 +46,7 @@ static long kscale(long b, long bs)
}
#endif
-extern int df_main(int argc, char **argv)
+int df_main(int argc, char **argv)
{
long blocks_used;
long blocks_percent_used;
diff --git a/coreutils/dirname.c b/coreutils/dirname.c
index 5136e4909..dfe40e44b 100644
--- a/coreutils/dirname.c
+++ b/coreutils/dirname.c
@@ -27,7 +27,7 @@
#include <stdlib.h>
#include "busybox.h"
-extern int dirname_main(int argc, char **argv)
+int dirname_main(int argc, char **argv)
{
if (argc != 2) {
bb_show_usage();
diff --git a/coreutils/echo.c b/coreutils/echo.c
index 595e6defe..0dbb32f28 100644
--- a/coreutils/echo.c
+++ b/coreutils/echo.c
@@ -22,7 +22,7 @@
#include <stdlib.h>
#include "busybox.h"
-extern int echo_main(int argc, char** argv)
+int echo_main(int argc, char** argv)
{
(void)bb_echo(argc, argv);
bb_fflush_stdout_and_exit(EXIT_SUCCESS);
diff --git a/coreutils/env.c b/coreutils/env.c
index 156f4e77d..fd58a23da 100644
--- a/coreutils/env.c
+++ b/coreutils/env.c
@@ -57,7 +57,7 @@ static const struct option env_long_options[] = {
{ 0, 0, 0, 0 }
};
-extern int env_main(int argc, char** argv)
+int env_main(int argc, char** argv)
{
static char *cleanenv[1] = { NULL };
diff --git a/coreutils/false.c b/coreutils/false.c
index b06ef8b62..084bc0c1e 100644
--- a/coreutils/false.c
+++ b/coreutils/false.c
@@ -13,7 +13,7 @@
#include <stdlib.h>
#include "busybox.h"
-extern int false_main(int ATTRIBUTE_UNUSED argc, char ATTRIBUTE_UNUSED **argv)
+int false_main(int ATTRIBUTE_UNUSED argc, char ATTRIBUTE_UNUSED **argv)
{
return EXIT_FAILURE;
}
diff --git a/coreutils/fold.c b/coreutils/fold.c
index f1ab1bdc0..833935af3 100644
--- a/coreutils/fold.c
+++ b/coreutils/fold.c
@@ -44,7 +44,7 @@ static int adjust_column(int column, char c)
return column;
}
-extern int fold_main(int argc, char **argv)
+int fold_main(int argc, char **argv)
{
char *w_opt;
int width = 80;
diff --git a/coreutils/hostid.c b/coreutils/hostid.c
index 0c11ca385..cda96726a 100644
--- a/coreutils/hostid.c
+++ b/coreutils/hostid.c
@@ -13,7 +13,7 @@
#include <unistd.h>
#include "busybox.h"
-extern int hostid_main(int argc, char ATTRIBUTE_UNUSED **argv)
+int hostid_main(int argc, char ATTRIBUTE_UNUSED **argv)
{
if (argc > 1) {
bb_show_usage();
diff --git a/coreutils/id.c b/coreutils/id.c
index 39a57c196..73c3c2e3b 100644
--- a/coreutils/id.c
+++ b/coreutils/id.c
@@ -53,7 +53,7 @@ static short printf_full(unsigned int id, const char *arg, const char prefix)
return status;
}
-extern int id_main(int argc, char **argv)
+int id_main(int argc, char **argv)
{
struct passwd *p;
uid_t uid;
diff --git a/coreutils/install.c b/coreutils/install.c
index e58cac931..e8dd5060c 100644
--- a/coreutils/install.c
+++ b/coreutils/install.c
@@ -49,7 +49,7 @@ static const struct option install_long_options[] = {
{ 0, 0, 0, 0 }
};
-extern int install_main(int argc, char **argv)
+int install_main(int argc, char **argv)
{
mode_t mode;
uid_t uid;
diff --git a/coreutils/length.c b/coreutils/length.c
index bce43ab3f..55fef131b 100644
--- a/coreutils/length.c
+++ b/coreutils/length.c
@@ -7,7 +7,7 @@
#include <stdio.h>
#include "busybox.h"
-extern int length_main(int argc, char **argv)
+int length_main(int argc, char **argv)
{
if ((argc != 2) || (**(++argv) == '-')) {
bb_show_usage();
diff --git a/coreutils/libcoreutils/cp_mv_stat.c b/coreutils/libcoreutils/cp_mv_stat.c
index 5a70b0221..d401bcc75 100644
--- a/coreutils/libcoreutils/cp_mv_stat.c
+++ b/coreutils/libcoreutils/cp_mv_stat.c
@@ -25,7 +25,7 @@
#include "libbb.h"
#include "coreutils.h"
-extern int cp_mv_stat2(const char *fn, struct stat *fn_stat, stat_func sf)
+int cp_mv_stat2(const char *fn, struct stat *fn_stat, stat_func sf)
{
if (sf(fn, fn_stat) < 0) {
if (errno != ENOENT) {
@@ -39,7 +39,7 @@ extern int cp_mv_stat2(const char *fn, struct stat *fn_stat, stat_func sf)
return 1;
}
-extern int cp_mv_stat(const char *fn, struct stat *fn_stat)
+int cp_mv_stat(const char *fn, struct stat *fn_stat)
{
return cp_mv_stat2(fn, fn_stat, stat);
}
diff --git a/coreutils/libcoreutils/getopt_mk_fifo_nod.c b/coreutils/libcoreutils/getopt_mk_fifo_nod.c
index 090fefaee..d1f5b1e89 100644
--- a/coreutils/libcoreutils/getopt_mk_fifo_nod.c
+++ b/coreutils/libcoreutils/getopt_mk_fifo_nod.c
@@ -26,7 +26,7 @@
#include "libbb.h"
#include "coreutils.h"
-extern mode_t getopt_mk_fifo_nod(int argc, char **argv)
+mode_t getopt_mk_fifo_nod(int argc, char **argv)
{
mode_t mode = 0666;
char *smode = NULL;
diff --git a/coreutils/ln.c b/coreutils/ln.c
index dcb70d40f..229c68218 100644
--- a/coreutils/ln.c
+++ b/coreutils/ln.c
@@ -36,7 +36,7 @@
#define LN_BACKUP 8
#define LN_SUFFIX 16
-extern int ln_main(int argc, char **argv)
+int ln_main(int argc, char **argv)
{
int status = EXIT_SUCCESS;
int flag;
diff --git a/coreutils/logname.c b/coreutils/logname.c
index e2a74f932..da8a1cfc9 100644
--- a/coreutils/logname.c
+++ b/coreutils/logname.c
@@ -25,7 +25,7 @@
#include <unistd.h>
#include "busybox.h"
-extern int logname_main(int argc, char ATTRIBUTE_UNUSED **argv)
+int logname_main(int argc, char ATTRIBUTE_UNUSED **argv)
{
const char *p;
diff --git a/coreutils/ls.c b/coreutils/ls.c
index 79a583a1c..a575a02cb 100644
--- a/coreutils/ls.c
+++ b/coreutils/ls.c
@@ -955,7 +955,7 @@ static const unsigned opt_flags[] = {
/*----------------------------------------------------------------------*/
-extern int ls_main(int argc, char **argv)
+int ls_main(int argc, char **argv)
{
struct dnode **dnd;
struct dnode **dnf;
diff --git a/coreutils/mkdir.c b/coreutils/mkdir.c
index e24ef4f89..48a95badb 100644
--- a/coreutils/mkdir.c
+++ b/coreutils/mkdir.c
@@ -40,7 +40,7 @@ static const struct option mkdir_long_options[] = {
{ 0, 0, 0, 0 }
};
-extern int mkdir_main (int argc, char **argv)
+int mkdir_main (int argc, char **argv)
{
mode_t mode = (mode_t)(-1);
int status = EXIT_SUCCESS;
diff --git a/coreutils/mkfifo.c b/coreutils/mkfifo.c
index 77e0e6dd8..2414be38e 100644
--- a/coreutils/mkfifo.c
+++ b/coreutils/mkfifo.c
@@ -29,7 +29,7 @@
#include "busybox.h"
#include "libcoreutils/coreutils.h"
-extern int mkfifo_main(int argc, char **argv)
+int mkfifo_main(int argc, char **argv)
{
mode_t mode;
int retval = EXIT_SUCCESS;
diff --git a/coreutils/mknod.c b/coreutils/mknod.c
index b6e85272d..cb5980b95 100644
--- a/coreutils/mknod.c
+++ b/coreutils/mknod.c
@@ -32,7 +32,7 @@
static const char modes_chars[] = { 'p', 'c', 'u', 'b', 0, 1, 1, 2 };
static const mode_t modes_cubp[] = { S_IFIFO, S_IFCHR, S_IFBLK };
-extern int mknod_main(int argc, char **argv)
+int mknod_main(int argc, char **argv)
{
mode_t mode;
dev_t dev;
diff --git a/coreutils/mv.c b/coreutils/mv.c
index aef1ed19a..1c0dc3d72 100644
--- a/coreutils/mv.c
+++ b/coreutils/mv.c
@@ -46,7 +46,7 @@ static const struct option mv_long_options[] = {
static const char fmt[] = "cannot overwrite %sdirectory with %sdirectory";
-extern int mv_main(int argc, char **argv)
+int mv_main(int argc, char **argv)
{
struct stat dest_stat;
const char *last;
diff --git a/coreutils/pwd.c b/coreutils/pwd.c
index 7e0dc056a..33f80d004 100644
--- a/coreutils/pwd.c
+++ b/coreutils/pwd.c
@@ -24,7 +24,7 @@
#include <stdlib.h>
#include "busybox.h"
-extern int pwd_main(int argc, char **argv)
+int pwd_main(int argc, char **argv)
{
char *buf;
diff --git a/coreutils/rm.c b/coreutils/rm.c
index e4e9bb0be..59c639b88 100644
--- a/coreutils/rm.c
+++ b/coreutils/rm.c
@@ -32,7 +32,7 @@
#include <unistd.h>
#include "busybox.h"
-extern int rm_main(int argc, char **argv)
+int rm_main(int argc, char **argv)
{
int status = 0;
int flags = 0;
diff --git a/coreutils/rmdir.c b/coreutils/rmdir.c
index 1d6b2cadb..cc21f5df9 100644
--- a/coreutils/rmdir.c
+++ b/coreutils/rmdir.c
@@ -28,7 +28,7 @@
#include <libgen.h>
#include "busybox.h"
-extern int rmdir_main(int argc, char **argv)
+int rmdir_main(int argc, char **argv)
{
int status = EXIT_SUCCESS;
int flags;
diff --git a/coreutils/seq.c b/coreutils/seq.c
index 51e3add81..66141c4e2 100644
--- a/coreutils/seq.c
+++ b/coreutils/seq.c
@@ -11,7 +11,7 @@
#include <stdlib.h>
#include "busybox.h"
-extern int seq_main(int argc, char **argv)
+int seq_main(int argc, char **argv)
{
double last, first, increment, i;
diff --git a/coreutils/sleep.c b/coreutils/sleep.c
index 506192dd3..c46a4e5f4 100644
--- a/coreutils/sleep.c
+++ b/coreutils/sleep.c
@@ -46,7 +46,7 @@ static const struct suffix_mult sleep_suffixes[] = {
};
#endif
-extern int sleep_main(int argc, char **argv)
+int sleep_main(int argc, char **argv)
{
unsigned int duration;
diff --git a/coreutils/stty.c b/coreutils/stty.c
index 63d586e50..a3526136f 100644
--- a/coreutils/stty.c
+++ b/coreutils/stty.c
@@ -467,9 +467,9 @@ static const struct suffix_mult stty_suffixes[] = {
};
#ifndef TEST
-extern int stty_main(int argc, char **argv)
+int stty_main(int argc, char **argv)
#else
-extern int main(int argc, char **argv)
+int main(int argc, char **argv)
#endif
{
struct termios mode;
diff --git a/coreutils/sync.c b/coreutils/sync.c
index 84746311f..4e75e4f29 100644
--- a/coreutils/sync.c
+++ b/coreutils/sync.c
@@ -26,7 +26,7 @@
#include <unistd.h>
#include "busybox.h"
-extern int sync_main(int argc, char **argv)
+int sync_main(int argc, char **argv)
{
bb_warn_ignoring_args(argc - 1);
diff --git a/coreutils/test.c b/coreutils/test.c
index d7bd5a0de..ecd154907 100644
--- a/coreutils/test.c
+++ b/coreutils/test.c
@@ -183,7 +183,7 @@ static int test_eaccess(char *path, int mode);
static int is_a_group_member(gid_t gid);
static void initialize_group_array(void);
-extern int test_main(int argc, char **argv)
+int test_main(int argc, char **argv)
{
int res;
diff --git a/coreutils/touch.c b/coreutils/touch.c
index 645fb2174..f78fe5114 100644
--- a/coreutils/touch.c
+++ b/coreutils/touch.c
@@ -39,7 +39,7 @@
#include <stdlib.h>
#include "busybox.h"
-extern int touch_main(int argc, char **argv)
+int touch_main(int argc, char **argv)
{
int fd;
int flags;
diff --git a/coreutils/tr.c b/coreutils/tr.c
index d6c5e346e..adddf83d2 100644
--- a/coreutils/tr.c
+++ b/coreutils/tr.c
@@ -202,7 +202,7 @@ static int complement(unsigned char *buffer, int buffer_len)
return ix;
}
-extern int tr_main(int argc, char **argv)
+int tr_main(int argc, char **argv)
{
register unsigned char *ptr;
int output_length=0, input_length;
diff --git a/coreutils/true.c b/coreutils/true.c
index 3e7eb0111..1f2768615 100644
--- a/coreutils/true.c
+++ b/coreutils/true.c
@@ -26,7 +26,7 @@
#include <stdlib.h>
#include "busybox.h"
-extern int true_main(int argc, char **argv)
+int true_main(int argc, char **argv)
{
return EXIT_SUCCESS;
}
diff --git a/coreutils/tty.c b/coreutils/tty.c
index cd2c784fd..6aea7a30f 100644
--- a/coreutils/tty.c
+++ b/coreutils/tty.c
@@ -28,7 +28,7 @@
#include <unistd.h>
#include "busybox.h"
-extern int tty_main(int argc, char **argv)
+int tty_main(int argc, char **argv)
{
const char *s;
int silent; /* Note: No longer relevant in SUSv3. */
diff --git a/coreutils/usleep.c b/coreutils/usleep.c
index f570f2734..9dd643f92 100644
--- a/coreutils/usleep.c
+++ b/coreutils/usleep.c
@@ -27,7 +27,7 @@
#include <unistd.h>
#include "busybox.h"
-extern int usleep_main(int argc, char **argv)
+int usleep_main(int argc, char **argv)
{
if (argc != 2) {
bb_show_usage();
diff --git a/coreutils/uudecode.c b/coreutils/uudecode.c
index 5823afd90..310d5b6c4 100644
--- a/coreutils/uudecode.c
+++ b/coreutils/uudecode.c
@@ -138,7 +138,7 @@ static int read_base64(FILE *src_stream, FILE *dst_stream)
}
}
-extern int uudecode_main(int argc, char **argv)
+int uudecode_main(int argc, char **argv)
{
int (*decode_fn_ptr) (FILE * src, FILE * dst);
FILE *src_stream;
diff --git a/coreutils/watch.c b/coreutils/watch.c
index 31fadfb85..9da591b48 100644
--- a/coreutils/watch.c
+++ b/coreutils/watch.c
@@ -39,7 +39,7 @@
#include <sys/wait.h>
#include "busybox.h"
-extern int watch_main(int argc, char **argv)
+int watch_main(int argc, char **argv)
{
const int header_len = 40;
time_t t;
diff --git a/coreutils/who.c b/coreutils/who.c
index e2ea227eb..1156ba20f 100644
--- a/coreutils/who.c
+++ b/coreutils/who.c
@@ -25,7 +25,7 @@
#include <time.h>
#include "busybox.h"
-extern int who_main(int argc, char **argv)
+int who_main(int argc, char **argv)
{
struct utmp *ut;
struct stat st;
diff --git a/coreutils/whoami.c b/coreutils/whoami.c
index 16d28083c..71ef3537d 100644
--- a/coreutils/whoami.c
+++ b/coreutils/whoami.c
@@ -27,7 +27,7 @@
#include <unistd.h>
#include "busybox.h"
-extern int whoami_main(int argc, char **argv)
+int whoami_main(int argc, char **argv)
{
if (argc > 1)
bb_show_usage();
diff --git a/coreutils/yes.c b/coreutils/yes.c
index 74f7571cf..cafc16bc9 100644
--- a/coreutils/yes.c
+++ b/coreutils/yes.c
@@ -31,7 +31,7 @@
#include <stdlib.h>
#include "busybox.h"
-extern int yes_main(int argc, char **argv)
+int yes_main(int argc, char **argv)
{
static const char fmt_str[] = " %s";
const char *fmt;
diff --git a/debianutils/mktemp.c b/debianutils/mktemp.c
index 64b82815e..09c79f504 100644
--- a/debianutils/mktemp.c
+++ b/debianutils/mktemp.c
@@ -16,7 +16,7 @@
#include <stdlib.h>
#include "busybox.h"
-extern int mktemp_main(int argc, char **argv)
+int mktemp_main(int argc, char **argv)
{
unsigned long flags = bb_getopt_ulflags(argc, argv, "dq");
diff --git a/debianutils/pipe_progress.c b/debianutils/pipe_progress.c
index ab05202eb..95db16783 100644
--- a/debianutils/pipe_progress.c
+++ b/debianutils/pipe_progress.c
@@ -31,7 +31,7 @@
/* Read a block of data from stdin, write it to stdout.
* Activity is indicated by a '.' to stderr
*/
-extern int pipe_progress_main(int argc, char **argv)
+int pipe_progress_main(int argc, char **argv)
{
RESERVE_CONFIG_BUFFER(buf, PIPE_PROGRESS_SIZE);
time_t t = time(NULL);
diff --git a/debianutils/which.c b/debianutils/which.c
index deb036aa0..4d206ab29 100644
--- a/debianutils/which.c
+++ b/debianutils/which.c
@@ -16,7 +16,7 @@
#include <sys/stat.h>
#include "busybox.h"
-extern int which_main(int argc, char **argv)
+int which_main(int argc, char **argv)
{
int status = EXIT_SUCCESS;
size_t i, count;
diff --git a/e2fsprogs/blkid/dev.c b/e2fsprogs/blkid/dev.c
index d2e468304..04cf8b5fa 100644
--- a/e2fsprogs/blkid/dev.c
+++ b/e2fsprogs/blkid/dev.c
@@ -52,7 +52,7 @@ void blkid_free_dev(blkid_dev dev)
/*
* Given a blkid device, return its name
*/
-extern const char *blkid_dev_devname(blkid_dev dev)
+const char *blkid_dev_devname(blkid_dev dev)
{
return dev->bid_name;
}
@@ -80,7 +80,7 @@ struct blkid_struct_dev_iterate {
struct list_head *p;
};
-extern blkid_dev_iterate blkid_dev_iterate_begin(blkid_cache cache)
+blkid_dev_iterate blkid_dev_iterate_begin(blkid_cache cache)
{
blkid_dev_iterate iter;
@@ -106,7 +106,7 @@ extern int blkid_dev_next(blkid_dev_iterate iter,
return 0;
}
-extern void blkid_dev_iterate_end(blkid_dev_iterate iter)
+void blkid_dev_iterate_end(blkid_dev_iterate iter)
{
if (!iter || iter->magic != DEV_ITERATE_MAGIC)
return;
diff --git a/e2fsprogs/blkid/tag.c b/e2fsprogs/blkid/tag.c
index 95112eba5..51615d4a5 100644
--- a/e2fsprogs/blkid/tag.c
+++ b/e2fsprogs/blkid/tag.c
@@ -236,7 +236,7 @@ struct blkid_struct_tag_iterate {
struct list_head *p;
};
-extern blkid_tag_iterate blkid_tag_iterate_begin(blkid_dev dev)
+blkid_tag_iterate blkid_tag_iterate_begin(blkid_dev dev)
{
blkid_tag_iterate iter;
@@ -267,7 +267,7 @@ extern int blkid_tag_next(blkid_tag_iterate iter,
return 0;
}
-extern void blkid_tag_iterate_end(blkid_tag_iterate iter)
+void blkid_tag_iterate_end(blkid_tag_iterate iter)
{
if (!iter || iter->magic != TAG_ITERATE_MAGIC)
return;
diff --git a/e2fsprogs/e2fsck.c b/e2fsprogs/e2fsck.c
index 489d2a818..18dfd00b6 100644
--- a/e2fsprogs/e2fsck.c
+++ b/e2fsprogs/e2fsck.c
@@ -14897,7 +14897,7 @@ static float calc_percent(const struct percent_tbl *tbl, int pass, int curr,
+ tbl->table[pass-1]);
}
-extern void e2fsck_clear_progbar(e2fsck_t ctx)
+void e2fsck_clear_progbar(e2fsck_t ctx)
{
if (!(ctx->flags & E2F_FLAG_PROG_BAR))
return;
diff --git a/editors/awk.c b/editors/awk.c
index 39717afae..65856aa55 100644
--- a/editors/awk.c
+++ b/editors/awk.c
@@ -2612,7 +2612,7 @@ static rstream *next_input_file(void)
return &rsm;
}
-extern int awk_main(int argc, char **argv)
+int awk_main(int argc, char **argv)
{
char *s, *s1;
int i, j, c, flen;
diff --git a/editors/patch.c b/editors/patch.c
index 2248b61e2..9a3740882 100644
--- a/editors/patch.c
+++ b/editors/patch.c
@@ -88,7 +88,7 @@ static int file_doesnt_exist(const char *filename)
return(stat(filename, &statbuf));
}
-extern int patch_main(int argc, char **argv)
+int patch_main(int argc, char **argv)
{
int patch_level = -1;
char *patch_line;
diff --git a/editors/sed.c b/editors/sed.c
index 32116fd29..93d3f89d1 100644
--- a/editors/sed.c
+++ b/editors/sed.c
@@ -1108,7 +1108,7 @@ static void add_cmd_block(char *cmdstr)
free(temp);
}
-extern int sed_main(int argc, char **argv)
+int sed_main(int argc, char **argv)
{
int status = EXIT_SUCCESS, opt, getpat = 1;
diff --git a/editors/vi.c b/editors/vi.c
index bf537ee62..4dcef68f9 100644
--- a/editors/vi.c
+++ b/editors/vi.c
@@ -332,7 +332,7 @@ static void write1(const char *out)
fputs(out, stdout);
}
-extern int vi_main(int argc, char **argv)
+int vi_main(int argc, char **argv)
{
int c;
RESERVE_CONFIG_BUFFER(STATUS_BUFFER, STATUS_BUFFER_LEN);
diff --git a/findutils/grep.c b/findutils/grep.c
index e1ce8e5fa..e5b5e3242 100644
--- a/findutils/grep.c
+++ b/findutils/grep.c
@@ -280,7 +280,7 @@ static void load_regexes_from_file(llist_t *fopt)
}
-extern int grep_main(int argc, char **argv)
+int grep_main(int argc, char **argv)
{
FILE *file;
int matched;
diff --git a/init/init.c b/init/init.c
index c4d67a54b..b7bc7ef9f 100644
--- a/init/init.c
+++ b/init/init.c
@@ -1007,7 +1007,7 @@ static void reload_signal(int sig ATTRIBUTE_UNUSED)
}
#endif /* CONFIG_FEATURE_USE_INITTAB */
-extern int init_main(int argc, char **argv)
+int init_main(int argc, char **argv)
{
struct init_action *a;
pid_t wpid;
diff --git a/init/init_shared.c b/init/init_shared.c
index 7e3cc100d..51e1496c2 100644
--- a/init/init_shared.c
+++ b/init/init_shared.c
@@ -18,7 +18,7 @@
#ifndef CONFIG_INIT
const char * const bb_shutdown_format = "\r%s\n";
-extern int bb_shutdown_system(unsigned long magic)
+int bb_shutdown_system(unsigned long magic)
{
int pri = LOG_KERN|LOG_NOTICE|LOG_FACMASK;
const char *message;
diff --git a/init/mesg.c b/init/mesg.c
index f1cbe7ea0..874c22089 100644
--- a/init/mesg.c
+++ b/init/mesg.c
@@ -28,7 +28,7 @@
#define S_IWGRP_OR_S_IWOTH (S_IWGRP | S_IWOTH)
#endif
-extern int mesg_main(int argc, char *argv[])
+int mesg_main(int argc, char *argv[])
{
struct stat sb;
char *tty;
diff --git a/libbb/bb_echo.c b/libbb/bb_echo.c
index 41e6e4915..9ad73df85 100644
--- a/libbb/bb_echo.c
+++ b/libbb/bb_echo.c
@@ -28,7 +28,7 @@
#include <string.h>
#include "busybox.h"
-extern int bb_echo(int ATTRIBUTE_UNUSED argc, char **argv)
+int bb_echo(int ATTRIBUTE_UNUSED argc, char **argv)
{
#ifndef CONFIG_FEATURE_FANCY_ECHO
#define eflag '\\'
diff --git a/libbb/concat_path_file.c b/libbb/concat_path_file.c
index 029c23272..3c5460d47 100644
--- a/libbb/concat_path_file.c
+++ b/libbb/concat_path_file.c
@@ -28,7 +28,7 @@
#include <string.h>
#include "libbb.h"
-extern char *concat_path_file(const char *path, const char *filename)
+char *concat_path_file(const char *path, const char *filename)
{
char *lc;
diff --git a/libbb/concat_subpath_file.c b/libbb/concat_subpath_file.c
index 6d86f5e8c..e72441999 100644
--- a/libbb/concat_subpath_file.c
+++ b/libbb/concat_subpath_file.c
@@ -28,7 +28,7 @@
#include "libbb.h"
-extern char *concat_subpath_file(const char *path, const char *f)
+char *concat_subpath_file(const char *path, const char *f)
{
if(f && *f == '.' && (!f[1] || (f[1] == '.' && !f[2])))
return NULL;
diff --git a/libbb/copyfd.c b/libbb/copyfd.c
index 515253148..d138f3e59 100644
--- a/libbb/copyfd.c
+++ b/libbb/copyfd.c
@@ -62,7 +62,7 @@ out:
}
-extern int bb_copyfd_size(int fd1, int fd2, const off_t size)
+int bb_copyfd_size(int fd1, int fd2, const off_t size)
{
if (size) {
return(bb_full_fd_action(fd1, fd2, size));
@@ -70,7 +70,7 @@ extern int bb_copyfd_size(int fd1, int fd2, const off_t size)
return(0);
}
-extern int bb_copyfd_eof(int fd1, int fd2)
+int bb_copyfd_eof(int fd1, int fd2)
{
return(bb_full_fd_action(fd1, fd2, 0));
}
diff --git a/libbb/device_open.c b/libbb/device_open.c
index 61f954f46..df5eae9e4 100644
--- a/libbb/device_open.c
+++ b/libbb/device_open.c
@@ -25,7 +25,7 @@
/* try to open up the specified device */
-extern int device_open(const char *device, int mode)
+int device_open(const char *device, int mode)
{
int m, f, fd = -1;
diff --git a/libbb/error_msg.c b/libbb/error_msg.c
index 18811b8d1..2a90ba438 100644
--- a/libbb/error_msg.c
+++ b/libbb/error_msg.c
@@ -25,7 +25,7 @@
#include <stdlib.h>
#include "libbb.h"
-extern void bb_error_msg(const char *s, ...)
+void bb_error_msg(const char *s, ...)
{
va_list p;
diff --git a/libbb/error_msg_and_die.c b/libbb/error_msg_and_die.c
index 0937658a3..92043a535 100644
--- a/libbb/error_msg_and_die.c
+++ b/libbb/error_msg_and_die.c
@@ -25,7 +25,7 @@
#include <stdlib.h>
#include "libbb.h"
-extern void bb_error_msg_and_die(const char *s, ...)
+void bb_error_msg_and_die(const char *s, ...)
{
va_list p;
diff --git a/libbb/find_mount_point.c b/libbb/find_mount_point.c
index 4d27b4809..83527a8c8 100644
--- a/libbb/find_mount_point.c
+++ b/libbb/find_mount_point.c
@@ -32,7 +32,7 @@
* Given any other file (or directory), find the mount table entry for its
* filesystem.
*/
-extern struct mntent *find_mount_point(const char *name, const char *table)
+struct mntent *find_mount_point(const char *name, const char *table)
{
struct stat s;
dev_t mountDevice;
diff --git a/libbb/find_pid_by_name.c b/libbb/find_pid_by_name.c
index 24084a34f..833c96f51 100644
--- a/libbb/find_pid_by_name.c
+++ b/libbb/find_pid_by_name.c
@@ -23,7 +23,7 @@
* Returns a list of all matching PIDs
* It is the caller's duty to free the returned pidlist.
*/
-extern long* find_pid_by_name( const char* pidName)
+long* find_pid_by_name( const char* pidName)
{
long* pidList;
int i=0;
@@ -42,7 +42,7 @@ extern long* find_pid_by_name( const char* pidName)
return pidList;
}
-extern long *pidlist_reverse(long *pidList)
+long *pidlist_reverse(long *pidList)
{
int i=0;
while (pidList[i] > 0 && ++i);
diff --git a/libbb/find_root_device.c b/libbb/find_root_device.c
index dfe0cfa7b..d1ffc87f5 100644
--- a/libbb/find_root_device.c
+++ b/libbb/find_root_device.c
@@ -26,7 +26,7 @@
#include <stdlib.h>
#include "libbb.h"
-extern char *find_block_device(char *path)
+char *find_block_device(char *path)
{
DIR *dir;
struct dirent *entry;
diff --git a/libbb/get_line_from_file.c b/libbb/get_line_from_file.c
index 5ad497ffa..44cf44869 100644
--- a/libbb/get_line_from_file.c
+++ b/libbb/get_line_from_file.c
@@ -45,14 +45,14 @@ char *bb_get_chunk_from_file(FILE *file, int *end)
}
/* Get line, including trailing /n if any */
-extern char *bb_get_line_from_file(FILE *file)
+char *bb_get_line_from_file(FILE *file)
{
int i;
return bb_get_chunk_from_file(file, &i);
}
/* Get line. Remove trailing /n */
-extern char *bb_get_chomped_line_from_file(FILE *file)
+char *bb_get_chomped_line_from_file(FILE *file)
{
int i;
char *c=bb_get_chunk_from_file(file, &i);
diff --git a/libbb/herror_msg.c b/libbb/herror_msg.c
index 87ec15acc..d0d0a15d2 100644
--- a/libbb/herror_msg.c
+++ b/libbb/herror_msg.c
@@ -24,7 +24,7 @@
#include "libbb.h"
-extern void bb_herror_msg(const char *s, ...)
+void bb_herror_msg(const char *s, ...)
{
va_list p;
diff --git a/libbb/herror_msg_and_die.c b/libbb/herror_msg_and_die.c
index 5c765f1be..9a76ef7e1 100644
--- a/libbb/herror_msg_and_die.c
+++ b/libbb/herror_msg_and_die.c
@@ -24,7 +24,7 @@
#include "libbb.h"
-extern void bb_herror_msg_and_die(const char *s, ...)
+void bb_herror_msg_and_die(const char *s, ...)
{
va_list p;
diff --git a/libbb/kernel_version.c b/libbb/kernel_version.c
index e01aafa25..5f5d36df2 100644
--- a/libbb/kernel_version.c
+++ b/libbb/kernel_version.c
@@ -30,7 +30,7 @@
* so, for example, to check if the kernel is greater than 2.2.11:
* if (get_kernel_revision() <= 2*65536+2*256+11) { <stuff> }
*/
-extern int get_kernel_revision(void)
+int get_kernel_revision(void)
{
struct utsname name;
char *s;
diff --git a/libbb/llist.c b/libbb/llist.c
index ce7daddee..af0a9948c 100644
--- a/libbb/llist.c
+++ b/libbb/llist.c
@@ -13,7 +13,7 @@
#ifdef L_llist_add_to
/* Add data to the start of the linked list. */
-extern llist_t *llist_add_to(llist_t *old_head, char *new_item)
+llist_t *llist_add_to(llist_t *old_head, char *new_item)
{
llist_t *new_head;
@@ -27,7 +27,7 @@ extern llist_t *llist_add_to(llist_t *old_head, char *new_item)
#ifdef L_llist_add_to_end
/* Add data to the end of the linked list. */
-extern llist_t *llist_add_to_end(llist_t *list_head, char *data)
+llist_t *llist_add_to_end(llist_t *list_head, char *data)
{
llist_t *new_item;
@@ -50,7 +50,7 @@ extern llist_t *llist_add_to_end(llist_t *list_head, char *data)
#ifdef L_llist_free_one
/* Free the current list element and advance to the next entry in the list.
* Returns a pointer to the next element. */
-extern llist_t *llist_free_one(llist_t *elm)
+llist_t *llist_free_one(llist_t *elm)
{
llist_t *next = elm ? elm->link : NULL;
#if ENABLE_DMALLOC /* avoid warnings from dmalloc's error-free-null option */
@@ -64,7 +64,7 @@ extern llist_t *llist_free_one(llist_t *elm)
#ifdef L_llist_free
/* Recursively free all elements in the linked list. */
-extern void llist_free(llist_t *elm)
+void llist_free(llist_t *elm)
{
while ((elm = llist_free_one(elm)));
}
diff --git a/libbb/obscure.c b/libbb/obscure.c
index 4d159a771..6244970de 100644
--- a/libbb/obscure.c
+++ b/libbb/obscure.c
@@ -244,7 +244,7 @@ obscure_msg(const char *old, const char *newval, const struct passwd *pwdp)
* check passwords.
*/
-extern int obscure(const char *old, const char *newval, const struct passwd *pwdp)
+int obscure(const char *old, const char *newval, const struct passwd *pwdp)
{
const char *msg = obscure_msg(old, newval, pwdp);
diff --git a/libbb/parse_mode.c b/libbb/parse_mode.c
index 185957bc3..ffbf4e1d4 100644
--- a/libbb/parse_mode.c
+++ b/libbb/parse_mode.c
@@ -29,7 +29,7 @@
#define FILEMODEBITS (S_ISUID | S_ISGID | S_ISVTX | S_IRWXU | S_IRWXG | S_IRWXO)
-extern int bb_parse_mode(const char *s, mode_t *current_mode)
+int bb_parse_mode(const char *s, mode_t *current_mode)
{
static const mode_t who_mask[] = {
S_ISUID | S_ISGID | S_ISVTX | S_IRWXU | S_IRWXG | S_IRWXO, /* a */
diff --git a/libbb/perror_msg.c b/libbb/perror_msg.c
index 8ba053188..a0fdabc1d 100644
--- a/libbb/perror_msg.c
+++ b/libbb/perror_msg.c
@@ -25,7 +25,7 @@
#include <stdlib.h>
#include "libbb.h"
-extern void bb_perror_msg(const char *s, ...)
+void bb_perror_msg(const char *s, ...)
{
va_list p;
diff --git a/libbb/perror_msg_and_die.c b/libbb/perror_msg_and_die.c
index 15bf0421e..4a26dcce8 100644
--- a/libbb/perror_msg_and_die.c
+++ b/libbb/perror_msg_and_die.c
@@ -25,7 +25,7 @@
#include <stdlib.h>
#include "libbb.h"
-extern void bb_perror_msg_and_die(const char *s, ...)
+void bb_perror_msg_and_die(const char *s, ...)
{
va_list p;
diff --git a/libbb/perror_nomsg.c b/libbb/perror_nomsg.c
index 464cb86c4..479b2ba93 100644
--- a/libbb/perror_nomsg.c
+++ b/libbb/perror_nomsg.c
@@ -23,7 +23,7 @@
#include <stddef.h>
#include <libbb.h>
-extern void bb_perror_nomsg(void)
+void bb_perror_nomsg(void)
{
/* Ignore the gcc warning about a null format string. */
bb_perror_msg(NULL);
diff --git a/libbb/perror_nomsg_and_die.c b/libbb/perror_nomsg_and_die.c
index bab228455..7cbe35e3a 100644
--- a/libbb/perror_nomsg_and_die.c
+++ b/libbb/perror_nomsg_and_die.c
@@ -23,7 +23,7 @@
#include <stddef.h>
#include "libbb.h"
-extern void bb_perror_nomsg_and_die(void)
+void bb_perror_nomsg_and_die(void)
{
/* Ignore the gcc warning about a null format string. */
bb_perror_msg_and_die(NULL);
diff --git a/libbb/print_file.c b/libbb/print_file.c
index 963db1416..26bd0d458 100644
--- a/libbb/print_file.c
+++ b/libbb/print_file.c
@@ -24,7 +24,7 @@
#include <unistd.h>
#include "libbb.h"
-extern void bb_xprint_and_close_file(FILE *file)
+void bb_xprint_and_close_file(FILE *file)
{
bb_xfflush_stdout();
/* Note: Do not use STDOUT_FILENO here, as this is a lib routine
@@ -45,7 +45,7 @@ extern void bb_xprint_and_close_file(FILE *file)
* exits with default error code if an error occurs
*/
-extern int bb_xprint_file_by_name(const char *filename)
+int bb_xprint_file_by_name(const char *filename)
{
FILE *f;
diff --git a/libbb/printf.c b/libbb/printf.c
index 2cba31792..e61723242 100644
--- a/libbb/printf.c
+++ b/libbb/printf.c
@@ -145,7 +145,7 @@ extern int bb_vfprintf(FILE * __restrict stream,
#endif
#ifdef L_bb_vprintf
-extern int bb_vprintf(const char * __restrict format, va_list arg)
+int bb_vprintf(const char * __restrict format, va_list arg)
{
return bb_vfprintf(stdout, format, arg);
}
@@ -167,7 +167,7 @@ extern int bb_fprintf(FILE * __restrict stream,
#endif
#ifdef L_bb_printf
-extern int bb_printf(const char * __restrict format, ...)
+int bb_printf(const char * __restrict format, ...)
{
va_list arg;
int rv;
diff --git a/libbb/procps.c b/libbb/procps.c
index 2ebe66e9d..e73c0dc64 100644
--- a/libbb/procps.c
+++ b/libbb/procps.c
@@ -34,7 +34,7 @@ static int read_to_buf(const char *filename, void *buf)
}
-extern procps_status_t * procps_scan(int save_user_arg0)
+procps_status_t * procps_scan(int save_user_arg0)
{
static DIR *dir;
struct dirent *entry;
diff --git a/libbb/pw_encrypt.c b/libbb/pw_encrypt.c
index 727149d0c..a15339974 100644
--- a/libbb/pw_encrypt.c
+++ b/libbb/pw_encrypt.c
@@ -25,7 +25,7 @@
#include "libbb.h"
-extern char *pw_encrypt(const char *clear, const char *salt)
+char *pw_encrypt(const char *clear, const char *salt)
{
static char cipher[128];
char *cp;
diff --git a/libbb/remove_file.c b/libbb/remove_file.c
index 8b45c58b8..ee1aaa5cd 100644
--- a/libbb/remove_file.c
+++ b/libbb/remove_file.c
@@ -30,7 +30,7 @@
#include <getopt.h>
#include "libbb.h"
-extern int remove_file(const char *path, int flags)
+int remove_file(const char *path, int flags)
{
struct stat path_stat;
int path_exists = 1;
diff --git a/libbb/run_parts.c b/libbb/run_parts.c
index 4c8841fe5..7f5fe459b 100644
--- a/libbb/run_parts.c
+++ b/libbb/run_parts.c
@@ -47,7 +47,7 @@ static int valid_name(const struct dirent *d)
* test_mode = 2 means to fail silently on missing directories
*/
-extern int run_parts(char **args, const unsigned char test_mode, char **env)
+int run_parts(char **args, const unsigned char test_mode, char **env)
{
struct dirent **namelist = 0;
struct stat st;
diff --git a/libbb/safe_strncpy.c b/libbb/safe_strncpy.c
index 2016e6b52..d4275698c 100644
--- a/libbb/safe_strncpy.c
+++ b/libbb/safe_strncpy.c
@@ -25,7 +25,7 @@
/* Like strncpy but make sure the resulting string is always 0 terminated. */
-extern char * safe_strncpy(char *dst, const char *src, size_t size)
+char * safe_strncpy(char *dst, const char *src, size_t size)
{
dst[size-1] = '\0';
return strncpy(dst, src, size-1);
diff --git a/libbb/skip_whitespace.c b/libbb/skip_whitespace.c
index bf049a2d2..fd5d72540 100644
--- a/libbb/skip_whitespace.c
+++ b/libbb/skip_whitespace.c
@@ -23,7 +23,7 @@
#include <ctype.h>
#include "libbb.h"
-extern const char *bb_skip_whitespace(const char *s)
+const char *bb_skip_whitespace(const char *s)
{
while (isspace(*s)) {
++s;
diff --git a/libbb/vdprintf.c b/libbb/vdprintf.c
index 53fdbd37a..96c71ea63 100644
--- a/libbb/vdprintf.c
+++ b/libbb/vdprintf.c
@@ -26,7 +26,7 @@
#if (__GLIBC__ < 2)
-extern int vdprintf(int d, const char *format, va_list ap)
+int vdprintf(int d, const char *format, va_list ap)
{
char buf[BUF_SIZE];
int len;
diff --git a/libbb/verror_msg.c b/libbb/verror_msg.c
index 07b37e4ad..d0fbb05c6 100644
--- a/libbb/verror_msg.c
+++ b/libbb/verror_msg.c
@@ -25,7 +25,7 @@
#include <stdlib.h>
#include "libbb.h"
-extern void bb_verror_msg(const char *s, va_list p)
+void bb_verror_msg(const char *s, va_list p)
{
fflush(stdout);
fprintf(stderr, "%s: ", bb_applet_name);
diff --git a/libbb/vherror_msg.c b/libbb/vherror_msg.c
index 1560eb595..a5b1a7030 100644
--- a/libbb/vherror_msg.c
+++ b/libbb/vherror_msg.c
@@ -26,7 +26,7 @@
#include "libbb.h"
-extern void bb_vherror_msg(const char *s, va_list p)
+void bb_vherror_msg(const char *s, va_list p)
{
if(s == 0)
s = "";
diff --git a/libbb/vperror_msg.c b/libbb/vperror_msg.c
index 5c446967a..ed4ac83cd 100644
--- a/libbb/vperror_msg.c
+++ b/libbb/vperror_msg.c
@@ -25,7 +25,7 @@
#include <stdlib.h>
#include "libbb.h"
-extern void bb_vperror_msg(const char *s, va_list p)
+void bb_vperror_msg(const char *s, va_list p)
{
int err=errno;
if(s == 0) s = "";
diff --git a/libbb/warn_ignoring_args.c b/libbb/warn_ignoring_args.c
index a1fa528f4..cc35fe26a 100644
--- a/libbb/warn_ignoring_args.c
+++ b/libbb/warn_ignoring_args.c
@@ -22,7 +22,7 @@
#include <libbb.h>
-extern void bb_warn_ignoring_args(int n)
+void bb_warn_ignoring_args(int n)
{
if (n) {
bb_perror_msg("ignoring all arguments");
diff --git a/libbb/xfuncs.c b/libbb/xfuncs.c
index 6d54c1a79..4114090de 100644
--- a/libbb/xfuncs.c
+++ b/libbb/xfuncs.c
@@ -26,7 +26,7 @@
#ifndef DMALLOC
#ifdef L_xmalloc
-extern void *xmalloc(size_t size)
+void *xmalloc(size_t size)
{
void *ptr = malloc(size);
if (ptr == NULL && size != 0)
@@ -36,7 +36,7 @@ extern void *xmalloc(size_t size)
#endif
#ifdef L_xrealloc
-extern void *xrealloc(void *ptr, size_t size)
+void *xrealloc(void *ptr, size_t size)
{
ptr = realloc(ptr, size);
if (ptr == NULL && size != 0)
@@ -46,7 +46,7 @@ extern void *xrealloc(void *ptr, size_t size)
#endif
#ifdef L_xcalloc
-extern void *xcalloc(size_t nmemb, size_t size)
+void *xcalloc(size_t nmemb, size_t size)
{
void *ptr = calloc(nmemb, size);
if (ptr == NULL && nmemb != 0 && size != 0)
@@ -96,7 +96,7 @@ FILE *bb_xfopen(const char *path, const char *mode)
#endif
#ifdef L_xopen
-extern int bb_xopen(const char *pathname, int flags)
+int bb_xopen(const char *pathname, int flags)
{
int ret;
@@ -109,7 +109,7 @@ extern int bb_xopen(const char *pathname, int flags)
#endif
#ifdef L_xread
-extern ssize_t bb_xread(int fd, void *buf, size_t count)
+ssize_t bb_xread(int fd, void *buf, size_t count)
{
ssize_t size;
@@ -122,7 +122,7 @@ extern ssize_t bb_xread(int fd, void *buf, size_t count)
#endif
#ifdef L_xread_all
-extern void bb_xread_all(int fd, void *buf, size_t count)
+void bb_xread_all(int fd, void *buf, size_t count)
{
ssize_t size;
@@ -138,7 +138,7 @@ extern void bb_xread_all(int fd, void *buf, size_t count)
#endif
#ifdef L_xread_char
-extern unsigned char bb_xread_char(int fd)
+unsigned char bb_xread_char(int fd)
{
char tmp;
@@ -149,7 +149,7 @@ extern unsigned char bb_xread_char(int fd)
#endif
#ifdef L_xferror
-extern void bb_xferror(FILE *fp, const char *fn)
+void bb_xferror(FILE *fp, const char *fn)
{
if (ferror(fp)) {
bb_error_msg_and_die("%s", fn);
@@ -158,14 +158,14 @@ extern void bb_xferror(FILE *fp, const char *fn)
#endif
#ifdef L_xferror_stdout
-extern void bb_xferror_stdout(void)
+void bb_xferror_stdout(void)
{
bb_xferror(stdout, bb_msg_standard_output);
}
#endif
#ifdef L_xfflush_stdout
-extern void bb_xfflush_stdout(void)
+void bb_xfflush_stdout(void)
{
if (fflush(stdout)) {
bb_perror_msg_and_die(bb_msg_standard_output);
diff --git a/libbb/xgetlarg.c b/libbb/xgetlarg.c
index f332bb37e..6d3c4d1db 100644
--- a/libbb/xgetlarg.c
+++ b/libbb/xgetlarg.c
@@ -13,7 +13,7 @@
#include "busybox.h"
-extern long bb_xgetlarg(const char *arg, int base, long lower, long upper)
+long bb_xgetlarg(const char *arg, int base, long lower, long upper)
{
long result;
char *endptr;
diff --git a/libbb/xreadlink.c b/libbb/xreadlink.c
index b3e3eda2b..1bc166bbc 100644
--- a/libbb/xreadlink.c
+++ b/libbb/xreadlink.c
@@ -13,7 +13,7 @@
#include <unistd.h>
#include "libbb.h"
-extern char *xreadlink(const char *path)
+char *xreadlink(const char *path)
{
static const int GROWBY = 80; /* how large we will grow strings by */
diff --git a/loginutils/login.c b/loginutils/login.c
index 0f4b9ad9f..eadb17ddc 100644
--- a/loginutils/login.c
+++ b/loginutils/login.c
@@ -59,7 +59,7 @@ static void alarm_handler ( int sig ATTRIBUTE_UNUSED)
}
-extern int login_main(int argc, char **argv)
+int login_main(int argc, char **argv)
{
char tty[BUFSIZ];
char full_tty[200];
diff --git a/loginutils/passwd.c b/loginutils/passwd.c
index c6920ffe7..611ced3a4 100644
--- a/loginutils/passwd.c
+++ b/loginutils/passwd.c
@@ -132,7 +132,7 @@ static int update_passwd(const struct passwd *pw, const char *crypt_pw)
}
-extern int passwd_main(int argc, char **argv)
+int passwd_main(int argc, char **argv)
{
int amroot;
char *cp;
diff --git a/loginutils/sulogin.c b/loginutils/sulogin.c
index cecfa905a..8c5d88a62 100644
--- a/loginutils/sulogin.c
+++ b/loginutils/sulogin.c
@@ -46,7 +46,7 @@ static void catchalarm(int ATTRIBUTE_UNUSED junk)
}
-extern int sulogin_main(int argc, char **argv)
+int sulogin_main(int argc, char **argv)
{
char *cp;
char *device = (char *) 0;
diff --git a/loginutils/vlock.c b/loginutils/vlock.c
index 0975b5156..6f391075b 100644
--- a/loginutils/vlock.c
+++ b/loginutils/vlock.c
@@ -66,7 +66,7 @@ static void restore_terminal(void)
tcsetattr(STDIN_FILENO, TCSANOW, &oterm);
}
-extern int vlock_main(int argc, char **argv)
+int vlock_main(int argc, char **argv)
{
sigset_t sig;
struct sigaction sa;
diff --git a/miscutils/eject.c b/miscutils/eject.c
index 189f54510..d4548628d 100644
--- a/miscutils/eject.c
+++ b/miscutils/eject.c
@@ -25,7 +25,7 @@
#define CDROMEJECT 0x5309 /* Ejects the cdrom media */
#define DEFAULT_CDROM "/dev/cdrom"
-extern int eject_main(int argc, char **argv)
+int eject_main(int argc, char **argv)
{
unsigned long flags;
char *device;
diff --git a/miscutils/last.c b/miscutils/last.c
index 72386ea94..e27e2f386 100644
--- a/miscutils/last.c
+++ b/miscutils/last.c
@@ -43,7 +43,7 @@
#error struct utmp member char[] size(s) have changed!
#endif
-extern int last_main(int argc, char **argv)
+int last_main(int argc, char **argv)
{
struct utmp ut;
int n, file = STDIN_FILENO;
diff --git a/miscutils/makedevs.c b/miscutils/makedevs.c
index 0268fbb9d..fa7535f05 100644
--- a/miscutils/makedevs.c
+++ b/miscutils/makedevs.c
@@ -77,7 +77,7 @@ int makedevs_main(int argc, char **argv)
/* Licensed under the GPL v2 or later, see the file LICENSE in this tarball. */
-extern int makedevs_main(int argc, char **argv)
+int makedevs_main(int argc, char **argv)
{
FILE *table = stdin;
char *rootdir = NULL;
diff --git a/miscutils/mt.c b/miscutils/mt.c
index b0cdaccb9..44efedbe3 100644
--- a/miscutils/mt.c
+++ b/miscutils/mt.c
@@ -50,7 +50,7 @@ static const struct mt_opcodes opcodes[] = {
{0, 0}
};
-extern int mt_main(int argc, char **argv)
+int mt_main(int argc, char **argv)
{
const char *file = "/dev/tape";
const struct mt_opcodes *code = opcodes;
diff --git a/miscutils/time.c b/miscutils/time.c
index ca896a1c5..89c48547a 100644
--- a/miscutils/time.c
+++ b/miscutils/time.c
@@ -456,7 +456,7 @@ static void run_command (char *const *cmd, resource_t *resp)
signal (SIGQUIT, quit_signal);
}
-extern int time_main (int argc, char **argv)
+int time_main (int argc, char **argv)
{
int gotone;
resource_t res;
diff --git a/modutils/insmod.c b/modutils/insmod.c
index 14322d978..8b112787f 100644
--- a/modutils/insmod.c
+++ b/modutils/insmod.c
@@ -3903,7 +3903,7 @@ static void print_load_map(struct obj_file *f)
#endif
-extern int insmod_main( int argc, char **argv)
+int insmod_main( int argc, char **argv)
{
int opt;
int len;
@@ -4267,7 +4267,7 @@ static const char *moderror(int err)
}
}
-extern int insmod_ng_main( int argc, char **argv)
+int insmod_ng_main( int argc, char **argv)
{
int i;
int fd;
diff --git a/modutils/lsmod.c b/modutils/lsmod.c
index 018bc5323..82136dd0f 100644
--- a/modutils/lsmod.c
+++ b/modutils/lsmod.c
@@ -97,7 +97,7 @@ static const int NEW_MOD_VISITED = 8;
static const int NEW_MOD_USED_ONCE = 16;
static const int NEW_MOD_INITIALIZING = 64;
-extern int lsmod_main(int argc, char **argv)
+int lsmod_main(int argc, char **argv)
{
struct module_info info;
char *module_names, *mn, *deps, *dn;
@@ -160,7 +160,7 @@ extern int lsmod_main(int argc, char **argv)
#else /* CONFIG_FEATURE_QUERY_MODULE_INTERFACE */
-extern int lsmod_main(int argc, char **argv)
+int lsmod_main(int argc, char **argv)
{
printf("Module Size Used by");
check_tainted();
diff --git a/modutils/modprobe.c b/modutils/modprobe.c
index d04c7ffff..c16151537 100644
--- a/modutils/modprobe.c
+++ b/modutils/modprobe.c
@@ -823,7 +823,7 @@ static int mod_remove ( char *mod )
}
-extern int modprobe_main(int argc, char** argv)
+int modprobe_main(int argc, char** argv)
{
int rc = EXIT_SUCCESS;
char *unused;
diff --git a/modutils/rmmod.c b/modutils/rmmod.c
index 44c606e47..5302ab222 100644
--- a/modutils/rmmod.c
+++ b/modutils/rmmod.c
@@ -55,7 +55,7 @@ static inline void filename2modname(char *modname, const char *afterslash)
}
#endif
-extern int rmmod_main(int argc, char **argv)
+int rmmod_main(int argc, char **argv)
{
int n, ret = EXIT_SUCCESS;
unsigned int flags = O_NONBLOCK|O_EXCL;
diff --git a/networking/ifupdown.c b/networking/ifupdown.c
index 9e6fc6291..c3cfcd8b3 100644
--- a/networking/ifupdown.c
+++ b/networking/ifupdown.c
@@ -1133,7 +1133,7 @@ static llist_t *find_iface_state(llist_t *state_list, const char *iface)
return(NULL);
}
-extern int ifupdown_main(int argc, char **argv)
+int ifupdown_main(int argc, char **argv)
{
int (*cmds) (struct interface_defn_t *) = NULL;
struct interfaces_file_t *defn;
diff --git a/networking/libiproute/ipaddress.c b/networking/libiproute/ipaddress.c
index d7a0c5177..bcb4880a6 100644
--- a/networking/libiproute/ipaddress.c
+++ b/networking/libiproute/ipaddress.c
@@ -414,7 +414,7 @@ static void ipaddr_reset_filter(int _oneline)
filter.oneline = _oneline;
}
-extern int ipaddr_list_or_flush(int argc, char **argv, int flush)
+int ipaddr_list_or_flush(int argc, char **argv, int flush)
{
static const char *const option[] = { "to", "scope", "up", "label", "dev", 0 };
@@ -805,7 +805,7 @@ static int ipaddr_modify(int cmd, int argc, char **argv)
exit(0);
}
-extern int do_ipaddr(int argc, char **argv)
+int do_ipaddr(int argc, char **argv)
{
static const char *const commands[] = {
"add", "delete", "list", "show", "lst", "flush", 0
diff --git a/networking/ping.c b/networking/ping.c
index 14373c8d6..47b9f8f52 100644
--- a/networking/ping.c
+++ b/networking/ping.c
@@ -138,7 +138,7 @@ static void ping(const char *host)
return;
}
-extern int ping_main(int argc, char **argv)
+int ping_main(int argc, char **argv)
{
argc--;
argv++;
@@ -377,7 +377,7 @@ static void ping(const char *host)
pingstats(0);
}
-extern int ping_main(int argc, char **argv)
+int ping_main(int argc, char **argv)
{
char *thisarg;
diff --git a/networking/ping6.c b/networking/ping6.c
index 1d7271d7b..42cf2785c 100644
--- a/networking/ping6.c
+++ b/networking/ping6.c
@@ -139,7 +139,7 @@ static void ping(const char *host)
return;
}
-extern int ping6_main(int argc, char **argv)
+int ping6_main(int argc, char **argv)
{
argc--;
argv++;
@@ -423,7 +423,7 @@ static void ping(const char *host)
pingstats(0);
}
-extern int ping6_main(int argc, char **argv)
+int ping6_main(int argc, char **argv)
{
char *thisarg;
diff --git a/networking/telnet.c b/networking/telnet.c
index 05c7786ab..ca4896bf0 100644
--- a/networking/telnet.c
+++ b/networking/telnet.c
@@ -613,7 +613,7 @@ static void cookmode(void)
if (G.do_termios) tcsetattr(0, TCSADRAIN, &G.termios_def);
}
-extern int telnet_main(int argc, char** argv)
+int telnet_main(int argc, char** argv)
{
int len;
struct sockaddr_in s_in;
diff --git a/procps/free.c b/procps/free.c
index 4fb047d48..b4163f108 100644
--- a/procps/free.c
+++ b/procps/free.c
@@ -27,7 +27,7 @@
#include <stdlib.h>
#include "busybox.h"
-extern int free_main(int argc, char **argv)
+int free_main(int argc, char **argv)
{
struct sysinfo info;
sysinfo(&info);
diff --git a/procps/kill.c b/procps/kill.c
index ff620eef4..90114a493 100644
--- a/procps/kill.c
+++ b/procps/kill.c
@@ -35,7 +35,7 @@
#define KILL 0
#define KILLALL 1
-extern int kill_main(int argc, char **argv)
+int kill_main(int argc, char **argv)
{
int whichApp, signo = SIGTERM;
const char *name;
diff --git a/procps/pidof.c b/procps/pidof.c
index c142e33c8..5b3e53fdf 100644
--- a/procps/pidof.c
+++ b/procps/pidof.c
@@ -42,7 +42,7 @@
#define omitted (0)
#endif
-extern int pidof_main(int argc, char **argv)
+int pidof_main(int argc, char **argv)
{
unsigned n = 0;
unsigned fail = 1;
diff --git a/procps/ps.c b/procps/ps.c
index 9dd0e036e..b6242d208 100644
--- a/procps/ps.c
+++ b/procps/ps.c
@@ -22,7 +22,7 @@
#include <selinux/selinux.h> /* for is_selinux_enabled() */
#endif
-extern int ps_main(int argc, char **argv)
+int ps_main(int argc, char **argv)
{
procps_status_t * p;
int i, len;
diff --git a/procps/uptime.c b/procps/uptime.c
index 004288993..7784850ae 100644
--- a/procps/uptime.c
+++ b/procps/uptime.c
@@ -43,7 +43,7 @@
#define LOAD_FRAC(x) LOAD_INT(((x) & (FIXED_1-1)) * 100)
-extern int uptime_main(int argc, char **argv)
+int uptime_main(int argc, char **argv)
{
int updays, uphours, upminutes;
struct sysinfo info;
diff --git a/shell/cmdedit.c b/shell/cmdedit.c
index f999b88e9..31f4c7b20 100644
--- a/shell/cmdedit.c
+++ b/shell/cmdedit.c
@@ -1191,7 +1191,7 @@ static int get_next_history(void)
}
#ifdef CONFIG_FEATURE_COMMAND_SAVEHISTORY
-extern void load_history ( const char *fromfile )
+void load_history ( const char *fromfile )
{
FILE *fp;
int hi;
@@ -1225,7 +1225,7 @@ extern void load_history ( const char *fromfile )
cur_history = n_history = hi;
}
-extern void save_history ( const char *tofile )
+void save_history ( const char *tofile )
{
FILE *fp = fopen ( tofile, "w" );
diff --git a/shell/msh.c b/shell/msh.c
index 375b1266e..b3bb06b28 100644
--- a/shell/msh.c
+++ b/shell/msh.c
@@ -819,7 +819,7 @@ static char *current_prompt;
*/
-extern int msh_main(int argc, char **argv)
+int msh_main(int argc, char **argv)
{
REGISTER int f;
REGISTER char *s;
diff --git a/sysklogd/klogd.c b/sysklogd/klogd.c
index 5be833f5b..51b01430e 100644
--- a/sysklogd/klogd.c
+++ b/sysklogd/klogd.c
@@ -103,7 +103,7 @@ static void doKlogd(const int console_log_level)
#define OPT_LEVEL 1
#define OPT_FOREGROUND 2
-extern int klogd_main(int argc, char **argv)
+int klogd_main(int argc, char **argv)
{
unsigned long opt;
char *c_arg;
diff --git a/sysklogd/logger.c b/sysklogd/logger.c
index 4e2e50f36..0c6fb0845 100644
--- a/sysklogd/logger.c
+++ b/sysklogd/logger.c
@@ -100,7 +100,7 @@ static int pencode(char *s)
}
-extern int logger_main(int argc, char **argv)
+int logger_main(int argc, char **argv)
{
int pri = LOG_USER | LOG_NOTICE;
int option = 0;
diff --git a/sysklogd/logread.c b/sysklogd/logread.c
index 8ea8047f7..73ad5a8fe 100644
--- a/sysklogd/logread.c
+++ b/sysklogd/logread.c
@@ -75,7 +75,7 @@ static inline void sem_down(int semid)
error_exit("semop[SMrdn]");
}
-extern int logread_main(int argc, char **argv)
+int logread_main(int argc, char **argv)
{
int i;
int follow=0;
diff --git a/sysklogd/syslogd.c b/sysklogd/syslogd.c
index 447d891bd..bb8ba1b82 100644
--- a/sysklogd/syslogd.c
+++ b/sysklogd/syslogd.c
@@ -602,7 +602,7 @@ static void doSyslogd(void)
} /* for main loop */
}
-extern int syslogd_main(int argc, char **argv)
+int syslogd_main(int argc, char **argv)
{
int opt;
diff --git a/util-linux/fbset.c b/util-linux/fbset.c
index 49435c22e..2e895be8d 100644
--- a/util-linux/fbset.c
+++ b/util-linux/fbset.c
@@ -332,7 +332,7 @@ static inline void showmode(struct fb_var_screeninfo *v)
#ifdef STANDALONE
int main(int argc, char **argv)
#else
-extern int fbset_main(int argc, char **argv)
+int fbset_main(int argc, char **argv)
#endif
{
struct fb_var_screeninfo var, varset;
diff --git a/util-linux/fdflush.c b/util-linux/fdflush.c
index f3afea320..79c8f454f 100644
--- a/util-linux/fdflush.c
+++ b/util-linux/fdflush.c
@@ -31,7 +31,7 @@
/* From <linux/fd.h> */
#define FDFLUSH _IO(2,0x4b)
-extern int fdflush_main(int argc, char **argv)
+int fdflush_main(int argc, char **argv)
{
int fd, result;
diff --git a/util-linux/fsck_minix.c b/util-linux/fsck_minix.c
index 1814537c5..1d3e90aa8 100644
--- a/util-linux/fsck_minix.c
+++ b/util-linux/fsck_minix.c
@@ -1321,7 +1321,7 @@ static void free_name_list(void)
}
#endif
-extern int fsck_minix_main(int argc, char **argv)
+int fsck_minix_main(int argc, char **argv)
{
struct termios tmp;
int count;
diff --git a/util-linux/hwclock.c b/util-linux/hwclock.c
index 00abe10a6..126caf6be 100644
--- a/util-linux/hwclock.c
+++ b/util-linux/hwclock.c
@@ -192,7 +192,7 @@ static int check_utc(void)
#define HWCLOCK_OPT_HCTOSYS 0x08
#define HWCLOCK_OPT_SYSTOHC 0x10
-extern int hwclock_main ( int argc, char **argv )
+int hwclock_main ( int argc, char **argv )
{
unsigned long opt;
int utc;
diff --git a/util-linux/mkfs_minix.c b/util-linux/mkfs_minix.c
index b1d538dcc..904a58ee3 100644
--- a/util-linux/mkfs_minix.c
+++ b/util-linux/mkfs_minix.c
@@ -694,7 +694,7 @@ static void get_list_blocks(char *filename)
printf("one bad block\n");
}
-extern int mkfs_minix_main(int argc, char **argv)
+int mkfs_minix_main(int argc, char **argv)
{
int i=1;
char *tmp;
diff --git a/util-linux/more.c b/util-linux/more.c
index e91038883..beba64282 100644
--- a/util-linux/more.c
+++ b/util-linux/more.c
@@ -57,7 +57,7 @@ static void gotsig(int sig)
#endif /* CONFIG_FEATURE_USE_TERMIOS */
-extern int more_main(int argc, char **argv)
+int more_main(int argc, char **argv)
{
int c, lines, input = 0;
int please_display_more_prompt = 0;
diff --git a/util-linux/swaponoff.c b/util-linux/swaponoff.c
index c624e74e3..ce55a132a 100644
--- a/util-linux/swaponoff.c
+++ b/util-linux/swaponoff.c
@@ -66,7 +66,7 @@ static int do_em_all(void)
#define DO_ALL 0x01
-extern int swap_on_off_main(int argc, char **argv)
+int swap_on_off_main(int argc, char **argv)
{
int ret;
diff --git a/util-linux/umount.c b/util-linux/umount.c
index 8c0558466..71ddbd4ed 100644
--- a/util-linux/umount.c
+++ b/util-linux/umount.c
@@ -30,7 +30,7 @@
#define OPT_IGNORED 32 // -v is ignored
#define OPT_ALL (ENABLE_FEATURE_UMOUNT_ALL ? 64 : 0)
-extern int umount_main(int argc, char **argv)
+int umount_main(int argc, char **argv)
{
int doForce;
char path[2*PATH_MAX];