📄 changelog-2000
字号:
Thu Oct 26 11:51:59 2000 Corinna Vinschen <corinna@vinschen.de> * dtable.cc (dtable::release): Check for socket. Change cnt_need_fixup_before accordingly. (dtable::dup2): Ditto. (dtable::fixup_before_fork): New method. (dtable::fixup_before_exec): Ditto. * dtable.h (class dtable): Add member `cnt_need_fixup_before'. Add definition for methods `dec_need_fixup_before', `inc_need_fixup_before', `need_fixup_before', `fixup_before_exec' and `fixup_before_fork'. * fhandler.h (class fhandler_base): Slight rearrangements. Add definitions for methods `fixup_before_fork_exec'. (class fhandler_socket): Eliminate superfluous constructor. Add member `prot_info_ptr'. Add destructor. Add definitions for methods `dup', `fixup_before_fork_exec', `fixup_after_fork' and `fixup_after_exec'. * fork.cc (fork_parent): Care for file types which need a fixup before fork. Start child in suspended state then. * net.cc: New global variable `ws2_32_handle' and `wsadata'. (fdsock): Check for Winsock version. Call `set_socket_inheritance' only if Winsock version < 2.0. Care for `need_fixup' count in fdtab. (cygwin_socket): Eliminate call to `set_socket_inheritance'. (cygwin_accept): Ditto. (cygwin_rcmd): Ditto. (cygwin_rresvport): Ditto. (cygwin_rexec): Ditto. (socketpair): Ditto. (fhandler_socket::fhandler_socket): Set `need_fork_fixup'. Allocate space for the WSAPROTOCOL_INFOA struct used in fixup. (fhandler_socket::~fhandler_socket): New destructor. (fhandler_socket::fixup_before_fork_exec): New method. (fhandler_socket::fixup_after_fork): Ditto. (fhandler_socket::dup): Ditto. (wsock_init): New static function. (LoadDLLinitfunc (wsock32)): Rearranged. (LoadDLLinitfunc (ws2_32)): New function. (dummy_autoload): Add autoload statemants for `WSADuplicateSocketA' and `WSASocketA'. * spawn.cc (spawn_guts): Care for file types which need a fixup before exec. Start child in suspended state then.Wed Oct 25 20:49:59 2000 Christopher Faylor <cgf@cygnus.com> * signal.cc (kill_pgrp): Don't limit sending of signals to stopped processes when sig < 0. (kill_worker): Only send SIGCONT to stopped processes when sendSIGCONT.Wed Oct 25 13:56:39 2000 Christopher Faylor <cgf@cygnus.com> * exceptions.cc (sig_handle): Just make sure that wait_sig loops when receiving a SIGCONT. Don't block waiting for completion that will never occur.Wed Oct 25 09:59:14 2000 Christopher Faylor <cgf@cygnus.com> * dtable.cc (dtable::fixup_after_exec): Use variable rather than constantly indexing into fds array. (dtable::fixup_after_fork): Ditto.Wed Oct 25 10:43:00 2000 Corinna Vinschen <corinna@vinschen.de> * fhandler.cc (fhandler_base::fcntl): Treat O_NONBLOCK and OLD_O_NDELAY as exactly the same. If one is set, both are set. * net.cc (fhandler_socket::fcntl): Ditto.Tue Oct 24 23:58:35 2000 Christopher Faylor <cgf@cygnus.com> * dcrt0.cc (do_exit): Remove debugging statement.Tue Oct 24 23:45:09 2000 Christopher Faylor <cgf@cygnus.com> * dcrt0.cc (do_exit): Don't bother looking for pgrp children to send SIGHUP if process has never created any children. * fork.cc (fork): Set flag indicating that there is another process with our process group. * spawn.cc (spawn_guts): Ditto. * pinfo.h (set_has_pgid_children): New methods for setting when process has children in its process group. * syscalls.cc (setpgid): Clear has_gid_children if pgid changes.Tue Oct 24 20:38:00 2000 Corinna Vinschen <corinna@vinschen.de> * ntdll.h: New file. * fhandler_mem.cc: Move ntdll.dll specific definitions and declarations to ntdll.h. * sysconf.cc (sysconf): Add support for _SC_NPROCESSORS_CONF, _SC_NPROCESSORS_ONLN, _SC_PHYS_PAGES and _SC_AVPHYS_PAGES.Tue Oct 24 20:00:00 2000 Corinna Vinschen <corinna@vinschen.de> * fhandler.cc (fhandler_base::fcntl): Behave properly when passed previous version of O_NDELAY. * syscalls.cc: Move OLD_O_NDELAY to winsup.h. * winsup.h: Define OLD_O_NDELAY now.Mon Oct 23 21:47:55 2000 Christopher Faylor <cgf@cygnus.com> * exceptions.cc (signal_exit): Kill any executing child process if we're dying. * path.h: Remove unneeded extern. * spawn.cc (std_suffixes): Make static. Don't set dwProcessId here since it makes the process unsignalable. Set strace flag that this is an execed process stub. * strace.cc (strace::vsprntf): Use strace flag to indicate when to visually flag that this is an exec stub. * include/sys/strace.h (strace): Add 'execing' flag.Mon Oct 23 16:43:33 2000 Christopher Faylor <cgf@cygnus.com> * sigproc.cc (proc_subproc): Don't send a false positive if WNOHANG and no processes are available for waiting.Mon Oct 23 22:27:00 2000 Corinna Vinschen <corinna@vinschen.de> * fhandler.cc (fhandler_base::fcntl): Setting flags in F_SETFL branch according to Linux documentation.Mon Oct 23 21:43:00 2000 Corinna Vinschen <corinna@vinschen.de> * fcntl.cc (_fcntl): Rearrange as wrapper function. Move all functionality except F_DUPFD to fhandler classes. * fhandler.cc (fhandler_base::fcntl): New method. * net.cc (fhandler_socket::fcntl): Ditto. * fhandler.h (class fhandler_base): Add method prototype for fcntl(). (class fhandler_socket): Ditto.Mon Oct 23 12:44:35 2000 Christopher Faylor <cgf@cygnus.com> * sigproc.cc (proc_subproc): Correctly handle flags for WNOHANG case.Mon Oct 23 10:00:00 2000 Corinna Vinschen <corinna@vinschen.de> * security.cc: Eliminate C++ comments throughout.Sun Oct 22 23:33:00 2000 Christopher Faylor <cgf@cygnus.com> * fork.cc (fork): Set sigframe here, since it can pause for a considerable amount of time. * environ.cc (_addenv): Add debugging. * fhandler.cc: Eliminate unneeded include. * smallprint.c: Ditto.Sun Oct 22 12:07:00 2000 Corinna Vinschen <corinna@vinschen.de> * pinfo.cc (pinfo_init): Eliminate call to `set_process_privileges'. * security.cc (write_sd): Call `set_process_privileges' on the first call to `write_sd'. (set_process_privileges): Eliminate adjusting SE_BACKUP_NAME privilege.Sat Oct 21 16:57:23 2000 Christopher Faylor <cgf@cygnus.com> * pinfo.cc (pinfo::init): Make PID_EXECED signal creation as well as PID_IN_USE.Sat Oct 21 01:52:54 2000 Christopher Faylor <cgf@cygnus.com> * spawn.cc (spawn_guts): Don't do the reparenting step if we notice that the child has exited prior to sending the subprocess_ready signal (?).Sat Oct 21 00:46:36 2000 Christopher Faylor <cgf@cygnus.com> * fhandler.h (fhandler_console): Remove tcsetpgrp. * fhandler_console.cc (fhandler_console::tcsetpgrp): Eliminate. * fork.cc (fork_parent): Avoid returning same pid twice in a row regardless of OS. * pinfo.cc (pinfo::init): Rename create argument to flags and treat it as such. * signal.cc (set_sigcatchers): New function. (signal): Use set_sigcatchers to increment or decrement sigcatcher tracker. (sigaction): Ditto. Add debugging output. * spawn.cc (spawn_guts): Always quote first argv[0] argument when it's a COMSPEC shell.2000-10-20 DJ Delorie <dj@redhat.com> * times.cc (to_time_t): pass zero time as epoch * fhandler.cc (fstat): copy atime/ctime from mtime if they're zeroThu Oct 19 23:31:41 2000 Christopher Faylor <cgf@cygnus.com> * external.cc (fillout_pinfo): Pass PID_NOREDIR flag to pinfo init to avoid finding execed processes twice. * signal.cc (kill_pgrp): Ditto. * spawn.cc (spawn_guts): Avoid passing first argument to CreateProcess when running a windows shell so that CreateProcess will locate the shell. Reorganize so that correct error is returned when CreateProcess fails.Thu Oct 19 13:55:31 2000 Christopher Faylor <cgf@cygnus.com> * dcrt0.cc (sigthread::init): Correct overzealous ifdef. * exceptions.cc (call_handler): Avoid calling sigthread acquire lock. * sigproc.h (sigthread): Comment out lock for now. * sync.cc (muto::acquire): Add a minor optimization.2000-10-18 DJ Delorie <dj@redhat.com> * Makefile.in: add miscfuncs.cc * miscfuncs.cc: new, miscellaneous functions * winsup.h: define table-driven tolower/toupper * environ.cc: use them * fhandler_console.cc: ditto * fhandler_termios: ditto * path.cc: ditto (strncasematch, strcasematch, strcasestr): move to miscfuncs.ccWed Oct 18 20:50:27 2000 Christopher Faylor <cgf@cygnus.com> * sigproc.h (sigthread): Eliminate locking for now since per thread signalling is not available. * dcrt0.cc (sigthread::init): Ditto. (dll_crt0_1): Move set_process_privileges call (temporarily?) to pinfo_init. (pinfo_init): Only call set_process_privileges when allow_ntsec.2000-10-18 DJ Delorie <dj@redhat.com> * dcrt0.cc (dll_crt0_1): init cygcwd before forkee branch * environ.cc (conv_start_chars): Cache a table of "first characters" for environment variables needing conversion. (getwinenv): Use it. (environ_init): Create it, also check first chars for TERM and CYGWIN. * path.cc: Use lookup table for case insensitive comparisons.Wed Oct 18 00:48:49 2000 Christopher Faylor <cgf@cygnus.com> * exceptions.cc (call_handler): Make signal pending if sigsave.sig is still active. * syscalls.cc (_read): Don't clear errno. * sigproc.cc (wait_sig): Don't scan the waiting process list after a SIGCHLD if there are no zombies to reap. * winsup.h: Use __builtin_strcmp. * environ.cc (posify): Don't initialize len unless it is required (from DJ Delorie <dj@redhat.com>).Tue Oct 17 14:50:31 2000 Christopher Faylor <cgf@cygnus.com> * sigproc.cc (proc_subproc): Remove unneeded test for correct process in PROC_ADDCHILD. Return 0 when terminated child has just been reparented. (wait_subproc): Only send SIGCHLD when proc_subproc returns != 0. * strace.cc (strace::vsprntf): Only strip .exe extension from program name.2000-10-16 Charles Wilson <cwilson@ece.gatech.edu> * fhandler_clipboard.cc: new file * Makefile.in: include fhandler_clipboard.o in DLL_OFILES list. * fhandler.h: add FH_CLIPBOARD to the devices enum. (fhandler_dev_clipboard): new * path.cc (windows_device_names): add "\\dev\\clipboard" (get_device_number): check for "clipboard" * dcrt0.cc: declare a few more functions from winuser.h * dtable.cc (dtable::build_fhandler): check for FH_CLIPBOARD in switch().Mon Oct 16 21:36:57 2000 Christopher Faylor <cgf@cygnus.com> * debug.cc (add_handle): Issue warning on attempts to add the same handle more than once. * fhandler_tty.cc (fhandler_tty_slave::open): Protect some handles. (fhandler_tty_common::close): Use proper name when closing handles. (fhandler_pty_master::close): Don't close to_slave or from_slave since they've already been closed earlier in the function. * sigproc.cc (proc_subproc): Don't protect vchild->hProcess. Expect that the caller will do this, instead. * tty.cc (tty_list::terminate): Use proper name when closing handles. (tty::make_pipes): Protect some handles.Mon Oct 16 18:37:22 2000 Christopher Faylor <cgf@cygnus.com> * Makefile.in: Remove some obsolete stuff. * dcrt0.cc (dll_crt0_1): Call signal_fixup_after_exec where appropriate. Set myself->uid from parent version. Just use ThreadItem Init method. Close or store hexec_proc as appropriate. (_dll_crt0): Store user_data->forkee here so that proper tests can be made subsequently. (do_exit): Remove hExeced stuff. * environ.cc (environ_init): Accept environ count as well as environ pointer. * environ.h: Reflect above change. * pinfo.cc (pinfo_init): Ditto. Accept environ count. (fixup_in_spawned_child): Remove. * spawn.cc (spawn_guts): Move signal code to dll_crt0_1. Don't suspend execing process since it is no longer necessary. Store envc. * exceptions.cc (signal_fixup_after_exec): New function. (call_handler): Remove hExeced test. * child_info.h (cygheap_exec_info): Store envc as well as envp. (child_info_spawn): Store hexec_proc so that it can be closed in child. * path.cc (normalize_posix_path): Avoid intermediate use of temporary cwd buf. (normalize_win32_path): Ditto. (cwdstuff::get_initial): Always set lock. * sigproc.h: Remove hExeced. * strace.cc (strace::vsprntf): Modify to accommodate for lack of hExeced. * thread.cc (MTinterface::Init): Merge Init1 and ClearReent into this method. (MTinterface::Init1): Eliminate. (MTinterface::ClearReent): Eliminate. * thread.h: Reflect above changes. * include/sys/strace.h (strace): Make microseconds() public.Sun Oct 15 21:54:52 2000 Christopher Faylor <cgf@cygnus.com> Make various functions 'regparm', throughout. * pinfo.h (_pinfo): Inline simple signal manipulation functions. Requires inclusion of thread.h which was removed from .cc files, where appropriate. throughout. * pinfo.cc: Eliminate signal manipulation functions. (_pinfo::exit): Calculate total rusage for exiting process here. * cygheap.cc (size2bucket): Eliminate. (init_buckets): Ditto. (_cmalloc): Calculate size and bits in a loop rather than going through a function call. (_crealloc): Use stored array index to calculate allocated size. * spawn.cc (spawn_guts): Use _pinfo exit method to exit, calculating cpu usage.Sat Oct 14 21:24:16 2000 Christopher Faylor <cgf@cygnus.com> * exceptions.cc (set_console_handler): Don't allocate console_handler_thread_waiter. It is obsolete. (ctrl_c_handler): Don't use console_handler_thread_waiter. * path.cc (hash_path_name): Fix handling of relative names. Make case insensitive. * path.h (suffix_info): Use initializers. * pinfo.h (_pinfo): Avoid initializers for null case. * resource.cc (fill_rusage): Zero rest of rusage structure.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -