From e04970ad6fb948e03aeb803b00f535a2e712a526 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Duval?= Date: Sat, 31 Oct 2020 09:04:37 +0100 Subject: [PATCH] POSIX: add utmpx.h and function stubs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit OpenJDK 14 assumes symbols and headers are available. Change-Id: I21038e92afcfd2000ee95712bce874afd29611b6 Reviewed-on: https://review.haiku-os.org/c/haiku/+/3371 Reviewed-by: Axel Dörfler Reviewed-by: Adrien Destugues --- headers/posix/utmpx.h | 49 ++++++++++++++++++++++++++++++ src/system/libroot/posix/Jamfile | 1 + src/system/libroot/posix/utmpx.cpp | 47 ++++++++++++++++++++++++++++ 3 files changed, 97 insertions(+) create mode 100644 headers/posix/utmpx.h create mode 100644 src/system/libroot/posix/utmpx.cpp diff --git a/headers/posix/utmpx.h b/headers/posix/utmpx.h new file mode 100644 index 0000000000..82ac8c06e3 --- /dev/null +++ b/headers/posix/utmpx.h @@ -0,0 +1,49 @@ +/* + * Copyright 2020 Haiku, Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ +#ifndef _UTMPX_H_ +#define _UTMPX_H_ + + +#include +#include + + +struct utmpx { + short ut_type; /* type of entry */ + struct timeval ut_tv; /* modification time */ + char ut_id[8]; /* entry identifier */ + pid_t ut_pid; /* process ID */ + char ut_user[32]; /* user login name */ + char ut_line[16]; /* device name */ + char __ut_reserved[192]; +}; + + +#define EMPTY 0 /* No valid user accounting information. */ +#define BOOT_TIME 1 /* Identifies time of system boot. */ +#define OLD_TIME 2 /* Identifies time when system clock changed. */ +#define NEW_TIME 3 /* Identifies time after system clock changed. */ +#define USER_PROCESS 4 /* Identifies a process. */ +#define INIT_PROCESS 5 /* Identifies a process spawned by the init process. */ +#define LOGIN_PROCESS 6 /* Identifies the session leader of a logged-in user. */ +#define DEAD_PROCESS 7 /* Identifies a session leader who has exited. */ + + +#ifdef __cplusplus +extern "C" { +#endif + +void endutxent(void); +struct utmpx* getutxent(void); +struct utmpx* getutxid(const struct utmpx *); +struct utmpx* getutxline(const struct utmpx *); +struct utmpx* pututxline(const struct utmpx *); +void setutxent(void); + +#ifdef __cplusplus +} +#endif + +#endif /* _UTMPX_H_ */ diff --git a/src/system/libroot/posix/Jamfile b/src/system/libroot/posix/Jamfile index f0b59497f3..ae4880dfcc 100644 --- a/src/system/libroot/posix/Jamfile +++ b/src/system/libroot/posix/Jamfile @@ -37,6 +37,7 @@ for architectureObject in [ MultiArchSubDirSetup ] { syslog.cpp termios.c utime.c + utmpx.cpp ; } } diff --git a/src/system/libroot/posix/utmpx.cpp b/src/system/libroot/posix/utmpx.cpp new file mode 100644 index 0000000000..ba8e39a5f7 --- /dev/null +++ b/src/system/libroot/posix/utmpx.cpp @@ -0,0 +1,47 @@ +/* + * Copyright 2020 Haiku, Inc. All Rights Reserved. + * Distributed under the terms of the MIT License. + */ + +#include + + +void +endutxent(void) +{ +} + + +void +setutxent(void) +{ +} + + +struct utmpx* +getutxent(void) +{ + return NULL; +} + + +struct utmpx* +getutxid(const struct utmpx *ut) +{ + return NULL; +} + + +struct utmpx* +getutxline(const struct utmpx *ut) +{ + return NULL; +} + + +struct utmpx* +pututxline(const struct utmpx *ut) +{ + return NULL; +} +