mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-02 22:23:52 +08:00
ce42435cab
* sysdeps/generic/utmp_file.c: Use not-cancelable syscalls all over the place. It would be allowed to have these fucntions as cancellation points but the cleanup would be ugly and a lot of work. * sysdeps/generic/not-cancel.h (fcntl_not_cancel): Define. * sysdeps/unix/sysv/linux/not-cancel.h (fcntl_not_cancel): Define. * include/fcntl.h (__fcntl_nocancel): Declare. * sysdeps/unix/sysv/linux/fcntl.c: New file. * sysdeps/unix/sysv/linux/i386/fcntl.c (__libc_fcntl): Only enable cancellation if absolutely needed. (__fcntl_nocancel): Define. * posix/unistd.h (gethostid): Remove __THROW. Clarify comment. * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gethostid.c): Add -fexceptions. * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Use extend_alloca. * resolv/res_init.c (__res_nclose): Use close_not_cancel_no_status instead of __close.
20 lines
703 B
C
20 lines
703 B
C
#ifndef _FCNTL_H
|
|
#include <io/fcntl.h>
|
|
|
|
/* Now define the internal interfaces. */
|
|
extern int __open64 (__const char *__file, int __oflag, ...);
|
|
libc_hidden_proto (__open64)
|
|
extern int __libc_open64 (const char *file, int oflag, ...);
|
|
extern int __libc_open (const char *file, int oflag, ...);
|
|
libc_hidden_proto (__libc_open)
|
|
extern int __libc_creat (const char *file, mode_t mode);
|
|
extern int __libc_fcntl (int fd, int cmd, ...);
|
|
extern int __fcntl_nocancel (int fd, int cmd, ...) attribute_hidden;
|
|
libc_hidden_proto (__libc_fcntl)
|
|
extern int __open (__const char *__file, int __oflag, ...);
|
|
libc_hidden_proto (__open)
|
|
extern int __fcntl (int __fd, int __cmd, ...);
|
|
libc_hidden_proto (__fcntl)
|
|
|
|
#endif
|