Make cin be static
[oweals/busybox.git] / hostname.c
index 16a28ca43dacaa135aa74d42e9f5ce5da81a3430..b1f0613694a56d0b2f7ed67587efa652bd3fc067 100644 (file)
@@ -1,6 +1,6 @@
 /* vi: set sw=4 ts=4: */
 /*
- * $Id: hostname.c,v 1.14 2000/09/27 02:43:35 kraai Exp $
+ * $Id: hostname.c,v 1.20 2001/01/24 18:44:54 andersen Exp $
  * Mini hostname implementation for busybox
  *
  * Copyright (C) 1999 by Randolph Chung <tausq@debian.org>
@@ -40,10 +40,9 @@ void do_sethostname(char *s, int isfile)
        if (!isfile) {
                if (sethostname(s, strlen(s)) < 0) {
                        if (errno == EPERM)
-                               errorMsg("you must be root to change the hostname\n");
+                               error_msg_and_die("you must be root to change the hostname\n");
                        else
-                               perror("sethostname");
-                       exit(1);
+                               perror_msg_and_die("sethostname");
                }
        } else {
                f = xfopen(s, "r");
@@ -51,10 +50,8 @@ void do_sethostname(char *s, int isfile)
                fclose(f);
                if (buf[strlen(buf) - 1] == '\n')
                        buf[strlen(buf) - 1] = 0;
-               if (sethostname(buf, strlen(buf)) < 0) {
-                       perror("sethostname");
-                       exit(1);
-               }
+               if (sethostname(buf, strlen(buf)) < 0)
+                       perror_msg_and_die("sethostname");
        }
 }
 
@@ -89,6 +86,12 @@ int hostname_main(int argc, char **argv)
                                }
                                filename = *(++argv);
                                break;
+                       case '-':
+                               if (strcmp(++(*argv), "file") || --argc ==0 ) {
+                                       usage(hostname_usage);
+                               }
+                               filename = *(++argv);
+                               break;
                        default:
                                usage(hostname_usage);
                        }