-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Versions.def: Add GLIBC_2.9 version tag for libutil.
* sysdeps/unix/sysv/linux/s390/bits/utmp.h: Copy of gnu/bits/utmp.h. Check for __WORDSIZE_COMPAT32 removed. * sysdeps/unix/sysv/linux/s390/bits/utmpx.h: Copy of gnu/bits/utmpx.h. Check for __WORDSIZE_COMPAT32 removed. * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Add new files utmp32, utmpx32 and login32. * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Add 2.9 versions of struct utmp functions to libc and libutil. * sysdeps/unix/sysv/linux/s390/s390-32/utmp-compat.h: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutent.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutent_r.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutid.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutid_r.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutline.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutline_r.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutmp.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutxent.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutxid.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutxline.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/login.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/login32.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/pututxline.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/updwtmp.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/updwtmpx.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/utmp-convert.h: New file. * sysdeps/unix/sysv/linux/s390/s390-32/utmp32.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/utmp32.h: New file. * sysdeps/unix/sysv/linux/s390/s390-32/utmpx-convert.h: New file. * sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.h: New file.
- Loading branch information
Ulrich Drepper
committed
Jul 26, 2008
1 parent
619cc2f
commit 4057dc4
Showing
28 changed files
with
1,327 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -106,6 +106,7 @@ librt { | |
} | ||
libutil { | ||
GLIBC_2.0 | ||
GLIBC_2.9 | ||
} | ||
ld { | ||
GLIBC_2.0 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,125 @@ | ||
/* The `struct utmp' type, describing entries in the utmp file. GNU version. | ||
Copyright (C) 1993, 1996, 1997, 1998, 1999, 2002, 2008 | ||
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, write to the Free | ||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA | ||
02111-1307 USA. */ | ||
|
||
#ifndef _UTMP_H | ||
# error "Never include <bits/utmp.h> directly; use <utmp.h> instead." | ||
#endif | ||
|
||
#include <paths.h> | ||
#include <sys/time.h> | ||
#include <sys/types.h> | ||
#include <bits/wordsize.h> | ||
|
||
|
||
#define UT_LINESIZE 32 | ||
#define UT_NAMESIZE 32 | ||
#define UT_HOSTSIZE 256 | ||
|
||
|
||
/* The structure describing an entry in the database of | ||
previous logins. */ | ||
struct lastlog | ||
{ | ||
#if __WORDSIZE == 32 | ||
int64_t ll_time; | ||
#else | ||
__time_t ll_time; | ||
#endif | ||
char ll_line[UT_LINESIZE]; | ||
char ll_host[UT_HOSTSIZE]; | ||
}; | ||
|
||
|
||
/* The structure describing the status of a terminated process. This | ||
type is used in `struct utmp' below. */ | ||
struct exit_status | ||
{ | ||
short int e_termination; /* Process termination status. */ | ||
short int e_exit; /* Process exit status. */ | ||
}; | ||
|
||
|
||
/* The structure describing an entry in the user accounting database. */ | ||
struct utmp | ||
{ | ||
short int ut_type; /* Type of login. */ | ||
pid_t ut_pid; /* Process ID of login process. */ | ||
char ut_line[UT_LINESIZE]; /* Devicename. */ | ||
char ut_id[4]; /* Inittab ID. */ | ||
char ut_user[UT_NAMESIZE]; /* Username. */ | ||
char ut_host[UT_HOSTSIZE]; /* Hostname for remote login. */ | ||
struct exit_status ut_exit; /* Exit status of a process marked | ||
as DEAD_PROCESS. */ | ||
/* The ut_session and ut_tv fields must be the same size when compiled | ||
32- and 64-bit. This allows data files and shared memory to be | ||
shared between 32- and 64-bit applications. */ | ||
#if __WORDSIZE == 32 | ||
int64_t ut_session; /* Session ID, used for windowing. */ | ||
struct | ||
{ | ||
int64_t tv_sec; /* Seconds. */ | ||
int64_t tv_usec; /* Microseconds. */ | ||
} ut_tv; /* Time entry was made. */ | ||
#else | ||
long int ut_session; /* Session ID, used for windowing. */ | ||
struct timeval ut_tv; /* Time entry was made. */ | ||
#endif | ||
|
||
int32_t ut_addr_v6[4]; /* Internet address of remote host. */ | ||
char __unused[20]; /* Reserved for future use. */ | ||
}; | ||
|
||
/* Backwards compatibility hacks. */ | ||
#define ut_name ut_user | ||
#ifndef _NO_UT_TIME | ||
/* We have a problem here: `ut_time' is also used otherwise. Define | ||
_NO_UT_TIME if the compiler complains. */ | ||
# define ut_time ut_tv.tv_sec | ||
#endif | ||
#define ut_xtime ut_tv.tv_sec | ||
#define ut_addr ut_addr_v6[0] | ||
|
||
|
||
/* Values for the `ut_type' field of a `struct utmp'. */ | ||
#define EMPTY 0 /* No valid user accounting information. */ | ||
|
||
#define RUN_LVL 1 /* The system's runlevel. */ | ||
#define BOOT_TIME 2 /* Time of system boot. */ | ||
#define NEW_TIME 3 /* Time after system clock changed. */ | ||
#define OLD_TIME 4 /* Time when system clock changed. */ | ||
|
||
#define INIT_PROCESS 5 /* Process spawned by the init process. */ | ||
#define LOGIN_PROCESS 6 /* Session leader of a logged in user. */ | ||
#define USER_PROCESS 7 /* Normal process. */ | ||
#define DEAD_PROCESS 8 /* Terminated process. */ | ||
|
||
#define ACCOUNTING 9 | ||
|
||
/* Old Linux name for the EMPTY type. */ | ||
#define UT_UNKNOWN EMPTY | ||
|
||
|
||
/* Tell the user that we have a modern system with UT_HOST, UT_PID, | ||
UT_TYPE, UT_ID and UT_TV fields. */ | ||
#define _HAVE_UT_TYPE 1 | ||
#define _HAVE_UT_PID 1 | ||
#define _HAVE_UT_ID 1 | ||
#define _HAVE_UT_TV 1 | ||
#define _HAVE_UT_HOST 1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,104 @@ | ||
/* Structures and definitions for the user accounting database. GNU version. | ||
Copyright (C) 1997, 1998, 2000, 2001, 2002, 2008 | ||
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, write to the Free | ||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA | ||
02111-1307 USA. */ | ||
|
||
#ifndef _UTMPX_H | ||
# error "Never include <bits/utmpx.h> directly; use <utmpx.h> instead." | ||
#endif | ||
|
||
#include <bits/types.h> | ||
#include <sys/time.h> | ||
#include <bits/wordsize.h> | ||
|
||
|
||
#ifdef __USE_GNU | ||
# include <paths.h> | ||
# define _PATH_UTMPX _PATH_UTMP | ||
# define _PATH_WTMPX _PATH_WTMP | ||
#endif | ||
|
||
|
||
#define __UT_LINESIZE 32 | ||
#define __UT_NAMESIZE 32 | ||
#define __UT_HOSTSIZE 256 | ||
|
||
|
||
/* The structure describing the status of a terminated process. This | ||
type is used in `struct utmpx' below. */ | ||
struct __exit_status | ||
{ | ||
#ifdef __USE_GNU | ||
short int e_termination; /* Process termination status. */ | ||
short int e_exit; /* Process exit status. */ | ||
#else | ||
short int __e_termination; /* Process termination status. */ | ||
short int __e_exit; /* Process exit status. */ | ||
#endif | ||
}; | ||
|
||
|
||
/* The structure describing an entry in the user accounting database. */ | ||
struct utmpx | ||
{ | ||
short int ut_type; /* Type of login. */ | ||
__pid_t ut_pid; /* Process ID of login process. */ | ||
char ut_line[__UT_LINESIZE]; /* Devicename. */ | ||
char ut_id[4]; /* Inittab ID. */ | ||
char ut_user[__UT_NAMESIZE]; /* Username. */ | ||
char ut_host[__UT_HOSTSIZE]; /* Hostname for remote login. */ | ||
struct __exit_status ut_exit; /* Exit status of a process marked | ||
as DEAD_PROCESS. */ | ||
|
||
/* The fields ut_session and ut_tv must be the same size when compiled | ||
32- and 64-bit. This allows files and shared memory to be shared | ||
between 32- and 64-bit applications. */ | ||
#if __WORDSIZE == 32 | ||
__int64_t ut_session; /* Session ID, used for windowing. */ | ||
struct | ||
{ | ||
__int64_t tv_sec; /* Seconds. */ | ||
__int64_t tv_usec; /* Microseconds. */ | ||
} ut_tv; /* Time entry was made. */ | ||
#else | ||
long int ut_session; /* Session ID, used for windowing. */ | ||
struct timeval ut_tv; /* Time entry was made. */ | ||
#endif | ||
__int32_t ut_addr_v6[4]; /* Internet address of remote host. */ | ||
char __unused[20]; /* Reserved for future use. */ | ||
}; | ||
|
||
|
||
/* Values for the `ut_type' field of a `struct utmpx'. */ | ||
#define EMPTY 0 /* No valid user accounting information. */ | ||
|
||
#ifdef __USE_GNU | ||
# define RUN_LVL 1 /* The system's runlevel. */ | ||
#endif | ||
#define BOOT_TIME 2 /* Time of system boot. */ | ||
#define NEW_TIME 3 /* Time after system clock changed. */ | ||
#define OLD_TIME 4 /* Time when system clock changed. */ | ||
|
||
#define INIT_PROCESS 5 /* Process spawned by the init process. */ | ||
#define LOGIN_PROCESS 6 /* Session leader of a logged in user. */ | ||
#define USER_PROCESS 7 /* Normal process. */ | ||
#define DEAD_PROCESS 8 /* Terminated process. */ | ||
|
||
#ifdef __USE_GNU | ||
# define ACCOUNTING 9 /* System accounting. */ | ||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
/* Copyright (C) 2008 Free Software Foundation, Inc. | ||
Contributed by Andreas Krebbel <Andreas.Krebbel@de.ibm.com>. | ||
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, write to the Free | ||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA | ||
02111-1307 USA. */ | ||
|
||
#include <stdlib.h> | ||
#include <utmp.h> | ||
|
||
#include "utmp-compat.h" | ||
|
||
#undef weak_alias | ||
#define weak_alias(n,a) | ||
#include "login/getutent.c" | ||
|
||
default_symbol_version (__getutent, getutent, UTMP_COMPAT_BASE); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
/* Copyright (C) 2008 Free Software Foundation, Inc. | ||
Contributed by Andreas Krebbel <Andreas.Krebbel@de.ibm.com>. | ||
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, write to the Free | ||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA | ||
02111-1307 USA. */ | ||
|
||
#include <bits/libc-lock.h> | ||
#include <stdlib.h> | ||
#include <utmp.h> | ||
|
||
#include "utmp-compat.h" | ||
#include "utmp-private.h" | ||
|
||
weak_alias (__setutent, setutent) | ||
weak_alias (__endutent, endutent) | ||
|
||
#undef weak_alias | ||
#define weak_alias(n,a) | ||
#include "login/getutent_r.c" | ||
|
||
default_symbol_version (__getutent_r, getutent_r, UTMP_COMPAT_BASE); | ||
default_symbol_version (__pututline, pututline, UTMP_COMPAT_BASE); |
Oops, something went wrong.