archival/cpio.c+1 -0
| @@ -174,6 +174,7 @@ struct globals { |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| void BUG_cpio_globals_too_big(void); |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| G.owner_ugid.uid = -1L; \ |
| G.owner_ugid.gid = -1L; \ |
| } while (0) |
archival/lzop.c+1 -1
| @@ -445,7 +445,7 @@ struct globals { |
| chksum_t chksum_out; |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| - | #define INIT_G() do { } while (0) |
| + | #define INIT_G() do { setup_common_bufsiz(); } while (0) |
| //#define G (*ptr_to_globals) |
| //#define INIT_G() do { |
| // SET_PTR_TO_GLOBALS(xzalloc(sizeof(G))); |
archival/rpm.c+1 -1
| @@ -95,7 +95,7 @@ struct globals { |
| int tagcount; |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| - | #define INIT_G() do { } while (0) |
| + | #define INIT_G() do { setup_common_bufsiz(); } while (0) |
| |
| static void extract_cpio(int fd, const char *source_rpm) |
| { |
console-tools/resize.c+3 -0
| @@ -19,6 +19,7 @@ |
| #define ESC "\033" |
| |
| #define old_termios_p ((struct termios*)bb_common_bufsiz1) |
| + | #define INIT_G() do { setup_common_bufsiz(); } while (0) |
| |
| static void |
| onintr(int sig UNUSED_PARAM) |
| @@ -34,6 +35,8 @@ int resize_main(int argc UNUSED_PARAM, char **argv UNUSED_PARAM) |
| struct winsize w = { 0, 0, 0, 0 }; |
| int ret; |
| |
| + | INIT_G(); |
| + | |
| /* We use _stderr_ in order to make resize usable |
| * in shell backticks (those redirect stdout away from tty). |
| * NB: other versions of resize open "/dev/tty" |
coreutils/dd.c+1 -0
| @@ -111,6 +111,7 @@ struct globals { |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| /* we have to zero it out because of NOEXEC */ \ |
| memset(&G, 0, sizeof(G)); \ |
| } while (0) |
coreutils/du.c+1 -1
| @@ -87,7 +87,7 @@ struct globals { |
| dev_t dir_dev; |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| - | #define INIT_G() do { } while (0) |
| + | #define INIT_G() do { setup_common_bufsiz(); } while (0) |
| |
| |
| static void print(unsigned long long size, const char *filename) |
coreutils/expr.c+1 -1
| @@ -101,7 +101,7 @@ struct globals { |
| char **args; |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| - | #define INIT_G() do { } while (0) |
| + | #define INIT_G() do { setup_common_bufsiz(); } while (0) |
| |
| /* forward declarations */ |
| static VALUE *eval(void); |
coreutils/ls.c+1 -0
| @@ -368,6 +368,7 @@ struct globals { |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| /* we have to zero it out because of NOEXEC */ \ |
| memset(&G, 0, sizeof(G)); \ |
| IF_FEATURE_AUTOWIDTH(G_terminal_width = TERMINAL_WIDTH;) \ |
coreutils/od_bloaty.c+1 -0
| @@ -217,6 +217,7 @@ enum { G_pseudo_offset = 0 }; |
| #endif |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| BUILD_BUG_ON(sizeof(G) > COMMON_BUFSIZE); \ |
| G.bytes_per_block = 32; \ |
| } while (0) |
coreutils/tail.c+1 -1
| @@ -56,7 +56,7 @@ struct globals { |
| bool exitcode; |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| - | #define INIT_G() do { } while (0) |
| + | #define INIT_G() do { setup_common_bufsiz(); } while (0) |
| |
| static void tail_xprint_header(const char *fmt, const char *filename) |
| { |
debianutils/run_parts.c+1 -1
| @@ -100,7 +100,7 @@ struct globals { |
| #define names (G.names) |
| #define cur (G.cur ) |
| #define cmd (G.cmd ) |
| - | #define INIT_G() do { } while (0) |
| + | #define INIT_G() do { setup_common_bufsiz(); } while (0) |
| |
| enum { NUM_CMD = (COMMON_BUFSIZE - sizeof(G)) / sizeof(cmd[0]) - 1 }; |
| |
debianutils/start_stop_daemon.c+1 -0
| @@ -200,6 +200,7 @@ struct globals { |
| #define user_id (G.user_id ) |
| #define signal_nr (G.signal_nr ) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| user_id = -1; \ |
| signal_nr = 15; \ |
| } while (0) |
e2fsprogs/fsck.c+1 -0
| @@ -172,6 +172,7 @@ struct globals { |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| BUILD_BUG_ON(sizeof(G) > COMMON_BUFSIZE); \ |
| } while (0) |
| |
editors/sed.c+1 -0
| @@ -164,6 +164,7 @@ struct globals { |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| BUILD_BUG_ON(sizeof(G) > COMMON_BUFSIZE); \ |
| G.sed_cmd_tail = &G.sed_cmd_head; \ |
| } while (0) |
findutils/find.c+1 -0
| @@ -424,6 +424,7 @@ struct globals { |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| BUILD_BUG_ON(sizeof(G) > COMMON_BUFSIZE); \ |
| /* we have to zero it out because of NOEXEC */ \ |
| memset(&G, 0, sizeof(G)); \ |
findutils/grep.c+1 -0
| @@ -204,6 +204,7 @@ struct globals { |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| BUILD_BUG_ON(sizeof(G) > COMMON_BUFSIZE); \ |
| } while (0) |
| #define max_matches (G.max_matches ) |
findutils/xargs.c+1 -0
| @@ -103,6 +103,7 @@ struct globals { |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| G.eof_str = NULL; /* need to clear by hand because we are NOEXEC applet */ \ |
| IF_FEATURE_XARGS_SUPPORT_REPL_STR(G.repl_str = "{}";) \ |
| IF_FEATURE_XARGS_SUPPORT_REPL_STR(G.eol_ch = '\n';) \ |
init/bootchartd.c+1 -1
| @@ -117,7 +117,7 @@ struct globals { |
| char jiffy_line[COMMON_BUFSIZE]; |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| - | #define INIT_G() do { } while (0) |
| + | #define INIT_G() do { setup_common_bufsiz(); } while (0) |
| |
| static void dump_file(FILE *fp, const char *filename) |
| { |
loginutils/login.c+1 -1
| @@ -140,7 +140,7 @@ struct globals { |
| struct termios tty_attrs; |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| - | #define INIT_G() do { } while (0) |
| + | #define INIT_G() do { setup_common_bufsiz(); } while (0) |
| |
| |
| #if ENABLE_FEATURE_NOLOGIN |
miscutils/crond.c+1 -0
| @@ -143,6 +143,7 @@ struct globals { |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| G.log_level = 8; \ |
| G.crontab_dir_name = CRONTABS; \ |
| } while (0) |
miscutils/dc.c+1 -0
| @@ -53,6 +53,7 @@ enum { STACK_SIZE = (COMMON_BUFSIZE - offsetof(struct globals, stack)) / sizeof( |
| #define base (G.base ) |
| #define stack (G.stack ) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| base = 10; \ |
| } while (0) |
| |
miscutils/hdparm.c+1 -0
| @@ -432,6 +432,7 @@ struct globals { |
| #define hwif_ctrl (G.hwif_ctrl ) |
| #define hwif_irq (G.hwif_irq ) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| BUILD_BUG_ON(sizeof(G) > COMMON_BUFSIZE); \ |
| } while (0) |
| |
networking/arp.c+1 -0
| @@ -76,6 +76,7 @@ struct globals { |
| #define device (G.device ) |
| #define hw_set (G.hw_set ) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| device = ""; \ |
| } while (0) |
| |
networking/arping.c+1 -0
| @@ -77,6 +77,7 @@ struct globals { |
| #define brd_recv (G.brd_recv ) |
| #define req_recv (G.req_recv ) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| count = -1; \ |
| } while (0) |
| |
networking/ftpd.c+1 -0
| @@ -126,6 +126,7 @@ struct globals { |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| /* Moved to main */ \ |
| /*strcpy(G.msg_ok + 4, MSG_OK );*/ \ |
| /*strcpy(G.msg_err + 4, MSG_ERR);*/ \ |
networking/ftpgetput.c+1 -0
| @@ -71,6 +71,7 @@ enum { BUFSZ = COMMON_BUFSIZE - offsetof(struct globals, buf) }; |
| #define do_continue (G.do_continue ) |
| #define buf (G.buf ) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| BUILD_BUG_ON(sizeof(G) > COMMON_BUFSIZE); \ |
| } while (0) |
| |
networking/ifupdown.c+1 -1
| @@ -131,7 +131,7 @@ struct globals { |
| char *shell; |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| - | #define INIT_G() do { } while (0) |
| + | #define INIT_G() do { setup_common_bufsiz(); } while (0) |
| |
| |
| static const char keywords_up_down[] ALIGN1 = |
networking/inetd.c+1 -0
| @@ -350,6 +350,7 @@ enum { LINE_SIZE = COMMON_BUFSIZE - offsetof(struct globals, line) }; |
| #define allsock (G.allsock ) |
| #define line (G.line ) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| BUILD_BUG_ON(sizeof(G) > COMMON_BUFSIZE); \ |
| rlim_ofile_cur = OPEN_MAX; \ |
| global_queuelen = 128; \ |
networking/ping.c+2 -1
| @@ -188,7 +188,7 @@ struct globals { |
| char packet[DEFDATALEN + MAXIPLEN + MAXICMPLEN]; |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| - | #define INIT_G() do { } while (0) |
| + | #define INIT_G() do { setup_common_bufsiz(); } while (0) |
| |
| static void noresp(int ign UNUSED_PARAM) |
| { |
| @@ -398,6 +398,7 @@ struct globals { |
| #define pingaddr (G.pingaddr ) |
| #define rcvd_tbl (G.rcvd_tbl ) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| BUILD_BUG_ON(sizeof(G) > COMMON_BUFSIZE); \ |
| datalen = DEFDATALEN; \ |
| timeout = MAXWAIT; \ |
networking/slattach.c+1 -1
| @@ -39,7 +39,7 @@ struct globals { |
| #define handle (G.handle ) |
| #define saved_disc (G.saved_disc ) |
| #define saved_state (G.saved_state ) |
| - | #define INIT_G() do { } while (0) |
| + | #define INIT_G() do { setup_common_bufsiz(); } while (0) |
| |
| |
| /* |
networking/tc.c+1 -0
| @@ -71,6 +71,7 @@ struct globals { |
| #define filter_prio (G.filter_prio) |
| #define filter_proto (G.filter_proto) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| BUILD_BUG_ON(sizeof(G) > COMMON_BUFSIZE); \ |
| } while (0) |
| |
networking/tcpudp.c+1 -0
| @@ -101,6 +101,7 @@ struct globals { |
| #define env_cur (G.env_cur ) |
| #define env_var (G.env_var ) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| cmax = 30; \ |
| env_cur = &env_var[0]; \ |
| } while (0) |
networking/telnet.c+1 -0
| @@ -111,6 +111,7 @@ struct globals { |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| BUILD_BUG_ON(sizeof(G) > COMMON_BUFSIZE); \ |
| } while (0) |
| |
networking/telnetd.c+1 -0
| @@ -85,6 +85,7 @@ struct globals { |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| G.loginpath = "/bin/login"; \ |
| G.issuefile = "/etc/issue.net"; \ |
| } while (0) |
networking/tftp.c+1 -0
| @@ -131,6 +131,7 @@ struct globals { |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| BUILD_BUG_ON(sizeof(G) > COMMON_BUFSIZE); \ |
| } while (0) |
| |
networking/udhcp/dhcprelay.c+3 -0
| @@ -34,6 +34,7 @@ struct xid_item { |
| } FIX_ALIASING; |
| |
| #define dhcprelay_xid_list (*(struct xid_item*)bb_common_bufsiz1) |
| + | #define INIT_G() do { setup_common_bufsiz(); } while (0) |
| |
| static struct xid_item *xid_add(uint32_t xid, struct sockaddr_in *ip, int client) |
| { |
| @@ -257,6 +258,8 @@ int dhcprelay_main(int argc, char **argv) |
| int num_sockets, max_socket; |
| uint32_t our_nip; |
| |
| + | INIT_G(); |
| + | |
| server_addr.sin_family = AF_INET; |
| server_addr.sin_addr.s_addr = htonl(INADDR_BROADCAST); |
| server_addr.sin_port = htons(SERVER_PORT); |
networking/zcip.c+1 -1
| @@ -92,7 +92,7 @@ struct globals { |
| uint32_t localnet_ip; |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| - | #define INIT_G() do { } while (0) |
| + | #define INIT_G() do { setup_common_bufsiz(); } while (0) |
| |
| |
| /** |
procps/free.c+1 -1
| @@ -37,7 +37,7 @@ struct globals { |
| #endif |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| - | #define INIT_G() do { } while (0) |
| + | #define INIT_G() do { setup_common_bufsiz(); } while (0) |
| |
| |
| static unsigned long long scale(unsigned long d) |
procps/fuser.c+1 -0
| @@ -46,6 +46,7 @@ struct globals { |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| G.mypid = getpid(); \ |
| G.killsig = SIGKILL; \ |
| } while (0) |
procps/ps.c+1 -1
| @@ -153,7 +153,7 @@ struct globals { |
| #define buffer (G.buffer ) |
| #define terminal_width (G.terminal_width ) |
| #define kernel_HZ (G.kernel_HZ ) |
| - | #define INIT_G() do { } while (0) |
| + | #define INIT_G() do { setup_common_bufsiz(); } while (0) |
| |
| #if ENABLE_FEATURE_PS_TIME |
| /* for ELF executables, notes are pushed before environment and args */ |
procps/top.c+1 -0
| @@ -202,6 +202,7 @@ enum { LINE_BUF_SIZE = COMMON_BUFSIZE - offsetof(struct globals, line_buf) }; |
| #define total_pcpu (G.total_pcpu ) |
| #define line_buf (G.line_buf ) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| BUILD_BUG_ON(sizeof(G) > COMMON_BUFSIZE); \ |
| BUILD_BUG_ON(LINE_BUF_SIZE <= 80); \ |
| } while (0) |
runit/runsv.c+1 -0
| @@ -115,6 +115,7 @@ struct globals { |
| #define dir (G.dir ) |
| #define svd (G.svd ) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| pidchanged = 1; \ |
| } while (0) |
| |
runit/runsvdir.c+1 -1
| @@ -93,7 +93,7 @@ struct globals { |
| #define logpipe (G.logpipe ) |
| #define pfd (G.pfd ) |
| #define stamplog (G.stamplog ) |
| - | #define INIT_G() do { } while (0) |
| + | #define INIT_G() do { setup_common_bufsiz(); } while (0) |
| |
| static void fatal2_cannot(const char *m1, const char *m2) |
| { |
runit/sv.c+1 -1
| @@ -207,7 +207,7 @@ struct globals { |
| #define tstart (G.tstart ) |
| #define tnow (G.tnow ) |
| #define svstatus (G.svstatus ) |
| - | #define INIT_G() do { } while (0) |
| + | #define INIT_G() do { setup_common_bufsiz(); } while (0) |
| |
| |
| #define str_equal(s,t) (!strcmp((s), (t))) |
scripts/generate_BUFSIZ.sh+2 -0
| @@ -111,4 +111,6 @@ fi |
| |
| if test $OLD != $REM; then |
| echo "Space in _end[] is $REM bytes. Rerun make to use larger COMMON_BUFSIZE." |
| + | else |
| + | echo "COMMON_BUFSIZE = $REM bytes" |
| fi |
selinux/setfiles.c+1 -0
| @@ -80,6 +80,7 @@ struct globals { |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| void BUG_setfiles_globals_too_big(void); |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| if (sizeof(G) > COMMON_BUFSIZE) \ |
| BUG_setfiles_globals_too_big(); \ |
| /* memset(&G, 0, sizeof(G)); - already is */ \ |
sysklogd/logread.c+1 -0
| @@ -73,6 +73,7 @@ struct globals { |
| #define SMrdn (G.SMrdn) |
| #define shbuf (G.shbuf) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| memcpy(SMrup, init_sem, sizeof(init_sem)); \ |
| } while (0) |
| |
util-linux/mdev.c+1 -0
| @@ -288,6 +288,7 @@ struct globals { |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| #define INIT_G() do { \ |
| + | setup_common_bufsiz(); \ |
| IF_NOT_FEATURE_MDEV_CONF(G.cur_rule.maj = -1;) \ |
| IF_NOT_FEATURE_MDEV_CONF(G.cur_rule.mode = 0660;) \ |
| } while (0) |
util-linux/mkswap.c+3 -0
| @@ -76,6 +76,7 @@ struct swap_header_v1 { |
| |
| #define NWORDS 129 |
| #define hdr ((struct swap_header_v1*)bb_common_bufsiz1) |
| + | #define INIT_G() do { setup_common_bufsiz(); } while (0) |
| |
| struct BUG_sizes { |
| char swap_header_v1_wrong[sizeof(*hdr) != (NWORDS * 4) ? -1 : 1]; |
| @@ -93,6 +94,8 @@ int mkswap_main(int argc UNUSED_PARAM, char **argv) |
| off_t len; |
| const char *label = ""; |
| |
| + | INIT_G(); |
| + | |
| opt_complementary = "-1"; /* at least one param */ |
| /* TODO: -p PAGESZ, -U UUID */ |
| getopt32(argv, "L:", &label); |
util-linux/more.c+1 -1
| @@ -33,10 +33,10 @@ struct globals { |
| struct termios new_settings; |
| } FIX_ALIASING; |
| #define G (*(struct globals*)bb_common_bufsiz1) |
| - | #define INIT_G() ((void)0) |
| #define initial_settings (G.initial_settings) |
| #define new_settings (G.new_settings ) |
| #define cin_fileno (G.cin_fileno ) |
| + | #define INIT_G() do { setup_common_bufsiz(); } while (0) |
| |
| #define setTermSettings(fd, argp) \ |
| do { \ |
util-linux/mount.c+1 -1
| @@ -457,7 +457,7 @@ enum { GETMNTENT_BUFSIZE = COMMON_BUFSIZE - offsetof(struct globals, getmntent_b |
| #endif |
| #define fslist (G.fslist ) |
| #define getmntent_buf (G.getmntent_buf ) |
| - | #define INIT_G() do { } while (0) |
| + | #define INIT_G() do { setup_common_bufsiz(); } while (0) |
| |
| #if ENABLE_FEATURE_MTAB_SUPPORT |
| /* |
util-linux/swaponoff.c+1 -1
| @@ -72,7 +72,7 @@ struct globals { |
| #define save_g_flags() ((void)0) |
| #define restore_g_flags() ((void)0) |
| #endif |
| - | #define INIT_G() do { } while (0) |
| + | #define INIT_G() do { setup_common_bufsiz(); } while (0) |
| |
| #define do_swapoff (applet_name[5] == 'f') |
| |
util-linux/uevent.c+3 -0
| @@ -31,6 +31,7 @@ |
| #define BUFFER_SIZE 16*1024 |
| |
| #define env ((char **)bb_common_bufsiz1) |
| + | #define INIT_G() do { setup_common_bufsiz(); } while (0) |
| enum { |
| MAX_ENV = COMMON_BUFSIZE / sizeof(env[0]) - 1, |
| }; |
| @@ -46,6 +47,8 @@ int uevent_main(int argc UNUSED_PARAM, char **argv) |
| struct sockaddr_nl sa; |
| int fd; |
| |
| + | INIT_G(); |
| + | |
| argv++; |
| |
| // Subscribe for UEVENT kernel messages |