1998-09-06 23:45:24 +00:00
|
|
|
#ifndef _UTMP_H
|
Tue May 28 04:38:10 1996 Ulrich Drepper <drepper@cygnus.com>
* limits.h: Change MB_LEN_MAX to 6. A 31-bit ISO 10646
character in UTF-8 encoding has that many bytes.
* locale/langinfo.h: New element _NL_CTYPE_MB_CUR_MAX.
* locale/categories.def: Add description of field _NL_CTYPE_MB_CUR_MAX.
* locale/Makefile (routines): Add mb_cur_max.
* locale/mb_cur_max.c: New file. This function gets called
when the macro MB_CUR_MAX is used.
* locale/C-ctype.c: Initialize new mb_cur_max field.
* locale/localeinfo.h: Change magic value because of incompatible
change.
* locale/programs/ld-ctype.c: Determine value of mb_cur_max
according to current character set and write it out with the rest.
* stdlib/stdlib.h (MB_CUR_MAX): Not constant anymore. Get value
according to currently used locale for catefory LC_CTYPE by
calling the function __ctype_get_mb_cur_max.
Tue May 28 03:27:46 1996 Ulrich Drepper <drepper@cygnus.com>
* FAQ: Fix some typos.
Tell that for Linux the kernel header files are necessary.
* PROJECTS: New file. List of open jobs for glibc.
* Makefile (distribute): Add PROJECTS.
* crypt/GNUmakefile (headers): New variable. Mention crypt.h.
* crypt/crypt.h: Header for crypt functions.
* elf/elf.h: Add some new constants from recent Cygnus ELF
header files.
* login/getutid_r.c: Test for correct type.
Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and
_HAVE_UT_ID resp. are defined.
Make really compliant with specification.
* login/getutline_r.c, login/pututline_r.c: Don't depend on
ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are
defined.
Make really compliant with specification.
* login/setutent_r.c: Don't depend on ut_type and ut_id unless
_HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined.
* login/login.c, login/logout.c, login/logwtmp.c: Complete
rewrite. Now based on getut*/setut* functions.
* stdlib/strtol.c: Undo changes of Wed May 22 01:48:54 1996.
This prevented using this file in other GNU packages.
* sysdeps/gnu/utmpbits.h: Define _HAVE_UT_TYPE, _HAVE_UT_ID,
and _HAVE_UT_TV because struct utmp has these members.
* sysdeps/libm-i387/e_exp.S: Correct exp(+-Inf) case.
* utmp.h: New file. Wrapper around login/utmp.h.
* elf/dl-error.c (struct catch): New type.
(catch): New static variable, struct catch *.
(catch_env, signalled_errstring, signalled_objname): Variables removed.
(_dl_signal_error): If CATCH is non-null, set its errstring and
objname members and jump to CATCH->env. If it is null, call
_dl_sysdep_fatal with a standard message.
* elf/rtld.c (dl_main): Explode `doit' function into dl_main's body.
No longer use _dl_catch_error.
1996-05-29 04:48:04 +00:00
|
|
|
#include <login/utmp.h>
|
1998-08-09 17:39:48 +00:00
|
|
|
|
Installed header hygiene (BZ#20366): Test of installed headers.
This adds a test to ensure that the problems fixed in the last several
patches do not recur. Each directory checks the headers that it
installs for two properties: first, each header must be compilable in
isolation, as both C and C++, under a representative combination of
language and library conformance levels; second, there is a blacklist
of identifiers that may not appear in any installed header, currently
consisting of the legacy BSD typedefs. (There is an exemption for the
headers that define those typedefs, and for the RPC headers. It may be
necessary to make this more sophisticated if we add more stuff to the
blacklist in the future.)
In order for this test to work correctly, every wrapper header
that actually defines something must guard those definitions with
#ifndef _ISOMAC. This is the existing mechanism used by the conform/
tests to tell wrapper headers not to define anything that the public
header wouldn't, and not to use anything from libc-symbols.h. conform/
only cares for headers that we need to check for standards conformance,
whereas this test applies to *every* header. (Headers in include/ that
are either installed directly, or are internal-use-only and do *not*
correspond to any installed header, are not affected.)
* scripts/check-installed-headers.sh: New script.
* Rules: In each directory that defines header files to be installed,
run check-installed-headers.sh on them as a special test.
* Makefile: Likewise for the headers installed at top level.
* include/aliases.h, include/alloca.h, include/argz.h
* include/arpa/nameser.h, include/arpa/nameser_compat.h
* include/elf.h, include/envz.h, include/err.h
* include/execinfo.h, include/fpu_control.h, include/getopt.h
* include/gshadow.h, include/ifaddrs.h, include/libintl.h
* include/link.h, include/malloc.h, include/mcheck.h
* include/mntent.h, include/netinet/ether.h
* include/nss.h, include/obstack.h, include/printf.h
* include/pty.h, include/resolv.h, include/rpc/auth.h
* include/rpc/auth_des.h, include/rpc/auth_unix.h
* include/rpc/clnt.h, include/rpc/des_crypt.h
* include/rpc/key_prot.h, include/rpc/netdb.h
* include/rpc/pmap_clnt.h, include/rpc/pmap_prot.h
* include/rpc/pmap_rmt.h, include/rpc/rpc.h
* include/rpc/rpc_msg.h, include/rpc/svc.h
* include/rpc/svc_auth.h, include/rpc/xdr.h
* include/rpcsvc/nis_callback.h, include/rpcsvc/nislib.h
* include/rpcsvc/yp.h, include/rpcsvc/ypclnt.h
* include/rpcsvc/ypupd.h, include/shadow.h
* include/stdio_ext.h, include/sys/epoll.h
* include/sys/file.h, include/sys/gmon.h, include/sys/ioctl.h
* include/sys/prctl.h, include/sys/profil.h
* include/sys/statfs.h, include/sys/sysctl.h
* include/sys/sysinfo.h, include/ttyent.h, include/utmp.h
* sysdeps/arm/nacl/include/bits/setjmp.h
* sysdeps/mips/include/sys/asm.h
* sysdeps/unix/sysv/linux/include/sys/sysinfo.h
* sysdeps/unix/sysv/linux/include/sys/timex.h
* sysdeps/x86/fpu/include/bits/fenv.h:
Add #ifndef _ISOMAC guard around internal declarations.
Add multiple-inclusion guard if not already present.
2016-08-24 01:19:17 +00:00
|
|
|
# ifndef _ISOMAC
|
|
|
|
|
1998-08-09 17:39:48 +00:00
|
|
|
/* Now define the internal interfaces. */
|
2012-01-08 04:57:22 +00:00
|
|
|
extern void __updwtmp (const char *__wtmp_file, const struct utmp *__utmp);
|
2017-10-01 22:51:44 +00:00
|
|
|
libc_hidden_proto (__updwtmp)
|
2021-06-30 05:21:13 +00:00
|
|
|
extern int __utmpname (const char *__file);
|
|
|
|
libc_hidden_proto (__utmpname)
|
1999-11-23 17:22:17 +00:00
|
|
|
extern struct utmp *__getutent (void);
|
2017-10-01 22:51:44 +00:00
|
|
|
libc_hidden_proto (__getutent)
|
2021-06-30 05:21:13 +00:00
|
|
|
extern void __setutent (void);
|
|
|
|
libc_hidden_proto (__setutent)
|
|
|
|
extern void __endutent (void);
|
|
|
|
libc_hidden_proto (__endutent)
|
2012-01-08 04:57:22 +00:00
|
|
|
extern struct utmp *__getutid (const struct utmp *__id);
|
2017-10-01 22:51:44 +00:00
|
|
|
libc_hidden_proto (__getutid)
|
2012-01-08 04:57:22 +00:00
|
|
|
extern struct utmp *__getutline (const struct utmp *__line);
|
2017-10-01 22:51:44 +00:00
|
|
|
libc_hidden_proto (__getutline)
|
2012-01-08 04:57:22 +00:00
|
|
|
extern struct utmp *__pututline (const struct utmp *__utmp_ptr);
|
2017-10-01 22:51:44 +00:00
|
|
|
libc_hidden_proto (__pututline)
|
1999-11-23 17:22:17 +00:00
|
|
|
extern int __getutent_r (struct utmp *__buffer, struct utmp **__result);
|
2017-10-01 22:51:44 +00:00
|
|
|
libc_hidden_proto (__getutent_r)
|
2012-01-08 04:57:22 +00:00
|
|
|
extern int __getutid_r (const struct utmp *__id, struct utmp *__buffer,
|
1999-11-23 17:22:17 +00:00
|
|
|
struct utmp **__result);
|
2017-10-01 22:51:44 +00:00
|
|
|
libc_hidden_proto (__getutid_r)
|
2012-01-08 04:57:22 +00:00
|
|
|
extern int __getutline_r (const struct utmp *__line,
|
1999-11-23 17:22:17 +00:00
|
|
|
struct utmp *__buffer, struct utmp **__result);
|
2017-10-01 22:51:44 +00:00
|
|
|
libc_hidden_proto (__getutline_r)
|
2004-10-24 21:29:41 +00:00
|
|
|
|
2021-06-30 05:21:14 +00:00
|
|
|
libc_hidden_proto (login)
|
|
|
|
libc_hidden_proto (login_tty)
|
|
|
|
libc_hidden_proto (logout)
|
|
|
|
libc_hidden_proto (logwtmp)
|
2004-10-24 21:29:41 +00:00
|
|
|
|
Installed header hygiene (BZ#20366): Test of installed headers.
This adds a test to ensure that the problems fixed in the last several
patches do not recur. Each directory checks the headers that it
installs for two properties: first, each header must be compilable in
isolation, as both C and C++, under a representative combination of
language and library conformance levels; second, there is a blacklist
of identifiers that may not appear in any installed header, currently
consisting of the legacy BSD typedefs. (There is an exemption for the
headers that define those typedefs, and for the RPC headers. It may be
necessary to make this more sophisticated if we add more stuff to the
blacklist in the future.)
In order for this test to work correctly, every wrapper header
that actually defines something must guard those definitions with
#ifndef _ISOMAC. This is the existing mechanism used by the conform/
tests to tell wrapper headers not to define anything that the public
header wouldn't, and not to use anything from libc-symbols.h. conform/
only cares for headers that we need to check for standards conformance,
whereas this test applies to *every* header. (Headers in include/ that
are either installed directly, or are internal-use-only and do *not*
correspond to any installed header, are not affected.)
* scripts/check-installed-headers.sh: New script.
* Rules: In each directory that defines header files to be installed,
run check-installed-headers.sh on them as a special test.
* Makefile: Likewise for the headers installed at top level.
* include/aliases.h, include/alloca.h, include/argz.h
* include/arpa/nameser.h, include/arpa/nameser_compat.h
* include/elf.h, include/envz.h, include/err.h
* include/execinfo.h, include/fpu_control.h, include/getopt.h
* include/gshadow.h, include/ifaddrs.h, include/libintl.h
* include/link.h, include/malloc.h, include/mcheck.h
* include/mntent.h, include/netinet/ether.h
* include/nss.h, include/obstack.h, include/printf.h
* include/pty.h, include/resolv.h, include/rpc/auth.h
* include/rpc/auth_des.h, include/rpc/auth_unix.h
* include/rpc/clnt.h, include/rpc/des_crypt.h
* include/rpc/key_prot.h, include/rpc/netdb.h
* include/rpc/pmap_clnt.h, include/rpc/pmap_prot.h
* include/rpc/pmap_rmt.h, include/rpc/rpc.h
* include/rpc/rpc_msg.h, include/rpc/svc.h
* include/rpc/svc_auth.h, include/rpc/xdr.h
* include/rpcsvc/nis_callback.h, include/rpcsvc/nislib.h
* include/rpcsvc/yp.h, include/rpcsvc/ypclnt.h
* include/rpcsvc/ypupd.h, include/shadow.h
* include/stdio_ext.h, include/sys/epoll.h
* include/sys/file.h, include/sys/gmon.h, include/sys/ioctl.h
* include/sys/prctl.h, include/sys/profil.h
* include/sys/statfs.h, include/sys/sysctl.h
* include/sys/sysinfo.h, include/ttyent.h, include/utmp.h
* sysdeps/arm/nacl/include/bits/setjmp.h
* sysdeps/mips/include/sys/asm.h
* sysdeps/unix/sysv/linux/include/sys/sysinfo.h
* sysdeps/unix/sysv/linux/include/sys/timex.h
* sysdeps/x86/fpu/include/bits/fenv.h:
Add #ifndef _ISOMAC guard around internal declarations.
Add multiple-inclusion guard if not already present.
2016-08-24 01:19:17 +00:00
|
|
|
# endif /* !_ISOMAC */
|
1998-09-06 23:45:24 +00:00
|
|
|
#endif
|