From 2c008571c3ad156479307b7e23185ae566b5776a Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Sat, 19 Apr 2003 16:57:17 +0000 Subject: Update. 2003-04-19 Ulrich Drepper * catgets/nl_types.h: Remove __THROW marker from cancellation points. * dirent/dirent.h: Likewise. * dlfcn/dlfcn.h: Likewise. * grp/grp.h: Likewise. * iconv/iconv.h: Likewise. * io/fcntl.h: Likewise. * io/ftw.h: Likewise. * libio/stdio.h: Likewise. * misc/sys/mman.h: Likewise. * misc/sys/select.h: Likewise. * misc/sys/syslog.h: Likewise. * misc/sys/uio.h: Likewise. * posix/spawn.h: Likewise. * posix/unistd.h: Likewise. * posix/sys/wait.h: Likewise. * pwd/pwd.h: Likewise. * resolv/netdb.h: Likewise. * rt/aio.h: Likewise. * shadow/shadow.h: Likewise. * signal/signal.h: Likewise. * socket/sys/socket.h: Likewise. * stdlib/stdlib.h: Likewise. * streams/stropts.h: Likewise. * string/string.h: Likewise. * sysdeps/gnu/utmpx.h: Likewise. * sysvipc/sys/msg.h: Likewise. * termios/termios.h: Likewise. * time/time.h: Likewise. * wcsmbs/wchar.h: Likewise. * iconv/gconv_cache.c: Include and use non-cancelable functions. * misc/daemon.c: Likewise. * sysdeps/generic/backtracesymsfd.c: Likewise. * sysdeps/generic/check_fds.c: Likewise. * sysdeps/unix/sysv/linux/gethostid.c: Likewise. * sysdeps/unix/sysv/linux/not-cancel.h: New file. * sysdeps/generic/not-cancel.h: New file. * csu/Makefile (distribute): Add not-cancel.h. * sysdeps/unix/sysv/linux/fatal-prepare.h: New file. * sysdeps/unix/sysv/linux/Makefile: Define FATAL_PREPARE_INCLUDE for assert.c and assert-perr.c to include . * sysdeps/unix/sysv/linux/Dist: Add fatal-prepare.h. * sysdeps/posix/remove.c (remove): Rewrite. No need to restore errno and unlink first. * io/ftw.c (ftw_dir): In all places assume fchdir is available. 2003-04-18 Ulrich Drepper * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Use INTERNAL_SYSCALL instead of INLINE_SYSCALL. --- shadow/shadow.h | 84 +++++++++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 64 insertions(+), 20 deletions(-) (limited to 'shadow/shadow.h') diff --git a/shadow/shadow.h b/shadow/shadow.h index 81ddc71..778df52 100644 --- a/shadow/shadow.h +++ b/shadow/shadow.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1996, 1997, 1998, 1999 Free Software Foundation, Inc. +/* Copyright (C) 1996, 1997, 1998, 1999, 2003 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 @@ -54,46 +54,90 @@ struct spwd }; -/* Open database for reading. */ -extern void setspent (void) __THROW; +/* Open database for reading. -/* Close database. */ -extern void endspent (void) __THROW; + This function is not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation it is a cancellation point and + therefore not marked with __THROW. */ +extern void setspent (void); -/* Get next entry from database, perhaps after opening the file. */ -extern struct spwd *getspent (void) __THROW; +/* Close database. -/* Get shadow entry matching NAME. */ -extern struct spwd *getspnam (__const char *__name) __THROW; + This function is not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation it is a cancellation point and + therefore not marked with __THROW. */ +extern void endspent (void); -/* Read shadow entry from STRING. */ -extern struct spwd *sgetspent (__const char *__string) __THROW; +/* Get next entry from database, perhaps after opening the file. -/* Read next shadow entry from STREAM. */ -extern struct spwd *fgetspent (FILE *__stream) __THROW; + This function is not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation it is a cancellation point and + therefore not marked with __THROW. */ +extern struct spwd *getspent (void); -/* Write line containing shadow password entry to stream. */ -extern int putspent (__const struct spwd *__p, FILE *__stream) __THROW; +/* Get shadow entry matching NAME. + + This function is not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation it is a cancellation point and + therefore not marked with __THROW. */ +extern struct spwd *getspnam (__const char *__name); + +/* Read shadow entry from STRING. + + This function is not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation it is a cancellation point and + therefore not marked with __THROW. */ +extern struct spwd *sgetspent (__const char *__string); + +/* Read next shadow entry from STREAM. + + This function is not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation it is a cancellation point and + therefore not marked with __THROW. */ +extern struct spwd *fgetspent (FILE *__stream); + +/* Write line containing shadow password entry to stream. + + This function is not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation it is a cancellation point and + therefore not marked with __THROW. */ +extern int putspent (__const struct spwd *__p, FILE *__stream); #ifdef __USE_MISC -/* Reentrant versions of some of the functions above. */ +/* Reentrant versions of some of the functions above. + + These functions are not part of POSIX and therefore no official + cancellation point. But due to similarity with an POSIX interface + or due to the implementation they are cancellation points and + therefore not marked with __THROW. */ extern int getspent_r (struct spwd *__result_buf, char *__buffer, - size_t __buflen, struct spwd **__result) __THROW; + size_t __buflen, struct spwd **__result); extern int getspnam_r (__const char *__name, struct spwd *__result_buf, char *__buffer, size_t __buflen, - struct spwd **__result)__THROW; + struct spwd **__result); extern int sgetspent_r (__const char *__string, struct spwd *__result_buf, char *__buffer, size_t __buflen, - struct spwd **__result) __THROW; + struct spwd **__result); extern int fgetspent_r (FILE *__stream, struct spwd *__result_buf, char *__buffer, size_t __buflen, - struct spwd **__result) __THROW; + struct spwd **__result); #endif /* misc */ + +/* The simple locking functionality provided here is not suitable for + multi-threaded applications. */ + /* Protect password file against multi writers. */ extern int lckpwdf (void) __THROW; -- cgit v1.1