b8b7eb058d* cygwinenv.sgml (using-cygwinenv): Move envcache, strip_title, title, tty, and upcaseenv options to list of obsolete options. * effectively.sgml (using-console): Remove section. * new-features.sgml (ov-new1.7.10): Document removed CYGWIN options. Document removed tty mode.
Corinna Vinschen
2011-06-15 11:41:26 +0000
c75b5b2d13* cygheap.h (init_cygheap::ctty_on_hold): Remove conditionalized variable. * dcrt0.cc (do_exit): Remove code which handled CYGWIN=tty style ttys. * devices.in: Remove "/dev/ttym". * dtable.cc: Rename tty to pty where appropriate throughout. (dtable::stdio_init): Use new t->is_console rather than using now-deleted hwnd element in tty structure. (dtable::init_std_file_from_handle): Remove code which handled CYGWIN=tty style ttys. (fh_alloc): Ditto. * fhandler.h: Rename tty to pty where appropriate. (fhandler_pty_common): Delete output_done_event, ioctl_request_event, ioctl_done_event. (fhandler_pty_master::setup): Delete argument. (fhandler_tty_master): Delete. (fhandler_union): Delete __tty_master. * fhandler_console.cc (use_tty): Delete. (fhandler_console::get_tty_stuff): Set is_console to true rather than calling sethwnd. (fhandler_console::send_winch_maybe): Remove CYGWIN=tty considerations. (fhandler_console::input_tcsetattr): Ditto. * fhandler_termios.cc (fhandler_termios::tcsetpgrp): Use new t->is_console rather than using now-deleted hwnd element in tty structure. * fhandler_tty.cc: Rename tty to pty where appropriate throughout. (tty_master): Delete. (process_input): Ditto. (process_output): Ditto. (process_ioctl): Ditto. (fhandler_tty_master::*): Ditto. (fhandler_pty_master::process_slave_output): Remove CYGWIN=tty considerations. (fhandler_pty_slave::open): Ditto for *_done_event. (fhandler_pty_slave::write): Ditto. (fhandler_pty_slave::ioctl): Ditto. (fhandler_pty_slave::fch_open_handles): Ditto. (fhandler_pty_slave::fch_set_sd): Ditto. (fhandler_pty_slave::fch_close_handles): Ditto. (fhandler_pty_common::close): Ditto. (fhandler_pty_master::setup): Ditto. Remove now-unneeded ispty parameter. (fhandler_pty_master::open): Reflect argument removal for tty::allocate. * select.cc: Rename tty to pty where appropriate throughout. * sigproc.cc (proc_subproc): Remove CYGWIN=tty considerations. * tty.cc (ttyslot): Accommodate CYGWIN=tty removal. (tty_list::init_session): Ditto. (tty_list::attach): Ditto. (tty::create_master): Delete. (tty_list::terminate): Ditto. (tty_list::allocate): Delete "with_console" parameter. Remove CYGWIN=tty considerations. (tty::init): Set is_console = false. Use 'false' for was_opened since it is a boolean. * tty.h (*_{DONE,REQUEST}_EVENT): Delete. (tty_min::is_console): Declare new field which replaces hwnd. (tty_min::gethwnd): Delete. (tty_min::sethwnd): Ditto. (tty_list::allocate): Delete parameter. (tty_list::terminate): Delete declaration. * include/sys/cygwin.h (PID_USETTY): Redefine to PID_UNUSED1 and change comment to reflect its availability.
Christopher Faylor
2011-06-14 21:48:43 +0000
d0009604ad* mingw: Force use of bash.
Christopher Faylor
2011-06-14 15:04:04 +0000
aee3f8fb6f* libc/time/asctime_r.c (asctime_r): Replace call to sprintf with call to siprintf. * libc/time/strftime.c: Define snprintf to sniprintf in multibyte case. * libc/time/tzset_r.c: Define sscanf to siscanf.
Corinna Vinschen
2011-06-14 14:31:59 +0000
25fa7e5ad6libgloss: * configure.in: Don't handle strongarm, ep9312 and xscale target names. * configure: Regenerate. * libnosys/configure.in: Don't handle strongarm and thumb target names. * libnosys/configure: Regenerate.
Joseph Myers
2011-06-14 13:40:48 +0000
9bc99decb7* libc/time/tzset_r.c (tzset_r): Correct behavior for changing from non-GMT to GMT, when un-setting TZ. Set _timezone and _daylight even if no DST is given in TZ.
Corinna Vinschen
2011-06-14 07:50:40 +0000
4226571d7aprintf: set errno for read-only stream
Eric Blake
2011-06-14 03:56:05 +0000
0fdbb2d0cd* fhandler_tty_slave.cc (fhandler_tty_slave::fhandler_tty_slave): Revert previous change since unit 0 is perfectly valid.
Christopher Faylor
2011-06-13 23:49:00 +0000
e75cc8b1d0merge from gcc
DJ Delorie
2011-06-13 23:01:42 +0000
f9dd2b32b9* configure.ac (tilepro-*-*) New case. (tilegx-*-*): Likewise. * configure: Regenerate.
Nick Clifton
2011-06-13 15:24:43 +0000
c3a9063f83Rename FH_BAD to FH_NADA throughout. * devices.h (FH_ERROR): New value. (iscons_dev): Extend to detect all the console device types. * devices.in: Set aside storage for FH_ERROR. * dtable.cc (dtable::init_std_file_from_handle): Use iscons_dev to detect when device is a console. (fh_alloc): Pass device to console constructor. (build_fh_pc): Short circuit when we detect that the constructor saw an error. * fhandler.h (fhandler_console::fhandler_console): Accept fh_devices parameter. (get_tty_stuff): Change to void. * fhandler_console (fhandler_console::set_unit): Set device to FH_ERROR on attempt to access anything other than the current console. (fhandler_console::get_tty_stuff): Change to void return. (fhandler_console::open): Return EPERM on FH_ERROR device type. (fhandler_console::fhandler_console): Set the device type appropriately before calling get_tty_stuff and rely on that function to reset it if necessary.
Christopher Faylor
2011-06-12 20:15:26 +0000
38e356f0e42011-06-09 Yaakov Selkowitz <yselkowitz@...>
Jeff Johnston
2011-06-10 18:30:38 +0000
1516a0b4d7* environ.cc (create_upcaseenv): Delete. (ucenv): Don't honor create_upcaseenv. (environ_init): Remove early retrieval of CYGWIN environment variable. Change comment to reflect new behavior.
Christopher Faylor
2011-06-10 15:06:13 +0000
b6510ccdcd* child_info.h (CURR_CHILD_INFO_MAGIC): Reset. (child_info::old_title): Delete. (child_info::~child_info_spawn): Remove recording of old_title. * dcrt0.cc (title_buf): Delete. (child_info_spawn::handle_spawn): Remove recording of old_title. (dll_crt0_1): Get rid of all title handling. (do_exit): Ditto. * environ.cc (known): Delete strip_title and title. * fhandler_console.cc (fhandler_console::write): Remove recording of old_title. * globals.cc (exit_states): Remove ES_TITLE. (display_title): Delete. (strip_title_path): Delete. (old_title): Delete. * spawn.cc (spawn_guts): Remove old_title accommodation.
Christopher Faylor
2011-06-09 21:20:27 +0000
b9cf88ddba* environ.c: Move code earlier to allow: (_addenv): Call parse_options() when CYGWIN environment variable is being changed. (parse_options): Change parameter to 'const'.
Christopher Faylor
2011-06-09 17:50:41 +0000
bb37277ac2* environ.cc (tty_is_gone): Add missing space to message.
Christopher Faylor
2011-06-08 19:51:15 +0000
022e15dc60* environ.cc (settings::set_process_state): Delete. (tty_is_gone): New function. (known): Change "tty" to call tty_is_gone(). Remove unneeded '&' from beginning of function address. (parse_options): Remove set_process_state handling. * shared_info.h (CURR_USER_MAGIC): Reset. (user_info::warned_notty): New member.
Christopher Faylor
2011-06-08 19:27:48 +0000
0791c40b20* fhandler_console.cc (fhandler_console::open_shared_console): Semi-revert to using fixed location for console stuff. * shared.cc (offsets): Ditto. Comment. * shared_info (shared_locations): Re-add SH_SHARED_CONSOLE.
Christopher Faylor
2011-06-07 20:55:10 +0000
772832a85bSync from upstream: 2011-06-03 Nick Clifton <nickc@redhat.com> Ben Elliston <bje@gnu.org>
Nick Clifton
2011-06-06 10:36:06 +0000
b86f999af1whitespace elimination
Christopher Faylor
2011-06-06 05:02:13 +0000
daf7238603* fhandler_disk_file.cc (fhandler_disk_file::pread): Reset windows file position pointer back to previous location after successful read.
Christopher Faylor
2011-06-06 00:25:44 +0000
d5cb221b85* fhandler_console.cc (fhandler_console::open_shared_console): Don't zero handle to open_shared since it is supposed to be an input. (enum_windows): Set handle input to open_shared to NULL since it does not represent any previously opened shared region. * shared.cc (open_shared): Tweak debugging output.
Christopher Faylor
2011-06-05 02:10:31 +0000
cb353ff36f* pinfo.cc (_pinfo::set_ctty): Don't reset myself->{pgid,sid} if terminal has no pgid or sid settings.
Christopher Faylor
2011-06-04 00:29:19 +0000
32bf308231* fhandler.cc (fhandler_base_overlapped::wait_overlapped): Only raise SIGPIPE when writing. * fhandler.h: Include "tty.h". (fhandler_termios::_tc): Rename from tc. (fhandler_termios::tc): New method. (fhandler_termios::tcinit): Remove an argument. (fhandler_termios::get_ttyp): Use method to retrieve value. (fhandler_console::console_state): Move here. (fhandler_console::dev_state): Delete. (fhandler_console::shared_console_info): Define. (fhandler_console::open_shared_console): Move this function under fhandler_console umbrella. (fhandler_console::tc): Define. Return static value. (fhandler_console::focus_aware): Accommodate deletion of dev_state. (fhandler_console): Add tty_list::get_cttyp as a friend. * fhandler_console.cc (dev_state): Redefine as a pointer within shared_console_info and change dev-> to dev. throughout. (fhandler_console::shared_console_info): Move into fhandler_console. (fhandler_console::open_shared_console): Move into fhandler_console change argument to simple bool. (enum_windows): Accommodate changes to console_state and open_shared_console. (console_unit::console_unit): Ditto. (fhandler_console::get_tty_stuff): Accommodate change to dev_state. (tty_list::get_cttyp): Accommodate change to handler_console::shared_console_info. (fhandler_console::read): Accommodate change from tc to tc (). (fhandler_console::set_input_state): Ditto. (fhandler_console::open): Accommodate tcinit argument change and change from tc to tc(). (fhandler_console::input_tcsetattr): Accomodate change from tc to tc(). (fhandler_console::input_tcsetattr): Ditto. (fhandler_console::write_normal): Ditto. (fhandler_console::init): Ditto. (fhandler_console::igncr_enabled): Ditto. * fhandler_termios.cc (fhandler_termios::tcinit): Remove first argument. Expect tc() to have been set up first. Use tc() rather than tc. (fhandler_termios::tcsetpgrp): Accomodate change from tc to tc(). (fhandler_termios::tcgetpgrp): Ditto. (fhandler_termios::bg_check): Ditto. (fhandler_termios::line_edit: Ditto. (fhandler_tty_master::set_winsize): Ditto. (fhandler_tty_slave::open): Ditto. (fhandler_tty_slave::init): Ditto. (fhandler_pty_master::write): Ditto. (fhandler_pty_master::setup): Ditto. Accommodate change in arguments to tcinit. (fhandler_tty_slave::fch_open_handles): Set _tc directly. (tty_min::is_orphaned_process_group): Don't assume that parent pid exists. * pinfo.cc (_pinfo::set_ctty): Reset myself->{pgid,sid} here if we were started by a non-Cygwin process but the tty exists. * shared_info.h (console_state): Delete from here. * tty.h: Make multiple inclusion safe.
Christopher Faylor
2011-06-04 00:12:29 +0000
0e36228bfbFix spelling mistakes.
Nick Clifton
2011-06-02 13:43:23 +0000
83e4d35a89* exceptions.cc (ctrl_c_handler): Simplify test for no parent tty. * fhandler_console.cc (fhandler_console::get_tty_stuff): Return NULL if ctty is not tty/console. Improve test for slave tty/pty device.
Christopher Faylor
2011-06-01 01:47:51 +0000
be9b5aba26* external.cc (fillout_pinfo): Don't truncate ctty if it's < 0. * select.cc (pipe_data_available): Avoid printing debug info by default or suffer very large strace files.
Christopher Faylor
2011-06-01 01:20:28 +0000
a7a1247770* select.cc (pipe_data_available): New function - uses NtQueryInformationFile to return information about pipes. (peek_pipe): Rewrite to use pipe_data_available for both read and write tests.
Christopher Faylor
2011-06-01 00:57:49 +0000
2ec2d00e1bCorrect checking for short option matches in getopt_long_only().
Keith Marshall
2011-05-31 20:24:51 +0000
e60d84e8402011-05-31 Paul Brook <paul@codesourcery.com>
Paul Brook
2011-05-31 14:12:55 +0000
0d4d5f1a902011-05-31 Paul Brook <paul@codesourcery.com>
Paul Brook
2011-05-31 14:07:57 +0000
106e3acf59* dtable.cc (dtable::select_write): Add missing argument to debug_printf. * fhandler.cc (fhandler_base_overlapped::setup_overlapped): Explicitly set io_pending to false. (fhandler_base_overlapped::has_ongoing_io): Call GetOverlappedResult to force completion of I/O. (fhandler_base_overlapped::wait_overlapped): Rewrite to correctly deal with nonblocking reads and to make more race proof. (fhandler_base_overlapped::raw_write): Deal with new enum values. (fhandler_base_overlapped::raw_read): Ditto. Don't deal with ongoing I/O here since it makes no sense in the read context. * fhandler.h (enum wait_return): Add overlapped_unknown, overlapped_nonblocking_no_data. * pipe.cc (pipe): Add debugging output.
Christopher Faylor
2011-05-31 00:26:37 +0000
de3c57f06e* dll_init.cc (dll_list::append): Eliminate increment of unused tot variable. * dll_init.h (dll_list::tot): Delete. (dll_list::populate_all_deps): Delete undefined function. * fhandler.cc (fhandler_base_overlapped::wait_overlapped): Move EPIPE handling under error condition.
Christopher Faylor
2011-05-30 17:16:24 +0000
6642f7daa3* dll_init.cc (reserve_upto): Remove. (release_upto): Ditto. (dll_list::reserve_space): New function to reserve space needed by DLL_LOAD dlls early in the fork process. (dll_list::load_after_fork): Rewrite to use recursion to track reservations it makes while trying to make dlls land where they belong. (dll_list::load_after_fork_impl): New function used by load_after_fork. (dll_list::alloc): Initialize image base field. * dll_init.h (dll_list::prefered_base): New field. (dll_list::reserve_space): Declare new function. (dll_list::load_after_fork): Declare new function. * fork.cc (frok::child): call dll_list::reserve_space early, so we can retry if it fails.
Christopher Faylor
2011-05-30 16:09:29 +0000
7123c8b1fd* fhandler_termios.cc (fhandler_termios::bg_check): Do not return EIO when a process group has no leader as this is allowed and does not imply an orphaned process group. Add a test for orphaned process groups. (tty_min::is_orphaned_process_group): Define new function. * tty.h (tty_min::is_orphaned_process_group): Define new function.
Christopher Faylor
2011-05-30 06:58:00 +0000
977ad5434c* dll_init.cc (dll_list::find_by_modname): New function to search the dll list for a module name only (no path). (dll_list::alloc): Initialize newly-added members of struct dll. (dll_list::append): New function to factor out the append operation (used by dll_list::topsort). (dll_list::populate_deps): New function to identify dll dependencies. (dll_list::topsort): New function to sort the dll list topologically by dependencies. (dll_list::topsort_visit): New helper function for the above. * dll_init.h (dll::ndeps): New class member. (dll::deps): Ditto. (dll::modname): Ditto. (dll_list::find_by_modname): New function related to topsort. (dll_list::populate_all_deps): Ditto. (dll_list::populate_deps): Ditto. (dll_list::topsort): Ditto. (dll_list::topsort_visit): Ditto. (dll_list::append): Ditto. (pefile): New struct allowing simple introspection of dll images. * fork.cc (fork): Topologically sort the dll list before forking * child_info.h (CURR_CHILD_INFO_MAGIC): Refresh. (child_info::refresh_cygheap): New function. * spawn.cc (spawn_guts): Call refresh_cygheap before creating a new process to ensure that cygheap_max is up-to-date. * fork.cc (frok::parent): Ditto.
Christopher Faylor
2011-05-30 06:52:12 +0000
3a88e09e7f* cygheap.cc (cygheap_dummy): Rename from cygheap_at_start. (cygheap): Accommodate name change to cygheap_dummy. (cygheap_init): Ditto. (cygheap_fixup_in_child): Simplify slightly. * fork.cc (fork): Add an advisory comment.
Christopher Faylor
2011-05-30 06:24:53 +0000
57b670586c* fhandler.cc (fhandler_overlapped::wait_overlapped): Make sure that I/O is cancelled on signal.
Christopher Faylor
2011-05-29 15:30:27 +0000
a4fddeb9f6* ps.cc (ttynam): Accommodate new console numbering. (main): Ditto.
Christopher Faylor
2011-05-29 15:20:10 +0000
6cd2e18523* dll_init.cc (dll_list::alloc): Initialize dll::image_size. (reserve_at): Don't reserve space needed by the target dll if the latter overlaps the free region to be blocked. (dll_list::load_after_fork): Use new version of reserve_at. * dll_init.h (dll::image_size): New member. (pefile): New struct.
Christopher Faylor
2011-05-28 20:55:34 +0000
07f89f85dbRevert previous checkins as they introduced a bug when running zsh.
Christopher Faylor
2011-05-28 20:41:51 +0000
17a5c8c36e* dll_init.cc (reserve_upto): Remove. (release_upto): Ditto. (dll_list::reserve_space): New function to reserve space needed by DLL_LOAD dlls early in the fork process. (dll_list::load_after_fork): Rewrite to use recursion for tracking reservations made while trying to make dlls land where they belong. (dll_list::load_after_fork_impl): Ditto. (dll_list::alloc): Initialize image base field. * dll_init.h (struct dll_list): declare new functions. (dll::image_size): New member.
Christopher Faylor
2011-05-28 20:27:56 +0000
a92339ab63* dll_init.cc (dll_list::find_by_modname): New function to search the dll list for a module name only (no path). (dll_list::alloc): Initialize newly-added members of struct dll. (dll_list::append): New function to factor out the append operation (used by dll_list::topsort). (dll_list::populate_deps): New function to identify dll dependencies. (dll_list::topsort): New function to sort the dll list topologically by dependencies. (dll_list::topsort_visit): New helper function for the above. * dll_init.h (dll::ndeps): New class member. (dll::deps): Ditto. (dll::modname): Ditto. (dll_list::find_by_modname): New function related to topsort. (dll_list::populate_all_deps): Ditto. (dll_list::populate_deps): Ditto. (dll_list::topsort): Ditto. (dll_list::topsort_visit): Ditto. (dll_list::append): Ditto. (pefile): New struct allowing simple introspection of dll images. * fork.cc (fork): Topologically sort the dll list before forking.
Christopher Faylor
2011-05-28 20:17:09 +0000
8551087823* dll_init.c (dll_list::load_after_fork): Don't clear in_forkee here. * fork.cc (frok::errmsg): Rename from 'error'. (frok::error): New function. Handle conditional printing of error messages. (frok::parent): Record hchild handle for use by error function. Use throughout. Use error function rather than setting error pointer directly. (fork): Clear is_forkee here. Accommodate rename of 'error' to 'errmsg'. * sigproc.cc (child_info::proc_retry): Detect EXITCODE_FORK_FAILED.
Christopher Faylor
2011-05-28 20:09:04 +0000
beaedec545* fhandler.cc (handler_base_overlapped::wait_overlapped): Rework to attempt to properly set errno and bytes read for non-blocking case. Change to just rely on res to indicate error conditions.
Christopher Faylor
2011-05-28 18:49:13 +0000
d1dded4d67* fhandler.cc (fhandler_base_overlapped::wait_overlapped): Don't set io_pending unless ReadFile has returned an error. (this is a partial fix, accidentally checked in)
Christopher Faylor
2011-05-28 18:22:59 +0000
44d2fc0a45* autoload.cc: Call _api_fatal in asm. * child_info.h: Redefine CURR_CHILD_INFO_MAGIC. (child_info_fork::abort): Rename from handle_failure. Change arguments. * cygtls.h (_local_storage::ttybuf): New field. * dcrt0.cc (vapi_fatal): Split api_fatal. Add "in forked process" to message when appropriate. (api_fatal): Use vapi_fatal. * devices.h: Make multiple inclusion safe. (fh_devices): Add FH_CONS* stuff. Reorder slightly. (device): Eliminate anonymous union. Add more ways to access minor/major. (device::setunit): Accommodate no-longer-anonymous union. (device::is_fs): Ditto. (device::is_fs_special): Ditto. (device::major): New function. (device::minor): Ditto. (device::is_device): New function. (device::not_device): Ditto. (device::operator int): New operator. (device::operator fh_devices): Ditto. (device::operator bool): Ditto. (device::operator DWORD): Ditto. (device::operator =): Ditto. (isproc_dev): New function. (isprocsys_dev): Ditto. (iscons_dev): Ditto. (istty_slave_dev): Ditto. * devices.in: Add new "/dev/cons*" strings. Accommodate no-longer-anonymous union throughout. (BRACK): Use more precise method for initialization. * devices.cc: Regenerate. * dtable.cc (dtable::stdio_init): Use get_cttyp instead of get_tty. (dtable::find_archetype): Use new DWORD operator in device to test archetypes. (dtable::init_std_file_from_handle): Use different method to initialize 'dev'. Adapt to different ctty handling and accommodate /dev/cons*. (fh_alloc): Accommodate no-longer-anonymous union. Adapt to new /dev/cons*. (build_fh_pc): Make debugging output more useful. * exceptions.cc (ctrl_c_handler): Use get_cttyp instead of get_tty. * external.cc (fillout_pinfo): Accommodate new cons* stuff. * fhandler.cc (fhandler_base::read): Eliminate is_slow() test. * fhandler.h (fhandler_base::*): Adapt to changes in device.h. (fhandler_*::is_slow): Delete. ( fhandler_proc::get_proc_fhandler): Return fh_devices type. * fhandler_console.cc (open_shared_console): New function. (console_unit): New class. (console_unit::console_unit): New constructor. (enum_windows): New function. Declare as friend to console_unit. (fhandler_console::set_unit): New function. (fhandler_console::get_tty_stuff): Call set_unit to set the unit number and determine if initialization is needed. Eliminate flags parameter. (tty_list::get_cttyp): Rename (sorta) from get_tty. Return pointer to correct tty_min. (fhandler_console::open): Adapt to elimination of argument to get_tty_stuff. (fhandler_console::output_tcsetattr): Properly detect error condition. (fhandler_console::fixup_after_fork_exec): Adapt to get_tty_stuff() setting tc automatically. * fhandler_proc.cc: Use FH_BAD rather than 0 throughout where using fh_devices enum. (fhandler_proc::get_proc_fhandler): Return fh_devices. Adapt to devices.h changes. * fhandler_process.cc: Adapt to devices.h changes. Use FH_BAD rather than 0 throughout where using fh_devices enum. * fhandler_procnet.cc: Ditto. * fhandler_procsys.cc: Ditto. * fhandler_procsysvipc.cc: Ditto. * fhandler_tape.cc (fhandler_dev_tape::fhandler_dev_tape): Ditto. * fhandler_termios.cc (handler_termios::bg_check): Use tc->ttyname() rather than assuming that we can construct a tty. * fhandler_tty.cc (fhandler_tty_master::fhandler_tty_master): Just return get_minor() of dev. (fhandler_pty_master::process_slave_output): Add slightly more debugging info. (fhandler_tty_slave::fhandler_tty_slave): Change name from ntty to unit. (fhandler_pty_master::open): Ditto. (fhandler_tty_slave::ioctl): Adapt to change which causes ctty to represent a complete device. (fhandler_tty_master::init_console): Add debugging for failure path. (fhandler_pty_master::setup): Use get_unit() to retrieve unit number rather than relying on raw ntty. (fhandler_pty_master::setup): Ditto. * fhandler_virtual.h (virt_tab_t): Redefine fhandler as fh_devices. * fork.cc: Remove obsolete vfork stuff. (frok::child): Don't assume that a ctty == 0 is valid. * mount.cc (mount_info::conv_to_win32_path): Adapt to device struct changes. (mount_info::conv_to_win32_path): Ditto. * path.cc (path_conv::check): Retrive major/minor numbers via a method rather than accessing them directly from device. Rely on dev operators to set/retrieve device information as required by device struct change. * path.h (isproc_dev): Move to devices.h. (isprocsys_dev): Ditto. (isvirtual_dev): Ditto. (path_conv:{isdevice,isfifo,isspecial,iscygdrive,issocket,get_devn,get_unitn}): Use device methods to access/manipulate devices. * pinfo.cc (pinfo::exit): Don't assume that ctty == 0 is valid. Use iscons_dev to determine if a device is a console. (_pinfo::_ctty): Use device::parse to generate tty/cons name. (_pinfo::set_ctty): Don't assume that ctty == 0 is valid. Remove redundant info from debugging. * shared.cc (offsets): Remove console offset. * shared_info.h (shared_locations): Ditto. * syscalls.cc (umask): Use device methods to manipulate device information. (ctermid): Use device::parse to generate term device name. * tlsoffsets.h: Regenerate. * tty.cc (ttyslot): Return minor number of ctty since ctty now represents a full device. (tty::create_master): Set ctty to a complete device. (tty_list::attach): Rework to detect new /dev/cons* stuff. (tty_list::terminate): Adapt to changes to ctty. (tty_list::init): Adapt to change to setntty - pass in device major number. (tty::exists): Use get_unit() to retrive tty unit number. (tty::open_mutex): Ditto. (tty::open_inuse): Ditto. (tty::create_inuse): Ditto. (tty::get_event): Ditto. (tty_min::ttyname): Define new function. * tty.h (tty_min::ntty): Redefine as fh_devices. (tty::exists): Use get_unit() to retrive tty unit number. (tty::open_mutex): Ditto. (tty::open_inuse): Ditto. (tty::create_inuse): Ditto. (tty::get_event): Ditto. (tty_min::ttyname): Declare new function. (tty::getntty): Declare as const. (tty_list::operator []): Assure that only minor part of argument is used. * dll_init.cc (dll_list::alloc): Detect mismatch of data segments early issuing an explicit error message if necessary. * heap.cc (heap_init): Adapt to changes from fork->handle_failure to fork->abort. * pinfo.h (EXITCODE_FORK_FAILED): New enum. (from Ryan Johnson) * sigproc.cc (child_info_fork::abort): Rename from handle_failure. Change arguments to allow passing in a printf-like message. * winsup.h (api_fatal): Delete macro definition. (api_fatal): Redefine from __api_fatal. (vapi_fatal): Declare new function. * include/sys/strace.h (strace_vprintf): Define new macro. * ntdll.h (_SYSTEM_INFORMATION_CLASS): Add SystemHandleInformation.
Christopher Faylor
2011-05-28 18:17:09 +0000
747a0a5205* v8500/sbrk.c (_sbrk): Tidy code. Base start of heap on the "heap_start" symbol.
Nick Clifton
2011-05-27 10:46:48 +0000
bfce73c261* shared.cc (offsets): Reorder so that console_state is lowest in memory. Explain why. (open_shared): Accommodate reordering of offsets array. * shared_info.h (shared_locations): Reorder SH_SHARED_CONSOLE after SH_MYSELF.
Corinna Vinschen
2011-05-27 06:11:05 +0000
66b729b284* cygtls.h (strerror_buf): Resize to allow '-'.
Eric Blake
2011-05-23 21:03:06 +0000
4d95630803strerror: match recent glibc changes
Eric Blake
2011-05-23 20:43:06 +0000
38aa65b899Fix typo in ChangeLog of previous commit
Chris Sutcliffe
2011-05-23 20:10:41 +0000
3d1b4230112011-05-23 Chris Sutcliffe <ir0nh34d@users.sourceforge.net>
Chris Sutcliffe
2011-05-23 20:04:12 +0000
7d375b5a65* fhandler_process.cc (thread_info::fill_if_match): Reformat. (format_process_maps): Ditto. Fetch pointer to procinfo structure from mapped process. Print info about global shared Cygwin regions.
Corinna Vinschen
2011-05-23 08:53:25 +0000
6b58abe5372011-05-22 Chris Sutcliffe <ir0nh34d@users.sourceforge.net>
Chris Sutcliffe
2011-05-23 03:43:30 +0000
ec05c53dde2011-05-22 Chris Sutcliffe <ir0nh34d@users.sourceforge.net>
Chris Sutcliffe
2011-05-23 03:30:01 +0000
79444310972011-05-22 A.B., Khalid <abkhd@users.sourceforge.net>
Chris Sutcliffe
2011-05-23 03:02:16 +0000
1e9f1055752011-05-22 Antoine LECA <antoinel@users.sourceforge.net>
Chris Sutcliffe
2011-05-23 02:54:21 +0000
69080f58f02011-05-22 Antoine LECA <antoinel@users.sourceforge.net>
Chris Sutcliffe
2011-05-23 02:38:49 +0000
ecf22d80442011-05-22 Antoine LECA <antoinel@users.sourceforge.net>
Chris Sutcliffe
2011-05-23 01:01:18 +0000
ec2b3046a12011-05-22 Chris Sutcliffe <ir0nh34d@users.sf.net>
Chris Sutcliffe
2011-05-23 00:13:45 +0000
07c97345182011-05-22 Chris Sutcliffe <ir0nh34d@users.sourceforge.net>
Chris Sutcliffe
2011-05-23 00:03:22 +0000
15ef1f6caf* fhandler_process.cc (struct dos_drive_mappings): Use malloc/free rather than cmalloc/cfree. Check return value from malloc before using it. (struct heap_info): Ditto. (struct thread_info): Ditto. Rename from stack_info. Rename members and local variables accordingly. (thread_info::thread_info): Store stack and TEB addresses. (thread_info::fill_if_match): Print "teb" if a TEB address has been found. Special case for WOW64, explain why. (format_process_maps): Fetch PEB address. Print MEM_RESERVE regions with equal signs to distinguish them from PAGE_NOACCESS regions. Fix printing of 'p' and 's' to differ between MEM_PRIVATE and MEM_MAPPED pages, as on Linux. Print 'g' instead of 'p for PAGE_GUARD pages. Print PEB and SharedUserData area if recognized.
Corinna Vinschen
2011-05-21 15:57:16 +0000
01b49f835d* miscfuncs.cc (CygwinCreateThread): Fix condition for adding the guardsize to the stacksize. Fix accompanying comment.
Corinna Vinschen
2011-05-20 19:00:51 +0000
5a755a9471* fhandler_process.cc (struct heap_info): Change type of base and end members to char *. Print "shared" rather than "share". (struct stack_info): New class to fetch process stack information. (format_process_maps): Initialize and check for stack information.
Corinna Vinschen
2011-05-20 18:07:52 +0000
89d3c72d51* child_info.h (CURR_CHILD_INFO_MAGIC): Update. (class child_info_fork): Remove stacksize, add stackaddr and guardsize members. * dcrt0.cc (child_info_fork::alloc_stack_hard_way): Partial rewrite to regenerate the stack exactly as in the parent. (child_info_fork::alloc_stack): Set stackaddr to 0, rather than stacksize. (dll_crt0_1): Check for stackaddr before changing the stack addresses in the TEB. * fork.cc (frok::child): Check for stackaddr here. (frok::parent): Set ch.stackaddr and ch.guardsize if not called from the main thread. * init.cc (dll_entry): Replace pointer to NT_TIB with pointer to TEB. Fix incorrectly changed address test before removing _my_tls. Set StackLimit to NULL on Windows 2000. Explain why. * miscfuncs.cc (struct thread_wrapper_arg): Store stackbase rather than stacksize, store commitaddr, remove guardsize. Store all pointers as char * for easier address arithmetic. (thread_wrapper): Rewrite to remove OS stack before calling thread function. Add lots of comments to explain what we do. (CygwinCreateThread): Reserve our own stack in case we got no application stack. Add comments. * ntdll.h (struct _TEB): Extend defintion up to DeallocationStack member. * thread.cc (pthread_attr::pthread_attr): Use "(size_t) -1" rather then 0xffffffff. * wincap.h (wincaps::has_stack_size_param_is_a_reservation): New element. * wincap.cc: Implement above element throughout.
Corinna Vinschen
2011-05-20 07:23:11 +0000
660302eb67* thread.cc: Mark psiginfo and psignal as available in list of optional cancellation points.
Yaakov Selkowitz
2011-05-19 23:44:55 +0000
7dd9fa7ffb* new-features.sgml (ov-new1.7.10): Document CPU-time clock support. Move pthread stack management APIs to separate listitem.
Yaakov Selkowitz
2011-05-17 17:09:32 +0000
c8ce54290d* cygwin.din (clock_getcpuclockid): Export. (pthread_getcpuclockid): Export. * hires.h (PID_TO_CLOCKID): New macro. (CLOCKID_TO_PID): New macro. (CLOCKID_IS_PROCESS): New macro. (THREADID_TO_CLOCKID): New macro. (CLOCKID_TO_THREADID): New macro. (CLOCKID_IS_THREAD): New macro. * ntdll.h (enum _THREAD_INFORMATION_CLASS): Add ThreadTimes. * posix.sgml (std-notimpl): Add clock_getcpuclockid and pthread_getcpuclockid from here... (std-susv4): ... to here. (std-notes): Remove limitations of clock_getres and clock_gettime. Note limitation of timer_create to CLOCK_REALTIME. * sysconf.cc (sca): Set _SC_CPUTIME to _POSIX_CPUTIME, and _SC_THREAD_CPUTIME to _POSIX_THREAD_CPUTIME. * thread.cc (pthread_getcpuclockid): New function. * timer.cc (timer_create): Set errno to ENOTSUP for CPU-time clocks. * times.cc (clock_gettime): Handle CLOCK_PROCESS_CPUTIME_ID and CLOCK_THREAD_CPUTIME_ID. (clock_getres): Ditto. (clock_settime): Set errno to EPERM for CPU-time clocks. (clock_getcpuclockid): New function. * include/pthread.h (pthread_getcpuclockid): Declare. * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
Yaakov Selkowitz
2011-05-17 17:08:10 +0000