unofficial mirror of libc-alpha@sourceware.org
 help / color / mirror / Atom feed
From: Adhemerval Zanella via Libc-alpha <libc-alpha@sourceware.org>
To: libc-alpha@sourceware.org
Subject: [PATCH 17/52] Consolidate and simplify internal utmp definitions
Date: Fri,  5 Mar 2021 17:14:43 -0300	[thread overview]
Message-ID: <20210305201518.798584-18-adhemerval.zanella@linaro.org> (raw)
In-Reply-To: <20210305201518.798584-1-adhemerval.zanella@linaro.org>

The TRANSFORM_UTMP_FILE_NAME macro is refactored to the inline function
utmp_file_name_time32 and the __utmp_equal function is removed and inlined
on its only usage  (matches_last_entry at utmp_file.c).

Checked with make check run-built-tests=no on all afftected ABIs.
---
 login/updwtmp.c                              | 14 +----
 sysdeps/gnu/utmp_file.c => login/utmp-path.h | 32 ++++++++----
 login/utmp_file.c                            | 26 ++++++---
 manual/users.texi                            |  4 +-
 sysdeps/generic/paths.h                      |  8 +--
 sysdeps/generic/utmp-equal.h                 | 42 ---------------
 sysdeps/unix/sysv/linux/paths.h              |  6 ++-
 sysdeps/unix/sysv/linux/updwtmp.c            | 37 -------------
 sysdeps/unix/sysv/linux/utmp-path.h          | 55 ++++++++++++++++++++
 sysdeps/unix/sysv/linux/utmp_file.c          | 37 -------------
 10 files changed, 107 insertions(+), 154 deletions(-)
 rename sysdeps/gnu/utmp_file.c => login/utmp-path.h (50%)
 delete mode 100644 sysdeps/generic/utmp-equal.h
 delete mode 100644 sysdeps/unix/sysv/linux/updwtmp.c
 create mode 100644 sysdeps/unix/sysv/linux/utmp-path.h
 delete mode 100644 sysdeps/unix/sysv/linux/utmp_file.c

diff --git a/login/updwtmp.c b/login/updwtmp.c
index ae67cfc10a..e67a9cf2d9 100644
--- a/login/updwtmp.c
+++ b/login/updwtmp.c
@@ -21,22 +21,12 @@
 #include <unistd.h>
 
 #include "utmp-private.h"
-
-#ifndef TRANSFORM_UTMP_FILE_NAME
-# define TRANSFORM_UTMP_FILE_NAME(file_name)	\
-  ((strcmp (file_name, _PATH_UTMP "x") == 0	\
-    && __access (_PATH_UTMP "x", F_OK) != 0)	\
-   ? _PATH_UTMP					\
-   : ((strcmp (file_name, _PATH_WTMP "x") == 0	\
-       && __access (_PATH_WTMP "x", F_OK) != 0)	\
-      ? _PATH_WTMP				\
-      : file_name))
-#endif
+#include <utmp-path.h>
 
 void
 __updwtmp (const char *wtmp_file, const struct utmp *utmp)
 {
-  const char *file_name = TRANSFORM_UTMP_FILE_NAME (wtmp_file);
+  const char *file_name = utmp_file_name_time32 (wtmp_file);
 
   __libc_updwtmp (file_name, utmp);
 }
diff --git a/sysdeps/gnu/utmp_file.c b/login/utmp-path.h
similarity index 50%
rename from sysdeps/gnu/utmp_file.c
rename to login/utmp-path.h
index 696fb38fa8..351a932862 100644
--- a/sysdeps/gnu/utmp_file.c
+++ b/login/utmp-path.h
@@ -1,6 +1,6 @@
-/* Copyright (C) 1998-2021 Free Software Foundation, Inc.
+/* Handle {u,w}tmp and {u,w}tmpx file name usage.
+   Copyright (C) 1998-2021 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
-   Contributed by Mark Kettenis <kettenis@phys.uva.nl>, 1998.
 
    The GNU C Library is free software; you can redistribute it and/or
    modify it under the terms of the GNU Lesser General Public
@@ -16,16 +16,26 @@
    License along with the GNU C Library; if not, see
    <https://www.gnu.org/licenses/>.  */
 
