mirror of
				https://sourceware.org/git/glibc.git
				synced 2025-11-03 20:53:13 +03:00 
			
		
		
		
	Make '__close_nocancel_nostatus' standalone. This is a generic version analogous to '__close_nocancel'. Platforms may choose to implement an inline variant instead where the syscall invocation code sequence is short enough to be beneficial over a function call. Reviewed-by: Florian Weimer <fweimer@redhat.com>
		
			
				
	
	
		
			372 lines
		
	
	
		
			6.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			372 lines
		
	
	
		
			6.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
%include <time64-compat.h>
 | 
						|
libc {
 | 
						|
  GLIBC_2.0 {
 | 
						|
    # functions used in inline functions or macros
 | 
						|
    __cmsg_nxthdr;
 | 
						|
 | 
						|
    # functions used in other libraries
 | 
						|
    __clone;
 | 
						|
 | 
						|
    # helper functions
 | 
						|
    __errno_location;
 | 
						|
 | 
						|
    # b*
 | 
						|
    bdflush;
 | 
						|
 | 
						|
    # c*
 | 
						|
    clone; create_module;
 | 
						|
 | 
						|
    # d*
 | 
						|
    delete_module;
 | 
						|
 | 
						|
    # g*
 | 
						|
    get_kernel_syms; getresgid; getresuid;
 | 
						|
 | 
						|
    # i*
 | 
						|
    init_module;
 | 
						|
 | 
						|
    # k*
 | 
						|
    klogctl;
 | 
						|
 | 
						|
    # l*
 | 
						|
    llseek;
 | 
						|
 | 
						|
    # m*
 | 
						|
    mremap;
 | 
						|
 | 
						|
    # n*
 | 
						|
    nfsservctl;
 | 
						|
 | 
						|
    # p*
 | 
						|
    personality; prctl;
 | 
						|
 | 
						|
    # q*
 | 
						|
    query_module; quotactl;
 | 
						|
 | 
						|
    # s*
 | 
						|
    setfsgid; setfsuid;
 | 
						|
 | 
						|
    # s*
 | 
						|
    setresgid; setresuid; swapoff; swapon; sysctl; sysinfo;
 | 
						|
 | 
						|
    # u*
 | 
						|
    umount; uselib;
 | 
						|
 | 
						|
    _sys_errlist; sys_errlist; _sys_nerr; sys_nerr;
 | 
						|
  }
 | 
						|
  GLIBC_2.1 {
 | 
						|
    # functions used in inline functions or macros
 | 
						|
    __libc_sa_len;
 | 
						|
 | 
						|
    # Since we have new signals this structure changed.
 | 
						|
    _sys_siglist; sys_siglist; sys_sigabbrev;
 | 
						|
 | 
						|
    # New errlist.
 | 
						|
    _sys_errlist; sys_errlist; _sys_nerr; sys_nerr;
 | 
						|
 | 
						|
    # chown interface change.
 | 
						|
    chown;
 | 
						|
 | 
						|
    # Change in pthread_attr_t.
 | 
						|
    pthread_attr_init;
 | 
						|
 | 
						|
    # c*
 | 
						|
    capget; capset;
 | 
						|
 | 
						|
    # n*
 | 
						|
    ntp_adjtime; ntp_gettime;
 | 
						|
 | 
						|
    # u*
 | 
						|
    umount2;
 | 
						|
 | 
						|
    _sys_errlist; sys_errlist; _sys_nerr; sys_nerr;
 | 
						|
  }
 | 
						|
  GLIBC_2.2 {
 | 
						|
    # needed in other libraries.
 | 
						|
    __endmntent; __getmntent_r; __setmntent; __statfs; __sysctl;
 | 
						|
 | 
						|
    # ipc ctl interface change.
 | 
						|
    semctl; shmctl; msgctl;
 | 
						|
 | 
						|
    # Old symbol versions from libpthread.
 | 
						|
    __pread64;
 | 
						|
    __pwrite64;
 | 
						|
    lseek64;
 | 
						|
    open64;
 | 
						|
    pread;
 | 
						|
    pread64;
 | 
						|
    pwrite;
 | 
						|
    pwrite64;
 | 
						|
  }
 | 
						|
  GLIBC_2.2.1 {
 | 
						|
    # p*
 | 
						|
    pivot_root;
 | 
						|
  }
 | 
						|
  GLIBC_2.3 {
 | 
						|
    # r*
 | 
						|
    readahead;
 | 
						|
 | 
						|
    _sys_errlist; sys_errlist; _sys_nerr; sys_nerr;
 | 
						|
  }
 | 
						|
  GLIBC_2.3.2 {
 | 
						|
    # New kernel interfaces.
 | 
						|
    epoll_create; epoll_ctl; epoll_wait;
 | 
						|
  }
 | 
						|
  GLIBC_2.3.3 {
 | 
						|
    _sys_siglist;
 | 
						|
    gnu_dev_major;
 | 
						|
    gnu_dev_makedev;
 | 
						|
    gnu_dev_minor;
 | 
						|
    posix_fadvise64;
 | 
						|
    posix_fallocate64;
 | 
						|
    sys_sigabbrev;
 | 
						|
    sys_siglist;
 | 
						|
 | 
						|
    # Changed timer_t.  Only used by some 64-bit targets.
 | 
						|
    timer_create;
 | 
						|
    timer_delete;
 | 
						|
    timer_getoverrun;
 | 
						|
    timer_gettime;
 | 
						|
    timer_settime;
 | 
						|
  }
 | 
						|
  GLIBC_2.3.4 {
 | 
						|
    sched_getaffinity; sched_setaffinity;
 | 
						|
  }
 | 
						|
  GLIBC_2.4 {
 | 
						|
    inotify_init; inotify_add_watch; inotify_rm_watch;
 | 
						|
 | 
						|
    unshare;
 | 
						|
 | 
						|
    _sys_errlist; sys_errlist; _sys_nerr; sys_nerr;
 | 
						|
  }
 | 
						|
  GLIBC_2.5 {
 | 
						|
    splice; tee; vmsplice;
 | 
						|
  }
 | 
						|
  GLIBC_2.6 {
 | 
						|
    epoll_pwait; sync_file_range; sched_getcpu;
 | 
						|
  }
 | 
						|
  GLIBC_2.7 {
 | 
						|
    eventfd; eventfd_read; eventfd_write; signalfd;
 | 
						|
  }
 | 
						|
  GLIBC_2.8 {
 | 
						|
    timerfd_create; timerfd_settime; timerfd_gettime;
 | 
						|
  }
 | 
						|
  GLIBC_2.9 {
 | 
						|
    epoll_create1; inotify_init1;
 | 
						|
  }
 | 
						|
  GLIBC_2.10 {
 | 
						|
    fallocate;
 | 
						|
  }
 | 
						|
  GLIBC_2.11 {
 | 
						|
    fallocate64;
 | 
						|
  }
 | 
						|
  GLIBC_2.12 {
 | 
						|
    _sys_errlist; sys_errlist; _sys_nerr; sys_nerr;
 | 
						|
 | 
						|
    ntp_gettimex;
 | 
						|
 | 
						|
    recvmmsg;
 | 
						|
  }
 | 
						|
  GLIBC_2.13 {
 | 
						|
    prlimit; prlimit64;
 | 
						|
 | 
						|
    fanotify_init; fanotify_mark;
 | 
						|
  }
 | 
						|
  GLIBC_2.14 {
 | 
						|
    clock_adjtime;
 | 
						|
 | 
						|
    name_to_handle_at; open_by_handle_at;
 | 
						|
 | 
						|
    setns;
 | 
						|
 | 
						|
    sendmmsg;
 | 
						|
  }
 | 
						|
  GLIBC_2.15 {
 | 
						|
    process_vm_readv; process_vm_writev;
 | 
						|
  }
 | 
						|
  GLIBC_2.27 {
 | 
						|
    memfd_create;
 | 
						|
    mlock2;
 | 
						|
    pkey_alloc; pkey_free; pkey_set; pkey_get; pkey_mprotect;
 | 
						|
  }
 | 
						|
  GLIBC_2.29 {
 | 
						|
    getcpu;
 | 
						|
  }
 | 
						|
  GLIBC_2.30 {
 | 
						|
    getdents64; gettid; tgkill;
 | 
						|
  }
 | 
						|
  GLIBC_2.32 {
 | 
						|
  }
 | 
						|
  GLIBC_2.34 {
 | 
						|
%ifdef TIME64_NON_DEFAULT
 | 
						|
    # 64-bit time_t support
 | 
						|
    __adjtime64;
 | 
						|
    ___adjtimex64;
 | 
						|
    __aio_suspend_time64;
 | 
						|
    __clock_adjtime64;
 | 
						|
    __clock_getres64;
 | 
						|
    __clock_gettime64;
 | 
						|
    __clock_nanosleep_time64;
 | 
						|
    __clock_settime64;
 | 
						|
    __cnd_timedwait64;
 | 
						|
    __ctime64;
 | 
						|
    __ctime64_r;
 | 
						|
    __difftime64;
 | 
						|
    __fcntl_time64;
 | 
						|
    __fstat64_time64;
 | 
						|
    __fstatat64_time64;
 | 
						|
    __futimens64;
 | 
						|
    __futimes64;
 | 
						|
    __futimesat64;
 | 
						|
    __fts64_open_time64;
 | 
						|
    __fts64_close_time64;
 | 
						|
    __fts64_read_time64;
 | 
						|
    __fts64_set_time64;
 | 
						|
    __fts64_children_time64;
 | 
						|
    __ftw64_time64;
 | 
						|
    __nftw64_time64;
 | 
						|
    __gai_suspend_time64;
 | 
						|
    __getitimer64;
 | 
						|
    __getrusage64;
 | 
						|
    __getsockopt64;
 | 
						|
    __gettimeofday64;
 | 
						|
    __glob64_time64;
 | 
						|
    __globfree64_time64;
 | 
						|
    __gmtime64;
 | 
						|
    __gmtime64_r;
 | 
						|
    __ioctl_time64;
 | 
						|
    __localtime64;
 | 
						|
    __localtime64_r;
 | 
						|
    __lstat64_time64;
 | 
						|
    __lutimes64;
 | 
						|
    __mktime64;
 | 
						|
    __mq_timedreceive_time64;
 | 
						|
    __mq_timedsend_time64;
 | 
						|
    __msgctl64;
 | 
						|
    __mtx_timedlock64;
 | 
						|
    __nanosleep64;
 | 
						|
    __nanosleep64;
 | 
						|
    __ntp_gettime64;
 | 
						|
    __ntp_gettimex64;
 | 
						|
    __ppoll64;
 | 
						|
    __prctl_time64;
 | 
						|
    __pselec64;
 | 
						|
    __pselect64;
 | 
						|
    __pthread_clockjoin_np64;
 | 
						|
    __pthread_cond_clockwait64;
 | 
						|
    __pthread_cond_timedwait64;
 | 
						|
    __pthread_mutex_clocklock64;
 | 
						|
    __pthread_mutex_timedlock64;
 | 
						|
    __pthread_rwlock_clockrdlock64;
 | 
						|
    __pthread_rwlock_clockwrlock64;
 | 
						|
    __pthread_rwlock_timedrdlock64;
 | 
						|
    __pthread_rwlock_timedwrlock64;
 | 
						|
    __pthread_timedjoin_np64;
 | 
						|
    __recvmmsg64;
 | 
						|
    __recvmsg64;
 | 
						|
    __sched_rr_get_interval64;
 | 
						|
    __select64;
 | 
						|
    __sem_clockwait64;
 | 
						|
    __semctl64;
 | 
						|
    __semtimedop64;
 | 
						|
    __sem_timedwait64;
 | 
						|
    __sendmmsg64;
 | 
						|
    __sendmsg64;
 | 
						|
    __setitimer64;
 | 
						|
    __setsockopt64;
 | 
						|
    __settimeofday64;
 | 
						|
    __shmctl64;
 | 
						|
    __sigtimedwait64;
 | 
						|
    __stat64_time64;
 | 
						|
    __thrd_sleep64;
 | 
						|
    __time64;
 | 
						|
    __timegm64;
 | 
						|
    __timer_gettime64;
 | 
						|
    __timer_settime64;
 | 
						|
    __timerfd_gettime64;
 | 
						|
    __timerfd_settime64;
 | 
						|
    __timespec_get64;
 | 
						|
    __timespec_getres64;
 | 
						|
    __utime64;
 | 
						|
    __utimensat64;
 | 
						|
    __utimes64;
 | 
						|
    __utimes64;
 | 
						|
    __wait3_time64;
 | 
						|
    __wait4_time64;
 | 
						|
%endif
 | 
						|
    close_range;
 | 
						|
  }
 | 
						|
  GLIBC_2.35 {
 | 
						|
%ifdef TIME64_NON_DEFAULT
 | 
						|
    __epoll_pwait2_time64;
 | 
						|
%endif
 | 
						|
    epoll_pwait2;
 | 
						|
  }
 | 
						|
  GLIBC_2.36 {
 | 
						|
    fsconfig;
 | 
						|
    fsmount;
 | 
						|
    fsopen;
 | 
						|
    fspick;
 | 
						|
    move_mount;
 | 
						|
    mount_setattr;
 | 
						|
    open_tree;
 | 
						|
    pidfd_open;
 | 
						|
    pidfd_getfd;
 | 
						|
    pidfd_send_signal;
 | 
						|
    process_madvise;
 | 
						|
    process_mrelease;
 | 
						|
  }
 | 
						|
  GLIBC_2.37 {
 | 
						|
%ifdef TIME64_NON_DEFAULT
 | 
						|
    __ppoll64_chk;
 | 
						|
%endif
 | 
						|
  }
 | 
						|
  GLIBC_2.39 {
 | 
						|
    pidfd_getpid;
 | 
						|
    pidfd_spawn;
 | 
						|
    pidfd_spawnp;
 | 
						|
    posix_spawnattr_getcgroup_np;
 | 
						|
    posix_spawnattr_setcgroup_np;
 | 
						|
  }
 | 
						|
  GLIBC_2.41 {
 | 
						|
    sched_getattr;
 | 
						|
    sched_setattr;
 | 
						|
  }
 | 
						|
  GLIBC_2.42 {
 | 
						|
    cfgetospeed;
 | 
						|
    cfgetispeed;
 | 
						|
    cfsetospeed;
 | 
						|
    cfsetispeed;
 | 
						|
    cfsetspeed;
 | 
						|
  }
 | 
						|
  GLIBC_PRIVATE {
 | 
						|
    # functions used in other libraries
 | 
						|
    __syscall_rt_sigqueueinfo;
 | 
						|
    __open_nocancel;
 | 
						|
    __read_nocancel;
 | 
						|
    __pread64_nocancel;
 | 
						|
    __close_nocancel;
 | 
						|
    __close_nocancel_nostatus;
 | 
						|
    __sigtimedwait;
 | 
						|
    # functions used by nscd
 | 
						|
    __netlink_assert_response;
 | 
						|
  }
 | 
						|
}
 | 
						|
 | 
						|
librt {
 | 
						|
  GLIBC_2.3.3 {
 | 
						|
    # Leftover from the int -> timer_t transition.  For ABIs that came later
 | 
						|
    # and do not have the symbol version, this version node is merged with
 | 
						|
    # the baseline version.
 | 
						|
    __librt_version_placeholder;
 | 
						|
  }
 | 
						|
}
 | 
						|
 | 
						|
ld {
 | 
						|
  GLIBC_2.35 {
 | 
						|
    __rseq_flags;
 | 
						|
    __rseq_offset;
 | 
						|
    __rseq_size;
 | 
						|
  }
 | 
						|
}
 |