mirror of
				https://sourceware.org/git/glibc.git
				synced 2025-11-03 20:53:13 +03:00 
			
		
		
		
	mq_notify (in the 1996 edition of POSIX) brings in references to recv and socket (not in POSIX until the 2001 edition). This patch fixes this by using __recv and __socket, exporting them from libc at version GLIBC_PRIVATE. Tested for x86_64 and x86 (testsuite and comparison of installed stripped shared libraries; PLT / dynamic symbol table changes render the comparison not particularly useful for libc). [BZ #18546] * socket/recv.c (__recv): Use libc_hidden_def. * socket/socket.c (__socket): Likewise. * sysdeps/mach/hurd/recv.c (__recv): Likewise. * sysdeps/mach/hurd/socket.c (__socket): Likewise. * sysdeps/unix/sysv/linux/generic/recv.c (__recv): Likewise. * sysdeps/unix/sysv/linux/recv.c (__recv): Use libc_hidden_weak. * sysdeps/unix/sysv/linux/socket.c (__socket): Use libc_hidden_def. * sysdeps/unix/sysv/linux/x86_64/recv.c (__recv): Use libc_hidden_weak. * include/sys/socket.h (__socket): Do not use attribute_hidden. Use libc_hidden_proto. (__recv): Likewise. * socket/Versions (libc): Export __recv and __socket at version GLIBC_PRIVATE. * sysdeps/unix/sysv/linux/mq_notify.c (helper_thread): Call __recv instead of recv. (init_mq_netlink): Call __socket instead of socket. * conform/Makefile (test-xfail-POSIX/mqueue.h/linknamespace): Remove variable.
		
			
				
	
	
		
			45 lines
		
	
	
		
			575 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
		
			575 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
libc {
 | 
						|
  GLIBC_2.0 {
 | 
						|
    # functions used in other libraries
 | 
						|
    __connect; __send;
 | 
						|
 | 
						|
    # a*
 | 
						|
    accept;
 | 
						|
 | 
						|
    # b*
 | 
						|
    bind;
 | 
						|
 | 
						|
    # c*
 | 
						|
    connect;
 | 
						|
 | 
						|
    # g*
 | 
						|
    getpeername; getsockname; getsockopt;
 | 
						|
 | 
						|
    # i*
 | 
						|
    isfdtype;
 | 
						|
 | 
						|
    # l*
 | 
						|
    listen;
 | 
						|
 | 
						|
    # r*
 | 
						|
    recv; recvfrom; recvmsg;
 | 
						|
 | 
						|
    # s*
 | 
						|
    send; sendmsg; sendto; setsockopt; shutdown; socket; socketpair;
 | 
						|
  }
 | 
						|
  GLIBC_2.2.4 {
 | 
						|
    # Addition from P1003.1-200x
 | 
						|
    sockatmark;
 | 
						|
  }
 | 
						|
  GLIBC_2.10 {
 | 
						|
    accept4;
 | 
						|
  }
 | 
						|
  GLIBC_2.17 {
 | 
						|
    recvmmsg; sendmmsg;
 | 
						|
  }
 | 
						|
  GLIBC_PRIVATE {
 | 
						|
    __sendmmsg;
 | 
						|
    __recv; __socket;
 | 
						|
  }
 | 
						|
}
 |