]> Savannah Git Hosting - gnulib.git/commitdiff
readutmp: Fix test failure on OpenBSD.
authorBruno Haible <bruno@clisp.org>
Mon, 31 Jul 2023 20:12:51 +0000 (22:12 +0200)
committerBruno Haible <bruno@clisp.org>
Wed, 16 Aug 2023 17:30:48 +0000 (19:30 +0200)
* lib/readutmp.c (desirable_utmp_entry): On OpenBSD, eliminate entirely
empty entries.

ChangeLog
lib/readutmp.c

index 01f8981775131595d7601934378cc1a45f18f753..20777e283ddc4874f4c1e4ce3117c8852739e2ff 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2023-07-31  Bruno Haible  <bruno@clisp.org>
+
+       readutmp: Fix test failure on OpenBSD.
+       * lib/readutmp.c (desirable_utmp_entry): On OpenBSD, eliminate entirely
+       empty entries.
+
 2023-07-30  Bruno Haible  <bruno@clisp.org>
 
        readutmp: Improve comments. Fix module description.
index acffe1000e91c878d3f1603dcecd8b8269b94019..b357ac27ad8fe088130062da0d39b86d6e9ea016 100644 (file)
@@ -74,6 +74,12 @@ desirable_utmp_entry (STRUCT_UTMP const *u, int options)
       && 0 < UT_PID (u)
       && (kill (UT_PID (u), 0) < 0 && errno == ESRCH))
     return false;
+# if defined __OpenBSD__ && !HAVE_UTMPX_H
+  /* Eliminate entirely empty entries.  */
+  if (UT_TIME_MEMBER (ut) == 0 && UT_USER (ut)[0] == '\0'
+      && ut->ut_line[0] == '\0' && ut->ut_host[0] == '\0')
+    return false;
+# endif
   return true;
 }