sa(8): Raise WARNS to 6 and fix warnings.
authorSascha Wildner <saw@online.de>
Sun, 23 May 2010 01:01:36 +0000 (03:01 +0200)
committerSascha Wildner <saw@online.de>
Sun, 23 May 2010 01:03:16 +0000 (03:03 +0200)
usr.sbin/sa/Makefile
usr.sbin/sa/extern.h
usr.sbin/sa/main.c
usr.sbin/sa/pdb.c
usr.sbin/sa/usrdb.c

index 83953bc..864c285 100644 (file)
@@ -1,9 +1,7 @@
 # $FreeBSD: src/usr.sbin/sa/Makefile,v 1.5.2.1 2001/04/25 12:10:49 ru Exp $
-# $DragonFly: src/usr.sbin/sa/Makefile,v 1.2 2003/06/17 04:30:03 dillon Exp $
 
 PROG=  sa
 MAN=   sa.8
 SRCS=  main.c pdb.c usrdb.c
-WARNS?=        1
 
 .include <bsd.prog.mk>
index a51a341..6da9d92 100644 (file)
@@ -28,7 +28,6 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  * $FreeBSD: src/usr.sbin/sa/extern.h,v 1.4 1999/08/28 01:19:52 peter Exp $
- * $DragonFly: src/usr.sbin/sa/extern.h,v 1.3 2003/11/03 19:31:43 eirikn Exp $
  */
 
 #include <sys/types.h>
@@ -84,7 +83,7 @@ void  usracct_print(void);
 
 extern int     aflag, bflag, cflag, dflag, Dflag, fflag, iflag, jflag, kflag;
 extern int     Kflag, lflag, mflag, qflag, rflag, sflag, tflag, uflag, vflag;
-extern int     cutoff;
+extern u_quad_t        cutoff;
 extern cmpf_t  sa_cmp;
 
 /* some #defines to help with db's stupidity */
