glibc/sysdeps/mach/hurd/dup2.c

139 lines
3.8 KiB
C
Raw Normal View History

Update. * sysdeps/mach/hurd/chown.c: Use INTDEF for __chown. * sysdeps/unix/sysv/aix/chown.c: Likewise. * sysdeps/unix/grantpt.c: Use INTUSE for __chown calls. * sysdeps/unix/sysv/linux/m68k/chown.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/chown.c: Likewise. * sysdeps/unix/sysv/linux/i386/chown.c: Use INTDEF2 to define __chown_internal. * sysdeps/unix/sysv/linux/s390/s390-32//chown.c: Likewise. * intl/dcngettext.c [_LIBC]: Use INTUSE for __dcngettext. * intl/dngettext.c [_LIBC] (DCNGETTEXT): Use INTUSE. * intl/ngettext.c: Likewise. * include/sys/socket.h: Declare __connect_internal and define __connect macro if not NOT_IN_libc. * sysdeps/mach/hurd/connect.c: Use INTDEF for __connect. * sysdeps/unix/sysv/aix/connect.c: Likewise. * sysdeps/unix/sysv/linux/connect.S: Add __connect_internal alias. * include/unistd.h: Declare __close_internal and define __close macro if not NOT_IN_libc. * libio/libioP.h (JUMO0, JUMP1, JUMP2, JUMP3, WJUMP0, WJUMP1, WJUMP2, WJUMP3): Add extra parenthesis to avoid expanding element names with macors like __close. * sysdeps/unix/syscalls.list: Add __close_internal alias. * include/unistd.h: Declare __dup2_internal and define __dup2 macro if not NOT_IN_libc. * sysdeps/mach/hurd/dup2.c: Use INTDEF for __dup2. * sysdeps/posix/dup2.c: Use INTDEF for __dup2. * sysdeps/unix/syscalls.list: Add __dup2_internal alias. * include/unistd.h: Declare __fork_internal and define __fork macro if not NOT_IN_libc. * sysdeps/mach/hurd/fork.c: Use INTDEF for __fork. * sysdeps/unix/sysv/aix/fork.c: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Add __fork_internal alias. * include/stdio_ext.h: Declare __fsetlocking_internal and define __fsetlocking macro to use it if not NOT_IN_libc. * libio/__fsetlocking.c: Use INTDEF for __fsetlocking. * libio/__fbufsize.c: Correct copyright. * libio/__flbf.c: Likewise. * libio/__fpending.c: Likewise. * libio/__fpurge.c: Likewise. * libio/__freadable.c: Likewise. * libio/__freading.c: Likewise. * libio/__fsetlocking.c: Likewise. * libio/__fwritable.c: Likewise. * libio/__fwriting.c: Likewise. * include/stdio.h: Declare __asprintf_internal and define __asprintf macro to use it if not NOT_IN_libc. * stdio-common/asprintf.c: Use INTDEF for __asprintf. * include/mntent.h: Declare __setmntent_internal, __getmntent_r_internal, __endmntent_internal. Define __setmntent, __getmntent_r, and __endmntent macros to use these functions if not NOT_IN_libc. * misc/mntent_r.c: Use INTDEF for __setmntent, __getmntent_r, and __endmntent. * include/math.h: Declare __finite_internal, __finitef_internal, and __finitel_internal. Redefine isfinite macro if in libc or libm using these functions. * sysdeps/generic/s_ldexp.c: Use INTUSE for __finite calls. * sysdeps/generic/s_ldexpf.c: Use INTUSE for __finitef calls. * sysdeps/generic/s_ldexpl.c: Use INTUSE for __finitel calls. * sysdeps/i386/fpu/s_finite.S: Define _internal alias. * sysdeps/i386/fpu/s_finitef.S: Likewise. * sysdeps/i386/fpu/s_finitel.S: Likewise. * sysdeps/ieee754/dbl-64/s_finite.c: Likewise. * sysdeps/ieee754/flt-32/s_finitef.c: Likewise. * sysdeps/ieee754/ldbl-128/s_finitel.c: Likewise. * sysdeps/ieee754/ldbl-96/s_finitel.c: Likewise. * include/fcntl.h: Declare __fcntl_internal. Define __fcntl macro to use this function if not NOT_IN_libc. * libio/iofdopen.c (_IO_fcntl): Use INTUSE. * sysdeps/generic/fcntl.c: Use INTDEF for __fcntl. * sysdeps/mach/hurd/fcntl.c: Likewise. * sysdeps/unix/sysv/aix/fcntl.c: Likewise. * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise. * include/argz.h: Declare __argz_count_internal and __argz_stringify_internal. * intl/l10nflist.c [_LIBC]: Use INTUSE for __argz_count and __argz_stringify. * string/argz-count.c: Use INTDEF for __argz_count. * string/argz-stringify.c: Use INTDEF for __argz_stringify. * include/stdlib.h: Declare __cxa_atexit_internal and define __cxa_atexit macro if not NOT_IN_libc. * stdlib/cxa_atexit.c: Use INTDEF for __cxa_atexit. * dlfcn/Makefile: Define NOT_IN_libc when compiling modcxaatexit.c. * assert/assert.c: Use INTDEF for __assert_fail. * assert/__assert.c: Use INTUSE for call to __assert_fail. * include/assert.h: Declare __assert_fail_internal.
2002-04-09 20:36:24 +00:00
/* Copyright (C) 1991, 92, 93, 94, 95, 97, 2002 Free Software Foundation, Inc.
Update. 1997-05-26 22:51 Ulrich Drepper <drepper@cygnus.com> * configure.in: Use AC_PROG_CC_LOCAL instead of AC_PROC_CC. * aclocal.m4: Add AC_PROG_CC_LOCAL which does not fail for environments in which linking is not possible at configure time (since te libc is just build). Based on patches by Marcus G. Daniels <marcus@cathcart.sysc.pdx.edu>. * time/scheck.c (scheck): Make 2nd parameter const. * time/private.h: Likewise. 1997-05-26 18:58 Ulrich Drepper <drepper@cygnus.com> * stdlib/random_r.c (__initstate_r): Initialize randomizer type in state array only at right place. Reported by Sven Verdoolaege <skimo@breughel.ufsia.ac.be>. * stdlib/erand48_r.c (__erand48_r): Don't generate numbers in [0.5,1.0) but really in [0.0, 1.0). Patch by Oliver Gathmann <gathmann@scar.utoronto.ca>. 1997-05-22 12:50 Eric Delaunay <delaunay@lix.polytechnique.fr> * shlib-versions: Provide Linux/SPARC defaults. 1997-05-26 15:00 Matthias Urlichs <urlichs@noris.de> * stdlib/strtod_l.c: Add missing #include <xlocale.h>. * stdlib/strtof_l.c: Likewise. * stdlib/strtol_l.c: Likewise. * stdlib/strtold_l.c: Likewise. * stdlib/strtoll_l.c: Likewise. * stdlib/strtoul_l.c: Likewise. * stdlib/strtoull_l.c: Likewise. 1997-05-26 02:42 Zack Weinberg <zack@rabi.phys.columbia.edu> * hurd/dtable.c: De-ansidecl-fy. * math/test-math.c: Likewise. * signal/tst-signal.c: Likewise. * stdio/getc.c: Likewise. * stdio/obstream.c: Likewise. * stdio/putc.c: Likewise. * stdio-common/bug1.c: Likewise. * stdio-common/bug2.c: Likewise. * stdio-common/bug6.c: Likewise. * stdio-common/fscanf.c: Likewise. * stdlib/testsort.c: Likewise. * string/tester.c: Likewise. * sysdeps/am29k/ffs.c: Likewise. * sysdeps/generic/bb_init_func.c: Likewise. * sysdeps/generic/bcopy.c: Likewise. * sysdeps/generic/bzero.c: Likewise. * sysdeps/generic/div.c: Likewise. * sysdeps/generic/ffs.c: Likewise. * sysdeps/generic/memccpy.c: Likewise. * sysdeps/generic/memcpy.c: Likewise. * sysdeps/generic/memmove.c: Likewise. * sysdeps/generic/memset.c: Likewise. * sysdeps/generic/vfork.c: Likewise. * sysdeps/generic/vtimes.c: Likewise. * sysdeps/i386/bzero.c: Likewise. * sysdeps/i386/ffs.c: Likewise. * sysdeps/i960/ffs.c: Likewise. * sysdeps/m68k/ffs.c: Likewise. * sysdeps/m88k/ffs.c: Likewise. * sysdeps/mach/hurd/_exit.c: Likewise. * sysdeps/mach/hurd/accept.c: Likewise. * sysdeps/mach/hurd/access.c: Likewise. * sysdeps/mach/hurd/adjtime.c: Likewise. * sysdeps/mach/hurd/bind.c: Likewise. * sysdeps/mach/hurd/brk.c: Likewise. * sysdeps/mach/hurd/chdir.c: Likewise. * sysdeps/mach/hurd/chflags.c: Likewise. * sysdeps/mach/hurd/chmod.c: Likewise. * sysdeps/mach/hurd/chown.c: Likewise. * sysdeps/mach/hurd/chroot.c: Likewise. * sysdeps/mach/hurd/close.c: Likewise. * sysdeps/mach/hurd/connect.c: Likewise. * sysdeps/mach/hurd/defs.c: Likewise. * sysdeps/mach/hurd/dup2.c: Likewise. * sysdeps/mach/hurd/execve.c: Likewise. * sysdeps/mach/hurd/fchdir.c: Likewise. * sysdeps/mach/hurd/fchflags.c: Likewise. * sysdeps/mach/hurd/fchmod.c: Likewise. * sysdeps/mach/hurd/fchown.c: Likewise. * sysdeps/mach/hurd/fcntl.c: Likewise. * sysdeps/mach/hurd/fdopen.c: Likewise. * sysdeps/mach/hurd/flock.c: Likewise. * sysdeps/mach/hurd/fsync.c: Likewise. * sysdeps/mach/hurd/ftruncate.c: Likewise. * sysdeps/mach/hurd/getdtsz.c: Likewise. * sysdeps/mach/hurd/getegid.c: Likewise. * sysdeps/mach/hurd/geteuid.c: Likewise. * sysdeps/mach/hurd/getgid.c: Likewise. * sysdeps/mach/hurd/getgroups.c: Likewise. * sysdeps/mach/hurd/gethostid.c: Likewise. * sysdeps/mach/hurd/gethostname.c: Likewise. * sysdeps/mach/hurd/getitimer.c: Likewise. * sysdeps/mach/hurd/getlogin.c: Likewise. * sysdeps/mach/hurd/getpeername.c: Likewise. * sysdeps/mach/hurd/getpgid.c: Likewise. * sysdeps/mach/hurd/getpid.c: Likewise. * sysdeps/mach/hurd/getppid.c: Likewise. * sysdeps/mach/hurd/getsockname.c: Likewise. * sysdeps/mach/hurd/getsockopt.c: Likewise. * sysdeps/mach/hurd/getuid.c: Likewise. * sysdeps/mach/hurd/ioctl.c: Likewise. * sysdeps/mach/hurd/isatty.c: Likewise. * sysdeps/mach/hurd/link.c: Likewise. * sysdeps/mach/hurd/listen.c: Likewise. * sysdeps/mach/hurd/lseek.c: Likewise. * sysdeps/mach/hurd/mkdir.c: Likewise. * sysdeps/mach/hurd/open.c: Likewise. * sysdeps/mach/hurd/pipe.c: Likewise. * sysdeps/mach/hurd/read.c: Likewise. * sysdeps/mach/hurd/readlink.c: Likewise. * sysdeps/mach/hurd/reboot.c: Likewise. * sysdeps/mach/hurd/recv.c: Likewise. * sysdeps/mach/hurd/recvfrom.c: Likewise. * sysdeps/mach/hurd/rename.c: Likewise. * sysdeps/mach/hurd/rewinddir.c: Likewise. * sysdeps/mach/hurd/rmdir.c: Likewise. * sysdeps/mach/hurd/sbrk.c: Likewise. * sysdeps/mach/hurd/seekdir.c: Likewise. * sysdeps/mach/hurd/select.c: Likewise. * sysdeps/mach/hurd/setegid.c: Likewise. * sysdeps/mach/hurd/seteuid.c: Likewise. * sysdeps/mach/hurd/setgid.c: Likewise. * sysdeps/mach/hurd/setgroups.c: Likewise. * sysdeps/mach/hurd/sethostid.c: Likewise. * sysdeps/mach/hurd/sethostname.c: Likewise. * sysdeps/mach/hurd/setlogin.c: Likewise. * sysdeps/mach/hurd/setpgid.c: Likewise. * sysdeps/mach/hurd/setregid.c: Likewise. * sysdeps/mach/hurd/setreuid.c: Likewise. * sysdeps/mach/hurd/setrlimit.c: Likewise. * sysdeps/mach/hurd/setsid.c: Likewise. * sysdeps/mach/hurd/setsockopt.c: Likewise. * sysdeps/mach/hurd/settimeofday.c: Likewise. * sysdeps/mach/hurd/setuid.c: Likewise. * sysdeps/mach/hurd/shutdown.c: Likewise. * sysdeps/mach/hurd/sigaction.c: Likewise. * sysdeps/mach/hurd/sigaltstack.c: Likewise. * sysdeps/mach/hurd/sigpending.c: Likewise. * sysdeps/mach/hurd/sigprocmask.c: Likewise. * sysdeps/mach/hurd/sigstack.c: Likewise. * sysdeps/mach/hurd/sigsuspend.c: Likewise. * sysdeps/mach/hurd/socket.c: Likewise. * sysdeps/mach/hurd/socketpair.c: Likewise. * sysdeps/mach/hurd/stdio_init.c: Likewise. * sysdeps/mach/hurd/symlink.c: Likewise. * sysdeps/mach/hurd/sync.c: Likewise. * sysdeps/mach/hurd/sysd-stdio.c: Likewise. * sysdeps/mach/hurd/telldir.c: Likewise. * sysdeps/mach/hurd/truncate.c: Likewise. * sysdeps/mach/hurd/umask.c: Likewise. * sysdeps/mach/hurd/unlink.c: Likewise. * sysdeps/mach/hurd/wait4.c: Likewise. * sysdeps/mach/hurd/utimes.c: Likewise. * sysdeps/mach/hurd/write.c: Likewise. * sysdeps/mach/adjtime.c: Likewise. * sysdeps/mach/gettimeofday.c: Likewise. * sysdeps/mach/usleep.c: Likewise. * sysdeps/mips/__longjmp.c: Likewise. * sysdeps/posix/clock.c: Likewise. * sysdeps/posix/ctermid.c: Likewise. * sysdeps/posix/defs.c: Likewise. * sysdeps/posix/dup.c: Likewise. * sysdeps/posix/libc_fatal.c: Likewise. * sysdeps/posix/stdio_init.c: Likewise. * sysdeps/rs6000/ffs.c: Likewise. * sysdeps/sparc/e_sqrt.c: Likewise. * sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise. * sysdeps/standalone/i386/force_cpu386/brdinit.c: Likewise. * sysdeps/standalone/i386/force_cpu386/console.c: Likewise. * sysdeps/standalone/i960/nindy960/_exit.c: Likewise. * sysdeps/standalone/i960/nindy960/brdinit.c: Likewise. * sysdeps/standalone/i960/nindy960/console.c: Likewise. * sysdeps/standalone/m68k/m68020/mvme136/_exit.c: Likewise. * sysdeps/standalone/m68k/m68020/mvme136/brdinit.c: Likewise. * sysdeps/standalone/brk.c: Likewise. * sysdeps/stub/_exit.c: Likewise. * sysdeps/stub/brdinit.c: Likewise. * sysdeps/stub/console.c: Likewise. * sysdeps/stub/defs.c: Likewise. * sysdeps/stub/errlist.c: Likewise. * sysdeps/stub/libc_fatal.c: Likewise. * sysdeps/stub/siglist.c: Likewise. * sysdeps/stub/stdio_init.c: Likewise. * sysdeps/stub/strtsupp.c: Likewise. * sysdeps/unix/bsd/bsd4.4/tcgetattr.c: Likewise. * sysdeps/unix/bsd/bsd4.4/tcsetattr.c: Likewise. * sysdeps/unix/bsd/bsd4.4/wait3.c: Likewise. * sysdeps/unix/bsd/sun/sunos4/tcflow.c: Likewise. * sysdeps/unix/bsd/sun/sunos4/tcflush.c: Likewise. * sysdeps/unix/bsd/sun/sunos4/tcgetattr.c: Likewise. * sysdeps/unix/bsd/sun/sunos4/tcsendbrk.c: Likewise. * sysdeps/unix/bsd/sun/sunos4/wait4.c: Likewise. * sysdeps/unix/bsd/ultrix4/mips/sigvec.c: Likewise. * sysdeps/unix/bsd/bsdstat.h: Likewise. * sysdeps/unix/bsd/clock.c: Likewise. * sysdeps/unix/bsd/gtty.c: Likewise. * sysdeps/unix/bsd/init-posix.c: Likewise. * sysdeps/unix/bsd/setgid.c: Likewise. * sysdeps/unix/bsd/setrgid.c: Likewise. * sysdeps/unix/bsd/setruid.c: Likewise. * sysdeps/unix/bsd/setuid.c: Likewise. * sysdeps/unix/bsd/stty.c: Likewise. * sysdeps/unix/bsd/telldir.c: Likewise. * sysdeps/unix/bsd/ualarm.c: Likewise. * sysdeps/unix/common/glue-ctype.c: Likewise. * sysdeps/unix/sparc/start.c: Likewise. * sysdeps/unix/sysv/irix4/fpathconf.c: Likewise. * sysdeps/unix/sysv/irix4/getgroups.c: Likewise. * sysdeps/unix/sysv/irix4/getrusage.c: Likewise. * sysdeps/unix/sysv/irix4/pathconf.c: Likewise. * sysdeps/unix/sysv/irix4/setgroups.c: Likewise. * sysdeps/unix/sysv/irix4/sigtramp.c: Likewise. * sysdeps/unix/sysv/irix4/start.c: Likewise. * sysdeps/unix/sysv/irix4/sysconf.c: Likewise. * sysdeps/unix/sysv/sco3.2.4/__setpgid.c: Likewise. * sysdeps/unix/sysv/sco3.2.4/getgroups.c: Likewise. * sysdeps/unix/sysv/sysv4/__getpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/__setpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/ftruncate.c: Likewise. * sysdeps/unix/sysv/sysv4/gethostname.c: Likewise. * sysdeps/unix/sysv/sysv4/getpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/sethostname.c: Likewise. * sysdeps/unix/sysv/sysv4/setpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/setsid.c: Likewise. * sysdeps/unix/sysv/gethostname.c: Likewise. * sysdeps/unix/sysv/tcgetpgrp.c: Likewise. * sysdeps/unix/sysv/tcsetpgrp.c: Likewise. * sysdeps/unix/alarm.c: Likewise. * sysdeps/unix/make_errlist.c: Likewise. * sysdeps/unix/rewinddir.c: Likewise. * sysdeps/unix/seekdir.c: Likewise. * sysdeps/unix/time.c: Likewise. * sysdeps/unix/utime.c: Likewise. * sysdeps/vax/__longjmp.c: Likewise. * sysdeps/vax/memccpy.c: Likewise. * time/strftime.c: Likewise. 1997-05-25 21:57 Miles Bader <miles@gnu.ai.mit.edu> * argp-parse.c (parser_init): For the special case where no parsing function is supplied for an argp, propagate its input to its first child, if any. * argp.h (struct argp_state): `argp' field renamed to `root_argp'. * argp-help.c (__argp_state_help, argp_args_usage, hol_help): Replace references to STATE->argp with STATE->root_argp. * argp-parse.c (parser_init): Likewise. 1997-05-26 14:17 Ulrich Drepper <drepper@cygnus.com> * manual/main.texi: Clarify situation for other not supported ports. Proposed by Andreas Jaeger <aj@arthur.rhein-neckar.de>. We recommend binutils 2.8. 1997-05-26 12:17 Ulrich Drepper <drepper@cygnus.com> * netinet/in.h: New file. Wrapper around inet/netinet/in.h. 1997-05-25 09:51 H.J. Lu <hjl@gnu.ai.mit.edu> * sysdeps/i386/elf/start.S: Change local label "nofini" to ".Lnofini". * sysdeps/i386/i386-mcount.S: Use GOT, instead of GOTOFF. 1997-05-24 17:45 H.J. Lu <hjl@gnu.ai.mit.edu> * gmon/gmon.c (_mcleanup): Free tostruct array allocated in monstartup. (dl_main): Define _dl_verbose based on DL_WARN environment variable.
1997-05-26 23:01:17 +00:00
This file is part of the GNU C Library.
1995-02-18 01:27:10 +00:00
Update. 1997-05-26 22:51 Ulrich Drepper <drepper@cygnus.com> * configure.in: Use AC_PROG_CC_LOCAL instead of AC_PROC_CC. * aclocal.m4: Add AC_PROG_CC_LOCAL which does not fail for environments in which linking is not possible at configure time (since te libc is just build). Based on patches by Marcus G. Daniels <marcus@cathcart.sysc.pdx.edu>. * time/scheck.c (scheck): Make 2nd parameter const. * time/private.h: Likewise. 1997-05-26 18:58 Ulrich Drepper <drepper@cygnus.com> * stdlib/random_r.c (__initstate_r): Initialize randomizer type in state array only at right place. Reported by Sven Verdoolaege <skimo@breughel.ufsia.ac.be>. * stdlib/erand48_r.c (__erand48_r): Don't generate numbers in [0.5,1.0) but really in [0.0, 1.0). Patch by Oliver Gathmann <gathmann@scar.utoronto.ca>. 1997-05-22 12:50 Eric Delaunay <delaunay@lix.polytechnique.fr> * shlib-versions: Provide Linux/SPARC defaults. 1997-05-26 15:00 Matthias Urlichs <urlichs@noris.de> * stdlib/strtod_l.c: Add missing #include <xlocale.h>. * stdlib/strtof_l.c: Likewise. * stdlib/strtol_l.c: Likewise. * stdlib/strtold_l.c: Likewise. * stdlib/strtoll_l.c: Likewise. * stdlib/strtoul_l.c: Likewise. * stdlib/strtoull_l.c: Likewise. 1997-05-26 02:42 Zack Weinberg <zack@rabi.phys.columbia.edu> * hurd/dtable.c: De-ansidecl-fy. * math/test-math.c: Likewise. * signal/tst-signal.c: Likewise. * stdio/getc.c: Likewise. * stdio/obstream.c: Likewise. * stdio/putc.c: Likewise. * stdio-common/bug1.c: Likewise. * stdio-common/bug2.c: Likewise. * stdio-common/bug6.c: Likewise. * stdio-common/fscanf.c: Likewise. * stdlib/testsort.c: Likewise. * string/tester.c: Likewise. * sysdeps/am29k/ffs.c: Likewise. * sysdeps/generic/bb_init_func.c: Likewise. * sysdeps/generic/bcopy.c: Likewise. * sysdeps/generic/bzero.c: Likewise. * sysdeps/generic/div.c: Likewise. * sysdeps/generic/ffs.c: Likewise. * sysdeps/generic/memccpy.c: Likewise. * sysdeps/generic/memcpy.c: Likewise. * sysdeps/generic/memmove.c: Likewise. * sysdeps/generic/memset.c: Likewise. * sysdeps/generic/vfork.c: Likewise. * sysdeps/generic/vtimes.c: Likewise. * sysdeps/i386/bzero.c: Likewise. * sysdeps/i386/ffs.c: Likewise. * sysdeps/i960/ffs.c: Likewise. * sysdeps/m68k/ffs.c: Likewise. * sysdeps/m88k/ffs.c: Likewise. * sysdeps/mach/hurd/_exit.c: Likewise. * sysdeps/mach/hurd/accept.c: Likewise. * sysdeps/mach/hurd/access.c: Likewise. * sysdeps/mach/hurd/adjtime.c: Likewise. * sysdeps/mach/hurd/bind.c: Likewise. * sysdeps/mach/hurd/brk.c: Likewise. * sysdeps/mach/hurd/chdir.c: Likewise. * sysdeps/mach/hurd/chflags.c: Likewise. * sysdeps/mach/hurd/chmod.c: Likewise. * sysdeps/mach/hurd/chown.c: Likewise. * sysdeps/mach/hurd/chroot.c: Likewise. * sysdeps/mach/hurd/close.c: Likewise. * sysdeps/mach/hurd/connect.c: Likewise. * sysdeps/mach/hurd/defs.c: Likewise. * sysdeps/mach/hurd/dup2.c: Likewise. * sysdeps/mach/hurd/execve.c: Likewise. * sysdeps/mach/hurd/fchdir.c: Likewise. * sysdeps/mach/hurd/fchflags.c: Likewise. * sysdeps/mach/hurd/fchmod.c: Likewise. * sysdeps/mach/hurd/fchown.c: Likewise. * sysdeps/mach/hurd/fcntl.c: Likewise. * sysdeps/mach/hurd/fdopen.c: Likewise. * sysdeps/mach/hurd/flock.c: Likewise. * sysdeps/mach/hurd/fsync.c: Likewise. * sysdeps/mach/hurd/ftruncate.c: Likewise. * sysdeps/mach/hurd/getdtsz.c: Likewise. * sysdeps/mach/hurd/getegid.c: Likewise. * sysdeps/mach/hurd/geteuid.c: Likewise. * sysdeps/mach/hurd/getgid.c: Likewise. * sysdeps/mach/hurd/getgroups.c: Likewise. * sysdeps/mach/hurd/gethostid.c: Likewise. * sysdeps/mach/hurd/gethostname.c: Likewise. * sysdeps/mach/hurd/getitimer.c: Likewise. * sysdeps/mach/hurd/getlogin.c: Likewise. * sysdeps/mach/hurd/getpeername.c: Likewise. * sysdeps/mach/hurd/getpgid.c: Likewise. * sysdeps/mach/hurd/getpid.c: Likewise. * sysdeps/mach/hurd/getppid.c: Likewise. * sysdeps/mach/hurd/getsockname.c: Likewise. * sysdeps/mach/hurd/getsockopt.c: Likewise. * sysdeps/mach/hurd/getuid.c: Likewise. * sysdeps/mach/hurd/ioctl.c: Likewise. * sysdeps/mach/hurd/isatty.c: Likewise. * sysdeps/mach/hurd/link.c: Likewise. * sysdeps/mach/hurd/listen.c: Likewise. * sysdeps/mach/hurd/lseek.c: Likewise. * sysdeps/mach/hurd/mkdir.c: Likewise. * sysdeps/mach/hurd/open.c: Likewise. * sysdeps/mach/hurd/pipe.c: Likewise. * sysdeps/mach/hurd/read.c: Likewise. * sysdeps/mach/hurd/readlink.c: Likewise. * sysdeps/mach/hurd/reboot.c: Likewise. * sysdeps/mach/hurd/recv.c: Likewise. * sysdeps/mach/hurd/recvfrom.c: Likewise. * sysdeps/mach/hurd/rename.c: Likewise. * sysdeps/mach/hurd/rewinddir.c: Likewise. * sysdeps/mach/hurd/rmdir.c: Likewise. * sysdeps/mach/hurd/sbrk.c: Likewise. * sysdeps/mach/hurd/seekdir.c: Likewise. * sysdeps/mach/hurd/select.c: Likewise. * sysdeps/mach/hurd/setegid.c: Likewise. * sysdeps/mach/hurd/seteuid.c: Likewise. * sysdeps/mach/hurd/setgid.c: Likewise. * sysdeps/mach/hurd/setgroups.c: Likewise. * sysdeps/mach/hurd/sethostid.c: Likewise. * sysdeps/mach/hurd/sethostname.c: Likewise. * sysdeps/mach/hurd/setlogin.c: Likewise. * sysdeps/mach/hurd/setpgid.c: Likewise. * sysdeps/mach/hurd/setregid.c: Likewise. * sysdeps/mach/hurd/setreuid.c: Likewise. * sysdeps/mach/hurd/setrlimit.c: Likewise. * sysdeps/mach/hurd/setsid.c: Likewise. * sysdeps/mach/hurd/setsockopt.c: Likewise. * sysdeps/mach/hurd/settimeofday.c: Likewise. * sysdeps/mach/hurd/setuid.c: Likewise. * sysdeps/mach/hurd/shutdown.c: Likewise. * sysdeps/mach/hurd/sigaction.c: Likewise. * sysdeps/mach/hurd/sigaltstack.c: Likewise. * sysdeps/mach/hurd/sigpending.c: Likewise. * sysdeps/mach/hurd/sigprocmask.c: Likewise. * sysdeps/mach/hurd/sigstack.c: Likewise. * sysdeps/mach/hurd/sigsuspend.c: Likewise. * sysdeps/mach/hurd/socket.c: Likewise. * sysdeps/mach/hurd/socketpair.c: Likewise. * sysdeps/mach/hurd/stdio_init.c: Likewise. * sysdeps/mach/hurd/symlink.c: Likewise. * sysdeps/mach/hurd/sync.c: Likewise. * sysdeps/mach/hurd/sysd-stdio.c: Likewise. * sysdeps/mach/hurd/telldir.c: Likewise. * sysdeps/mach/hurd/truncate.c: Likewise. * sysdeps/mach/hurd/umask.c: Likewise. * sysdeps/mach/hurd/unlink.c: Likewise. * sysdeps/mach/hurd/wait4.c: Likewise. * sysdeps/mach/hurd/utimes.c: Likewise. * sysdeps/mach/hurd/write.c: Likewise. * sysdeps/mach/adjtime.c: Likewise. * sysdeps/mach/gettimeofday.c: Likewise. * sysdeps/mach/usleep.c: Likewise. * sysdeps/mips/__longjmp.c: Likewise. * sysdeps/posix/clock.c: Likewise. * sysdeps/posix/ctermid.c: Likewise. * sysdeps/posix/defs.c: Likewise. * sysdeps/posix/dup.c: Likewise. * sysdeps/posix/libc_fatal.c: Likewise. * sysdeps/posix/stdio_init.c: Likewise. * sysdeps/rs6000/ffs.c: Likewise. * sysdeps/sparc/e_sqrt.c: Likewise. * sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise. * sysdeps/standalone/i386/force_cpu386/brdinit.c: Likewise. * sysdeps/standalone/i386/force_cpu386/console.c: Likewise. * sysdeps/standalone/i960/nindy960/_exit.c: Likewise. * sysdeps/standalone/i960/nindy960/brdinit.c: Likewise. * sysdeps/standalone/i960/nindy960/console.c: Likewise. * sysdeps/standalone/m68k/m68020/mvme136/_exit.c: Likewise. * sysdeps/standalone/m68k/m68020/mvme136/brdinit.c: Likewise. * sysdeps/standalone/brk.c: Likewise. * sysdeps/stub/_exit.c: Likewise. * sysdeps/stub/brdinit.c: Likewise. * sysdeps/stub/console.c: Likewise. * sysdeps/stub/defs.c: Likewise. * sysdeps/stub/errlist.c: Likewise. * sysdeps/stub/libc_fatal.c: Likewise. * sysdeps/stub/siglist.c: Likewise. * sysdeps/stub/stdio_init.c: Likewise. * sysdeps/stub/strtsupp.c: Likewise. * sysdeps/unix/bsd/bsd4.4/tcgetattr.c: Likewise. * sysdeps/unix/bsd/bsd4.4/tcsetattr.c: Likewise. * sysdeps/unix/bsd/bsd4.4/wait3.c: Likewise. * sysdeps/unix/bsd/sun/sunos4/tcflow.c: Likewise. * sysdeps/unix/bsd/sun/sunos4/tcflush.c: Likewise. * sysdeps/unix/bsd/sun/sunos4/tcgetattr.c: Likewise. * sysdeps/unix/bsd/sun/sunos4/tcsendbrk.c: Likewise. * sysdeps/unix/bsd/sun/sunos4/wait4.c: Likewise. * sysdeps/unix/bsd/ultrix4/mips/sigvec.c: Likewise. * sysdeps/unix/bsd/bsdstat.h: Likewise. * sysdeps/unix/bsd/clock.c: Likewise. * sysdeps/unix/bsd/gtty.c: Likewise. * sysdeps/unix/bsd/init-posix.c: Likewise. * sysdeps/unix/bsd/setgid.c: Likewise. * sysdeps/unix/bsd/setrgid.c: Likewise. * sysdeps/unix/bsd/setruid.c: Likewise. * sysdeps/unix/bsd/setuid.c: Likewise. * sysdeps/unix/bsd/stty.c: Likewise. * sysdeps/unix/bsd/telldir.c: Likewise. * sysdeps/unix/bsd/ualarm.c: Likewise. * sysdeps/unix/common/glue-ctype.c: Likewise. * sysdeps/unix/sparc/start.c: Likewise. * sysdeps/unix/sysv/irix4/fpathconf.c: Likewise. * sysdeps/unix/sysv/irix4/getgroups.c: Likewise. * sysdeps/unix/sysv/irix4/getrusage.c: Likewise. * sysdeps/unix/sysv/irix4/pathconf.c: Likewise. * sysdeps/unix/sysv/irix4/setgroups.c: Likewise. * sysdeps/unix/sysv/irix4/sigtramp.c: Likewise. * sysdeps/unix/sysv/irix4/start.c: Likewise. * sysdeps/unix/sysv/irix4/sysconf.c: Likewise. * sysdeps/unix/sysv/sco3.2.4/__setpgid.c: Likewise. * sysdeps/unix/sysv/sco3.2.4/getgroups.c: Likewise. * sysdeps/unix/sysv/sysv4/__getpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/__setpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/ftruncate.c: Likewise. * sysdeps/unix/sysv/sysv4/gethostname.c: Likewise. * sysdeps/unix/sysv/sysv4/getpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/sethostname.c: Likewise. * sysdeps/unix/sysv/sysv4/setpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/setsid.c: Likewise. * sysdeps/unix/sysv/gethostname.c: Likewise. * sysdeps/unix/sysv/tcgetpgrp.c: Likewise. * sysdeps/unix/sysv/tcsetpgrp.c: Likewise. * sysdeps/unix/alarm.c: Likewise. * sysdeps/unix/make_errlist.c: Likewise. * sysdeps/unix/rewinddir.c: Likewise. * sysdeps/unix/seekdir.c: Likewise. * sysdeps/unix/time.c: Likewise. * sysdeps/unix/utime.c: Likewise. * sysdeps/vax/__longjmp.c: Likewise. * sysdeps/vax/memccpy.c: Likewise. * time/strftime.c: Likewise. 1997-05-25 21:57 Miles Bader <miles@gnu.ai.mit.edu> * argp-parse.c (parser_init): For the special case where no parsing function is supplied for an argp, propagate its input to its first child, if any. * argp.h (struct argp_state): `argp' field renamed to `root_argp'. * argp-help.c (__argp_state_help, argp_args_usage, hol_help): Replace references to STATE->argp with STATE->root_argp. * argp-parse.c (parser_init): Likewise. 1997-05-26 14:17 Ulrich Drepper <drepper@cygnus.com> * manual/main.texi: Clarify situation for other not supported ports. Proposed by Andreas Jaeger <aj@arthur.rhein-neckar.de>. We recommend binutils 2.8. 1997-05-26 12:17 Ulrich Drepper <drepper@cygnus.com> * netinet/in.h: New file. Wrapper around inet/netinet/in.h. 1997-05-25 09:51 H.J. Lu <hjl@gnu.ai.mit.edu> * sysdeps/i386/elf/start.S: Change local label "nofini" to ".Lnofini". * sysdeps/i386/i386-mcount.S: Use GOT, instead of GOTOFF. 1997-05-24 17:45 H.J. Lu <hjl@gnu.ai.mit.edu> * gmon/gmon.c (_mcleanup): Free tostruct array allocated in monstartup. (dl_main): Define _dl_verbose based on DL_WARN environment variable.
1997-05-26 23:01:17 +00:00
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
1995-02-18 01:27:10 +00:00
Update. 1997-05-26 22:51 Ulrich Drepper <drepper@cygnus.com> * configure.in: Use AC_PROG_CC_LOCAL instead of AC_PROC_CC. * aclocal.m4: Add AC_PROG_CC_LOCAL which does not fail for environments in which linking is not possible at configure time (since te libc is just build). Based on patches by Marcus G. Daniels <marcus@cathcart.sysc.pdx.edu>. * time/scheck.c (scheck): Make 2nd parameter const. * time/private.h: Likewise. 1997-05-26 18:58 Ulrich Drepper <drepper@cygnus.com> * stdlib/random_r.c (__initstate_r): Initialize randomizer type in state array only at right place. Reported by Sven Verdoolaege <skimo@breughel.ufsia.ac.be>. * stdlib/erand48_r.c (__erand48_r): Don't generate numbers in [0.5,1.0) but really in [0.0, 1.0). Patch by Oliver Gathmann <gathmann@scar.utoronto.ca>. 1997-05-22 12:50 Eric Delaunay <delaunay@lix.polytechnique.fr> * shlib-versions: Provide Linux/SPARC defaults. 1997-05-26 15:00 Matthias Urlichs <urlichs@noris.de> * stdlib/strtod_l.c: Add missing #include <xlocale.h>. * stdlib/strtof_l.c: Likewise. * stdlib/strtol_l.c: Likewise. * stdlib/strtold_l.c: Likewise. * stdlib/strtoll_l.c: Likewise. * stdlib/strtoul_l.c: Likewise. * stdlib/strtoull_l.c: Likewise. 1997-05-26 02:42 Zack Weinberg <zack@rabi.phys.columbia.edu> * hurd/dtable.c: De-ansidecl-fy. * math/test-math.c: Likewise. * signal/tst-signal.c: Likewise. * stdio/getc.c: Likewise. * stdio/obstream.c: Likewise. * stdio/putc.c: Likewise. * stdio-common/bug1.c: Likewise. * stdio-common/bug2.c: Likewise. * stdio-common/bug6.c: Likewise. * stdio-common/fscanf.c: Likewise. * stdlib/testsort.c: Likewise. * string/tester.c: Likewise. * sysdeps/am29k/ffs.c: Likewise. * sysdeps/generic/bb_init_func.c: Likewise. * sysdeps/generic/bcopy.c: Likewise. * sysdeps/generic/bzero.c: Likewise. * sysdeps/generic/div.c: Likewise. * sysdeps/generic/ffs.c: Likewise. * sysdeps/generic/memccpy.c: Likewise. * sysdeps/generic/memcpy.c: Likewise. * sysdeps/generic/memmove.c: Likewise. * sysdeps/generic/memset.c: Likewise. * sysdeps/generic/vfork.c: Likewise. * sysdeps/generic/vtimes.c: Likewise. * sysdeps/i386/bzero.c: Likewise. * sysdeps/i386/ffs.c: Likewise. * sysdeps/i960/ffs.c: Likewise. * sysdeps/m68k/ffs.c: Likewise. * sysdeps/m88k/ffs.c: Likewise. * sysdeps/mach/hurd/_exit.c: Likewise. * sysdeps/mach/hurd/accept.c: Likewise. * sysdeps/mach/hurd/access.c: Likewise. * sysdeps/mach/hurd/adjtime.c: Likewise. * sysdeps/mach/hurd/bind.c: Likewise. * sysdeps/mach/hurd/brk.c: Likewise. * sysdeps/mach/hurd/chdir.c: Likewise. * sysdeps/mach/hurd/chflags.c: Likewise. * sysdeps/mach/hurd/chmod.c: Likewise. * sysdeps/mach/hurd/chown.c: Likewise. * sysdeps/mach/hurd/chroot.c: Likewise. * sysdeps/mach/hurd/close.c: Likewise. * sysdeps/mach/hurd/connect.c: Likewise. * sysdeps/mach/hurd/defs.c: Likewise. * sysdeps/mach/hurd/dup2.c: Likewise. * sysdeps/mach/hurd/execve.c: Likewise. * sysdeps/mach/hurd/fchdir.c: Likewise. * sysdeps/mach/hurd/fchflags.c: Likewise. * sysdeps/mach/hurd/fchmod.c: Likewise. * sysdeps/mach/hurd/fchown.c: Likewise. * sysdeps/mach/hurd/fcntl.c: Likewise. * sysdeps/mach/hurd/fdopen.c: Likewise. * sysdeps/mach/hurd/flock.c: Likewise. * sysdeps/mach/hurd/fsync.c: Likewise. * sysdeps/mach/hurd/ftruncate.c: Likewise. * sysdeps/mach/hurd/getdtsz.c: Likewise. * sysdeps/mach/hurd/getegid.c: Likewise. * sysdeps/mach/hurd/geteuid.c: Likewise. * sysdeps/mach/hurd/getgid.c: Likewise. * sysdeps/mach/hurd/getgroups.c: Likewise. * sysdeps/mach/hurd/gethostid.c: Likewise. * sysdeps/mach/hurd/gethostname.c: Likewise. * sysdeps/mach/hurd/getitimer.c: Likewise. * sysdeps/mach/hurd/getlogin.c: Likewise. * sysdeps/mach/hurd/getpeername.c: Likewise. * sysdeps/mach/hurd/getpgid.c: Likewise. * sysdeps/mach/hurd/getpid.c: Likewise. * sysdeps/mach/hurd/getppid.c: Likewise. * sysdeps/mach/hurd/getsockname.c: Likewise. * sysdeps/mach/hurd/getsockopt.c: Likewise. * sysdeps/mach/hurd/getuid.c: Likewise. * sysdeps/mach/hurd/ioctl.c: Likewise. * sysdeps/mach/hurd/isatty.c: Likewise. * sysdeps/mach/hurd/link.c: Likewise. * sysdeps/mach/hurd/listen.c: Likewise. * sysdeps/mach/hurd/lseek.c: Likewise. * sysdeps/mach/hurd/mkdir.c: Likewise. * sysdeps/mach/hurd/open.c: Likewise. * sysdeps/mach/hurd/pipe.c: Likewise. * sysdeps/mach/hurd/read.c: Likewise. * sysdeps/mach/hurd/readlink.c: Likewise. * sysdeps/mach/hurd/reboot.c: Likewise. * sysdeps/mach/hurd/recv.c: Likewise. * sysdeps/mach/hurd/recvfrom.c: Likewise. * sysdeps/mach/hurd/rename.c: Likewise. * sysdeps/mach/hurd/rewinddir.c: Likewise. * sysdeps/mach/hurd/rmdir.c: Likewise. * sysdeps/mach/hurd/sbrk.c: Likewise. * sysdeps/mach/hurd/seekdir.c: Likewise. * sysdeps/mach/hurd/select.c: Likewise. * sysdeps/mach/hurd/setegid.c: Likewise. * sysdeps/mach/hurd/seteuid.c: Likewise. * sysdeps/mach/hurd/setgid.c: Likewise. * sysdeps/mach/hurd/setgroups.c: Likewise. * sysdeps/mach/hurd/sethostid.c: Likewise. * sysdeps/mach/hurd/sethostname.c: Likewise. * sysdeps/mach/hurd/setlogin.c: Likewise. * sysdeps/mach/hurd/setpgid.c: Likewise. * sysdeps/mach/hurd/setregid.c: Likewise. * sysdeps/mach/hurd/setreuid.c: Likewise. * sysdeps/mach/hurd/setrlimit.c: Likewise. * sysdeps/mach/hurd/setsid.c: Likewise. * sysdeps/mach/hurd/setsockopt.c: Likewise. * sysdeps/mach/hurd/settimeofday.c: Likewise. * sysdeps/mach/hurd/setuid.c: Likewise. * sysdeps/mach/hurd/shutdown.c: Likewise. * sysdeps/mach/hurd/sigaction.c: Likewise. * sysdeps/mach/hurd/sigaltstack.c: Likewise. * sysdeps/mach/hurd/sigpending.c: Likewise. * sysdeps/mach/hurd/sigprocmask.c: Likewise. * sysdeps/mach/hurd/sigstack.c: Likewise. * sysdeps/mach/hurd/sigsuspend.c: Likewise. * sysdeps/mach/hurd/socket.c: Likewise. * sysdeps/mach/hurd/socketpair.c: Likewise. * sysdeps/mach/hurd/stdio_init.c: Likewise. * sysdeps/mach/hurd/symlink.c: Likewise. * sysdeps/mach/hurd/sync.c: Likewise. * sysdeps/mach/hurd/sysd-stdio.c: Likewise. * sysdeps/mach/hurd/telldir.c: Likewise. * sysdeps/mach/hurd/truncate.c: Likewise. * sysdeps/mach/hurd/umask.c: Likewise. * sysdeps/mach/hurd/unlink.c: Likewise. * sysdeps/mach/hurd/wait4.c: Likewise. * sysdeps/mach/hurd/utimes.c: Likewise. * sysdeps/mach/hurd/write.c: Likewise. * sysdeps/mach/adjtime.c: Likewise. * sysdeps/mach/gettimeofday.c: Likewise. * sysdeps/mach/usleep.c: Likewise. * sysdeps/mips/__longjmp.c: Likewise. * sysdeps/posix/clock.c: Likewise. * sysdeps/posix/ctermid.c: Likewise. * sysdeps/posix/defs.c: Likewise. * sysdeps/posix/dup.c: Likewise. * sysdeps/posix/libc_fatal.c: Likewise. * sysdeps/posix/stdio_init.c: Likewise. * sysdeps/rs6000/ffs.c: Likewise. * sysdeps/sparc/e_sqrt.c: Likewise. * sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise. * sysdeps/standalone/i386/force_cpu386/brdinit.c: Likewise. * sysdeps/standalone/i386/force_cpu386/console.c: Likewise. * sysdeps/standalone/i960/nindy960/_exit.c: Likewise. * sysdeps/standalone/i960/nindy960/brdinit.c: Likewise. * sysdeps/standalone/i960/nindy960/console.c: Likewise. * sysdeps/standalone/m68k/m68020/mvme136/_exit.c: Likewise. * sysdeps/standalone/m68k/m68020/mvme136/brdinit.c: Likewise. * sysdeps/standalone/brk.c: Likewise. * sysdeps/stub/_exit.c: Likewise. * sysdeps/stub/brdinit.c: Likewise. * sysdeps/stub/console.c: Likewise. * sysdeps/stub/defs.c: Likewise. * sysdeps/stub/errlist.c: Likewise. * sysdeps/stub/libc_fatal.c: Likewise. * sysdeps/stub/siglist.c: Likewise. * sysdeps/stub/stdio_init.c: Likewise. * sysdeps/stub/strtsupp.c: Likewise. * sysdeps/unix/bsd/bsd4.4/tcgetattr.c: Likewise. * sysdeps/unix/bsd/bsd4.4/tcsetattr.c: Likewise. * sysdeps/unix/bsd/bsd4.4/wait3.c: Likewise. * sysdeps/unix/bsd/sun/sunos4/tcflow.c: Likewise. * sysdeps/unix/bsd/sun/sunos4/tcflush.c: Likewise. * sysdeps/unix/bsd/sun/sunos4/tcgetattr.c: Likewise. * sysdeps/unix/bsd/sun/sunos4/tcsendbrk.c: Likewise. * sysdeps/unix/bsd/sun/sunos4/wait4.c: Likewise. * sysdeps/unix/bsd/ultrix4/mips/sigvec.c: Likewise. * sysdeps/unix/bsd/bsdstat.h: Likewise. * sysdeps/unix/bsd/clock.c: Likewise. * sysdeps/unix/bsd/gtty.c: Likewise. * sysdeps/unix/bsd/init-posix.c: Likewise. * sysdeps/unix/bsd/setgid.c: Likewise. * sysdeps/unix/bsd/setrgid.c: Likewise. * sysdeps/unix/bsd/setruid.c: Likewise. * sysdeps/unix/bsd/setuid.c: Likewise. * sysdeps/unix/bsd/stty.c: Likewise. * sysdeps/unix/bsd/telldir.c: Likewise. * sysdeps/unix/bsd/ualarm.c: Likewise. * sysdeps/unix/common/glue-ctype.c: Likewise. * sysdeps/unix/sparc/start.c: Likewise. * sysdeps/unix/sysv/irix4/fpathconf.c: Likewise. * sysdeps/unix/sysv/irix4/getgroups.c: Likewise. * sysdeps/unix/sysv/irix4/getrusage.c: Likewise. * sysdeps/unix/sysv/irix4/pathconf.c: Likewise. * sysdeps/unix/sysv/irix4/setgroups.c: Likewise. * sysdeps/unix/sysv/irix4/sigtramp.c: Likewise. * sysdeps/unix/sysv/irix4/start.c: Likewise. * sysdeps/unix/sysv/irix4/sysconf.c: Likewise. * sysdeps/unix/sysv/sco3.2.4/__setpgid.c: Likewise. * sysdeps/unix/sysv/sco3.2.4/getgroups.c: Likewise. * sysdeps/unix/sysv/sysv4/__getpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/__setpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/ftruncate.c: Likewise. * sysdeps/unix/sysv/sysv4/gethostname.c: Likewise. * sysdeps/unix/sysv/sysv4/getpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/sethostname.c: Likewise. * sysdeps/unix/sysv/sysv4/setpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/setsid.c: Likewise. * sysdeps/unix/sysv/gethostname.c: Likewise. * sysdeps/unix/sysv/tcgetpgrp.c: Likewise. * sysdeps/unix/sysv/tcsetpgrp.c: Likewise. * sysdeps/unix/alarm.c: Likewise. * sysdeps/unix/make_errlist.c: Likewise. * sysdeps/unix/rewinddir.c: Likewise. * sysdeps/unix/seekdir.c: Likewise. * sysdeps/unix/time.c: Likewise. * sysdeps/unix/utime.c: Likewise. * sysdeps/vax/__longjmp.c: Likewise. * sysdeps/vax/memccpy.c: Likewise. * time/strftime.c: Likewise. 1997-05-25 21:57 Miles Bader <miles@gnu.ai.mit.edu> * argp-parse.c (parser_init): For the special case where no parsing function is supplied for an argp, propagate its input to its first child, if any. * argp.h (struct argp_state): `argp' field renamed to `root_argp'. * argp-help.c (__argp_state_help, argp_args_usage, hol_help): Replace references to STATE->argp with STATE->root_argp. * argp-parse.c (parser_init): Likewise. 1997-05-26 14:17 Ulrich Drepper <drepper@cygnus.com> * manual/main.texi: Clarify situation for other not supported ports. Proposed by Andreas Jaeger <aj@arthur.rhein-neckar.de>. We recommend binutils 2.8. 1997-05-26 12:17 Ulrich Drepper <drepper@cygnus.com> * netinet/in.h: New file. Wrapper around inet/netinet/in.h. 1997-05-25 09:51 H.J. Lu <hjl@gnu.ai.mit.edu> * sysdeps/i386/elf/start.S: Change local label "nofini" to ".Lnofini". * sysdeps/i386/i386-mcount.S: Use GOT, instead of GOTOFF. 1997-05-24 17:45 H.J. Lu <hjl@gnu.ai.mit.edu> * gmon/gmon.c (_mcleanup): Free tostruct array allocated in monstartup. (dl_main): Define _dl_verbose based on DL_WARN environment variable.
1997-05-26 23:01:17 +00:00
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
1995-02-18 01:27:10 +00:00
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
1995-02-18 01:27:10 +00:00
#include <errno.h>
#include <fcntl.h>
#include <unistd.h>
#include <hurd.h>
#include <hurd/fd.h>
Update. * sysdeps/mach/hurd/chown.c: Use INTDEF for __chown. * sysdeps/unix/sysv/aix/chown.c: Likewise. * sysdeps/unix/grantpt.c: Use INTUSE for __chown calls. * sysdeps/unix/sysv/linux/m68k/chown.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/chown.c: Likewise. * sysdeps/unix/sysv/linux/i386/chown.c: Use INTDEF2 to define __chown_internal. * sysdeps/unix/sysv/linux/s390/s390-32//chown.c: Likewise. * intl/dcngettext.c [_LIBC]: Use INTUSE for __dcngettext. * intl/dngettext.c [_LIBC] (DCNGETTEXT): Use INTUSE. * intl/ngettext.c: Likewise. * include/sys/socket.h: Declare __connect_internal and define __connect macro if not NOT_IN_libc. * sysdeps/mach/hurd/connect.c: Use INTDEF for __connect. * sysdeps/unix/sysv/aix/connect.c: Likewise. * sysdeps/unix/sysv/linux/connect.S: Add __connect_internal alias. * include/unistd.h: Declare __close_internal and define __close macro if not NOT_IN_libc. * libio/libioP.h (JUMO0, JUMP1, JUMP2, JUMP3, WJUMP0, WJUMP1, WJUMP2, WJUMP3): Add extra parenthesis to avoid expanding element names with macors like __close. * sysdeps/unix/syscalls.list: Add __close_internal alias. * include/unistd.h: Declare __dup2_internal and define __dup2 macro if not NOT_IN_libc. * sysdeps/mach/hurd/dup2.c: Use INTDEF for __dup2. * sysdeps/posix/dup2.c: Use INTDEF for __dup2. * sysdeps/unix/syscalls.list: Add __dup2_internal alias. * include/unistd.h: Declare __fork_internal and define __fork macro if not NOT_IN_libc. * sysdeps/mach/hurd/fork.c: Use INTDEF for __fork. * sysdeps/unix/sysv/aix/fork.c: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Add __fork_internal alias. * include/stdio_ext.h: Declare __fsetlocking_internal and define __fsetlocking macro to use it if not NOT_IN_libc. * libio/__fsetlocking.c: Use INTDEF for __fsetlocking. * libio/__fbufsize.c: Correct copyright. * libio/__flbf.c: Likewise. * libio/__fpending.c: Likewise. * libio/__fpurge.c: Likewise. * libio/__freadable.c: Likewise. * libio/__freading.c: Likewise. * libio/__fsetlocking.c: Likewise. * libio/__fwritable.c: Likewise. * libio/__fwriting.c: Likewise. * include/stdio.h: Declare __asprintf_internal and define __asprintf macro to use it if not NOT_IN_libc. * stdio-common/asprintf.c: Use INTDEF for __asprintf. * include/mntent.h: Declare __setmntent_internal, __getmntent_r_internal, __endmntent_internal. Define __setmntent, __getmntent_r, and __endmntent macros to use these functions if not NOT_IN_libc. * misc/mntent_r.c: Use INTDEF for __setmntent, __getmntent_r, and __endmntent. * include/math.h: Declare __finite_internal, __finitef_internal, and __finitel_internal. Redefine isfinite macro if in libc or libm using these functions. * sysdeps/generic/s_ldexp.c: Use INTUSE for __finite calls. * sysdeps/generic/s_ldexpf.c: Use INTUSE for __finitef calls. * sysdeps/generic/s_ldexpl.c: Use INTUSE for __finitel calls. * sysdeps/i386/fpu/s_finite.S: Define _internal alias. * sysdeps/i386/fpu/s_finitef.S: Likewise. * sysdeps/i386/fpu/s_finitel.S: Likewise. * sysdeps/ieee754/dbl-64/s_finite.c: Likewise. * sysdeps/ieee754/flt-32/s_finitef.c: Likewise. * sysdeps/ieee754/ldbl-128/s_finitel.c: Likewise. * sysdeps/ieee754/ldbl-96/s_finitel.c: Likewise. * include/fcntl.h: Declare __fcntl_internal. Define __fcntl macro to use this function if not NOT_IN_libc. * libio/iofdopen.c (_IO_fcntl): Use INTUSE. * sysdeps/generic/fcntl.c: Use INTDEF for __fcntl. * sysdeps/mach/hurd/fcntl.c: Likewise. * sysdeps/unix/sysv/aix/fcntl.c: Likewise. * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise. * include/argz.h: Declare __argz_count_internal and __argz_stringify_internal. * intl/l10nflist.c [_LIBC]: Use INTUSE for __argz_count and __argz_stringify. * string/argz-count.c: Use INTDEF for __argz_count. * string/argz-stringify.c: Use INTDEF for __argz_stringify. * include/stdlib.h: Declare __cxa_atexit_internal and define __cxa_atexit macro if not NOT_IN_libc. * stdlib/cxa_atexit.c: Use INTDEF for __cxa_atexit. * dlfcn/Makefile: Define NOT_IN_libc when compiling modcxaatexit.c. * assert/assert.c: Use INTDEF for __assert_fail. * assert/__assert.c: Use INTUSE for call to __assert_fail. * include/assert.h: Declare __assert_fail_internal.
2002-04-09 20:36:24 +00:00
#undef __dup2
1995-02-18 01:27:10 +00:00
/* Duplicate FD to FD2, closing the old FD2 and making FD2 be
open on the same file as FD is. Return FD2 or -1. */
int
Update. 1997-05-26 22:51 Ulrich Drepper <drepper@cygnus.com> * configure.in: Use AC_PROG_CC_LOCAL instead of AC_PROC_CC. * aclocal.m4: Add AC_PROG_CC_LOCAL which does not fail for environments in which linking is not possible at configure time (since te libc is just build). Based on patches by Marcus G. Daniels <marcus@cathcart.sysc.pdx.edu>. * time/scheck.c (scheck): Make 2nd parameter const. * time/private.h: Likewise. 1997-05-26 18:58 Ulrich Drepper <drepper@cygnus.com> * stdlib/random_r.c (__initstate_r): Initialize randomizer type in state array only at right place. Reported by Sven Verdoolaege <skimo@breughel.ufsia.ac.be>. * stdlib/erand48_r.c (__erand48_r): Don't generate numbers in [0.5,1.0) but really in [0.0, 1.0). Patch by Oliver Gathmann <gathmann@scar.utoronto.ca>. 1997-05-22 12:50 Eric Delaunay <delaunay@lix.polytechnique.fr> * shlib-versions: Provide Linux/SPARC defaults. 1997-05-26 15:00 Matthias Urlichs <urlichs@noris.de> * stdlib/strtod_l.c: Add missing #include <xlocale.h>. * stdlib/strtof_l.c: Likewise. * stdlib/strtol_l.c: Likewise. * stdlib/strtold_l.c: Likewise. * stdlib/strtoll_l.c: Likewise. * stdlib/strtoul_l.c: Likewise. * stdlib/strtoull_l.c: Likewise. 1997-05-26 02:42 Zack Weinberg <zack@rabi.phys.columbia.edu> * hurd/dtable.c: De-ansidecl-fy. * math/test-math.c: Likewise. * signal/tst-signal.c: Likewise. * stdio/getc.c: Likewise. * stdio/obstream.c: Likewise. * stdio/putc.c: Likewise. * stdio-common/bug1.c: Likewise. * stdio-common/bug2.c: Likewise. * stdio-common/bug6.c: Likewise. * stdio-common/fscanf.c: Likewise. * stdlib/testsort.c: Likewise. * string/tester.c: Likewise. * sysdeps/am29k/ffs.c: Likewise. * sysdeps/generic/bb_init_func.c: Likewise. * sysdeps/generic/bcopy.c: Likewise. * sysdeps/generic/bzero.c: Likewise. * sysdeps/generic/div.c: Likewise. * sysdeps/generic/ffs.c: Likewise. * sysdeps/generic/memccpy.c: Likewise. * sysdeps/generic/memcpy.c: Likewise. * sysdeps/generic/memmove.c: Likewise. * sysdeps/generic/memset.c: Likewise. * sysdeps/generic/vfork.c: Likewise. * sysdeps/generic/vtimes.c: Likewise. * sysdeps/i386/bzero.c: Likewise. * sysdeps/i386/ffs.c: Likewise. * sysdeps/i960/ffs.c: Likewise. * sysdeps/m68k/ffs.c: Likewise. * sysdeps/m88k/ffs.c: Likewise. * sysdeps/mach/hurd/_exit.c: Likewise. * sysdeps/mach/hurd/accept.c: Likewise. * sysdeps/mach/hurd/access.c: Likewise. * sysdeps/mach/hurd/adjtime.c: Likewise. * sysdeps/mach/hurd/bind.c: Likewise. * sysdeps/mach/hurd/brk.c: Likewise. * sysdeps/mach/hurd/chdir.c: Likewise. * sysdeps/mach/hurd/chflags.c: Likewise. * sysdeps/mach/hurd/chmod.c: Likewise. * sysdeps/mach/hurd/chown.c: Likewise. * sysdeps/mach/hurd/chroot.c: Likewise. * sysdeps/mach/hurd/close.c: Likewise. * sysdeps/mach/hurd/connect.c: Likewise. * sysdeps/mach/hurd/defs.c: Likewise. * sysdeps/mach/hurd/dup2.c: Likewise. * sysdeps/mach/hurd/execve.c: Likewise. * sysdeps/mach/hurd/fchdir.c: Likewise. * sysdeps/mach/hurd/fchflags.c: Likewise. * sysdeps/mach/hurd/fchmod.c: Likewise. * sysdeps/mach/hurd/fchown.c: Likewise. * sysdeps/mach/hurd/fcntl.c: Likewise. * sysdeps/mach/hurd/fdopen.c: Likewise. * sysdeps/mach/hurd/flock.c: Likewise. * sysdeps/mach/hurd/fsync.c: Likewise. * sysdeps/mach/hurd/ftruncate.c: Likewise. * sysdeps/mach/hurd/getdtsz.c: Likewise. * sysdeps/mach/hurd/getegid.c: Likewise. * sysdeps/mach/hurd/geteuid.c: Likewise. * sysdeps/mach/hurd/getgid.c: Likewise. * sysdeps/mach/hurd/getgroups.c: Likewise. * sysdeps/mach/hurd/gethostid.c: Likewise. * sysdeps/mach/hurd/gethostname.c: Likewise. * sysdeps/mach/hurd/getitimer.c: Likewise. * sysdeps/mach/hurd/getlogin.c: Likewise. * sysdeps/mach/hurd/getpeername.c: Likewise. * sysdeps/mach/hurd/getpgid.c: Likewise. * sysdeps/mach/hurd/getpid.c: Likewise. * sysdeps/mach/hurd/getppid.c: Likewise. * sysdeps/mach/hurd/getsockname.c: Likewise. * sysdeps/mach/hurd/getsockopt.c: Likewise. * sysdeps/mach/hurd/getuid.c: Likewise. * sysdeps/mach/hurd/ioctl.c: Likewise. * sysdeps/mach/hurd/isatty.c: Likewise. * sysdeps/mach/hurd/link.c: Likewise. * sysdeps/mach/hurd/listen.c: Likewise. * sysdeps/mach/hurd/lseek.c: Likewise. * sysdeps/mach/hurd/mkdir.c: Likewise. * sysdeps/mach/hurd/open.c: Likewise. * sysdeps/mach/hurd/pipe.c: Likewise. * sysdeps/mach/hurd/read.c: Likewise. * sysdeps/mach/hurd/readlink.c: Likewise. * sysdeps/mach/hurd/reboot.c: Likewise. * sysdeps/mach/hurd/recv.c: Likewise. * sysdeps/mach/hurd/recvfrom.c: Likewise. * sysdeps/mach/hurd/rename.c: Likewise. * sysdeps/mach/hurd/rewinddir.c: Likewise. * sysdeps/mach/hurd/rmdir.c: Likewise. * sysdeps/mach/hurd/sbrk.c: Likewise. * sysdeps/mach/hurd/seekdir.c: Likewise. * sysdeps/mach/hurd/select.c: Likewise. * sysdeps/mach/hurd/setegid.c: Likewise. * sysdeps/mach/hurd/seteuid.c: Likewise. * sysdeps/mach/hurd/setgid.c: Likewise. * sysdeps/mach/hurd/setgroups.c: Likewise. * sysdeps/mach/hurd/sethostid.c: Likewise. * sysdeps/mach/hurd/sethostname.c: Likewise. * sysdeps/mach/hurd/setlogin.c: Likewise. * sysdeps/mach/hurd/setpgid.c: Likewise. * sysdeps/mach/hurd/setregid.c: Likewise. * sysdeps/mach/hurd/setreuid.c: Likewise. * sysdeps/mach/hurd/setrlimit.c: Likewise. * sysdeps/mach/hurd/setsid.c: Likewise. * sysdeps/mach/hurd/setsockopt.c: Likewise. * sysdeps/mach/hurd/settimeofday.c: Likewise. * sysdeps/mach/hurd/setuid.c: Likewise. * sysdeps/mach/hurd/shutdown.c: Likewise. * sysdeps/mach/hurd/sigaction.c: Likewise. * sysdeps/mach/hurd/sigaltstack.c: Likewise. * sysdeps/mach/hurd/sigpending.c: Likewise. * sysdeps/mach/hurd/sigprocmask.c: Likewise. * sysdeps/mach/hurd/sigstack.c: Likewise. * sysdeps/mach/hurd/sigsuspend.c: Likewise. * sysdeps/mach/hurd/socket.c: Likewise. * sysdeps/mach/hurd/socketpair.c: Likewise. * sysdeps/mach/hurd/stdio_init.c: Likewise. * sysdeps/mach/hurd/symlink.c: Likewise. * sysdeps/mach/hurd/sync.c: Likewise. * sysdeps/mach/hurd/sysd-stdio.c: Likewise. * sysdeps/mach/hurd/telldir.c: Likewise. * sysdeps/mach/hurd/truncate.c: Likewise. * sysdeps/mach/hurd/umask.c: Likewise. * sysdeps/mach/hurd/unlink.c: Likewise. * sysdeps/mach/hurd/wait4.c: Likewise. * sysdeps/mach/hurd/utimes.c: Likewise. * sysdeps/mach/hurd/write.c: Likewise. * sysdeps/mach/adjtime.c: Likewise. * sysdeps/mach/gettimeofday.c: Likewise. * sysdeps/mach/usleep.c: Likewise. * sysdeps/mips/__longjmp.c: Likewise. * sysdeps/posix/clock.c: Likewise. * sysdeps/posix/ctermid.c: Likewise. * sysdeps/posix/defs.c: Likewise. * sysdeps/posix/dup.c: Likewise. * sysdeps/posix/libc_fatal.c: Likewise. * sysdeps/posix/stdio_init.c: Likewise. * sysdeps/rs6000/ffs.c: Likewise. * sysdeps/sparc/e_sqrt.c: Likewise. * sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise. * sysdeps/standalone/i386/force_cpu386/brdinit.c: Likewise. * sysdeps/standalone/i386/force_cpu386/console.c: Likewise. * sysdeps/standalone/i960/nindy960/_exit.c: Likewise. * sysdeps/standalone/i960/nindy960/brdinit.c: Likewise. * sysdeps/standalone/i960/nindy960/console.c: Likewise. * sysdeps/standalone/m68k/m68020/mvme136/_exit.c: Likewise. * sysdeps/standalone/m68k/m68020/mvme136/brdinit.c: Likewise. * sysdeps/standalone/brk.c: Likewise. * sysdeps/stub/_exit.c: Likewise. * sysdeps/stub/brdinit.c: Likewise. * sysdeps/stub/console.c: Likewise. * sysdeps/stub/defs.c: Likewise. * sysdeps/stub/errlist.c: Likewise. * sysdeps/stub/libc_fatal.c: Likewise. * sysdeps/stub/siglist.c: Likewise. * sysdeps/stub/stdio_init.c: Likewise. * sysdeps/stub/strtsupp.c: Likewise. * sysdeps/unix/bsd/bsd4.4/tcgetattr.c: Likewise. * sysdeps/unix/bsd/bsd4.4/tcsetattr.c: Likewise. * sysdeps/unix/bsd/bsd4.4/wait3.c: Likewise. * sysdeps/unix/bsd/sun/sunos4/tcflow.c: Likewise. * sysdeps/unix/bsd/sun/sunos4/tcflush.c: Likewise. * sysdeps/unix/bsd/sun/sunos4/tcgetattr.c: Likewise. * sysdeps/unix/bsd/sun/sunos4/tcsendbrk.c: Likewise. * sysdeps/unix/bsd/sun/sunos4/wait4.c: Likewise. * sysdeps/unix/bsd/ultrix4/mips/sigvec.c: Likewise. * sysdeps/unix/bsd/bsdstat.h: Likewise. * sysdeps/unix/bsd/clock.c: Likewise. * sysdeps/unix/bsd/gtty.c: Likewise. * sysdeps/unix/bsd/init-posix.c: Likewise. * sysdeps/unix/bsd/setgid.c: Likewise. * sysdeps/unix/bsd/setrgid.c: Likewise. * sysdeps/unix/bsd/setruid.c: Likewise. * sysdeps/unix/bsd/setuid.c: Likewise. * sysdeps/unix/bsd/stty.c: Likewise. * sysdeps/unix/bsd/telldir.c: Likewise. * sysdeps/unix/bsd/ualarm.c: Likewise. * sysdeps/unix/common/glue-ctype.c: Likewise. * sysdeps/unix/sparc/start.c: Likewise. * sysdeps/unix/sysv/irix4/fpathconf.c: Likewise. * sysdeps/unix/sysv/irix4/getgroups.c: Likewise. * sysdeps/unix/sysv/irix4/getrusage.c: Likewise. * sysdeps/unix/sysv/irix4/pathconf.c: Likewise. * sysdeps/unix/sysv/irix4/setgroups.c: Likewise. * sysdeps/unix/sysv/irix4/sigtramp.c: Likewise. * sysdeps/unix/sysv/irix4/start.c: Likewise. * sysdeps/unix/sysv/irix4/sysconf.c: Likewise. * sysdeps/unix/sysv/sco3.2.4/__setpgid.c: Likewise. * sysdeps/unix/sysv/sco3.2.4/getgroups.c: Likewise. * sysdeps/unix/sysv/sysv4/__getpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/__setpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/ftruncate.c: Likewise. * sysdeps/unix/sysv/sysv4/gethostname.c: Likewise. * sysdeps/unix/sysv/sysv4/getpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/sethostname.c: Likewise. * sysdeps/unix/sysv/sysv4/setpgid.c: Likewise. * sysdeps/unix/sysv/sysv4/setsid.c: Likewise. * sysdeps/unix/sysv/gethostname.c: Likewise. * sysdeps/unix/sysv/tcgetpgrp.c: Likewise. * sysdeps/unix/sysv/tcsetpgrp.c: Likewise. * sysdeps/unix/alarm.c: Likewise. * sysdeps/unix/make_errlist.c: Likewise. * sysdeps/unix/rewinddir.c: Likewise. * sysdeps/unix/seekdir.c: Likewise. * sysdeps/unix/time.c: Likewise. * sysdeps/unix/utime.c: Likewise. * sysdeps/vax/__longjmp.c: Likewise. * sysdeps/vax/memccpy.c: Likewise. * time/strftime.c: Likewise. 1997-05-25 21:57 Miles Bader <miles@gnu.ai.mit.edu> * argp-parse.c (parser_init): For the special case where no parsing function is supplied for an argp, propagate its input to its first child, if any. * argp.h (struct argp_state): `argp' field renamed to `root_argp'. * argp-help.c (__argp_state_help, argp_args_usage, hol_help): Replace references to STATE->argp with STATE->root_argp. * argp-parse.c (parser_init): Likewise. 1997-05-26 14:17 Ulrich Drepper <drepper@cygnus.com> * manual/main.texi: Clarify situation for other not supported ports. Proposed by Andreas Jaeger <aj@arthur.rhein-neckar.de>. We recommend binutils 2.8. 1997-05-26 12:17 Ulrich Drepper <drepper@cygnus.com> * netinet/in.h: New file. Wrapper around inet/netinet/in.h. 1997-05-25 09:51 H.J. Lu <hjl@gnu.ai.mit.edu> * sysdeps/i386/elf/start.S: Change local label "nofini" to ".Lnofini". * sysdeps/i386/i386-mcount.S: Use GOT, instead of GOTOFF. 1997-05-24 17:45 H.J. Lu <hjl@gnu.ai.mit.edu> * gmon/gmon.c (_mcleanup): Free tostruct array allocated in monstartup. (dl_main): Define _dl_verbose based on DL_WARN environment variable.
1997-05-26 23:01:17 +00:00
__dup2 (fd, fd2)
int fd;
int fd2;
1995-02-18 01:27:10 +00:00
{
struct hurd_fd *d;
/* Extract the ports and flags from FD. */
d = _hurd_fd_get (fd);
if (d == NULL)
{
errno = EBADF;
return -1;
}
HURD_CRITICAL_BEGIN;
__spin_lock (&d->port.lock);
if (d->port.port == MACH_PORT_NULL)
{
__spin_unlock (&d->port.lock);
errno = EBADF;
fd2 = -1;
}
else if (fd2 == fd)
/* FD is valid and FD2 is already the same; just return it. */
__spin_unlock (&d->port.lock);
else
{
struct hurd_userlink ulink, ctty_ulink;
int flags = d->flags;
io_t ctty = _hurd_port_get (&d->ctty, &ctty_ulink);
io_t port = _hurd_port_locked_get (&d->port, &ulink); /* Unlocks D. */
if (fd2 < 0)
1995-02-18 01:27:10 +00:00
{
errno = EBADF;
fd2 = -1;
}
else
{
/* Get a hold of the destination descriptor. */
struct hurd_fd *d2;
if (fd2 >= _hurd_dtablesize)
{
/* The table is not large enough to hold the destination
descriptor. Enlarge it as necessary to allocate this
descriptor. */
__mutex_unlock (&_hurd_dtable_lock);
/* We still hold FD1's lock, but this is safe because
_hurd_alloc_fd will only examine the cells starting
at FD2. */
d2 = _hurd_alloc_fd (NULL, fd2);
if (d2)
__spin_unlock (&d2->port.lock);
__mutex_lock (&_hurd_dtable_lock);
}
else
1995-02-18 01:27:10 +00:00
{
d2 = _hurd_dtable[fd2];
if (d2 == NULL)
{
/* Must allocate a new one. We don't initialize the port
cells with this call so that if it fails (out of
memory), we will not have already added user
references for the ports, which we would then have to
deallocate. */
d2 = _hurd_dtable[fd2] = _hurd_new_fd (MACH_PORT_NULL,
MACH_PORT_NULL);
}
1995-02-18 01:27:10 +00:00
}
1995-02-18 01:27:10 +00:00
if (d2 == NULL)
{
fd2 = -1;
if (errno == EINVAL)
errno = EBADF; /* POSIX.1-1990 6.2.1.2 ll 54-55. */
}
else
{
/* Give the ports each a user ref for the new descriptor. */
__mach_port_mod_refs (__mach_task_self (), port,
MACH_PORT_RIGHT_SEND, 1);
if (ctty != MACH_PORT_NULL)
__mach_port_mod_refs (__mach_task_self (), ctty,
MACH_PORT_RIGHT_SEND, 1);
/* Install the ports and flags in the new descriptor slot. */
__spin_lock (&d2->port.lock);
d2->flags = flags & ~FD_CLOEXEC; /* Dup clears FD_CLOEXEC. */
_hurd_port_set (&d2->ctty, ctty);
_hurd_port_locked_set (&d2->port, port); /* Unlocks D2. */
}
}
__mutex_unlock (&_hurd_dtable_lock);
_hurd_port_free (&d->port, &ulink, port);
if (ctty != MACH_PORT_NULL)
_hurd_port_free (&d->ctty, &ctty_ulink, port);
}
HURD_CRITICAL_END;
return fd2;
}
Update. * sysdeps/mach/hurd/chown.c: Use INTDEF for __chown. * sysdeps/unix/sysv/aix/chown.c: Likewise. * sysdeps/unix/grantpt.c: Use INTUSE for __chown calls. * sysdeps/unix/sysv/linux/m68k/chown.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/chown.c: Likewise. * sysdeps/unix/sysv/linux/i386/chown.c: Use INTDEF2 to define __chown_internal. * sysdeps/unix/sysv/linux/s390/s390-32//chown.c: Likewise. * intl/dcngettext.c [_LIBC]: Use INTUSE for __dcngettext. * intl/dngettext.c [_LIBC] (DCNGETTEXT): Use INTUSE. * intl/ngettext.c: Likewise. * include/sys/socket.h: Declare __connect_internal and define __connect macro if not NOT_IN_libc. * sysdeps/mach/hurd/connect.c: Use INTDEF for __connect. * sysdeps/unix/sysv/aix/connect.c: Likewise. * sysdeps/unix/sysv/linux/connect.S: Add __connect_internal alias. * include/unistd.h: Declare __close_internal and define __close macro if not NOT_IN_libc. * libio/libioP.h (JUMO0, JUMP1, JUMP2, JUMP3, WJUMP0, WJUMP1, WJUMP2, WJUMP3): Add extra parenthesis to avoid expanding element names with macors like __close. * sysdeps/unix/syscalls.list: Add __close_internal alias. * include/unistd.h: Declare __dup2_internal and define __dup2 macro if not NOT_IN_libc. * sysdeps/mach/hurd/dup2.c: Use INTDEF for __dup2. * sysdeps/posix/dup2.c: Use INTDEF for __dup2. * sysdeps/unix/syscalls.list: Add __dup2_internal alias. * include/unistd.h: Declare __fork_internal and define __fork macro if not NOT_IN_libc. * sysdeps/mach/hurd/fork.c: Use INTDEF for __fork. * sysdeps/unix/sysv/aix/fork.c: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Add __fork_internal alias. * include/stdio_ext.h: Declare __fsetlocking_internal and define __fsetlocking macro to use it if not NOT_IN_libc. * libio/__fsetlocking.c: Use INTDEF for __fsetlocking. * libio/__fbufsize.c: Correct copyright. * libio/__flbf.c: Likewise. * libio/__fpending.c: Likewise. * libio/__fpurge.c: Likewise. * libio/__freadable.c: Likewise. * libio/__freading.c: Likewise. * libio/__fsetlocking.c: Likewise. * libio/__fwritable.c: Likewise. * libio/__fwriting.c: Likewise. * include/stdio.h: Declare __asprintf_internal and define __asprintf macro to use it if not NOT_IN_libc. * stdio-common/asprintf.c: Use INTDEF for __asprintf. * include/mntent.h: Declare __setmntent_internal, __getmntent_r_internal, __endmntent_internal. Define __setmntent, __getmntent_r, and __endmntent macros to use these functions if not NOT_IN_libc. * misc/mntent_r.c: Use INTDEF for __setmntent, __getmntent_r, and __endmntent. * include/math.h: Declare __finite_internal, __finitef_internal, and __finitel_internal. Redefine isfinite macro if in libc or libm using these functions. * sysdeps/generic/s_ldexp.c: Use INTUSE for __finite calls. * sysdeps/generic/s_ldexpf.c: Use INTUSE for __finitef calls. * sysdeps/generic/s_ldexpl.c: Use INTUSE for __finitel calls. * sysdeps/i386/fpu/s_finite.S: Define _internal alias. * sysdeps/i386/fpu/s_finitef.S: Likewise. * sysdeps/i386/fpu/s_finitel.S: Likewise. * sysdeps/ieee754/dbl-64/s_finite.c: Likewise. * sysdeps/ieee754/flt-32/s_finitef.c: Likewise. * sysdeps/ieee754/ldbl-128/s_finitel.c: Likewise. * sysdeps/ieee754/ldbl-96/s_finitel.c: Likewise. * include/fcntl.h: Declare __fcntl_internal. Define __fcntl macro to use this function if not NOT_IN_libc. * libio/iofdopen.c (_IO_fcntl): Use INTUSE. * sysdeps/generic/fcntl.c: Use INTDEF for __fcntl. * sysdeps/mach/hurd/fcntl.c: Likewise. * sysdeps/unix/sysv/aix/fcntl.c: Likewise. * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise. * include/argz.h: Declare __argz_count_internal and __argz_stringify_internal. * intl/l10nflist.c [_LIBC]: Use INTUSE for __argz_count and __argz_stringify. * string/argz-count.c: Use INTDEF for __argz_count. * string/argz-stringify.c: Use INTDEF for __argz_stringify. * include/stdlib.h: Declare __cxa_atexit_internal and define __cxa_atexit macro if not NOT_IN_libc. * stdlib/cxa_atexit.c: Use INTDEF for __cxa_atexit. * dlfcn/Makefile: Define NOT_IN_libc when compiling modcxaatexit.c. * assert/assert.c: Use INTDEF for __assert_fail. * assert/__assert.c: Use INTUSE for call to __assert_fail. * include/assert.h: Declare __assert_fail_internal.
2002-04-09 20:36:24 +00:00
INTDEF(__dup2)
1995-02-18 01:27:10 +00:00
weak_alias (__dup2, dup2)