summaryrefslogtreecommitdiff
path: root/networking/hostname.c
diff options
context:
space:
mode:
authorMatt Kraai2000-09-27 02:43:35 +0000
committerMatt Kraai2000-09-27 02:43:35 +0000
commitbbaef66b3f99213f06adf04df6b3e5e61278d75b (patch)
tree3838db4158e8e05a753fffd6e87cbbc7946425ad /networking/hostname.c
parente0bcce09baff576b1b16b3ffe780b6d91c7710c2 (diff)
downloadbusybox-bbaef66b3f99213f06adf04df6b3e5e61278d75b.zip
busybox-bbaef66b3f99213f06adf04df6b3e5e61278d75b.tar.gz
Consolidate handling of some fopen failures.
Diffstat (limited to 'networking/hostname.c')
-rw-r--r--networking/hostname.c20
1 files changed, 8 insertions, 12 deletions
diff --git a/networking/hostname.c b/networking/hostname.c
index 4320a96..16a28ca 100644
--- a/networking/hostname.c
+++ b/networking/hostname.c
@@ -1,6 +1,6 @@
/* vi: set sw=4 ts=4: */
/*
- * $Id: hostname.c,v 1.13 2000/09/25 21:45:57 andersen Exp $
+ * $Id: hostname.c,v 1.14 2000/09/27 02:43:35 kraai Exp $
* Mini hostname implementation for busybox
*
* Copyright (C) 1999 by Randolph Chung <tausq@debian.org>
@@ -46,18 +46,14 @@ void do_sethostname(char *s, int isfile)
exit(1);
}
} else {
- if ((f = fopen(s, "r")) == NULL) {
- perror(s);
+ f = xfopen(s, "r");
+ fgets(buf, 255, f);
+ fclose(f);
+ if (buf[strlen(buf) - 1] == '\n')
+ buf[strlen(buf) - 1] = 0;
+ if (sethostname(buf, strlen(buf)) < 0) {
+ perror("sethostname");
exit(1);
- } else {
- fgets(buf, 255, f);
- fclose(f);
- if (buf[strlen(buf) - 1] == '\n')
- buf[strlen(buf) - 1] = 0;
- if (sethostname(buf, strlen(buf)) < 0) {
- perror("sethostname");
- exit(1);
- }
}
}
}