index 5c5a0ff..22cda2f 100644 (file)
@@ -29,7 +29,6 @@
  *
  * @(#) Copyright (c) 1994 Christopher G. Demetriou All rights reserved.
  * $FreeBSD: src/usr.sbin/sa/main.c,v 1.8.2.2 2001/07/19 05:20:49 kris Exp $
- * $DragonFly: src/usr.sbin/sa/main.c,v 1.5 2005/12/05 02:40:28 swildner Exp $
  */
 
 /*
@@ -63,9 +62,9 @@ static void   usage   (void);
 
 int aflag, bflag, cflag, dflag, Dflag, fflag, iflag, jflag, kflag;
 int Kflag, lflag, mflag, qflag, rflag, sflag, tflag, uflag, vflag;
-int cutoff = 1;
+u_quad_t cutoff = 1;
 
-static char    *dfltargv[] = { _PATH_ACCT };
+static char    *dfltargv[] = { NULL };
 static int     dfltargc = (sizeof dfltargv/sizeof(char *));
 
 /* default to comparing by sum of user + system time */
@@ -75,8 +74,11 @@ int
 main(int argc, char **argv)
 {
        char ch;
+       char pathacct[] = _PATH_ACCT;
        int error = 0;
 
+       dfltargv[0] = pathacct;
+
        while ((ch = getopt(argc, argv, "abcdDfijkKlmnqrstuv:")) != -1)
                switch (ch) {
                        case 'a':
@@ -230,7 +232,7 @@ main(int argc, char **argv)
                         * but we want every accounting record intact.
                         */
                        if (ftruncate(fd, 0) == -1) {
-                               warn("couldn't truncate %s", argv);
+                               warn("couldn't truncate %s", argv[0]);
                                error = 1;
                        }
 
@@ -257,7 +259,7 @@ main(int argc, char **argv)
                 * close the opened accounting file
                 */
                if (close(fd) == -1) {
-                       warn("close %s", argv);
+                       warn("close %s", argv[0]);
                        error = 1;
                }
        }
@@ -315,14 +317,14 @@ acct_load(char *pn, int wr)
                rv = read(fd, &ac, sizeof(struct acct));
                if (rv == -1)
                        warn("error reading %s", pn);
-               else if (rv > 0 && rv < sizeof(struct acct))
+               else if (rv > 0 && rv < (int)sizeof(struct acct))
                        warnx("short read of accounting data in %s", pn);
                if (rv != sizeof(struct acct))
                        break;
 
                /* decode it */
                ci.ci_calls = 1;
-               for (i = 0; i < sizeof ac.ac_comm && ac.ac_comm[i] != '\0';
+               for (i = 0; i < (int)sizeof ac.ac_comm && ac.ac_comm[i] != '\0';
                    i++) {
                        char c = ac.ac_comm[i];
 
@@ -349,10 +351,11 @@ acct_load(char *pn, int wr)
                        if (sflag || (mflag && !qflag))
                                usracct_add(&ci);
                } else if (!qflag)
-                       printf("%6lu %12.2f cpu %12quk mem %12qu io %s\n",
+                       printf("%6lu %12.2f cpu %12juk mem %12ju io %s\n",
                            ci.ci_uid,
                            (ci.ci_utime + ci.ci_stime) / (double) AHZ,
-                           ci.ci_mem, ci.ci_io, ci.ci_comm);
+                           (uintmax_t)ci.ci_mem, (uintmax_t)ci.ci_io,
+                           ci.ci_comm);
        }
 
        /* finally, return the file descriptor for possible truncation */
index 1031154..4cabe8f 100644 (file)
@@ -28,7 +28,6 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  * $FreeBSD: src/usr.sbin/sa/pdb.c,v 1.7 1999/08/28 01:19:53 peter Exp $
- * $DragonFly: src/usr.sbin/sa/pdb.c,v 1.4 2005/12/05 02:40:28 swildner Exp $
  */
 
 #include <sys/types.h>
@@ -305,7 +304,8 @@ check_junk(struct cmdinfo *cip)
        char *cp;
        size_t len;
 
-       fprintf(stderr, "%s (%qu) -- ", cip->ci_comm, cip->ci_calls);
+       fprintf(stderr, "%s (%ju) -- ", cip->ci_comm,
+           (uintmax_t)cip->ci_calls);
        cp = fgetln(stdin, &len);
 
        return (cp && (cp[0] == 'y' || cp[0] == 'Y')) ? 1 : 0;
@@ -336,7 +336,7 @@ print_ci(const struct cmdinfo *cip, const struct cmdinfo *totalcip)
        } else
                uflow = 0;
 
-       printf("%8qu ", cip->ci_calls);
+       printf("%8ju ", (uintmax_t)cip->ci_calls);
        if (cflag) {
                if (cip != totalcip)
                        printf(" %4.2f%%  ",
@@ -393,19 +393,20 @@ print_ci(const struct cmdinfo *cip, const struct cmdinfo *totalcip)
                }
        }
 
-       if (tflag)
+       if (tflag) {
                if (!uflow)
                        printf("%8.2fre/cp ", cip->ci_etime / (double) (cip->ci_utime + cip->ci_stime));
                else
                        printf("*ignore*      ");
+       }
 
        if (Dflag)
-               printf("%10qutio ", cip->ci_io);
+               printf("%10jutio ", (uintmax_t)cip->ci_io);
        else
                printf("%8.0favio ", cip->ci_io / c);
 
        if (Kflag)
-               printf("%10quk*sec ", cip->ci_mem);
+               printf("%10juk*sec ", (uintmax_t)cip->ci_mem);
        else
                printf("%8.0fk ", cip->ci_mem / t);
 
index 2caea87..823cf68 100644 (file)
@@ -28,7 +28,6 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  * $FreeBSD: src/usr.sbin/sa/usrdb.c,v 1.8.2.2 2000/10/28 02:28:20 gallatin Exp $
- * $DragonFly: src/usr.sbin/sa/usrdb.c,v 1.4 2005/12/05 02:40:28 swildner Exp $
  */
 
 #include <sys/param.h>
@@ -37,6 +36,7 @@
 #include <err.h>
 #include <errno.h>
 #include <fcntl.h>
+#include <pwd.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
@@ -234,8 +234,8 @@ usracct_print(void)
        while (rv == 0) {
                memcpy(ui, data.data, sizeof(struct userinfo));
 
-               printf("%-*s %9qu ", MAXLOGNAME - 1,
-                   user_from_uid(ui->ui_uid, 0), ui->ui_calls);
+               printf("%-*s %9ju ", MAXLOGNAME - 1,
+                   user_from_uid(ui->ui_uid, 0), (uintmax_t)ui->ui_calls);
 
                t = (double) (ui->ui_utime + ui->ui_stime) /
                    (double) AHZ;
@@ -246,15 +246,16 @@ usracct_print(void)
 
                /* ui->ui_calls is always != 0 */
                if (dflag)
-                       printf("%12qu%s", ui->ui_io / ui->ui_calls, "avio");
+                       printf("%12ju%s", (uintmax_t)ui->ui_io / ui->ui_calls,
+                           "avio");
                else
-                       printf("%12qu%s", ui->ui_io, "tio");
+                       printf("%12ju%s", (uintmax_t)ui->ui_io, "tio");
 
                /* t is always >= 0.0001; see above */
                if (kflag)
                        printf("%12.0f%s", ui->ui_mem / t, "k");
                else
-                       printf("%12qu%s", ui->ui_mem, "k*sec");
+                       printf("%12ju%s", (uintmax_t)ui->ui_mem, "k*sec");
 
                printf("\n");