From 6f1713f216fef686a68db5ee02232bc67e525c7d Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Mon, 25 Feb 2008 23:23:58 +0000 Subject: *: intrduce and use safe_gethostname. By Tito safe_gethostname - 48 +48 glob3 35 37 +2 timestamp_and_log 314 315 +1 udhcp_send_kernel_packet 234 231 -3 scan_tree 275 271 -4 passwd_main 1074 1070 -4 print_login_prompt 68 58 -10 obscure 392 377 -15 syslogd_main 882 866 -16 print_login_issue 516 478 -38 hostname_main 278 223 -55 parse_and_put_prompt 825 756 -69 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 2/9 up/down: 51/-214) Total: -163 bytes text data bss dec hex filename 798791 728 7484 807003 c505b busybox_old 798631 728 7484 806843 c4fbb busybox_unstripped --- miscutils/devfsd.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) (limited to 'miscutils') diff --git a/miscutils/devfsd.c b/miscutils/devfsd.c index 52a65bc98..286f00fd8 100644 --- a/miscutils/devfsd.c +++ b/miscutils/devfsd.c @@ -1133,8 +1133,8 @@ static void signal_handler(int sig) static const char *get_variable(const char *variable, void *info) { static char sbuf[sizeof(int)*3 + 2]; /* sign and NUL */ + static char *hostname; - char hostname[STRING_LENGTH]; struct get_variable_info *gv_info = info; const char *field_names[] = { "hostname", "mntpt", "devpath", "devname", @@ -1143,12 +1143,8 @@ static const char *get_variable(const char *variable, void *info) }; int i; - if (gethostname(hostname, STRING_LENGTH - 1) != 0) - /* Here on error we should do exit(RV_SYS_ERROR), instead we do exit(EXIT_FAILURE) */ - error_logger_and_die(LOG_ERR, "gethostname"); - - hostname[STRING_LENGTH - 1] = '\0'; - + if (!hostname) + hostname = safe_gethostname(); /* index_in_str_array returns i>=0 */ i = index_in_str_array(field_names, variable); -- cgit v1.2.3