rdate: Define logwtmp if libc != glibc

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
This commit is contained in:
Khem Raj 2017-07-17 20:09:58 -07:00 committed by Joe MacDonald
parent 7daa126fc2
commit e9b03cb0e0
2 changed files with 41 additions and 0 deletions

View File

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

View File

@ -13,6 +13,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3"
SRC_URI = "https://www.aelius.com/njh/${BPN}/${BP}.tar.gz \
file://0001-src-rdate-Fix-printf-format-errors.patch \
file://0001-rdate-define-logwtmp-on-libc-glibc.patch \
"
SRC_URI[md5sum] = "0a4f612480777fdf25264ac03c57eae6"
SRC_URI[sha256sum] = "6e800053eaac2b21ff4486ec42f0aca7214941c7e5fceedd593fa0be99b9227d"