+#ifndef _UTMP_PATH_H
+#define _UTMP_PATH_H 1
+
 #include <string.h>
 #include <unistd.h>
 
-#define TRANSFORM_UTMP_FILE_NAME(file_name)	\
-  ((strcmp (file_name, _PATH_UTMP "x") == 0	\
-    && __access (_PATH_UTMP "x", F_OK) != 0)	\
-   ? _PATH_UTMP					\
-   : ((strcmp (file_name, _PATH_WTMP "x") == 0	\
-       && __access (_PATH_WTMP "x", F_OK) != 0)	\
-      ? _PATH_WTMP				\
-      : file_name))
+/* The function returns the utmp database for 32-bit utmp{x} entries based
+   on FILE_NAME.  If the argument ends with 'x' and the file does not
+   exits the default old utmp{x} name is returned instead.  */
+static inline const char *
+utmp_file_name_time32 (const char *file_name)
+{
+  if (strcmp (file_name, _PATH_UTMP_BASE "x") == 0
+      && __access (_PATH_UTMP_BASE "x", F_OK) != 0)
+    return _PATH_UTMP_BASE;
+  else if (strcmp (file_name, _PATH_WTMP_BASE "x") == 0
+	   && __access (_PATH_WTMP_BASE "x", F_OK) != 0)
+    return _PATH_UTMP_BASE;
+
+  return file_name;
+}
 
-#include <login/utmp_file.c>
+#endif /* _UTMP_PATH_H  */
diff --git a/login/utmp_file.c b/login/utmp_file.c
index 8c0b3a0bb4..377209b26d 100644
--- a/login/utmp_file.c
+++ b/login/utmp_file.c
@@ -32,7 +32,7 @@
 #include <not-cancel.h>
 
 #include "utmp-private.h"
-#include "utmp-equal.h"
+#include <utmp-path.h>
 
 
 /* Descriptor for the file and position.  */
@@ -60,7 +60,21 @@ matches_last_entry (const struct utmp *data)
     return data->ut_type == last_entry.ut_type;
   else
     /* For the process-related entries, a full match is needed.  */
-    return __utmp_equal (&last_entry, data);
+    return (data->ut_type == INIT_PROCESS
+	    || data->ut_type == LOGIN_PROCESS
+	    || data->ut_type == USER_PROCESS
+	    || data->ut_type == DEAD_PROCESS)
+      && (last_entry.ut_type == INIT_PROCESS
+	  || last_entry.ut_type == LOGIN_PROCESS
+	  || last_entry.ut_type == USER_PROCESS
+	  || last_entry.ut_type == DEAD_PROCESS)
+      && (data->ut_id[0] && last_entry.ut_id[0]
+	  ? strncmp (data->ut_id, last_entry.ut_id,
+		     sizeof last_entry.ut_id)
+	    == 0
+	  : (strncmp (data->ut_line, last_entry.ut_line,
+		      sizeof last_entry.ut_line)
+	     == 0));
 }
 
 /* Locking timeout.  */
@@ -129,10 +143,6 @@ file_unlock (int fd)
   __fcntl64_nocancel (fd, F_SETLKW, &fl);
 }
 
