BSD 4_3_Reno release
[unix-history] / usr / src / games / sail / lo_main.c
index c0a6cbe..34cdf2e 100644 (file)
@@ -1,17 +1,35 @@
+/*
+ * Copyright (c) 1983 Regents of the University of California.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms are permitted
+ * provided that: (1) source distributions retain this entire copyright
+ * notice and comment, and (2) distributions including binaries display
+ * the following acknowledgement:  ``This product includes software
+ * developed by the University of California, Berkeley and its contributors''
+ * in the documentation or other materials provided with the distribution
+ * and in all advertising materials mentioning features or use of this
+ * software. Neither the name of the University nor the names of its
+ * contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+ */
+
 #ifndef lint
 #ifndef lint
-static char *sccsid = "@(#)lo_main.c   1.3 83/07/20";
-#endif
+static char sccsid[] = "@(#)lo_main.c  5.6 (Berkeley) 6/1/90";
+#endif /* not lint */
 
 /*
  * Print out the top ten SAILors
  *
 
 /*
  * Print out the top ten SAILors
  *
- * sail.log [-s/l]
- *
- *  -s force a short listing (without real usernames)
- *  -l force a long listing (print out real usernames)
+ * -l force a long listing (print out real usernames)
  */
  */
+#include <sys/types.h>
 #include <pwd.h>
 #include "externs.h"
 #include <pwd.h>
 #include "externs.h"
+#include "pathnames.h"
 
 char *title[] = {
        "Admiral", "Commodore", "Captain", "Captain",
 
 char *title[] = {
        "Admiral", "Commodore", "Captain", "Captain",
@@ -19,29 +37,17 @@ char *title[] = {
        "Commander", "Lieutenant"
 };
 
        "Commander", "Lieutenant"
 };
 
-main(argc, argv)
-int argc;
-char **argv;
+lo_main()
 {
        FILE *fp;
        char sbuf[32];
        int n = 0, people;
 {
        FILE *fp;
        char sbuf[32];
        int n = 0, people;
-       int usrnam = 0;
        struct passwd *getpwuid(), *pass;
        struct logs log;
        struct ship *ship;
 
        struct passwd *getpwuid(), *pass;
        struct logs log;
        struct ship *ship;
 
-       if (argc > 1 && argc == 2)
-               if (strcmp(argv[1], "-s") == 0)
-                       usrnam = 0;
-               else if (strcmp(argv[1], "-l") == 0)
-                       usrnam = 1;
-               else {
-                       fprintf(stderr, "usage: %s: [-s/l]\n", argv[0]);
-                       exit(1);
-               }
-       if ((fp = fopen(LOGFILE, "r")) == 0) {
-               perror(LOGFILE);
+       if ((fp = fopen(_PATH_LOGFILE, "r")) == 0) {
+               perror(_PATH_LOGFILE);
                exit(1);
        }
        switch (fread((char *)&people, sizeof people, 1, fp)) {
                exit(1);
        }
        switch (fread((char *)&people, sizeof people, 1, fp)) {
@@ -51,12 +57,12 @@ char **argv;
        case 1:
                break;
        default:
        case 1:
                break;
        default:
-               perror(LOGFILE);
+               perror(_PATH_LOGFILE);
                exit(1);
        }
                exit(1);
        }
-       while (fread((char *)&log, sizeof log, 1, fp) == 1
-              && log.l_name[0] != '\0') {
-               if (usrnam && (pass = getpwuid(log.l_uid)) != NULL)
+       while (fread((char *)&log, sizeof log, 1, fp) == 1 &&
+              log.l_name[0] != '\0') {
+               if (longfmt && (pass = getpwuid(log.l_uid)) != NULL)
                        (void) sprintf(sbuf, "%10.10s (%s)",
                                log.l_name, pass->pw_name);
                else
                        (void) sprintf(sbuf, "%10.10s (%s)",
                                log.l_name, pass->pw_name);
                else
@@ -67,4 +73,5 @@ char **argv;
                        (float) log.l_netpoints / ship->specs->pts);
        }
        printf("\n%d people have played.\n", people);
                        (float) log.l_netpoints / ship->specs->pts);
        }
        printf("\n%d people have played.\n", people);
+       return 0;
 }
 }