| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
After some discussion in libc-alpha about this POSIX compliance fix, I see
that GLIBC should indeed revert back to previous definition of msghdr and
cmsghdr and implementation of sendmsg, recvmsg, sendmmsg, recvmmsg due some
reasons:
* The possible issue where the syscalls wrapper add the compatibility
layer is quite limited in scope and range. And kernel current
also add some limits to the values on the internal msghdr and
cmsghdr fields:
- msghdr::msg_iovlen larger than UIO_MAXIOV (1024) returns
EMSGSIZE.
- msghdr::msg_controllen larger than INT_MAX returns ENOBUFS.
* There is a small performance hit for recvmsg/sendmsg/recmmsg which
is neglectable, but it is a big hit for sendmmsg since now instead
of calling the syscall for the packed structure, GLIBC is calling
multiple sendmsg. This defeat the very existence of the syscall.
* It currently breaks libsanitizer build on GCC [1] (I fixed on compiler-rt).
However the fix is incomplete because it does add any runtime check
since libsanitizer currently does not have any facility to intercept
symbols with multiple version [2].
This, along with incorret dlsym/dlvsym return for versioned symbol due
another bug [3], makes hard to interpose versioned symbols.
Also, current approach of fixing GCC PR#71445 leads to half-baked
solutions without versioned symbol interposing.
This patch basically reverts commits 2f0dc39029ae08, 222c2d7f4357d66,
af7f7c7ec8dea1. I decided to not revert abf29edd4a3918 (Adjust
kernel-features.h defaults for recvmsg and sendmsg) mainly because it
does not really address the POSIX compliance original issue and also
adds some cleanups.
Tested on x86, i386, s390, s390x, aarch64, and powerpc64le.
[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71445
[2] https://github.com/google/sanitizers/issues/628
[3] https://sourceware.org/bugzilla/show_bug.cgi?id=14932
* conform/data/sys/socket.h-data (msghdr.msg_iovlen): Add xfail-.
(msghdr.msg_controllen): Likewise.
(cmsghdr.cmsg_len): Likewise.
* nptl/Makefile (libpthread-routines): Remove ptw-oldrecvmsg and
ptw-oldsendmsg.
(CFLAGS-oldrecvmsg.c): Remove rule.
(CFLAGS-oldsendmsg.c): Likewise.
(CFLAGS-recvmsg.c): Add rule.
(CFLAGS-sendmsg.c): Likewise.
* sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Remove
oldrecvmsg, oldsendmsg, oldrecvmmsg, oldsendmmsg.
(CFLAGS-recvmsg.c): Remove rule.
(CFLAGS-sendmsg.c): Likewise.
(CFLAGS-oldrecvmsg.c): Likewise.
(CFLAGS-oldsendmsg.c): Likewise.
(CFLAGS-recvmmsg.c): Likewise.
* sysdeps/unix/sysv/linux/bits/socket.h (msghdr.msg_iovlen): Revert
to kernel defined interfaces.
(msghdr.msg_controllen): Likewise.
(cmsghdr.cmsg_len): Likewise.
(msghdr.__glibc_reserved1): Remove member.
(msghdr.__glibc_reserved2): Likewise.
(cmsghdr.__glibc_reserved1): Likewise.
* sysdeps/unix/sysv/linux/oldrecvmmsg.c: Remove file.
* sysdeps/unix/sysv/linux/oldrecvmsg.c: Likewise.
* sysdeps/unix/sysv/linux/oldsendmmsg.c: Likewise.
* sysdeps/unix/sysv/linux/oldsendmsg.c: Likewise.
* sysdeps/unix/sysv/linux/recvmmsg.c: Revert back to previous
version.
* sysdeps/unix/sysv/linux/recvmsg.c: Likewise.
* sysdeps/unix/sysv/linux/sendmmsg.c: Likewise.
* sysdeps/unix/sysv/linux/sendmsg.c: Likewise.
* sysdeps/unix/sysv/linux/aarch64/Versions [libc] (GLIBC_2.24):
Remove recvmsg and sendmsg.
* sysdeps/unix/sysv/linux/alpha/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/hppa/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/i386/Versions [libc] (GLIBC_2.24): Likewise.
* sysdeps/unix/sysv/linux/m68k/Versions [libc] (GLIBC_2.24): Likewise.
* sysdeps/unix/sysv/linux/microblaze/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/mips/mips32/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/mips/mips64/n32/Versions
[libc] (GLIBC_2.24): Likewise.
* sysdeps/unix/sysv/linux/nios2/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/powerpc/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions
[libc] (GLIBC_2.24): Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/sh/Versions [libc] (GLIBC_2.24): Likewise.
* sysdeps/unix/sysv/linux/sparc/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/tile/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/x86_64/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/Versions: Remove file
* sysdeps/unix/sysv/linux/x86_64/64/Versions: Likewise.
* sysdeps/unix/sysv/linux/mips/mips64/n64/Versions: Likewise.
* sysdeps/unix/sysv/linux/aarch64/libc.abilist: Remove new 2.24
version for {recv,send,recm,sendm}msg.
* sysdeps/unix/sysv/linux/alpha/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/arm/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/hppa/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/i386/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/ia64/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/microblaze/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist:
Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist:
Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/nios2/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/sh/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/tile/tilepro/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/x86_64/64/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Likewise.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
POSIX specifies that both msghdr::msg_iovlen and msghdr::msg_controllen
to be of size int and socklen_t respectively. However Linux defines it as
both size_t and for 64-bit it requires some adjustments to make the
functions standard compliance.
This patch fixes it by creating a temporary header and zeroing the pad
fields for 64-bits architecture where size of size_t exceeds the size of
the int.
Also the new recvmsg and sendmsg implementation is only added on libc,
with libpthread only containing a compat symbol.
Tested on x86_64, i686, aarch64, armhf, and powerpc64le.
* conform/data/sys/socket.h-data (msghdr.msg_iovlen): Remove xfail-
and change to correct expected type.
(msghdr.msg_controllen): Likewise.
(cmsghdr.cmsg_len): Likewise.
* sysdeps/unix/sysv/linux/bits/socket.h (msghdr.msg_iovlen): Fix
expected POSIX assumption about the size.
(msghdr.msg_controllen): Likewise.
(msghdr.__glibc_reserved1): Likewise.
(msghdr.__glibc_reserved2): Likewise.
(cmsghdr.cmsg_len): Likewise.
(cmsghdr.__glibc_reserved1): Likewise.
* nptl/Makefile (libpthread-routines): Remove ptw-recvmsg and ptw-sendmsg.
Add ptw-oldrecvmsg and ptw-oldsendmsg.
(CFLAGS-sendmsg.c): Remove rule.
(CFLAGS-recvmsg.c): Likewise.
(CFLAGS-oldsendmsg.c): Add rule.
(CFLAGS-oldrecvmsg.c): Likewise.
* sysdeps/unix/sysv/linux/alpha/Versions [libc] (GLIBC_2.24): Add
recvmsg and sendmsg.
* sysdeps/unix/sysv/linux/aarch64/Version [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/arm/Versions [libc] (GLIBC_2.24): Likewise.
* sysdeps/unix/sysv/linux/hppa/Versions [libc] (GLIBC_2.24): Likewise.
* sysdeps/unix/sysv/linux/i386/Versions [libc] (GLIBC_2.24): Likewise.
* sysdeps/unix/sysv/linux/ia64/Versions [libc] (GLIBC_2.24): Likewise.
* sysdeps/unix/sysv/linux/m68k/Versions [libc] (GLIBC_2.24): Likewise.
* sysdeps/unix/sysv/linux/microblaze/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/mips/mips32/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/mips/mips64/n32/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/mips/mips64/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/nios2/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/powerpc/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions [libc]
(GLIBC_2.24): Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/sh/Versions [libc] (GLIBC_2.24): Likewise.
* sysdeps/unix/sysv/linux/sparc/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/Versions [libc] (GLIBC_2.24):
Likewise.
( sysdeps/unix/sysv/linux/tile/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/Versions [libc]
(GLIBC_2.24): Likewise.
( sysdeps/unix/sysv/linux/x86_64/64/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/x84_64/Versions [libc] (GLIBC_2.24):
Likewise.
* sysdeps/unix/sysv/linux/Makefile
[$(subdir) = socket)] (sysdep_headers): Add oldrecvmsg and oldsendmsg.
(CFLAGS-sendmsg.c): Add rule.
(CFLAGS-recvmsg.c): Likewise.
(CFLAGS-oldsendmsg.c): Likewise.
(CFLAGS-oldrecvmsg.c): Likewise.
* sysdeps/unix/sysv/linux/check_native.c (__check_native): Fix msghdr
initialization.
* sysdeps/unix/sysv/linux/check_pf.c (make_request): Likewise.
* sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Likewise.
* sysdeps/unix/sysv/linux/oldrecvmsg.c: New file.
* sysdeps/unix/sysv/linux/oldsendmsg.c: Likewise.
* sysdeps/unix/sysv/linux/recvmsg.c (__libc_recvmsg): Adjust msghdr
iovlen and controllen fields to adjust to POSIX specification.
* sysdeps/unix/sysv/linux/sendmsg.c (__libc_sendmsg): Likewise.
* sysdeps/unix/sysv/linux/aarch64/libc.abilist: New version and
added recvmsg and sendmsg.
* sysdeps/unix/sysv/linux/alpha/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/hppa/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/i386/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/ia64/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/microblaze/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/nios2/libc.abilist: Likewise
* sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist:
Likewise.
* sysdeps/unix/linux/powerpc/powerpc32/nofpu/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist: Likewise.
* sysdepe/unix/sysv/linux/powerpc/powerpc64/libc.abilist: Likewise.
Likewise.
Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/sh/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/tile/tilepro/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libc.abilist: Likewise.
Likewise.
* sysdeps/unix/sysv/linux/x86_64/64/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Likewise.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Explicit system calls for the socket operations were added in Linux kernel
in commit 86250b9d12ca for powerpc. This patch make use of those instead of
calling socketcall to save number of cycles on networking syscalls.
2015-08-25 Rajalakshmi Srinivasaraghavan <raji@linux.vnet.ibm.com>
* sysdeps/unix/sysv/linux/powerpc/kernel-features.h: Define new macros.
* sysdeps/unix/sysv/linux/accept.c: Call direct system call.
* sysdeps/unix/sysv/linux/bind.c: Call direct system call.
* sysdeps/unix/sysv/linux/connect.c: Call direct system call.
* sysdeps/unix/sysv/linux/getpeername.c: Call direct system call.
* sysdeps/unix/sysv/linux/getsockname.c: Call direct system call.
* sysdeps/unix/sysv/linux/getsockopt.c: Call direct system call.
* sysdeps/unix/sysv/linux/listen.c: Call direct system call.
* sysdeps/unix/sysv/linux/recv.c: Call direct system call.
* sysdeps/unix/sysv/linux/recvfrom.c: Call direct system call.
* sysdeps/unix/sysv/linux/recvmsg.c: Call direct system call.
* sysdeps/unix/sysv/linux/send.c: Call direct system call.
* sysdeps/unix/sysv/linux/sendmsg.c: Call direct system call.
* sysdeps/unix/sysv/linux/sendto.c: Call direct system call.
* sysdeps/unix/sysv/linux/setsockopt.c: Call direct system call.
* sysdeps/unix/sysv/linux/shutdown.c: Call direct system call.
* sysdeps/unix/sysv/linux/socket.c: Call direct system call.
* sysdeps/unix/sysv/linux/socketpair.c: Call direct system call.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch removes the socket.S implementation for all ports and replace
it by a C implementation using socketcall. For ports that implement
the syscall directly, there is no change.
The patch idea is to simplify the socket function implementation that
uses the socketcall to be based on C implemetation instead of a pseudo
assembly implementation with arch specific parts. The patch then remove
the assembly implementatation for the ports which uses socketcall
(i386, microblaze, mips, powerpc, sparc, m68k, s390 and sh).
I have cross-build GLIBC for afore-mentioned ports and tested on both
i386 and ppc32 without regressions.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1998-07-31 17:59 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/generic/bits/byteswap.h: Fix problems with side effects.
* manual/filesys.texi: Document truncate and ftruncate.
Patch by Michael Deutschmann <michael@talamasca.wkpowerlink.com>.
* shadow/putspent.c: Lock stream while generating the output.
* sunrpc/clnt_unix.c: Use ucred instead of cmsgcred again.
(__msgwrite): Rewrite accordingly.
* sunrpc/svc_unix.c: Likewise.
* sysdeps/unix/sysv/linux/Dist: Remove __recvmsg.S and __sendmsg.S.
* sysdeps/unix/sysv/linux/Makefile [$(subdir)==socket]
(sysdep_routines): Remove __sendmsg and __recvmsg.
* sysdeps/unix/sysv/linux/__recvmsg.S: Removed.
* sysdeps/unix/sysv/linux/__sendmsg.S: Removed.
* sysdeps/unix/sysv/linux/recvmsg.c: Removed.
* sysdeps/unix/sysv/linux/sendmsg.c: Removed.
* sysdeps/unix/sysv/linux/recvmsg.S: New file.
* sysdeps/unix/sysv/linux/sendmsg.S: New file.
* sysdeps/unix/sysv/linux/bits/socket.h: Define SCM_CREDENTIALS and
struct ucred. Remove struct cmsgcred.
Patches by Thorsten Kukuk.
1998-08-03 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* inet/rcmd.c (__ivaliduser): Allow '#' as comment character.
1998-08-08 14:42 Ulrich Drepper <drepper@cygnus.com>
* argp/argp-help.c: Prepare to be used outside glibc without gcc by
adding usual alloca cruft.
Reported by Eleftherios Gkioulekas <lf@amath.washington.edu>.
1998-04-05 Jim Meyering <meyering@ascend.com>
* lib/regex.c (WIDE_CHAR_SUPPORT): Define.
This now depends on HAVE_BTOWC so systems that lack btowc (like
solaris-2.5.1) don't lose.
1998-08-07 Mark Kettenis <kettenis@phys.uva.nl>
* sysdeps/generic/bits/sigaction.h: Remove definition of SA_DISABLE.
* sysdeps/generic/bits/sigstack.h: Define SS_DISABLE, SS_ONSTACK,
MINSIGSTKZ and SIGSTKSZ. Definitions match BSD.
* hurd/sigunwind.c (_hurdsig_longjmp_from_handler): Use SS_ONSTACK
instead of SA_ONSTACK.
* sysdeps/mach/hurd/sigaltstack.c (__sigaltstack): Renamed from
sigaltstack, and created a weak alias. Use SS_DISABLE and
SS_ONSTACK instead of SA_DISABLE and SA_ONSTACK.
* sysdeps/mach/hurd/sigstack.c (sigstack): Use SS_ONSTACK instead
of SA_ONSTACK. Call __sigaltstack instead of sigaltstack.
* sysdeps/mach/hurd/i386/sigreturn.c (__sigreturn): Use SS_ONSTACK
instead of SA_ONSTACK.
* sysdeps/mach/hurd/alpha/sigreturn.c (__sigreturn): Likewise.
* sysdeps/mach/hurd/mips/sigreturn.c (__sigreturn): Likewise.
* sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
Use SS_DISABLE instead of SA_DISABLE. Use SS_ONSTACK instead of
SA_ONSTACK where appropriate.
* sysdeps/mach/hurd/alpha/trampoline.c (_hurd_setup_sighandler):
Likewise.
* sysdeps/mach/hurd/hppa/trampoline.c (_hurd_setup_sighandler):
Likewise.
* sysdeps/mach/hurd/mips/trampoline.c (_hurd_setup_sighandler):
Likewise.
* manual/signal.texi (Signal Stack): Talk about SS_DISABLE and
SS_ONSTACK instead of SA_DISABLE and SA_ONSTACK in discussion of
the `ss_flags' member of `struct sigaltstack'.
1998-08-05 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* libio/Makefile (routines) [$(versioning)=yes]: Add oldtmpfile.
(shared-only-routines): Likewise.
* libio/oldtmpfile.c: New file
* stdio-common/tmpfile.c: Use __fdopen and __close.
[USE_IN_LIBIO]: Use _IO_fdopen instead of _IO_new_fdopen. Put
tmpfile on symbol version GLIBC_2.1.
* stdio-common/tmpfile64.c: Use __fdopen and __close.
[USE_IN_LIBIO]: Use _IO_fdopen instead of _IO_new_fdopen.
* stdio-common/Version [GLIBC_2.1]: Add tmpfile.
* stdio-common/tempnam.c: Use __strdup instead of strdup.
* sysdeps/posix/fdopen.c: Define __fdopen and make fdopen weak
alias.
* sysdeps/generic/fdopen.c: Likewise.
* sysdeps/mach/hurd/fdopen.c: Likewise.
* stdio/stdio.h: Declare __fdopen.
* sunrpc/openchild.c: Use __fdopen instead of fdopen.
[USE_IN_LIBIO]: Map __fdopen to _IO_fdopen.
* sysdeps/posix/tempname.c (__gen_tempname): Don't bother checking
__stub_open64, it is never defined.
1998-08-05 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* libio/iofopen64.c: Fix typo. Avoid unnessary casts.
* libio/iopopen.c: Unlink file before freeing it if command
creation failed. Avoid unnessary casts.
* libio/iofdopen.c: Avoid unnecessary cast.
* pwd/fgetpwent_r.c [USE_IN_LIBIO]: Map funlockfile to
_IO_funlockfile.
* pwd/fgetspent_r.c [USE_IN_LIBIO]: Likewise.
1998-08-06 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* grp/grp.h, pwd/pwd.h: Don't declare __grpopen, __grpread,
__grpalloc, __grpscan and the corresponding pwd functions, they
were removed long ago.
1998-08-06 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* math/libm-test.c (csqrt_test): Adjust epsilons.
(casinh_test): Likewise.
1998-08-06 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* posix/globtest.sh: Fix typo. Remove second test output file.
1998-08-07 Cristian Gafton <gafton@redhat.com>
* pwd/putpwent.c (putpwent): Avoid writting (none) in the passwd file.
* shadow/putspent.c (putspent): Likewise.
* grp/putgrent.c: New file.
* grp/Makefile (routines): Add putgrent.
* grp/Versions [GLIBC_2.1]: Add putgrent.
* grp/grp.h: Add putgrent prototype.
1998-08-04 19:33 Ulrich Drepper <drepper@cygnus.com>
* elf/elf.h: More ELF definitions.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1998-07-31 11:10 Ulrich Drepper <drepper@cygnus.com>
* elf/elf.h: Add lots of new symbols from Irix and Solaris.
* sysdeps/unix/sysv/linux/sigstack.c: Include stddef.h to get NULL
definition.
1998-07-31 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* sunrpc/xcrypt.c: Use only the first 8 characters of the password.
1998-07-30 21:06 -0400 Zack Weinberg <zack@rabi.phys.columbia.edu>
* sysdeps/generic/glob.c: Undefine strdup before defining it,
because bits/string2.h may have defined it already.
1998-07-29 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* stdio-common/vfscanf.c: Optimize looking for type modifiers.
Fix recognition of 'a' modifier vs. 'a' format.
(TYPEMOD): Removed.
* stdio-common/printf-parse.h (parse_one_spec): Optimize looking
for type modifiers. Fix recognition of 'hh' modifier.
1998-07-31 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* sunrpc/svc_unix.c: Fix typo.
1998-07-31 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* sysdeps/unix/sysv/linux/recvmsg.c: Don't check for SCM_CREDS before
syscall.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1998-07-28 Ulrich Drepper <drepper@cygnus.com>
* math/libm-test.c (tgamma_test): Remove redundant tests.
1998-07-28 16:20 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/generic/glob.c: Correct problems with */foo and GLOB_NOCHECK
where foo does not exist in any of the subdirectories.
Reported by Paul D. Smith <psmith@BayNetworks.COM>.
* posix/globtest.sh: Add test for this bug.
1998-07-28 Mark Kettenis <kettenis@phys.uva.nl>
* io/sys/statfs.h: Fix typos.
* io/sys/statvfs.h: Fix typos.
1998-07-28 Ulrich Drepper <drepper@cygnus.com>
* version.h (VERSION): Bump to 2.0.95.
* math/Makefile (libm-calls): Remove w_gamma, add w_tgamma.
* math/Versions [GLIBC_2.1]: Add tgamma, tgammaf, and tgammal.
* math/libm-test.c: Split old gamma_test and move half of it in new
function tgamma_test.
* math/bits/mathcalls.h: Add declaration of tgamma.
* sysdeps/libm-ieee754/k_standard.c: Change gamma errors into
tgamma errors.
* sysdeps/libm-ieee754/w_gamma.c: Remove lgamma compatibility code
and rename to ...
* sysdeps/libm-ieee754/w_tgamma.c: ... this. New file.
* sysdeps/libm-ieee754/w_gammaf.c: Remove lgammaf compatibility code
and rename to ...
* sysdeps/libm-ieee754/w_tgammaf.c: ... this. New file.
* sysdeps/libm-ieee754/w_gammal.c: Remove lgammal compatibility code
and rename to ...
* sysdeps/libm-ieee754/w_tgammal.c: ... this. New file.
* sysdeps/libm-ieee754/w_lgamma.c: Add gamma as weak alias.
* sysdeps/libm-ieee754/w_lgammaf.c: Likewise.
* sysdeps/libm-ieee754/w_lgammal.c: Likewise.
* stgdio-common/printf-parse.h: Implement handling of j, t, and z
modifiers.
* stdio-common/vfprintf.c: Likewise.
* stdio-common/vfscanf.c: Likewise.
* manual/stdio.texi: Document new printf/scanf modifiers.
* sysdeps/unix/sysv/linux/recvmsg.c: Remove alias __recvmsg.
* sysdeps/unix/sysv/linux/sendmsg.c: Remove alias __sendmsg.
1998-07-28 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* sunrpc/Makefile (routines): Add clnt_unix and svc_unix.
* sunrpc/Versions: Add new *unix_create functions.
* sunrpc/clnt_gen.c: Add support for RPC over AF_UNIX.
* sunrpc/clnt_unix.c: New, client side of RPC over AF_UNIX.
* sunrpc/key_call.c: Use RPC over AF_UNIX for communication
with keyserv daemon.
* sunrpc/rpc/clnt.h: Add AF_UNIX based RPC function prototypes.
* sunrpc/rpc/svc.h: Likewise.
* sunrpc/svc_authux.c: Copy internal auth flavor if none is given.
* sunrpc/svc_tcp.c: Fix typos.
* sunrpc/svc_unix.c: New, server side of AF_UNIX based RPC.
* nis/Makefile: Remove currently not working cache functions.
* nis/Versions: Add __nisbind_* functions for rpc.nisd.
* nis/nis_call.c: Rewrite binding to a NIS+ server to reuse
CLIENT handles.
* nis/nis_file.c: Fix memory leaks.
* nis/nis_intern.h: Move internal structs from here ...
* nis/rpcsvc/nislib.h: ... to here for NIS+ server and tools.
* nis/nis_lookup.c: Try at first if last client handle works.
* nis/nis_table.c: Likewise.
* nis/nis_checkpoint.c: Adjust __do_niscall2 parameters.
* nis/nis_mkdir.c: Likewise.
* nis/nis_ping.c: Likewise.
* nis/nis_rmdir.c: Likewise.
* nis/nis_server.c: Likewise.
* nis/nis_util.c: Likewise.
* nis/nis_findserv.c (__nis_findfastest): Little optimization.
1998-07-28 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* stdlib/strtol.c (STRTOL_LONG_MAX): Correct typo in last patch -
define as LONG_MAX.
1998-07-28 09:31 Ulrich Drepper <drepper@cygnus.com>
* nscd/connections.c (gr_send_answer): Deal with missing UIO_MAXIOV.
Correct test whether writev send all data.
* nscd/nscd_getgr_r.c (__nscd_getgr_r): Correct test whether readv
received all data.
1998-07-28 Mark Kettenis <kettenis@phys.uva.nl>
* nscd/nscd_getgr_r.c (__nscd_getgr_r): Deal with missing UIO_MAXIOV.
1998-07-28 Mark Kettenis <kettenis@phys.uva.nl>
* sysdeps/mach/hurd/dl-sysdep.c (open_file): Change assert call to
allow mode to be 0.
(__xstat): New function.
(__fxstat): New function.
(_dl_sysdep_read_whole_file): Removed. The implementation in
`elf/dl-misc.c' now also works for the Hurd.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1998-07-10 18:14 -0400 Zack Weinberg <zack@rabi.phys.columbia.edu>
* manual/Makefile: Overhauled. Generate libc.texinfo from the
chapter files. Exorcise the chapters, chapters-incl mess.
Support inserting doc chapters from add-on modules.
(chapters): New variable.
(add-chapters): New variable.
(appendices): New variable.
(libc.texinfo): New target.
(clean): Fix bugs.
(realclean): Fix bugs.
* manual/texis.awk: New file.
* manual/libc-texinfo.sh: New file.
* manual/libc-texinfo.in: New file.
* manual/conf.texi (top @node): Remove next pointer.
* manual/lang.texi (top @node): Remove prev pointer.
* manual/job.texi (top @node): Add explicit pointers.
* manual/message.texi (top @node): Add explicit pointers.
* manual/nss.texi (top @node): Add explicit pointers.
* manual/process.texi (top @node): Add explicit pointers.
* manual/startup.texi (top @node): Add explicit pointers.
* manual/terminal.texi (top @node): Add explicit pointers.
* manual/users.texi (top @node): Add explicit pointers.
* manual/arith.texi: Add %MENU% tag.
* manual/conf.texi: Add %MENU% tag.
* manual/contrib.texi: Add %MENU% tag.
* manual/ctype.texi: Add %MENU% tag.
* manual/errno.texi: Add %MENU% tag.
* manual/filesys.texi: Add %MENU% tag.
* manual/header.texi: Add %MENU% tag.
* manual/install.texi: Add %MENU% tag.
* manual/intro.texi: Add %MENU% tag.
* manual/io.texi: Add %MENU% tag.
* manual/job.texi: Add %MENU% tag.
* manual/lang.texi: Add %MENU% tag.
* manual/llio.texi: Add %MENU% tag.
* manual/locale.texi: Add %MENU% tag.
* manual/maint.texi: Add %MENU% tag.
* manual/math.texi: Add %MENU% tag.
* manual/mbyte.texi: Add %MENU% tag.
* manual/memory.texi: Add %MENU% tag.
* manual/message.texi: Add %MENU% tag.
* manual/nss.texi: Add %MENU% tag.
* manual/pattern.texi: Add %MENU% tag.
* manual/pipe.texi: Add %MENU% tag.
* manual/process.texi: Add %MENU% tag.
* manual/search.texi: Add %MENU% tag.
* manual/setjmp.texi: Add %MENU% tag.
* manual/signal.texi: Add %MENU% tag.
* manual/socket.texi: Add %MENU% tag.
* manual/startup.texi: Add %MENU% tag.
* manual/stdio.texi: Add %MENU% tag.
* manual/string.texi: Add %MENU% tag.
* manual/sysinfo.texi: Add %MENU% tag.
* manual/terminal.texi: Add %MENU% tag.
* manual/time.texi: Add %MENU% tag.
* manual/users.texi: Add %MENU% tag.
1998-07-13 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/i386/dl-procinfo.h (x86_cap_flags):
Update.
1998-07-11 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/unix/sysv/linux/recvmsg.c (__libc_recvmsg): Use ANSI
style declaration to avoid warning.
* sysdeps/unix/sysv/linux/sendmsg.c (__libc_sendmsg): Likewise.
1998-07-04 Mark Kettenis <kettenis@phys.uva.nl>
* elf/rtld.c (process_dl_debug): Add missing continue.
1998-07-12 Mark Kettenis <kettenis@phys.uva.nl>
* elf/rtld.c (_dl_skip_args): Make global because the Hurd startup
code needs it.
1998-07-10 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makeconfig ($(common-objpfx)sysd-dirs): Write out definition of
sysd-dirs-done.
* Makerules: Don't generate version maps too early.
($(common-objpfx)sysd-versions): Force regeneration if the list of
subdirs has changed.
1998-07-10 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf/dlfcn.h (DL_CALL_FCT): Use portable comma expression.
1998-07-11 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* iconv/gconv_db.c (gen_steps): Always set *handle and *nsteps.
* iconv/gconv_dl.c (__gconv_find_shlib): Correct use of tfind
return value.
1998-07-12 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf/dl-open.c (dl_open_worker): New function.
(_dl_open): Call it to do the actual work while catching errors.
* elf/dl-close.c (_dl_close): Only call termination function if
the initialisation function was called.
1998-07-13 Ulrich Drepper <drepper@cygnus.com>
* libio/libioP.h (_IO_cleanup_registration_needed): Use __PMT.
Reported by Felix von Leitner <leitner@amdiv.de>.
1998-07-13 10:28 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* elf/rtld.c (process_dl_debug): Add missing continue.
1998-06-23 Mark Kettenis <kettenis@phys.uva.nl>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1998-07-05 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/__sendmsg.S: Define function as
__syscall_sendmsg.
* sysdeps/unix/sysv/linux/__recvmsg.S: Define function as
__syscall_recvmsg.
* sysdeps/unix/sysv/linux/recvmsg.c: Define function as __libc_recvmsg
and make __recvmsg and recvmsg weak aliases.
* sysdeps/unix/sysv/linux/sendmsg.c: Likewise for sendmsg.
* sysdeps/unix/sysv/linux/alpha/syscalls.list: Define __syscall_recvmsg
and __syscall_sendmsg.
|
|
1998-07-04 10:14 Ulrich Drepper <drepper@cygnus.com>
* libio/Makefile (routines): Add iofread_u and iofwrite_u.
* libio/Versions: Add fread_unlocked and fwrite_unlocked.
* Makerules (lib%.so): Adjust ignore pattern for last makefile change.
* time/tzfile.c (decode): Optimize by using bswap_32.
(__tzfile_read): Use _unlocked stream functions. Correct setting of
__tzname array values.
(__tzfile_compute): Correct setting of __tzname array values.
* time/tzset.c (__tzstring): Clean up a bit.
1998-06-29 19:01 Jim Wilson <wilson@cygnus.com>
* posix/regex.c (re_comp): Add cast to char * before gettext calls.
1998-06-30 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/unix/bsd/poll.c (__poll): Allocate fd_set dynamically so
that fd can be bigger than FD_SETSIZE.
1998-07-01 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* nscd/grpcache.c: Include <unistd.h>.
* nscd/pwdcache.c: Likewise.
* nis/nis_modify.c: Include <string.h>.
* nis/nis_add.c: Likewise.
* nis/nis_checkpoint.c: Likewise.
* posix/runptests.c: Likewise.
* sysdeps/generic/statvfs64.c: Likewise.
* sysdeps/generic/fstatvfs64.c: Likewise.
1998-07-03 13:16 Ulrich Drepper <drepper@cygnus.com>
* localedata/charmaps/ISO-8859-9: Change mapping for 0xea, 0xec, 0xef
to match data from Unicode.
Reported by Michael Deutschmann <michael@talamasca.wkpowerlink.com>.
1998-07-03 11:45 Ulrich Drepper <drepper@cygnus.com>
* stdio-common/printf.h: Define printf_function and
printf_arginfo_function types using __PMT not __P.
Reported by Marc Lehmann.
1998-07-02 14:07 -0400 Zack Weinberg <zack@rabi.phys.columbia.edu>
* assert/test-assert.c: New test.
* assert/test-assert-perr.c: New test.
* assert/Makefile (tests): Add test-assert and test-assert-perr.
1998-07-02 13:45 Zack Weinberg <zack@rabi.phys.columbia.edu>
BSD-style SCM_CREDS support.
* sysdeps/unix/sysv/linux/socket.h: Define struct cmsgcred and
SCM_CREDS.
* sysdeps/unix/sysv/linux/sendmsg.c: New file. Convert user
visible SCM_CREDS packet to what the kernel wants.
* sysdeps/unix/sysv/linux/recvmsg.c: New file. Convert
SCM_CREDS packet output by kernel to what users want.
* sysdeps/unix/sysv/linux/sendmsg.S: Moved to...
* sysdeps/unix/sysv/linux/__sendmsg.S: here.
* sysdeps/unix/sysv/linux/recvmsg.S: Moved to...
* sysdeps/unix/sysv/linux/__recvmsg.S: here.
* sysdeps/unix/sysv/linux/Makefile [subdir=socket]: Add
__sendmsg and __recvmsg to sysdep_routines.
* sysdeps/unix/sysv/linux/Dist: Add __sendmsg.S and __recvmsg.S.
1998-07-02 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* nscd/grpcache.c: Fix gid pointer handling and debug messages.
* nscd/pwdcache.c: Fix uid pointer handling and debug messages.
* nscd/nscd.c: Check, if pthread_create fails.
1998-07-02 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* stdio-common/test_rdwr.c (main): Use %Zu for size_t in printf
format strings.
* stdio-common/bug1.c (main): Likewise.
* stdio-common/bug5.c (main): Likewise.
* stdio-common/tstgetln.c (main): Likewise.
* elf/sprof.c (generate_call_graph): Likewise.
(load_shobj): Likewise.
* posix/runptests.c (main): Likewise.
* string/tst-strlen.c (main): Likewise.
* sysdeps/libm-ieee754/e_acos.c (__ieee754_acos): Remove unused
variable q3.
* sysdeps/libm-ieee754/e_asin.c (__ieee754_asin): Likewise
1998-07-03 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* wctype/Versions: Add __towctrans.
Noticed by Alex Buell <alex.buell@tahallah.demon.co.uk>.
1998-07-02 Mark Kettenis <kettenis@phys.uva.nl>
* grp/initgroups.c (compat_call): Only call dynamically loaded
functions if they are really present.
1998-07-02 Mark Kettenis <kettenis@phys.uva.nl>
* sysdeps/unix/sysv/linux/bits/sched.h: Move __END_DECLS within
#ifdef that contains __BEGIN_DECLS.
1998-07-02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* libio/iofwrite.c: Fix return value when size == 0.
1998-07-01 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* posix/Makefile (distribute): Add annexc.c.
(generated): Add $(objpfx)annexc and $(objpfx)annexc.out.
1998-07-01 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add
bits/pthreadtypes.h here, and do not clobber headers.
* sysdeps/unix/sysv/linux/Dist: Add bits/pthreadtypes.h.
1998-07-03 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* timezone/tst-timezone.c: Add tests for tzname variable.
1998-07-03 12:17 Zack Weinberg <zack@rabi.phys.columbia.edu>
* Makefile [versioning=yes]: Build the mapfiles with a pattern
rule that lists all of them as targets.
(sysd-versions): Depend only on Versions.def. Write a Makefile
fragment that defines $(vers-libs) based on contents of that file;
then include it.
(lib-noranlib): Depend on lib-mapfiles not sysd-versions.
(lib-mapfiles): New target, depends on sysd-versions and $(vers-libs).
Predicate all this on avoid-generated unset as well as versioning.
1998-07-03 14:35 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
|