-#ifndef TRANSFORM_UTMP_FILE_NAME
-# define TRANSFORM_UTMP_FILE_NAME(file_name) (file_name)
-#endif
-
 int
 __libc_setutent (void)
 {
@@ -140,7 +150,7 @@ __libc_setutent (void)
     {
       const char *file_name;
 
-      file_name = TRANSFORM_UTMP_FILE_NAME (__libc_utmp_file_name);
+      file_name = utmp_file_name_time32 (__libc_utmp_file_name);
 
       file_writable = false;
       file_fd = __open_nocancel
@@ -353,7 +363,7 @@ __libc_pututline (const struct utmp *data)
   if (! file_writable)
     {
       /* We must make the file descriptor writable before going on.  */
-      const char *file_name = TRANSFORM_UTMP_FILE_NAME (__libc_utmp_file_name);
+      const char *file_name = utmp_file_name_time32 (__libc_utmp_file_name);
 
       int new_fd = __open_nocancel
 	(file_name, O_RDWR | O_LARGEFILE | O_CLOEXEC);
diff --git a/manual/users.texi b/manual/users.texi
index ec22ce6c1c..dcaca1dcf1 100644
--- a/manual/users.texi
+++ b/manual/users.texi
@@ -1234,7 +1234,7 @@ over again.
 @c   pututline_unknown @mtasurace:utent @acsfd
 @c    setutent_unknown dup @mtasurace:utent @acsfd
 @c   pututline_file @mtascusig:ALRM @mtascutimer @acsfd
-@c    TRANSFORM_UTMP_FILE_NAME ok
+@c    utmp_file_name_time32 ok
 @c     strcmp dup ok
 @c     acesss dup ok
 @c    open_not_cancel_2 dup @acsfd
@@ -1427,7 +1427,7 @@ the following function:
 @standards{SVID, utmp.h}
 @safety{@prelim{}@mtunsafe{@mtascusig{:ALRM} @mtascutimer{}}@asunsafe{}@acunsafe{@acsfd{}}}
 @c updwtmp @mtascusig:ALRM @mtascutimer @acsfd
-@c  TRANSFORM_UTMP_FILE_NAME dup ok
+@c  utmp_file_name_time32 dup ok
 @c  *libc_utmp_file_functions->updwtmp = updwtmp_file @mtascusig:ALRM @mtascutimer @acsfd
 @c   open_not_cancel_2 dup @acsfd
 @c   LOCK_FILE dup @mtascusig:ALRM @mtascutimer
diff --git a/sysdeps/generic/paths.h b/sysdeps/generic/paths.h
index 893b4c2286..99a791ce31 100644
--- a/sysdeps/generic/paths.h
+++ b/sysdeps/generic/paths.h
@@ -60,10 +60,12 @@
 #define	_PATH_SHELLS	"/etc/shells"
 #define	_PATH_TTY	"/dev/tty"
 #define	_PATH_UNIX	"/vmunix"
-#define	_PATH_UTMP	"/var/run/utmp"
-#define	_PATH_UTMP_DB	"/var/run/utmp.db"
+#define	_PATH_UTMP_BASE	"/var/run/utmp"
+#define	_PATH_UTMP	_PATH_UTMP_BASE
+#define	_PATH_UTMP_DB	_PATH_UTMP_BASE ".db"
 #define	_PATH_VI	"/usr/bin/vi"
-#define	_PATH_WTMP	"/var/log/wtmp"
+#define	_PATH_WTMP_BASE	"/var/log/wtmp"
+#define	_PATH_WTMP	_PATH_WTMP_BASE
 
 /* Provide trailing slash, since mostly used for building pathnames. */
 #define	_PATH_DEV	"/dev/"
diff --git a/sysdeps/generic/utmp-equal.h b/sysdeps/generic/utmp-equal.h
deleted file mode 100644
index b1c4f008b9..0000000000
--- a/sysdeps/generic/utmp-equal.h
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Helper function for utmp functions to see if two entries are equal.
-   Copyright (C) 1996-2021 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-   Contributed by Ulrich Drepper <drepper@cygnus.com>
-   and Paul Janzen <pcj@primenet.com>, 1996.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, see
-   <https://www.gnu.org/licenses/>.  */
-
-#include <string.h>
-#include <utmp.h>
-
-#include "utmp-private.h"
-
-/* Test whether two entries match.  */
-static int
-__utmp_equal (const struct utmp *entry, const struct utmp *match)
-{
-  return (entry->ut_type == INIT_PROCESS
-          || entry->ut_type == LOGIN_PROCESS
-          || entry->ut_type == USER_PROCESS
-          || entry->ut_type == DEAD_PROCESS)
-    && (match->ut_type == INIT_PROCESS
-        || match->ut_type == LOGIN_PROCESS
-        || match->ut_type == USER_PROCESS
-        || match->ut_type == DEAD_PROCESS)
-    && (entry->ut_id[0] && match->ut_id[0]
-        ? strncmp (entry->ut_id, match->ut_id, sizeof match->ut_id) == 0
-        : (strncmp (entry->ut_line, match->ut_line, sizeof match->ut_line)
-           == 0));
-}
diff --git a/sysdeps/unix/sysv/linux/paths.h b/sysdeps/unix/sysv/linux/paths.h
index 1342ab3a96..3b8aeab788 100644
--- a/sysdeps/unix/sysv/linux/paths.h
+++ b/sysdeps/unix/sysv/linux/paths.h
@@ -61,9 +61,11 @@
 #define	_PATH_SHELLS	"/etc/shells"
 #define	_PATH_TTY	"/dev/tty"
 #define	_PATH_UNIX	"/boot/vmlinux"
-#define	_PATH_UTMP	"/var/run/utmp"
+#define	_PATH_UTMP_BASE	"/var/run/utmp"
+#define	_PATH_UTMP	_PATH_UTMP_BASE
 #define	_PATH_VI	"/usr/bin/vi"
-#define	_PATH_WTMP	"/var/log/wtmp"
+#define	_PATH_WTMP_BASE	"/var/log/wtmp"
+#define	_PATH_WTMP	_PATH_WTMP_BASE
 
 /* Provide trailing slash, since mostly used for building pathnames. */
 #define	_PATH_DEV	"/dev/"
diff --git a/sysdeps/unix/sysv/linux/updwtmp.c b/sysdeps/unix/sysv/linux/updwtmp.c
deleted file mode 100644
index 93d72e75a6..0000000000
--- a/sysdeps/unix/sysv/linux/updwtmp.c
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright (C) 1998-2021 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-   Contributed by Mark Kettenis <kettenis@phys.uva.nl>, 1998.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, see
-   <https://www.gnu.org/licenses/>.  */
-
-#include <string.h>
-#include <unistd.h>
-
-#define TRANSFORM_UTMP_FILE_NAME(file_name)		\
-  ((strcmp (file_name, _PATH_UTMP) == 0			\
-    && __access (_PATH_UTMP "x", F_OK) == 0)		\
-   ? (_PATH_UTMP "x")					\
-   : ((strcmp (file_name, _PATH_WTMP) == 0		\
-       && __access ( _PATH_WTMP "x", F_OK) == 0)	\
-      ? (_PATH_WTMP "x")				\
-      : ((strcmp (file_name, _PATH_UTMP "x") == 0	\
-	  && __access (_PATH_UTMP "x", F_OK) != 0)	\
-	 ? _PATH_UTMP					\
-	 : ((strcmp (file_name, _PATH_WTMP "x") == 0	\
-	     && __access (_PATH_WTMP "x", F_OK) != 0)	\
-	    ? _PATH_WTMP				\
-	    : file_name))))
-
-#include <login/updwtmp.c>
diff --git a/sysdeps/unix/sysv/linux/utmp-path.h b/sysdeps/unix/sysv/linux/utmp-path.h
new file mode 100644
index 0000000000..f39222d62f
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/utmp-path.h
@@ -0,0 +1,55 @@
+/* Handle {u,w}tmp and {u,w}tmpx file name usage.
+   Copyright (C) 1998-2021 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, see
+   <https://www.gnu.org/licenses/>.  */
+
+#ifndef _UTMP_PATH_H
+#define _UTMP_PATH_H 1
+
+#include <string.h>
+#include <unistd.h>
+
+
+/* The function returns the utmp database for 32-bit utmp{x} entries based
+   on FILE_NAME:
+
+   - if the default {x,w}utmp name is used but a file name ending with 'x'
+     exists it is returned instead
+
+   - if the argument ends with 'x' and the file is not accessible the default
+     {x,w}utmp is returned instead.
+
+   - if neither 1. nor 2. applies, the FILE_NAME is returned instead.  */
+static inline const char *
+utmp_file_name_time32 (const char *file_name)
+{
+  if (strcmp (file_name, _PATH_UTMP_BASE) == 0
+      && __access (_PATH_UTMP_BASE "x", F_OK) == 0)
+    return _PATH_UTMP_BASE "x";
+  else if (strcmp (file_name, _PATH_WTMP_BASE) == 0
+           && __access (_PATH_WTMP_BASE "x", F_OK) == 0)
+    return _PATH_WTMP_BASE "x";
+  else if (strcmp (file_name, _PATH_UTMP_BASE "x") == 0
+           && __access (_PATH_UTMP_BASE "x", F_OK) != 0)
+    return _PATH_UTMP_BASE;
+  else if (strcmp (file_name, _PATH_WTMP_BASE "x") == 0
+           && __access (_PATH_WTMP_BASE "x", F_OK) != 0)
+    return _PATH_WTMP_BASE;
+
+  return file_name;
+}
+
+#endif /* _UTMP_PATH_H  */
diff --git a/sysdeps/unix/sysv/linux/utmp_file.c b/sysdeps/unix/sysv/linux/utmp_file.c
deleted file mode 100644
index 78d10db8c8..0000000000
--- a/sysdeps/unix/sysv/linux/utmp_file.c
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Copyright (C) 1998-2021 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-   Contributed by Mark Kettenis <kettenis@phys.uva.nl>, 1998.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, see
-   <https://www.gnu.org/licenses/>.  */
-
-#include <string.h>
-#include <unistd.h>
-
-#define TRANSFORM_UTMP_FILE_NAME(file_name)		\
-  ((strcmp (file_name, _PATH_UTMP) == 0			\
-    && __access (_PATH_UTMP "x", F_OK) == 0)		\
-   ? (_PATH_UTMP "x")					\
-   : ((strcmp (file_name, _PATH_WTMP) == 0		\
-       && __access ( _PATH_WTMP "x", F_OK) == 0)	\
-      ? (_PATH_WTMP "x")				\
-      : ((strcmp (file_name, _PATH_UTMP "x") == 0	\
-	  && __access (_PATH_UTMP "x", F_OK) != 0)	\
-	 ? _PATH_UTMP					\
-	 : ((strcmp (file_name, _PATH_WTMP "x") == 0	\
-	     && __access (_PATH_WTMP "x", F_OK) != 0)	\
-	    ? _PATH_WTMP				\
-	    : file_name))))
-
-#include <login/utmp_file.c>
-- 
2.25.1


  parent reply	other threads:[~2021-03-05 20:16 UTC|newest]

Thread overview: 95+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-05 20:14 [PATCH 00/52] Add 64 bit time support on legacy ABIs Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 01/52] io: Use temporary directory and file for ftwtest-sh Adhemerval Zanella via Libc-alpha
2021-03-05 20:56   ` Andreas Schwab
2021-03-05 23:53   ` Joseph Myers
2021-03-08 13:00     ` Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 02/52] linux: Add futimes test Adhemerval Zanella via Libc-alpha
2021-03-05 20:30   ` Florian Weimer via Libc-alpha
2021-03-08 13:01     ` Adhemerval Zanella via Libc-alpha
2021-03-08 13:08       ` Florian Weimer via Libc-alpha
2021-03-08 13:26         ` Adhemerval Zanella via Libc-alpha
2021-03-08 13:30           ` Florian Weimer via Libc-alpha
2021-03-05 20:33   ` Florian Weimer via Libc-alpha
2021-03-08 13:02     ` Adhemerval Zanella via Libc-alpha
2021-03-08 13:23       ` Adhemerval Zanella via Libc-alpha
2021-03-06  0:02   ` Joseph Myers
2021-03-06  3:52     ` Paul Zimmermann
2021-03-08 13:03     ` Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 03/52] linux: Add lutimes test Adhemerval Zanella via Libc-alpha
2021-03-05 20:31   ` Florian Weimer via Libc-alpha
2021-03-06  0:02   ` Joseph Myers
2021-03-05 20:14 ` [PATCH 04/52] time: Add getitimer and setitimer basic tests Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 05/52] time: Add gmtime/gmtime_r tests Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 06/52] time: Add timegm/timelocal basic tests Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 07/52] time: Add basic timespec_get tests Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 08/52] time: Add 64 bit tests for getdate / getdate_r Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 09/52] io: Add basic tests for utimensat Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 10/52] posix: Add wait3 tests Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 11/52] linux: mips: Split libpthread.abilist in n32 and n64 Adhemerval Zanella via Libc-alpha
2021-03-05 20:39   ` Florian Weimer via Libc-alpha
2021-03-08 13:05     ` Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 12/52] linux: mips: Split librt.abilist " Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 13/52] linux: mips: Split libanl.abilist " Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 14/52] linux: s390: Add libanl.abilist in s390 and s390x Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 15/52] login: Consolidate utmp and utmpx headers Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 16/52] login: Move gnu utmpx to default implementation Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` Adhemerval Zanella via Libc-alpha [this message]
2021-03-05 20:14 ` [PATCH 18/52] support: Add 'touch' command Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 19/52] Add tests-container-internal rules Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 20/52] login: Add 64-bit time support to utmp/utmpx Adhemerval Zanella via Libc-alpha
2021-04-27 12:30   ` Florian Weimer via Libc-alpha
2021-04-27 13:58     ` Andreas Schwab
2021-04-27 14:18       ` Florian Weimer via Libc-alpha
2021-04-27 14:51         ` Andreas Schwab
2021-04-27 18:03     ` Joseph Myers
2021-04-30 10:03       ` Florian Weimer via Libc-alpha
2021-04-30 12:17         ` Andreas Schwab
2021-04-30 12:22           ` Florian Weimer via Libc-alpha
2021-04-30 14:11             ` Andreas Schwab
2021-03-05 20:14 ` [PATCH 21/52] linux: Add pwrite64_nocancel Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 22/52] login: Use 64-bit time on struct lastlog [BZ #25844] Adhemerval Zanella via Libc-alpha
2021-03-06  0:07   ` Joseph Myers
2021-03-08 13:05     ` Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 23/52] Remove __WORDSIZE_TIME64_COMPAT32 Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 24/52] linux: Add fallback for 64-bit time_t SO_{RCV, SND}TIMEO Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 25/52] linux: Add fallback for 64-bit time_t SO_TIMESTAMP{NS} Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 26/52] linux: Add recvvmsg " Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 27/52] y2038: Add __USE_TIME_BITS64 support for time_t Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 28/52] y2038: Add __USE_TIME_BITS64 support for struct timeval Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 29/52] y2038: Add __USE_TIME_BITS64 support for struct timespec Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 30/52] y2038: Add __USE_TIME_BITS64 support for struct utimbuf Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 31/52] y2038: linux: Add __USE_TIME_BITS64 support for struct timex Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 32/52] y2038: Use a common definition for stat Adhemerval Zanella via Libc-alpha
2021-03-05 20:14 ` [PATCH 33/52] y2038: Use a common definition for msqid_ds Adhemerval Zanella via Libc-alpha
2021-03-05 20:15 ` [PATCH 34/52] y2038: Use a common definition for semid_ds Adhemerval Zanella via Libc-alpha
2021-03-05 20:15 ` [PATCH 35/52] y2038: Use a common definition for shmid_ds Adhemerval Zanella via Libc-alpha
2021-03-05 20:15 ` [PATCH 36/52] y2038: Add __USE_TIME_BITS64 support for socket-constants.h Adhemerval Zanella via Libc-alpha
2021-03-05 20:15 ` [PATCH 37/52] time: Add 64 bit time support for getdate Adhemerval Zanella via Libc-alpha
2021-03-08 21:27   ` Lukasz Majewski
2021-03-05 20:15 ` [PATCH 38/52] y2038: Add support for 64 bit time on legacy ABIs Adhemerval Zanella via Libc-alpha
2021-03-08 21:27   ` Lukasz Majewski
2021-03-05 20:15 ` [PATCH 39/52] posix: Add glob64 with 64 bit time_t support Adhemerval Zanella via Libc-alpha
2021-03-05 20:15 ` [PATCH 40/52] io: Add fts64 " Adhemerval Zanella via Libc-alpha
2021-03-05 20:15 ` [PATCH 41/52] io: Add ftw64 " Adhemerval Zanella via Libc-alpha
2021-03-05 20:15 ` [PATCH 42/52] libsupport: Add 64 bit time_t support for time functions Adhemerval Zanella via Libc-alpha
2021-03-05 20:15 ` [PATCH 43/52] libsupport: Add 64 bit time_t support for stat functions Adhemerval Zanella via Libc-alpha
2021-03-05 20:42   ` Florian Weimer via Libc-alpha
2021-03-08 13:06     ` Adhemerval Zanella via Libc-alpha
2021-03-05 20:15 ` [PATCH 44/52] y2038: Add test coverage Adhemerval Zanella via Libc-alpha
2021-03-06  0:13   ` Joseph Myers
2021-03-08 13:12     ` Adhemerval Zanella via Libc-alpha
2021-03-08 21:28   ` Lukasz Majewski
2021-03-05 20:15 ` [PATCH 45/52] Use 64 bit time_t stat internally Adhemerval Zanella via Libc-alpha
2021-03-05 20:15 ` [PATCH 46/52] debug: build pcprofiledump with LFS and 64 bit time support Adhemerval Zanella via Libc-alpha
2021-03-05 20:15 ` [PATCH 47/52] elf: Use LFS and 64 bit time_t for installed programs Adhemerval Zanella via Libc-alpha
2021-03-05 20:43   ` Florian Weimer via Libc-alpha
2021-03-08 13:14     ` Adhemerval Zanella via Libc-alpha
2021-03-08 15:26       ` Florian Weimer via Libc-alpha
2021-03-05 20:15 ` [PATCH 48/52] iconv: " Adhemerval Zanella via Libc-alpha
2021-03-05 20:15 ` [PATCH 49/52] locale: " Adhemerval Zanella via Libc-alpha
2021-03-05 20:15 ` [PATCH 50/52] nss: " Adhemerval Zanella via Libc-alpha
2021-03-05 20:15 ` [PATCH 51/52] posix: " Adhemerval Zanella via Libc-alpha
2021-03-05 20:15 ` [PATCH 52/52] timezone: " Adhemerval Zanella via Libc-alpha
2021-03-05 23:57 ` [PATCH 00/52] Add 64 bit time support on legacy ABIs Joseph Myers
2021-03-08 13:18   ` Adhemerval Zanella via Libc-alpha
2021-03-07 10:42 ` Lukasz Majewski

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/libc/involved.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210305201518.798584-18-adhemerval.zanella@linaro.org \
    --to=libc-alpha@sourceware.org \
    --cc=adhemerval.zanella@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).