[PATCH] syslogd: convert dummy functions to statics and get rid of IF_FEATURE_* checks
Tito
farmatito at tiscali.it
Sun Jan 6 13:17:13 UTC 2013
On Sunday 06 January 2013 13:11:04 Peter Korsgaard wrote:
> As suggested by Mike. No bloat-o-meter difference, but a bit nicer to look at.
> We cannot convert the call to log_to_shmem() as it checks for G.shbuf outside
> the function, and G.shbuf is only available when IPC support is enabled.
>
> Signed-off-by: Peter Korsgaard <jacmet at sunsite.dk>
> ---
> sysklogd/syslogd.c | 22 ++++++++++------------
> 1 file changed, 10 insertions(+), 12 deletions(-)
>
> diff --git a/sysklogd/syslogd.c b/sysklogd/syslogd.c
> index ad54e22..33a98b5 100644
> --- a/sysklogd/syslogd.c
> +++ b/sysklogd/syslogd.c
> @@ -529,8 +529,8 @@ static void log_to_shmem(const char *msg)
> printf("tail:%d\n", G.shbuf->tail);
> }
> #else
> -void ipcsyslog_cleanup(void);
> -void ipcsyslog_init(void);
> +static void ipcsyslog_cleanup(void) {}
> +static void ipcsyslog_init(void) {}
> void log_to_shmem(const char *msg);
> #endif /* FEATURE_IPC_SYSLOG */
>
> @@ -567,9 +567,9 @@ static void log_to_kmsg(int pri, const char *msg)
> write(G.kmsgfd, G.printbuf, sprintf(G.printbuf, "<%d>%s\n", pri, msg));
> }
> #else
> -void kmsg_init(void);
> -void kmsg_cleanup(void);
> -void log_to_kmsg(int pri, const char *msg);
> +static void kmsg_init(void) {}
> +static void kmsg_cleanup(void) {}
> +static void log_to_kmsg(int pri UNUSED_PARAM, const char *msg UNUSED_PARAM) {}
> #endif /* FEATURE_KMSG_SYSLOG */
>
> /* Print a message to the log file. */
> @@ -706,7 +706,7 @@ static void timestamp_and_log(int pri, char *msg, int len)
> }
> timestamp[15] = '\0';
>
> - if (ENABLE_FEATURE_KMSG_SYSLOG && (option_mask32 & OPT_kmsg)) {
> + if (option_mask32 & OPT_kmsg) {
> log_to_kmsg(pri, msg);
> return;
> }
> @@ -881,11 +881,10 @@ static void do_syslogd(void)
> #endif
> sock_fd = create_socket();
>
> - if (ENABLE_FEATURE_IPC_SYSLOG && (option_mask32 & OPT_circularlog)) {
> + if (option_mask32 & OPT_circularlog)
> ipcsyslog_init();
> - }
>
> - if (ENABLE_FEATURE_KMSG_SYSLOG && (option_mask32 & OPT_kmsg))
> + if (option_mask32 & OPT_kmsg)
> kmsg_init();
>
> timestamp_and_log_internal("syslogd started: BusyBox v" BB_VER);
> @@ -974,9 +973,8 @@ static void do_syslogd(void)
> timestamp_and_log_internal("syslogd exiting");
> puts("syslogd exiting");
> remove_pidfile(CONFIG_PID_FILE_PATH "/syslogd.pid");
> - if (ENABLE_FEATURE_IPC_SYSLOG)
> - ipcsyslog_cleanup();
> - if (ENABLE_FEATURE_KMSG_SYSLOG && (option_mask32 & OPT_kmsg))
> + ipcsyslog_cleanup();
> + if (option_mask32 & OPT_kmsg)
> kmsg_cleanup();
> kill_myself_with_sig(bb_got_signal);
> #undef recvbuf
>
Hi,
the previous version makes the code more readable,
now you have to know about the ENABLE_FEATURE__XXX
or search the code to find the #ifdefs
to guess why a function is not executed.
Just my 2 cents.
Ciao,
Tito
More information about the busybox
mailing list