misc cleanup in dump-utmp
authorKen Raeburn <raeburn@mit.edu>
Thu, 28 Jun 2001 12:35:20 +0000 (12:35 +0000)
committerKen Raeburn <raeburn@mit.edu>
Thu, 28 Jun 2001 12:35:20 +0000 (12:35 +0000)
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@13525 dc483132-0cff-0310-8789-dd5450dbe970

src/util/pty/ChangeLog
src/util/pty/dump-utmp.c

index d598f954a45839a03e8bd3cf64beead687e6aaa5..39797d41ef30457eef5c14e3ea6f7d6d8b8b9b80 100644 (file)
@@ -3,6 +3,13 @@
        * update_utmp.c (pty_update_utmp): Don't copy host if it's a null
        pointer.
 
+       * dump-utmp.c (print_ut): Use size of ut_name field, not ut_user,
+       which may not exist, for width when printing ut_name field value.
+       Specify width when printing hostname, it may be unterminated.
+       (main): Move utp and utxp declarations closer to their usages, and
+       make both conditionalized so they're not declared if they're not
+       used.
+
 2001-06-21  Ezra Peisach  <epeisach@mit.edu>
 
        * libpty.h: Change variable line in prototype to tty_line to
index 6847ac9bce9253a66ab6931e0945008ea9915586..c72f5b5bc5174a1b988390fd217bd5127ef74d20 100644 (file)
@@ -89,7 +89,11 @@ print_ut(int all, const struct utmp *u)
        return;
 #endif
 
+#ifdef HAVE_STRUCT_UTMP_UT_USER
     lu = sizeof(u->ut_user);
+#else
+    lu = sizeof(u->ut_name);
+#endif
     ll = sizeof(u->ut_line);
     printf("%-*.*s:", lu, lu, u->ut_name);
     printf("%-*.*s:", ll, ll, u->ut_line);
@@ -113,7 +117,7 @@ print_ut(int all, const struct utmp *u)
     printf(" %s", ctime(&u->ut_time) + 4);
 #ifdef HAVE_STRUCT_UTMP_UT_HOST
     if (u->ut_host[0])
-       printf(" %s\n", u->ut_host);
+       printf(" %.*s\n", (int) sizeof(u->ut_host), u->ut_host);
 #endif
 
     return;
@@ -194,10 +198,6 @@ main(int argc, char **argv)
        struct utmpx utx;
 #endif
     } u;
-    struct utmp *utp;
-#ifdef UTMPX
-    struct utmpx *utxp;
-#endif
 
     all = is_utmpx = do_getut = 0;
     recsize = sizeof(struct utmp);
@@ -256,6 +256,7 @@ main(int argc, char **argv)
        if (is_utmpx) {
 #ifdef UTMPX
 #ifdef HAVE_UTMPXNAME
+           struct utmpx *utxp;
            utmpxname(fn);
            setutxent();
            while ((utxp = getutxent()) != NULL)
@@ -269,6 +270,7 @@ main(int argc, char **argv)
 #endif
        } else {
 #ifdef HAVE_UTMPNAME
+           struct utmp *utp;
            utmpname(fn);
            setutxent();
            while ((utp = getutent()) != NULL)