summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Split out tty and shared_info stuff into their own headers and use throughout.Christopher Faylor2000-09-0724-307/+371
| | | | | | | | | | | | | | | | | Include sys/termios.h for files which need it. * tty.h: New file. * shared_info.h: New file. * fhandler.h: Move inline methods that rely on tty stuff to fhandler_console.cc. * fhandler_tty.cc (fhandler_pty_master::process_slave_output): Set output_done_event immediately after reading data to speed up tty output processing. (process_output): Set write_error to errno or zero. (fhandler_tty_slave::write): Check previous write error prior to writing to slave end of pipe. This allows tty output to be slightly less synchronous. * fhandler_console.cc (fhandler_console::tcsetpgrp): Moved here from fhandler.h. (fhandler_console::set_input_state): Ditto.
* * exceptions.cc (signal_exit): Reset all mutos owned by the main thread.Christopher Faylor2000-09-078-32/+55
| | | | | | | | | | | | | | | | | | | * fhandler.h: Define *_output_mutex macros for serializing tty output. (fhandler_termios): Remove restart_output_event. Define dummy output mutex methods. (fhandler_pty_master): Remove unneeded fixup_after_fork method. * fhandler_termios.cc (fhandler_termios::line_edit): Acquire output_mutex when CTRL-S is hit. Release it on CTRL-Q. * fhandler_tty.cc (fhandler_pty_master::process_slave_output): Remove inappropriate OutputStopped test here. Just use the output mutex. (fhandler_pty_master::fhandler_pty_master): Remove obsolete reference to restart_output_event. (fhandler_tty_common::close): Ditto. (fhandler_pty_master::set_close_on_exec): Ditto. (fhandler_pty_master::fixup_after_fork): Delete. * tty.cc (tty::common_init): Ditto. * sync.cc (muto::reset): New method. * sync.h: Declare above method.
* * sigproc.cc: Add include file for proper definitions.Christopher Faylor2000-09-064-1/+10
| | | | | * spawn.cc: Ditto. * winsup.h: Define cfree to avoid newlib pollution.
* 2000-09-06 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2000-09-062-1/+11
| | | | | * libc/include/sys/types.h (FD_ZERO): Remove call to bzero and inline code to prevent having to include another header file.
* * Makefile.am: Fix space vs. tab problem in install-data-local.Christopher Faylor2000-09-066-22/+41
| | | | | | | | * Makefile.in: Regenerate. * libc/include/_ansi.h (_EXFUN): Define specially for __CYGWIN__. (_EXPARM): New macro for defining a function parameter. * libc/include/stdlib.h: Use _EXPARM. * libc/stdlib/mallocr.c: Don't build cfree for Cygwin.
* * Makefile.in (all-zlib): Added dummy target.Alexandre Oliva2000-09-062-0/+3
|
* * Makefile.in (CFLAGS): Ensure that -MD is always added even when CFLAGS isChristopher Faylor2000-09-062-1/+7
| | | | overwritten.
* Add 'const' qualifiers where needed to avoid compiler warnings. Egor Duda2000-09-0698-113/+131
| | | | | | | * libltp/lib/tst_sig.c (tst_sig): Don't attempt to cleanup on fatal errors. * libltp/lib/parse_opts.c (parse_opts): Initialize allocated string to prevent heap corruption.
* * ltconfig, ltmain.sh, libtool.m4, ltcf-c.sh: Updated from libtoolAlexandre Oliva2000-09-065-85/+170
| | | | multi-language branch.
* * path.cc (cwdstuff::get_initial): Keep caching alive.Christopher Faylor2000-09-062-3/+13
| | | | (mount_info::conv_to_win32_path): Fill out relative path in failing case.
* Dummy file to accomodate programs which includeChristopher Faylor2000-09-061-0/+6
| | | | it unconditionally.
* * path.cc (normalize_posix_path): Deal with error return from cygcwd.get.Christopher Faylor2000-09-062-4/+17
| | | | | | (normalize_win32_path): Ditto. (mount_info::conv_to_win32_path): Ditto. (cwdstuff::get): Set buf to NULL on error.
* * path.cc (readlink): 'max' should be a 'min' or we'll suffer buffer overflow.Christopher Faylor2000-09-052-1/+6
|
* 2000-08-31 Manfred Hollstein <manfredh@redhat.com>Jeff Johnston2000-09-053-20/+25
| | | | | | * Makefile.am (install-data-local): Use optional $(DESTDIR) where required, as documented in the gnu coding standards. * Makefile.in: Regenerate.
* 2000-09-05 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2000-09-052-1/+6
| | | | | * libc/include/fcntl.h (_FNDELAY): Changed to be _FNONBLOCK to make O_NDELAY and O_NONBLOCK have the same value.
* * rs6000/simulator.S: Use conditional returns for documentationGeoffrey Keating2000-09-052-13/+20
| | | | | purposes. (access): Add new syscall.
* * Makefile.in (all-bootstrap): Added all-texinfo and all-zlib.Alexandre Oliva2000-09-052-2/+7
| | | | (bootstrap*): Depend on all-bootstrap.
* doco addition.Alan Modra2000-09-052-1/+7
|
* * path.cc (cwd_win32): Eliminate.Christopher Faylor2000-09-056-316/+273
| | | | | | | | | | | | | | | | | | | | | | | | | | (cwd_posix): Eliminate. (cwd_hash): Eliminate. (cwdstuff::init): Rename from cwd_init. (cwdstuff::fixup_after_exec): Rename from cwd_fixup_after_exec. (cwdstuff::get): Rename from get_cwd_inner. (normalize_posix_path): Eliminate cwd argument. Just calculate when necessary. (normalize_win32_path): Ditto. (mount_info::conv_to_win32_path): Eliminate cwd retrieval here. (mount_info::conv_to_posix_path): Ditto. (hash_path_name): Accomodate additional methods in cwdstuff. (get_cwd_win32): Eliminate. (getcwd): Use cwdstuff methods. Properly handle case where buf == NULL and len < 0. (cwdstuff::get_hash): New method. (cwdstuff::get_initial): New method. (cwdstuff::set): New method. (cwdstuff::get): New method. (cwdstuff::copy): New method. * path.h: Move cwdstuff struct here. Add a bunch of stuff to cwdstuff. Make cygcwd an extern. * spawn.cc (spawn_guts): Use copy method to get copies of cwd info to pass to execed process. * dcrt0.cc (dll_crt0_1): Use cygcwd methods for cwd initialization.
* Add some reloc types.Alan Modra2000-09-052-1/+14
|
* Patch by Egor Duda <deo@logos-m.ru>:Corinna Vinschen2000-09-042-1/+11
| | | | | * Makefile.in: Always add libltp headers directory to headers search path.
* * path.cc (readlink): Check if buffer length is positive. Truncate output toChristopher Faylor2000-09-0414-27/+33
| | | | buffer length. Don't terminate buffer with '\0'.
* Add ARRAY_SIZE macro from egcs versionNick Clifton2000-09-032-0/+6
|
* Fix formatting, add copyright noticeNick Clifton2000-09-032-46/+66
|
* * environ.cc (environ_init): Don't free the new environment table after we'veChristopher Faylor2000-09-032-1/+8
| | | | just copied stuff to it.
* * Makefile.in: Add cygheap.o.Christopher Faylor2000-09-0344-1880/+2211
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * child_info.h: Add specific exec class. * cygheap.h: New file. Contains declarations for cygwin heap. * cygheap.cc: New file. Implements cygwin heap functions. * dcrt0.cc (quoted): Simplify due to new method for passing arguments between cygwin programs. (alloc_stack_hard_way): Attempt to handle overlapped stack. (dll_crt0_1): Move child_info processing here. Accomodate new method for passing arguments between cygwin programs. Initialize cygwin heap. Establish __argc and __argv variables. (_dll_crt0): Move most of child_info processing to dll_crt0_1. (cygwin_dll_init): Remove duplication. * dtable.cc (dtable::extend): Allocate dtable using cygwin heap. (dtable::build_fhandler): Ditto for fhandler type being constructed. (dtable::dup_worker): Free new fhandler from cygwin heap on error. (dtable::select_*): Don't assume that this == fdtab. (dtable::linearize_fd_array): Delete. (dtable::delinearize_fd_array): Delete. (dtable::fixup_after_exec): New file. (dtable::vfork_child_dup): Use cygwin heap. (dtable::vfork_parent_restore): Ditto. * dtable.h: Remove obsolete methods. Add new method. * environ.cc (posify): Eliminate already_posix parameter and logic. (envsize): New function. (_addenv): Use envsize. (environ_init): Accept an argument pointing to an existing environment list. If supplied, allocate space for this in the the program's heap. * fhandler.cc (fhandler_base::operator =): Move here from fhandler.h. Use cygwin heap to allocate filenames. (fhandler_base::set_name): Allocate/free names from cygwin heap. (fhandler_base::linearize): Delete. (fhandler_base::de_linearize): Delete. (fhandler_base::operator delete): Free from cygwin heap. (fhandler_base::~fhandler_base): Ditto. * fhandler.h: Accomodate elimination of *linearize and other changes above. * fhandler_console.cc (fhandler_console::fixup_after_exec): Rename from de_linearize. * heap.h: New file. * fhandler_tty.cc (fhandler_tty_slave::fhandler_tty_slave): Use cygwin heap for name. fhandler_tty::fixup_after_exec): Rename from de_linearize. * fork.cc (fork): Call cygheap_fixup_in_child. * heap.cc: Use declarations in heap.h. * malloc.cc: Sprinkle assertions throughout to catch attempts to free/realloc something from the cygwin heap. * path.cc: Throughout, eliminate use of per-thread cache for cwd. Use cwd_* functions rather than cwd_* variables to access cwd_win32 and cwd_posix. (cwd_win32): New function. (cwd_posix): New function. (cwd_hash): New function. (cwd_fixup_after_exec): New function. * path.h: Accomodate path.cc changes. * pinfo.cc (pinfo_init): Accept a pointer to an environment table. Pass this to environ_init. Eliminate old 'title' tests. * pinfo.h: Accomodate above change in argument. * spawn.cc (struct av): New method for building argv list. (av::unshift): New method. (spawn_guts): Allocate everything that the child process needs in the cygwin heap and pass a pointer to this to the child. Build argv list using new method. Eliminate delinearize stuff. * thread.h: Eliminate _cwd_win32 and _cwd_posix buffers. * winsup.h: Eliminate obsolete functions. Add envsize() declaration.
* * Makefile.in: Add new goal "check"Christopher Faylor2000-09-034-6/+15
| | | | | * configure.in: When doing native build do configure in testsuite subdirectory * configure: Regenerate.
* * Makefile.in: Remove "make check" support. It is now in winsup/Makefile.in.Christopher Faylor2000-09-032-56/+6
|
* Importing Egor's testsuite.Christopher Faylor2000-09-0399-5/+26942
|
* Importing Egor's testsuite.Christopher Faylor2000-09-0331-0/+6749
|
* Remove everythingChristopher Faylor2000-09-033-9/+0
|
* Remove READMEChristopher Faylor2000-09-031-42/+0
|
* remove everything and move it up a level.Christopher Faylor2000-09-035-804/+0
|
* * configure.in (FLAGS_FOR_TARGET): Use -nostdinc even for CanadianAlexandre Oliva2000-09-022-4/+25
| | | | crosses, but add gcc/include to the header search path for them.
* * sh.h (R_SH_GOT32, R_SH_PLT32, R_SH_COPY, R_SH_GLOB_DAT,Alexandre Oliva2000-09-022-1/+15
| | | | | R_SH_JMP_SLOT, R_SH_RELATIVE, R_SH_GOTOFF, R_SH_GOTPC): New relocs. (R_SH_FIRST_INVALID_RELOC): Adjust.
* * sigproc.cc (mychild): New function.Christopher Faylor2000-09-022-7/+25
| | | | | (proc_subproc): Use mychild() to determine if a specific pid is valid for wait()ing.
* * sigproc.cc (sigproc_init): Create wait_sig_inited without auto-reset to avoidChristopher Faylor2000-09-012-2/+8
| | | | | potential races. (init_child_info): Avoid unneeded test.
* * sigproc.cc (proc_info): Rename proc_exists which takes a pid to "pid_exists".Christopher Faylor2000-09-019-56/+81
| | | | | | * shared.h: Split out "child_info" stuff into a new header file and use where necessary. Declare pid_exists. * child_info.h: New file.
* * Makefile.in: More normalization.Christopher Faylor2000-09-012-4/+7
|
* * Makefile.in: Normalize 'pwd' based on location of winsup.Christopher Faylor2000-08-312-2/+7
|
* * errno.cc (set_errno_from_win_error): Actually use arguments to strace_printf.Christopher Faylor2000-08-312-6/+11
|
* * ltconfig, ltmain.sh: Updated from libtool multi-language branch.Alexandre Oliva2000-08-316-2205/+4547
| | | | | * libtool.m4, ltcf-c.sh: Copied from libtool multi-language branch. * gettext.m4: New file, extracted from aclocal.m4.
* * times.cc (gettimeofday): use GetSystemTimeAsFileTime to avoid aDJ Delorie2000-08-302-7/+11
| | | | | | conversion (FACTOR): correct value (genf): set milliseconds to zero, DOW to 4.
* 2000-08-30 Kazu Hirata <kazu@hxi.com>Jeff Johnston2000-08-302-3/+7
| | | | * libc/sys/h8300hms/crt0.S: Optimize for both speed and code size.
* 2000-08-30 Werner Almesberger <Werner.Almesberger@epfl.ch>Jeff Johnston2000-08-304-4/+15
| | | | | | | * libc/posix/execve.c: included unistd.h for "_execve" prototype. * libc/misc/unctrl.c libc/sys/sysvi386/crt0.c (sccsid): changed "#ifndef lint" to "#if defined(LIBC_SCCS) && !defined(lint)" like everywhere else.
* Correct for missing patchGeoffrey Keating2000-08-301-1/+1
|
* * libc/string/swab.c: Specify that it's defined in <unistd.h>.Geoffrey Keating2000-08-303-3/+8
| | | | | | * libc/include/string.h: Don't include <sys/types.h>, as it causes really bad namespace pollution. Don't declare swab(), it is properly declared in unistd.h.
* * grp.cc (getgroups): fail with EINVAL if array is not largeDJ Delorie2000-08-292-5/+15
| | | | enough to hold all supplementary group IDs.
* 2000-08-29 Werner Almesberger <Werner.Almesberger@epfl.ch>Jeff Johnston2000-08-292-7/+11
| | | | | * libc/unix/getpwent.c (getpwnam, getpwuid, getpwent): removed (broken) support for non-existent /etc/passwd field "comment".
* * signal.cc (_raise): New function.Christopher Faylor2000-08-295-14/+25
| | | | | | | | * exceptions.cc (unused_sig_wrapper): Remove _raise. * sigproc.h (class sigframe): Default frames to skip to zero or suffer from exuberant optimization. * fhandler_tty.cc (fhandler_tty::write): Set appropriate errno when WriteFile to pipe fails.