diff options
author | Emil Renner Berthing <systemd@esmil.dk> | 2014-09-24 17:25:00 +0200 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2014-09-26 07:48:35 -0400 |
commit | 37161c5148396448921841ae1026b281c7949652 (patch) | |
tree | 09dc44c0d051268fc31518dadbd4eb6255d85dbf /src | |
parent | 440c61c500ead1bdc6f987b8ba7c5e7f7a9c9f59 (diff) |
make utmp/wtmp support configurable
This adds --disable-utmp option to configure. If it is used, all
utmp-related functionality, including querying runlevel support,
is removed.
Diffstat (limited to 'src')
-rw-r--r-- | src/core/build.h | 7 | ||||
-rw-r--r-- | src/shared/utmp-wtmp.h | 28 |
2 files changed, 35 insertions, 0 deletions
diff --git a/src/core/build.h b/src/core/build.h index a7f12a33e4..d5e55506cf 100644 --- a/src/core/build.h +++ b/src/core/build.h @@ -63,6 +63,12 @@ #define _SYSVINIT_FEATURE_ "-SYSVINIT" #endif +#ifdef HAVE_UTMP +#define _UTMP_FEATURE_ "+UTMP" +#else +#define _UTMP_FEATURE_ "-UTMP" +#endif + #ifdef HAVE_LIBCRYPTSETUP #define _LIBCRYPTSETUP_FEATURE_ "+LIBCRYPTSETUP" #else @@ -137,6 +143,7 @@ _APPARMOR_FEATURE_ " " \ _SMACK_FEATURE_ " " \ _SYSVINIT_FEATURE_ " " \ + _UTMP_FEATURE_ " " \ _LIBCRYPTSETUP_FEATURE_ " " \ _GCRYPT_FEATURE_ " " \ _GNUTLS_FEATURE_ " " \ diff --git a/src/shared/utmp-wtmp.h b/src/shared/utmp-wtmp.h index 040a16e746..87d004e615 100644 --- a/src/shared/utmp-wtmp.h +++ b/src/shared/utmp-wtmp.h @@ -23,6 +23,7 @@ #include "util.h" +#ifdef HAVE_UTMP int utmp_get_runlevel(int *runlevel, int *previous); int utmp_put_shutdown(void); @@ -33,3 +34,30 @@ int utmp_put_dead_process(const char *id, pid_t pid, int code, int status); int utmp_put_init_process(const char *id, pid_t pid, pid_t sid, const char *line); int utmp_wall(const char *message, const char *username, bool (*match_tty)(const char *tty)); + +#else /* HAVE_UTMP */ + +static inline int utmp_get_runlevel(int *runlevel, int *previous) { + return -ESRCH; +} +static inline int utmp_put_shutdown(void) { + return 0; +} +static inline int utmp_put_reboot(usec_t timestamp) { + return 0; +} +static inline int utmp_put_runlevel(int runlevel, int previous) { + return 0; +} +static inline int utmp_put_dead_process(const char *id, pid_t pid, int code, int status) { + return 0; +} +static inline int utmp_put_init_process(const char *id, pid_t pid, pid_t sid, const char *line) { + return 0; +} +static inline int utmp_wall(const char *message, const char *username, + bool (*match_tty)(const char *tty)) { + return 0; +} + +#endif /* HAVE_UTMP */ |