1From e0c690acfcddd3c3421f6eb0182c54815fd70f8f Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 14 Jul 2017 23:21:08 -0700
4Subject: [PATCH] rdate: define logwtmp on libc != glibc
5
6Signed-off-by: Khem Raj <raj.khem@gmail.com>
7---
8 src/rdate.c | 15 +++++++++++++++
9 1 file changed, 15 insertions(+)
10
11diff --git a/src/rdate.c b/src/rdate.c
12index 943d481..685b1b8 100644
13--- a/src/rdate.c
14+++ b/src/rdate.c
15@@ -41,7 +41,22 @@ static int print_mode = 0;		// display the time
16 static int timeout = 10;		// timeout for each connection attempt
17 static char *service = DEFAULT_SERVICE;
18
19+#ifndef __GLIBC__
20+static void logwtmp(const char * line, const char * name, const char * host)
21+{
22+    struct utmp u;
23+    memset(&u, 0, sizeof(u));
24+
25+    u.ut_pid = getpid();
26+    u.ut_type = name[0] ? USER_PROCESS : DEAD_PROCESS;
27+    strncpy(u.ut_line, line, sizeof(u.ut_line));
28+    strncpy(u.ut_name, name, sizeof(u.ut_name));
29+    strncpy(u.ut_host, host, sizeof(u.ut_host));
30+    gettimeofday(&(u.ut_tv), NULL);
31
32+    updwtmp(_PATH_WTMP, &u);
33+}
34+#endif /* __GLIBC__ */
35
36 // Returns string from address info pointer
37 static char*
38--
392.13.3
40
41