| Sat Dec 25 12:46:25 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * dlfcn.cc (dlsym): Use correct HANDLE type for GetProcAddress. |
| (dlclose): Ditto for FreeLibrary. |
| * fhandler_windows.cc (fhandler_windows::set_close_on_exec): Properly |
| coerce arguments to set_inheritance. |
| (fhandler_windows::fixup_after_fork): Ditto for fork_fixup. |
| * libcmain.cc (main): Simplify. |
| * select.cc (peek_windows): Properly coerce argument to PeekMessage. |
| |
| Sat Dec 25 12:30:25 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * Makefile.in: Eliminate unneeded .y SUFFIX. |
| * dcrt0.cc (__api_fatal): Make "C". |
| (do_global_ctors): Make __stdcall. |
| (getprogname): Ditto. |
| (insert_file): Ditto. |
| (globify): Ditto. |
| (build_argv): Ditto. |
| (do_exit): Ditto. |
| * debug.cc (regthread): Ditto. |
| (makethread): Ditto. |
| (threadname): Ditto. |
| (find_handle): Ditto. |
| (handle_list): Ditto. |
| (add_handle): Ditto. |
| * debug.h: Reflect changes to __stdcall. |
| * shared.h: Ditto. |
| * winsup.h: Ditto. |
| |
| Sat Dec 25 12:09:10 1999 Kazuhiro Fujieda <fujieda@jaist.ac.jp> |
| |
| * path.cc (symlink): Don't return error if target is a symlink to a |
| nonexistent file. |
| |
| 1999-12-23 DJ Delorie <dj@cygnus.com |
| |
| * Makefile.in: add support for "make check" |
| * shared.cc: if $CYGWIN_TESTING is set, use a private shared area |
| * cygrun.c: new, used to isolate dll-in-test |
| * testsuite/*: new, rudimentary testsuite framework |
| |
| Wed Dec 22 01:05:44 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * dcrt0.cc (globify): Properly handle embedded tildes in variable |
| names. Treat a c:\foo style path spec as "special", i.e., don't |
| interpret the backslashes as quoting characters. |
| |
| Fri Dec 17 10:49:13 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * path.cc (symlink): Return error if the target exists. |
| |
| Thu Dec 16 22:36:45 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * path.cc: Change method for accessing com in windows_device_names to |
| allow > 2 com ports. |
| |
| Thu Dec 16 00:49:30 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * Makefile.in: Only build winver.o and version.o when required. |
| |
| Sat Dec 11 11:06:45 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * path.cc (path_conv::path_conv): Ensure that a trailing slash is added |
| to "x:" specifications. |
| |
| Fri Dec 10 20:22:41 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * debug.cc (WFSO): Make __stdcall. |
| (WFMO): Ditto. |
| * debug.h: Reflect above changes. |
| * exceptions.cc (sig_set_errno): Set errno to be in effect after a |
| signal handler. |
| (handle_sigsuspend): Use set_sig_errno to ensure that the correct errno |
| is set after a signal handler. |
| (interrupt_now): Accommodate default errno field in stack. |
| (intterupt_on_return): Ditto. |
| (sigreturn): Pop, test, and possibly restore saved errno on return from |
| signal handler. |
| * fhandler_console.cc (fhandler_console::read): Set errno to be in |
| effect after a signal handler. |
| * fhandler_serial.cc (fhandler_serial::raw_read): Ditto. |
| * select.cc (cygwin_select): Ditto. |
| (select_stuff:wait): Ditto. |
| (peek_serial): Ditto. |
| * syscalls.cc (_read): Ditto. |
| * wait.cc (wait4): Ditto. |
| * winsup.h (signal_dispatch): Add "saved_errno" field. |
| |
| Thu Dec 9 23:35:45 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * debug.cc (threadname_init): Use new_muto macro to set up a static |
| buffer for a muto. |
| (debug_init): Ditto. |
| (WFSO): Reinstate wrapper for WaitForSingleObject. |
| (WFMO): Reinstate wrapper for WaitForMultipleObject. |
| * debug.h: Declare the above two wrappers. |
| * exceptions.cc (events_init): Use new_muto macro to set up a static |
| buffer for a muto. |
| * sigproc.cc (sigproc_init): Ditto. |
| * sync.cc (muto::acquire): Don't bump waiters if we already own the |
| muto. |
| * sync.h (new): New operator. |
| (delete): Ditto. |
| (new_muto): New macro. |
| |
| Dec 08 23:50:00 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * security.cc (get_nt_attribute): Add debug output. Correct behaviour |
| in case of NULL ACL. |
| * syscalls.cc (stat_worker): Allow remote drives to get stat info from |
| fh.fstat(). |
| * include/winnt.h: Add defines for W2K ACL control flags. |
| * include/cygwin/socket.h: Add missing PF_NETBIOS. |
| |
| Wed Dec 8 23:06:07 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * Makefile.in: Ensure that winver.o is a dependency for building the |
| dll. |
| * mkvers.sh: Attempt to call windres in a fashion that accommodates |
| older and newer versions. |
| * winver.c: Reorganize slightly to accommodate older versions of |
| windres. |
| * fhandler.cc (fhandler_disk_file::fstat): Avoid using Windows "inodes" |
| on disks which do not support them. |
| |
| Tue Dec 7 21:15:11 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * dll_init.cc (DllList::forkeeLoadDlls): Reverse order of Free/Load |
| Library calls to ensure that references are resolved. |
| * path.cc (mount_info::conv_to_win32_path): Ensure that returned |
| windows paths are always normalized regardless of whether they were in |
| windows format to begin with. |
| |
| Tue Dec 7 08:48:22 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * environ.cc (parse_options): Properly detect end of known array. |
| |
| Mon Dec 6 22:32:04 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * mkvers.sh: Generate winver.o from winver.rc and various other things |
| from include/cygwin/version.h |
| * winver.rc: New file (adapted from donation by Mumit Khan |
| <khan@xraylith.wisc.edu>). |
| * configure.in: Find windres. |
| * configure: Regenerate. |
| * Makefile.in: Link winver.o into cygwin1.dll. |
| |
| Mon Dec 6 13:04:47 1999 Mumit Khan <khan@xraylith.wisc.edu> |
| |
| * init.cc (dynamically_loaded): New global variable. |
| (dll_entry): Use. |
| * winsup.h (dynamically_loaded): Declare. |
| * dcrt0.cc (do_global_ctors): Likewise. |
| (set_os_type): Make static again. |
| (dll_crt0_1): Handle dynamically_loaded case. |
| * dll_init.cc (dll_dllcrt0_1): Delete. |
| (dll_dllcrt0): Handle dynamically_loaded case. |
| (dll_noncygwin_dllcrt0): Mark obsolescent. |
| * libccrt0.cc (cygwin_attach_noncygwin_dll): Delete. |
| * pinfo.cc (pinfo_init): Don't inherit parent fds if dynamically |
| loaded. |
| * include/cygwin/cygwin_dll.h (cygwin_attach_noncygwin_dll): Delete |
| prototype. |
| (_cygwin_noncygwin_dll_entry): Mark obsolescent. |
| |
| Mon Dec 6 11:09:41 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * configure.in: Make threadsafe the default. |
| * configure: regenerate. |
| * utils/strace.cc: Fix a compiler warning. |
| |
| Sun Dec 5 15:49:43 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * environ.cc (parse_options): Reinstate unions in parse_things, to |
| save space. |
| |
| Fri Dec 3 22:52:05 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| Implement new signal-handling scheme which ensures that a program will |
| not be interrupted while in a system or cygwin DLL. |
| * Makefile.in: Add sync.o and dll_ofiles target. |
| * dcrt0.cc (alloc_stack_hard_way): Add more defensive code to ensure |
| that the stack is really grown. |
| (alloc_stack): Ditto. |
| (dll_crt0_1): Reorganize some initialization routines to ensure that |
| they occur after the heap has been initialized. |
| * debug.cc: Use muto for locks. Eliminate attempts to avoid being |
| interrupted by signals. |
| (threadname_init): New function. |
| (debug_init): Ditto. |
| * debug.h: Declare debug_init and threadname_init. |
| * exceptions.cc (stack_info::stack_info): Don't check for previous use |
| of get(). |
| (handle_sigsuspend): Simply using new signal-handling scheme. |
| (interruptible): New function. Determines if PC should be interrupted. |
| (interrupt_now): New function. Causes immediate signal dispatch. |
| (interrupt_on_return): New function. Causes signal dispatch on return |
| from cygwin or system routine. |
| (call_handler): Simplify to use new signal-handling scheme. |
| (set_process_mask): Use mask_sync muto to synchronize setting of |
| process signal mask. |
| (sig_handle_tty_stop): New function. Called when have to stop process |
| now. |
| (sig_handle): Simplify to use new signal-handling scheme. |
| (set_process_mask): Ditto. |
| (events_init): Allocate mask_sync muto. |
| (unused_sig_wrapper): New function. Encapsulates assembly language |
| signal handling support. |
| * fhandler.h (class select_stuff): Accommodate new signal-handling |
| scheme. |
| * fhandler_console.cc (fhandler_console): Simplify to use new |
| signal-handling scheme. |
| * fhandler_serial.cc (fhandler_serial::raw_read): Ditto. |
| * fhandler_termios.cc (bg_check): Ditto. |
| * fhandler_tty.cc (process_input): Ditto. |
| (fhandler_tty_slave::open): Ditto. |
| (fhandler_tty_slave::send_ioctl_request): Ditto. |
| * fork.cc: Ditto. |
| * path.cc (chdir): Ditto. |
| * select.cc: Ditto, throughout. |
| * shared.h: Eliminate unneeded signal enum. |
| * signal.cc (signal): Simplify to use new signal-handling scheme. |
| (sleep): Ditto. |
| (usleep): Ditto. |
| (sigprocmask): Ditto. |
| (sigaction): Ditto. |
| (pause): Use handle_sigsuspend to pause for signal. |
| * sigproc.cc: Change signal_arrived handle to global_signal_arrived |
| class. Change various mutex handles to mutos. |
| (proc_subproc): Simplify to use new signal-handling scheme. Use muto |
| for locking. |
| (get_proc_lock): Ditto. |
| (proc_terminate): Ditto. |
| (sig_dispatch_pending): Make a "C" function. Return status of pending |
| signals. |
| (sigproc_init): Initialize global_signal_arrived. Simplify to use new |
| signal-handling scheme. Initialize sync_proc_subproc muto. |
| (sig_send): Eliminate __SIGSUSPEND considerations. Simplify to use new |
| signal-handling scheme. |
| (__allow_sig_dispatch): Delete. |
| (__block_sig_dispatch): Delete. |
| (__get_signal_mutex): Delete. |
| (__release_signal_mutex): Delete. |
| (__have_signal_mutex): Delete. |
| (wait_sig): Simplify to use new signal-handling scheme. |
| * sigproc.h: Implement signal_arrived classes. |
| * smallprint.c (__small_vsprintf): Avoid printing a leading '*' in |
| function name with %F format. |
| * spawn.cc (spawn_guts): Simplify to use new signal-handling scheme. |
| (iscmd): Don't consider a filename to be a "command" unless it contains |
| a ':'. |
| * syscalls.cc (_read): Ditto. |
| (_open): Ditto. |
| (_close): Ditto. |
| * termios.cc (tcsendbreak): Ditto. |
| (tcdrain): Ditto. |
| (tcflush): Ditto. |
| (tcflow): Ditto. |
| (tcsetattr): Ditto. |
| (tcgetattr): Ditto. |
| * winsup.h: Reorganize include files. Add preliminary __sig_protect |
| implementation. |
| * cygwin/version.h: Bump current version to 1.1.0. |
| |
| Thu Dec 2 22:19:40 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * sync.cc (muto::muto): Use an event rather than a semaphore for wait |
| synchronization. |
| (muto::acquire): Rewrite to use an event and try to remove races. |
| (muto::release): Ditto. |
| |
| 1999-12-02 DJ Delorie <dj@cygnus.com> |
| |
| * environ.cc (parse_options): switch to a static initializer; |
| templates are sensitive to g++ bugs. |
| |
| Fri Nov 26 12:04:23 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * net.cc (cygwin_bind): Ensure that non-Unix domain socket operations |
| return success correctly. |
| |
| Wed Nov 24 21:37:58 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * net.cc (cygwin_bind): Guard against incorrectly setting res to zero |
| when there is an error condition. |
| |
| Tue Nov 23 17:49:55 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler.cc (fhandler_base::fhandler_base): Use better initialization |
| scheme. |
| * fork.cc (stack_base): Eliminate unneeded asm stuff. |
| * select.cc: Sprinkle in some comments. |
| * include/winnt.h: Add more CONTEXT. |
| |
| Nov 23 20:51:00 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * net.cc (cygwin_bind): Use struct sockaddr_un in AF_UNIX code. Set |
| errno to ENAMETOOLONG if length of pathname exceeds limit in AF_UNIX |
| code. Sets errno to EADDRINUSE in AF_UNIX code if file system socket |
| object already exists. |
| * syscalls.cc (setsid): Set errno to EPERM if current process is |
| already process group leader. |
| * uinfo.cc (internal_getlogin): Rearrange for better debug output. Set |
| pi->psid to NULL if SID can't be determined. |
| * include/cygwin/socket.h: Add AF_LOCAL and PF_LOCAL |
| (same as AF_UNIX) for POSIX compatibility. |
| * include/sys/un.h: Add UNIX_PATH_LEN define. Added SUN_LEN macro for |
| POSIX compatibility. |
| |
| Sun Nov 21 22:55:04 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * environ.cc (parse_options): Return immediately after dealing with |
| NULL argument. Don't try to process it. |
| |
| Tue Nov 16 23:29:17 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * signal.cc (kill_worker): Guard against NULL dereference when thread |
| safe. |
| |
| Sat Oct 30 00:59:38 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * Makefile.in: Some general cleanup. |
| * smallprint.c (__small_vsprintf): Accommodate new format for |
| __PRETTY_FUNCTION__. |
| |
| Wed Oct 27 16:13:36 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * path.cc (mount_info::from_registry): Don't allow the same posix path |
| into the mount table more than once. |
| * utils/mount.cc (main): Add some orthogonality to the options. |
| |
| Tue Oct 26 21:55:49 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * environ.cc (environ_init): Turn off ntsec by default. |
| |
| Wed Oct 27 00:14:11 1999 J"orn Rennecke <amylaar@cygnus.co.uk> |
| |
| * fhandler.cc (fhandler_base::lseek): Take readahead into account. |
| |
| Tue Oct 26 16:46:54 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * syscalls.cc (_unlink): Return EISDIR when attempting to unlink a |
| directory. |
| |
| Mon Oct 25 18:05:23 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler.cc (fhandler_base::read): Fix previous fix. |
| |
| Mon Oct 25 13:46:44 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * dll_init.cc (add): Avoid allocating name for "LINK"ed DLLs. |
| (DllList::forkeeLoadDlls): Only reload DLLs if they have been |
| dlopen'ed. |
| * grp.cc (parse_grp): Assign gr_mem when it is determined. |
| |
| Sun Oct 24 21:55:48 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * dll_init.cc (struct dll): Add module name. |
| (add): Add additional 'name' parameter for recording in dll structure. |
| (reserve_upto): New function. |
| (release_upto): Ditto. |
| (DllList::forkeeLoadedDlls): Ditto. |
| (DllList::forkeeStartLoadDlls): Remove. |
| (DllList::forkeeEndLoadedDlls): Ditto. |
| (DllNameIterator::*): Eliminate class. |
| (LinkedDllNameIterator::*): Ditto. |
| * dll_init.h: Reflect above changes. |
| * fork.cc (fork): Don't generate a list of dlls to load in the parent. |
| Let the child do it. Use new DllList::forkeeLoadDlls to load DLLs. |
| * smallprint.c (__small_vsprintf): No need for a sign on a Win32 error. |
| (small_printf): Move function here from strace(). |
| * strace.cc (small_printf): Move to smallprint.c |
| * include/sys/strace.h: Always declare small_printf. |
| |
| Sun Oct 24 02:22:13 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler.cc (fhandler_base::read): Work around C bug. |
| |
| Tue Oct 19 22:10:21 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * dll_init.cc: Add some external symbols to allow thread-safe |
| compilation. |
| |
| Tue Oct 19 21:09:42 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| Make minor changes throughout to accommodate new gcc merge. |
| * Makefile.in: Remvoe -fpermissive option when compiling using g++. |
| * dcrt0.cc (noload): Mark as "unused" to avoid a compiler warning. |
| * exceptions.cc (sigreturn): Make this "extern" since it essentially |
| *is* extern. |
| * fork.cc (sync_with_parent): Modify to cause the macro to be |
| considered void. |
| * heap.cc (sbrk): Remove debugging code. |
| * passwd.cc (getpass): Don't use fprintf to print the prompt. |
| * path.cc (mount_info::conv_to_win32_path): Accommodate compiler |
| warning. |
| * select.cc (cygwin_select): Experimental version of select which |
| handles fd_sets with non-standard FD_SETSIZE. |
| (select_stuff::wait): Ditto. |
| * termios.cc (tcgetattr): Avoid a compiler warning. |
| (cftospeed): Ditto. |
| (cftispeed): Ditto. |
| * uinfo.cc (netapi32_init): Ditto. |
| * winsup.h (api_fatal): Simplify and avoid a compiler warning. |
| * include/sys/strace.h (system_printf): Ditto. |
| (strace_printf_wrap): Modify to cause the macro to be considered void. |
| (strace_printf_wrap1): Ditto. |
| |
| 1999-10-19 DJ Delorie <dj@cygnus.com> |
| |
| * Makefile.in (.cc.o): add -fpermissive to avoid g++'s conformance |
| madness. |
| * environ.cc (_findenv): rename to my_findenv to avoid newlib |
| prototype. |
| * syscalls.cc (logout): remove braces around _PATH_UTMP |
| |
| Sat Oct 16 22:53:02 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * path.cc (mount_info::cygdrive_posix_path): Properly terminate string |
| after Oct 11 change below. |
| |
| Fri Oct 15 23:02:39 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * exceptions.cc (stack_info): Reimplement stack handling routines in |
| new stack_info class. |
| (stack_info::brute_force): Just fill out the same structure as |
| StackWalk. |
| (stack_info::walk): Just fill out stack info. |
| (stack): Use stack_info class stuff to iterate over and display the |
| stack. |
| |
| Fri Oct 15 00:32:13 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * include/cygwin/version.h: Bump some versions. |
| |
| Oct 5 11:45:00 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * dcrt0.cc (dll_crt0_1): Delete calls to get_WHOEVER_sid. Move call to |
| uinfo_init() to the end of the function. |
| * fhandler.cc (get_file_owner): Substitute call to get_id_from_sid() |
| with call to get_uid_from_sid(). |
| (get_file_group): Substitute call to get_id_from_sid() with call to |
| get_gid_from_sid(). |
| * fork.cc (fork): Copy new pinfo members to child. |
| * grp.cc (parse_grp): Rewritten. Saves gr_passwd and all user names in |
| gr_mem. |
| (read_etc_group): Variable `group_sem' avoids endless loop. |
| * passwd.cc (read_etc_passwd): Variable `passwd_sem' avoids endless |
| loop. |
| * security.cc (get_sid): New function to generate SID from int values. |
| (get_ssid): New function to generate SID from string. |
| (get_pw_sid): New function to generate SID from pw_gecos entry. |
| (get_gr_sid): New function to generate SID from gr_passwd entry. |
| (get_admin_sid): Rewritten to avoid using heap space. |
| (get_system_sid): Ditto. |
| (get_creator_owner_sid): Ditto. |
| (get_world_sid): Ditto. |
| (get_id_from_sid): Try to read SIDs from /etc/passwd or /etc/group |
| files before using RID or Lookup... function. |
| (legal_sid_type): New function. |
| (lookup_name): Rewritten to use the logon server info, if any. |
| (alloc_sd): Try to use SID from /etc/passwd and /etc/group files before |
| call to lookup_name(). |
| (alloc_sd): New parameter for logon server. |
| (set_nt_attribute): Ditto. |
| (set_file_attribute): Ditto. |
| * shared.cc (sec_user): If SID is saved in myself, use it instead of |
| calling lookup_name(). |
| * shared.h: struct pinfo got extended user information. |
| * spawn.cc (spawn_guts): method for forcing reread /etc files changed. |
| (_spawnve): Copy new pinfo members to child. |
| * syscalls.cc (chown): Change call to set_file_attribute(). |
| (chmod): Ditto. |
| * uinfo.cc (internal_getlogin): New function. |
| (uinfo_init): Calls internal_getlogin() now. |
| (getlogin): Uses myself->username now. |
| * winsup.h: extern HANDLE netapi32_handle; Change prototypes for |
| set_file_attribute(), lookup_name(), get_id_from_sid(). New inline |
| functions get_uid_from_sid() and get_gid_from_sid(). |
| * utils/mkgroup.c: Adapt to the new ntsec features. |
| * utils/mkpasswd.c: Ditto. |
| |
| Thu Oct 14 23:46:03 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| Replace calls to GetCurrentProcess() with hMainProc throughout. |
| * autoload.h: Implement LoadDLLinitnow() function to force the loading |
| of a DLL. |
| * cygwin.din: Export cygwin_stackdump. |
| * dcrt0.cc (dll_crt0): Set up hMainProc and hMainThread here. |
| * dll_init.cc (dll_dllcrt0_1): Ditto. |
| * environ.cc (parse_options): New "oldstack" option for forcing the use |
| of the old stack walking code. |
| * exceptions.cc (signals_init): Remove. |
| (err_printf): Remove. Use small_printf throughout. |
| (sfta): New helper function for StackWalk. |
| (sgmb): Ditto. |
| (stack_brute_force): Renamed from old stack walk function. Now uses |
| frame pointer from context handler. |
| (stack_walk): New function. Uses Windows API to walk the stack. |
| (stack): Reimplement to attempt to load imagehlp.dll. If this succeeds |
| use stack_walk() to display stack info, otherwise use |
| stack_brute_force. |
| (cygwin_stackdump): Temporary (?) function for displaying a stack dump |
| from the called location. |
| (stackdump): Accept new parameters for passing to stack(). |
| (handle_exceptions): Call stackdump with new parameters needed to walk |
| the stack. |
| * fhandler.cc (fhandler_base::read): Fix potential buffer overrun. Fix |
| end of buffer problems when \r is not followed by a \n. |
| (fhandler_base::lseek): Avoid flushing read ahead when not moving the |
| file pointer. |
| * fhandler_termios.cc (fhandler_termios::set_ctty): Add a debugging |
| statement. |
| * sigproc.cc (sigproc_init): Eliminate obsolete signals_init function. |
| * winsup.h: Add some declarations. |
| |
| Wed Oct 13 09:02:32 1999 Kazuhiro Fujieda <fujieda@jaist.ac.jp> |
| |
| * path.cc (readlink): Return errno correctly when it can't find the |
| target symlink. |
| |
| Tue Oct 12 13:02:08 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * syscalls.cc (setsid): Only reset sid/pgid when NOT process group |
| leader. |
| * tty.cc (tty_list::allocate_tty): Don't set sid to myself. The first |
| tty open should do that. |
| |
| Mon Oct 11 23:13:29 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * dcrt0.cc (noload): Issue appropriate Windows error. |
| * fhandler_termios.cc (fhandler_termios::ctty): Don't automatically set |
| sid, etc., unless the current pid associated with the tty's sid does |
| not exist. |
| * path.cc (mount_info::cygdrive_posix_path): Avoid copying beyond the |
| end of buffer or suffer garbage. |
| * pinfo.cc (pinfo_init): Restore sid behavior of a year ago. The sid |
| should be the same as the pid to be equivalent to UNIX. |
| (pinfo_list::operator []): Add more bounds checking. |
| |
| Sun Oct 10 14:08:30 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * select.cc (select): Return error if n > FD_SETSIZE. This is a |
| temporary fix. |
| |
| Sun Oct 10 13:56:14 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * path.cc (iscygdrive_device): Be more precise in detecting when a |
| "cygdrive" device. This should allow 'mkdir -p' to work correctly. |
| |
| Fri Oct 08 08:55:31 1999 Kazuhiro Fujieda <fujieda@jaist.ac.jp> |
| |
| * path.cc (symlink_check_one): set errno to EINVAL on socket files |
| same as normal files. |
| |
| 1999-10-06 DJ Delorie <dj@cygnus.com> |
| |
| * include/oaidl.h (IDispatch.GetIDsOfNames): Use DISPID* not DISPID |
| |
| 1999-10-06 DJ Delorie <dj@cygnus.com> |
| |
| * exceptions.cc (err_printf): new function; print to stderr |
| without strace's clutter. The stacktrace functions use this, so |
| the stacktrace files should be cleaner. |
| (exception): Print segment registers also |
| (stack): include a peek at the function's arguments |
| |
| Tue Oct 5 16:33:17 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * hinfo.cc (hinfo::extend): Eliminate inappropriate test for boundary |
| condition. |
| |
| 1999-10-04 DJ Delorie <dj@cygnus.com> |
| |
| * config/i386/longjmp.c: don't restore %fs (Paul Sokolovsky |
| <paul-ml@is.lg.ua>) |
| |
| 1999-10-04 DJ Delorie <dj@cygnus.com> |
| |
| * localtime.c (tzsetwall): Handle Asian Windows strings correctly |
| (from Kazuhiro Fujieda <fujieda@jaist.ac.jp>). |
| |
| Sat Oct 2 23:00:00 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * include/lm*.h: Correct multiple problems in lan manager |
| header files. |
| |
| Sun Oct 3 14:29:53 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * sysdef/imagehlp.def: New file. Definitions for imagehlp.dll. |
| * include/imagehlp.h: Ditto. |
| * include/winbase.h: YA missing structure. |
| |
| Fri Oct 1 11:16:00 Corinna Vinschen <corinna@vinschen.de> |
| |
| * security.cc (alloc_sd): Correct setting of FILE_DELETE_CHILD. |
| (get_file_attribute): Read ntea attributes only if ntsec is disabled. |
| * syscalls.cc (_unlink): Don't queue file into delqueue if DeleteFile |
| returns ERROR_ACCESS_DENIED. |
| |
| 1999-09-30 Mumit Khan <khan@xraylith.wisc.edu> |
| |
| * init.cc (dll_entry): Remove static_load case. |
| * dcrt0.c (set_os_type): Make it externally visible. |
| * dll_init.cc (dll_dllcrt0_1): Update noncygwin initialization for |
| post-b20.1 code. |
| |
| 1999-09-30 DJ Delorie <dj@cygnus.com> |
| |
| * times.cc: declare _timezone and _daylight properly |
| |
| Wed Sep 29 23:57:40 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * dcrt0.cc (do_exit): Remove EXIT_SIGNAL mask when exiting. It is not |
| correct given changes to really_exit. |
| * select.cc (peek_serial): Work around apparent Windows bug. |
| |
| 1999-09-29 Norbert Schulze <Norbert.Schulze@rhein-neckar.de> |
| |
| * times.cc (timezone): revert 'return TZ if set' patch. |
| * times.cc (timezone): uses now tzset() and _timezone. |
| * times.cc (gettimeofday): ditto. |
| * localtime.c (tzsetwall): no negative minutes if offset is negativ. |
| * localtime.c (tzsetwall): minutes place holder was missing if |
| minutes == 0 and seconds !=0 (h:0:s). |
| * localtime.c (tzsetwall): if timezone has no daylight saving |
| (tz.StandardDate.wMonth==0) generate no daylight saving parameters. |
| |
| Sat Sep 25 15:11:04 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler_termios.cc (fhandler_termios::bg_check): Accept a new |
| argument to control whether we should worry about blocking signals. |
| * fhandler.h: Ditto. |
| * syscalls.cc (read_handler): Accept a new argument for passing to |
| bg_check. |
| (read): Inform read_handler if signals are blocked or not. |
| * termios.cc: Throughout, reorganize to always block signals before |
| calling bg_check. |
| |
| Sat Sep 25 13:36:06 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler.h (fhandler_termios::line_edit): Add an extra argument. |
| * fhandler_serial.cc (fhandler_serial::open): Maintain consisten |
| fAbortOnError state. |
| * fhandler_termios.cc (fhandler_termios::line_edit): Use new |
| "always_accept" argument to control whether input_done is set |
| regardless of canonical state. |
| * fork.cc (vfork): Duplicate "parent's" fd table. |
| * hinfo.cc (hinfo::dup_worker): New method. |
| (dup2): Use new dup_worker method. |
| (hinfo::fixup_after_fork): Lock dtable prior to operating on it. |
| (hinfo::vfork_child_dup): New method. Duplicates dtable for vfork. |
| (hinfo::vfork_parent_restore): New method. Restores dtable when vfork |
| exits. |
| * net.cc (set_winsock_errno): Make global. |
| * pipe.cc (pipe): Default mode to binary unless *explicitly* set to |
| text. |
| * select.cc (set_bits): Test that {read,write,except}_selected are |
| active before setting a bit. |
| (peek_pipe): Short circuit tests if we're not checking for readable |
| or "except"able handles. |
| (thread_socket): Use read check for exitsock as old method relied on |
| undocumented, unreliable behavior. |
| (start_thread_socket): Perform more setup on exitsock to improve thread |
| exit signalling. |
| (socket_cleanup): Connect to the exitsock to force thread_socket thread |
| exit. |
| * winsup.h (hinfo): Add preliminary vfork stuff. |
| * include/winsock.h: Add shutdown() how types. |
| * include/sys/socket.h: Add socketpair declaration. |
| |
| 1999-09-22 DJ Delorie <dj@cygnus.com> |
| |
| * syscalls.cc (chown): never return ENOSYS - just pretend it |
| works. |
| |
| Wed Sep 22 00:47:56 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * select.cc (MAKEready): Need to initialize 'fd' or open tests in |
| peek fail. |
| |
| Mon Sep 20 17:07:37 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * smallprint.c (__small_vsprintf): Fix '%+' handling. |
| |
| Thu Sep 16 21:48:13 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * utils/cygcheck.cc (dump_sysinfo): Deal with a new compiler error. |
| * utils/strace.cc (make_command_line): Change to a void * argument, as |
| is required for SetConsoleCtrlHandler. |
| |
| Thu Sep 16 20:47:12 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * dcrt0.cc (__api_fatal): Rearrange slightly. |
| * fhandler.h (set_ctty): Change to void. |
| * fhandler_termios.cc (fhandler_termios::set_ctty): Ditto. |
| * select.cc (thread_pipe): Change to a void * argument, as is required |
| for thread functions. |
| (thread_socket): Ditto. |
| (thread_serial): Ditto. |
| * include/winbase.h: Mark ExitProcess as noexit. |
| |
| Thu Sep 16 18:32:12 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * exceptions.cc (ctrl_c_handler): Make WINAPI, as required by |
| SetConsoleCtrlHandler. |
| |
| Thu Sep 16 17:48:05 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * debug.cc (thread_stub): Make WINAPI, as required by CreateThread. |
| * fhandler_tty.cc (process_input): Ditto. |
| (process_output): Ditto. |
| (process_ioctl): Ditto. |
| * select.cc (thread_pipe): Ditto. |
| (thread_serial): Ditto. |
| (thread_socket): Ditto. |
| * sigproc.cc (wait_proc): Ditto. |
| (wait_sig): Ditto. |
| * window.cc (winMain): Ditto. |
| |
| Wed Sep 15 20:58:37 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * exceptions.cc (call_handler): Let fatal signals through regardless of |
| signal_mutex. |
| * fhandler.h (fhandler_base): Make bg_check virtual. |
| (fhandler_termios::bg_check): Eliminate the second argument. |
| * fhandler_console.cc (fhandler_console::ioctl): Check for background |
| operation. |
| * fhandler_termios.cc (fhandler_termios::bg_check): Eliminate the |
| second argument. A negative arg 1 means the same thing. |
| * ioctl.cc (ioctl): Add debugging output. |
| * syscalls.cc (_write): Eliminate second argument to bg_check. |
| * termios.cc (tcsendbreak): Check for background operation. |
| (tcdrain): Ditto. |
| (tcflush): Ditto. |
| (tcflow): Ditto. |
| (tcsetattr): Reorganize on similar lines to above routine. |
| |
| Wed Sep 15 15:25:04 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * select.cc (peek_pipe): Only set read_ready if bg_check returns <= 0. |
| (peek_console): Ditto. Correct PeekConsole conditional so that the for |
| loop breaks eventually. |
| |
| Wed Sep 15 00:21:40 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * exceptions.cc (set_console_handler): Allocate security stuff here |
| since it is needed earlier in the process now. Allocate a shared event |
| for use in synchronizing CTRL-C events that happen while the process is |
| still initializing. |
| (ctrl_c_handler): Use the above event to synchronize with the cygwin |
| startup process, waiting for the signal thread to come alive before |
| trying to send a signal. |
| (signals_init): Don't call set_console_handler() here, since it is now |
| handled much earlier in cygwin initialization. |
| * shared.cc (shared_init): Move out security setup. |
| * sigproc.cc (wait_sig): Activate the console_handler_thread_waiter so |
| that any waiting thread which is handling ctrl-c's will wake up and |
| send a signal, if appropriate. |
| |
| Tue Sep 14 23:49:39 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * exceptions.cc (ctrl_c_handler): Handle ctrl-c events ourself, using |
| the "UNIX way". |
| * fhandler_console (tty_list::get_tty): New function. |
| * shared.h: Add some additional things to tty_min class for handling |
| ctrl-c. |
| |
| 1999-09-14 DJ Delorie <dj@cygnus.com> |
| |
| * dir.cc (rmdir): return ENOTDIR for regular files on 9x |
| |
| Tue Sep 14 00:01:59 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * debug.h (ForceCloseHandle2): New macro. |
| * fhandler.cc (set_inheritance): Accept name of handle as optional |
| third argument. Use this in ForceCloseHandle2/ProtecHandle2. |
| * fhandler.h: Implement bg_check() method. |
| * fhandler_console.cc (get_tty_stuff): Initialize more tty stuff. |
| (fhandler_console::read): Check for background read. |
| * fhandler_termios.cc (fhandler_termios::bg_check): New function. |
| Performs appropriate action given background read or write. |
| * fhandler_tty.cc (fhandler_tty_slave::write): Replace background check |
| code with new method. |
| (fhandler_tty_slave::read): Ditto. |
| (fhandler_tty_common::set_close_on_exec): Pass output_mutex name to |
| set_inheritance. |
| * select.cc: Throughout check that the fd is still open before polling. |
| (peek_pipe): Check for background read. |
| (peek_console): Ditto. |
| * shared.h: Move ntty from tty into tty_min. |
| * syscalls.cc (read_handler): Check for background read. |
| (_write): Check for background write. |
| |
| Sat Sep 11 16:24:21 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * path.cc (iscygdrive_device): New macro. |
| (mount_info::conv_to_win32_path): Only attempt "cygdrive" translation |
| when passed /cygdrive/something. |
| (mount_info::write_cygdrive_info_to_registry): Store in-memory copy of |
| cygdrive prefix automatically. |
| (mount_info::read_cygdrive_info_from_registry): Reorganize for new |
| write_cygdrive_info_to_registry functionality. |
| (mount): Ditto. |
| |
| Fri Sep 10 15:44:11 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * syscalls.cc (pathconf): Make first arg 'const'. |
| |
| 1999-09-10 DJ Delorie <dj@cygnus.com> |
| |
| * exec.cc (_execve): check for an empty environment |
| |
| Wed Sep 8 10:24:12 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * dcrt0.cc (dll_crt0_1): Generalize test for initial zeroes in |
| exec/fork block. |
| * fhandler.cc (fhandler_disk_file::open): Don't attempt #! detection on |
| non-disk files. |
| * fhandler.h: Use generic status bit set/clear macros. Use bitmask for |
| fhandler_termios state. |
| * fhandler_console.cc: Rename "tty_stuff" to more descriptive |
| "shared_console_info". |
| (fhandler_console::read): Reset console state before a read if |
| appropriate. |
| (fhandler_console::open): Improve check for setting console state. |
| (fhandler_console::fixup_after_fork): Ditto. |
| (set_console_state_for_spawn): New function. |
| * fhandler_termios.cc (fhandler_termios::tcinit): Use new method for |
| determining if initialized. |
| * fhandler_tty.cc (fhandler_tty::init_console): Avoid sending handle to |
| init or it will be closed. |
| * fork.cc (per_thread::set): Make this method non-inline, temporarily. |
| * select.cc (peek_console): Call set_input_state to ensure that the |
| console is in the correct state. |
| * shared.h (child_info): Make zero element an array for future |
| tweaking. |
| (tty_min): Change initialized element to a bit field. Define bit field |
| macros for manipulating it. |
| * sigproc.cc (wait_sig): Wake up every half second in a (vain?) attempt |
| to work around Windows 98 hanging problem. |
| (wait_subproc): Ditto. |
| * spawn.cc (spawn_guts): Use new "set_console_state_for_spawn" prior to |
| starting a process. |
| * winsup.h: Define generic macros for manipulating a method's status |
| field. |
| (per_thread): Move inline method to fork. |
| |
| Mon Sep 6 13:36:34 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler_tty.cc (fhandler_tty_master::init_console): Remove retrieval |
| of stderr handle since it is not required for correct init operation. |
| * hinfo.cc (hinfo_init): Reorganize to accommodate potential closing of |
| console handles by fhandler_console::init. |
| (init_std_file_from_handle): Set standard handle as appropriate. |
| (hinfo::de_linearize_fd_arry): Ditto. |
| * fhandler_console.cc (fhandler_console::init): Conditionally close |
| handle only if it is valid. |
| |
| Sun Sep 5 22:43:21 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * utils/cygcheck.cc: Make sure that GetDiskFreeSpaceExA is defined as a |
| __stdcall function or the stack will suffer. For now, don't sort mount |
| output as more work copying the individual mntent elements is required. |
| |
| Sat Sep 4 19:01:00 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * include/glob.h: Ensure that glob*() functions can be properly accessed by |
| programs using the DLL. |
| |
| Sat Sep 4 18:49:04 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * heap.cc (heap_init): Tweak debugging output. |
| * sigproc.cc (sig_send): Catch obvious impossible values from |
| GetLastError. |
| |
| Sat Sep 4 18:43:49 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler_tty.cc (fhandler_tty_slave::open): Protect against signal |
| dispatch. |
| (fhandler_tty_slave::write): Only wait a fixed amount of time to |
| receive a an output_done_event. |
| (fhandler_tty_slave::tcflush): Protect against signal dispatch. |
| |
| Sat Sep 4 18:30:42 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * exceptions.cc (handle_sig): Temporarily remove OutputDebugString. It |
| seemed to be causing sporadic hangs. |
| (call_handler): Save and restore di and si. |
| (sigreturn): Ditto. |
| |
| Fri Sep 3 23:07:44 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler_termios.cc (fhandler_termios::line_edit): Properly deal with |
| sending characters to slave when !iscanon. |
| |
| Fri Sep 3 18:15:00 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_raw.cc (fhandler_dev_raw::fstat): Add S_ISCHR to mode bits. |
| * fhandler_tape.cc (fhandler_dev_tape::fstat): Erase setting of S_ISCHR |
| since it's set in fhandler_dev_raw::fstat now. |
| |
| Thu Sep 2 22:11:03 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * path.cc (mount_info::conv_to_win32_path): Fix problem with |
| calculating relative path at root. |
| |
| Wed Sep 1 23:24:43 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler.cc (fhandler_base::fhandler_base): Don't use default binmode |
| for console. |
| |
| Wed Sep 1 20:51:05 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * smallprint.c (__small_vsprintf): Allow field width argument with 'l' |
| modifier. Consolidate processing of field width. |
| * uname.cc (uname): Eliminate space in "release" field. |
| |
| Tue Aug 24 10:46:24 1999 Kazuhiro Fujieda <fujieda@jaist.ac.jp> |
| |
| * fhandler_console.cc (write_normal): Write '\n' corresponding to |
| DWN if the cursor is out of the window. |
| |
| Wed Aug 25 22:16:46 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * smallprint.c (rn): Deal with positive as well as negative signs. |
| (__small_vprintf): Handle '+', 'l', and '%' format types. |
| |
| Wed Aug 25 00:38:49 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * dcrt0.cc (dll_crt0_1): Zero heap information in user_data to |
| work around mutant startup code. |
| |
| Tue Aug 24 00:03:22 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * sigproc.cc (sig_send): One more end-of-process race detection. |
| |
| Mon Aug 23 21:37:07 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| Throughout, remove malloc.h. |
| * debug.cc: Initialize handle list so that it will not be copied on |
| fork. |
| * exceptions.cc (_sigreturn): Zero windows error on exit. It's |
| meaningless after a signal dispatch. |
| * fhandler_console.cc (fhandler_console::de_linearize): Improve error |
| messages. |
| * shared.h: Increment fork magic number. |
| * sigproc.cc (sigproc_terminate): Close all handles prior to calling |
| proc_terminate if running in signal thread. |
| (sig_send): Eliminate bogus ResetEvent on a semaphore. Add code for |
| potentially dealing with problems when this code is interrupted via a |
| signal dispatch. |
| * times.cc (timezone): Use __small_sprintf. |
| * uname.cc (uname): Ditto. Also use strcpy instead of sprintf where |
| appropriate. |
| |
| 1999-08-23 DJ Delorie <dj@envy.delorie.com> |
| |
| * localtime.c: export timezone, daylight, tzname as _* |
| * times.cc: don't export timezone, daylight, tzname |
| (timezone): return TZ if set. |
| (cygwin_tzset): not needed. |
| |
| Thu Aug 19 13:46:47 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fork.cc (fork): Remove pinfo lock. It is in allocate_pid, now. |
| * spawn.cc (_spawnve): Ditto. |
| * pinfo.cc (pinfo_init): Ditto. |
| (lock_pinfo_for_update): Impreove debug output. |
| (pinfo_list::allocate_pid): Lock pinfo mutex here. |
| |
| 1999-08-19 DJ Delorie <dj@cygnus.com> |
| |
| * Makefile.in (tooldir): If we're building natively, drop the |
| $(target_alias) on include and lib's install (i.e. /usr/include |
| instead of /usr/include/i686-cygwin). |
| |
| Thu Aug 19 01:11:25 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * sigproc.cc (sig_send): Avoid a race with proc thread when executing |
| due to a signal. |
| |
| Wed Aug 18 16:37:59 1999 Kazuhiro Fujieda <fujieda@jaist.ac.jp> |
| |
| * fhandler_console (fhandler_console::fillin_info): Avoid setting |
| scroll_region.Bottom when it is not known. |
| (fhandler_console::write_normal): Add various fixes for console |
| scrolling. |
| |
| Wed Aug 18 16:18:22 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * sigproc.cc: Add more precise end-of-process detection. |
| |
| Wed Aug 18 00:03:47 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * sigproc.cc (sig_send): Work around apparent Windows bug which |
| occasionally results in bogus error messages when a signal is |
| dispatched. |
| |
| 1999-08-17 DJ Delorie <dj@cygnus.com> |
| |
| * localtime.c (tzsetwall): Deduce TZ more accurately. |
| |
| Tue Aug 17 18:00:03 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * select.cc (peek_pipe): Correct detection of process group for |
| backgrounded processes. |
| |
| Tue Aug 17 10:24:49 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * include/winnt.h: Fix typo in IMAGE_FIRST_SECTION definition. |
| |
| Sun Aug 15 19:11:49 1999 Mumit Khan <khan@xraylith.wisc.edu> |
| |
| * gcrt0.c (__eprol): Avoid namespace pollution. |
| (_monstartup): Turn into a constructor function and prevent multiple |
| invocations. |
| |
| Mon Aug 16 10:03:00 Corinna Vinschen <corinna@vinschen.de> |
| |
| * utils/mkgroup.c: Correct call to LookupAccountSid for retrieval of |
| 'None'. |
| |
| Mon Aug 16 00:24:29 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * debug.cc (locker): Improve signal mutex locking. |
| * exceptions.cc (sig_handle): Pass STOP signals to call_handler to |
| ensure honoring of signal_mutex. |
| (call_handler): Move STOP code here after acquistion of signal_mutex. |
| * fhandler_tty.cc (fhandler_tty_common::__acquire_output_mutex): Track |
| lockers for debugging. |
| (fhandler_tty_common::__release_output_mutex): Ditto. |
| (fhandler_slave::write): Fix faulty signal blocking code. |
| * fork.cc (fork_copy): Remove ancient if 0. |
| (fork): Conditionalize "FORKDEBUG" under DEBUGGING. |
| * sigproc.cc (proc_terminate): Reduce pinfo lock time. |
| (sigproc_terminate): Set sig_loop_wait after getting signal_mutex. |
| (__get_signal_mutex): Reorganize for less strace output when not |
| DEBUGGING. |
| (__release_signal_mutex): Ditto. Reorganize case where !sig_loop_wait. |
| (have_signal_mutex): Returns true if current thread has the mutex. |
| * wait.cc (wait4): Change debugging message. |
| |
| Sat Aug 14 0:10:00 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler.cc (fhandler_base::raw_read): Set correct errno from Win32 |
| error when ReadFile fails. |
| (fhandler_base::raw_write): In case of ERROR_DISK_FULL, return |
| bytes_written only if bytes_written > 0. |
| * errno.cc: Map ERROR_DISK_FULL to ENOSPC. |
| |
| Fri Aug 13 14:22:12 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * select.cc (peek_pipe): Honor ignra argument. |
| |
| Fri Aug 13 00:45:00 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * spawn.cc (spawn_guts): Ensure that hExeced is set to proper state |
| when parent has exited. |
| |
| Thu Aug 12 14:09:30 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * sigproc.cc (getsem): Fix typo which prevented sending signals to |
| other processes. |
| |
| Wed Aug 11 22:06:33 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * cygwin.din: Export glob and globfree. |
| * glob.h: Move to include. |
| * Makefile.in: Correct glob.h dependencies. |
| |
| Wed Aug 11 19:41:04 1999 Sergey Okhapkin <sos@prospect.com.ru> |
| |
| * fhandler.cc (fhandler_disk_file::fstat): Check if the file is unix |
| domain socket. |
| (fhandler_disk_file::open): Call set_socket_p(). |
| * fhandler.h: Add new fhandler type flags (FH_LOCAL, FH_FIFO). |
| (fhandler_base): get/set_socket_p - new member functions. |
| (fhandler_socket::addr_family): Add new member, currently unused. |
| (fhandler_socket::get/set_addr_family): Add new functions to access |
| addr_family. |
| * include/sys/un.h: New file. |
| * net.cc: Include <sys/un.h> |
| (cygwin_socket): Always create socket of AF_INET family, store |
| argument's family. |
| (get_inet_addr): New static function. Converts AF_UNIX requests into |
| corresponding AF_INET requests. |
| (cygwin_sendto): Use get_inet_addr(). |
| (cygwin_connect): Likewise. |
| (cygwin_accept): Check for sockaddr length. |
| (cygwin_bind): Implement AF_UNIX. |
| * path.h (PATH_SOCKET): Add new enum value. |
| (path_conv::issocket): Add new member function. |
| (SOCKET_COOKIE): Add new define. |
| * syscalls.cc (chmod): Mark socket files with system file attribute. |
| |
| Wed Aug 11 17:22:46 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * utils/mkgroup.c (main): Generate "None" group when |
| invoked via mkgroup -l. |
| |
| Tue Aug 10 21:30:31 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * select.cc (peek_pipe): Handle type ahead where appropriate. |
| * sigproc.cc (proc_can_be_signalled): Revert to previous method for |
| determining signalability. |
| (getsem): Move PID_INITIALIZING test here. |
| * wait.cc (wait4): Improve debug output slightly. |
| |
| Mon Aug 9 23:27:44 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * dcrt0.cc (do_exit): Add additional check for valid hExeced. |
| * exceptions.cc (call_handler): Implement a raceless way to track |
| pending_signals. |
| * signal.cc (kill_worker): Make calls from non-main threads synchronous |
| or signals from a tty thread don't work right. |
| * sigproc.cc (sig_send): Localize pending_signals assignment to only |
| the wait_sig thread. |
| (__get_signal_mutex): Don't attempt to grab a mutex if signal_mutex |
| hasn't been assigned yet. Add more strace debugging information when |
| -DDEBUGGING. |
| (__release_signal_mutex): Don't attempt to release a mutex if |
| signal_mutex hasn't been assigned yet. Add more strace debugging |
| output. |
| (wait_sig): Attempt to eliminate race in setting of pending_signals. |
| * spawn.cc (spawn_guts): Set hExeced to INVALID_HANDLE_VALUE so that it |
| will be obvious when a process is actually just an execed stub. |
| * strace.cc (strace_vsprintf): Output a "!" after the pid when |
| executing in an execed stub. |
| |
| Mon Aug 9 17:17:13 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| Throughout, eliminate in() and out() macros. |
| * winsup.h (tty_attached): Accept an argument indicating the pinfo |
| structure to query. |
| * exceptions.cc (really_exit): Cosmetic change. |
| * external.cc (fillout_pinfo): Use queried pinfo structure for |
| determining tty number, not *our* number. |
| * net.cc: More workarounds. |
| * path.cc (get_device_number): Supply argument to tty_attached. |
| * syscalls.cc (ctermid): Ditto. |
| * strace.cc (strace_dump): Remove. |
| * include/sys/strace.h: Eliminate obsolete stuff. |
| |
| Sun Aug 8 22:54:45 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * exceptions.cc (call_handler): Process all signals on return from a |
| signal dispatch. |
| * sigproc.cc (proc_can_be_signalled): Guard against waiting too long |
| when exiting. |
| (proc_exists): Don't report an exited process as "existing". |
| (proc_terminate): Close handle prior to testing for existence so that |
| proc_exists will not always return TRUE. Eliminate use of zap_subproc. |
| (stopped_or_terminated): Eliminate use of zap_subproc. |
| (zap_subproc): Delete. |
| |
| Sun Aug 8 22:17:36 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler_tty.cc (fhandler_tty_master::init): hThread must remain |
| open. Previous change to close it was wrong. |
| |
| Sun Aug 8 20:35:33 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * exceptions.cc: Initalize NO_COPY variables. |
| * pinfo.cc (record_death): Don't be so insistent about getting |
| the pinfo lock. |
| * sigproc.cc (proc_terminate): Tighten the region protected by |
| the pinfo lock. |
| * spawn.cc (spawn_guts): Eliminate the pinfo lock when reparenting |
| as it is no longer required. |
| (_spawnve): Tighten the region protected by the pinfo lock. |
| |
| Sun Aug 8 18:26:51 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * sigproc.cc (sig_send): Add more unfortunate guards against a |
| system call being interrupted by a signal dispatch. |
| |
| Sat Aug 7 15:38:42 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * security.cc (get_admin_sid): Ensure that returned buf is not copied |
| on a fork. |
| (get_system_sid): Ditto. |
| (get_create_owner_sid): Ditto. |
| (get_world_sid): Ditto. |
| |
| Sat Aug 7 15:17:25 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler_tty.cc (process_input): Reset signal_arrived event prior to |
| calling console read as this is now a requirement for functions which |
| detect signal_arrived. |
| (fhandler_tty_master::write): Allow signals to operate prior to raising |
| SIGTTOU. |
| (fhandler_tty_master::read): Allow signals to operate prior to raising |
| SIGTTIN. |
| * select.cc (peek_pipe): Detect attempt to read from tty not in our |
| process group as a "read_ready" event. |
| * include/shellapi.h: Add missing defines. |
| * utils/ps.cc: Output windows pid as unsigned for Windows 9x. |
| |
| Sat Aug 7 14:30:00 Corinna Vinschen <corinna@vinschen.de> |
| |
| * security.cc (get_creator_owner_sid): New function. |
| * shared.cc (sec_user): calls `get_creator_owner_sid' in creation |
| of the security attributes structure additionally. |
| |
| Fri Aug 6 13:04:40 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * spawn.cc (spawn_guts): Allow failure from OpenProcess. The parent |
| may have exited due to 7/31 change. |
| |
| Thu Aug 5 22:54:07 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * sigproc.cc (wait_for_me): Break out as a common function to check |
| that the current process is ready to handle signals. |
| (proc_can_be_signalled): Treat myself differently. |
| |
| Thu Aug 5 21:24:20 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler_console.cc (fhandler_console): Don't call tcinit here. |
| (fhandler_console::read): Don't reset signal_arrived here. |
| * syscalls.cc (_read): Set it here instead. |
| * fhandler_termios.cc (fhandler_termios::line_edit): Only call |
| accept_input when input is ready. Ignore iscanon in this case. |
| * fhandler_tty.cc (fhandler_tty_slave::init): Don't call tcinit here. |
| |
| Thu Aug 5 16:02:25 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * strace.cc (handle_output_debug_string): Ignore errors reading |
| from child memory as they seem to occur due to a process exiting. |
| (close_handle): New, defensive code. |
| |
| Thu Aug 5 13:32:43 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * strace.cc (remove_handle): New function. |
| (add_child): Speed up slightly. |
| (proc_child): Use output of remove_child in CloseHandle. |
| |
| Thu Aug 5 12:38:50 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * dcrt0.cc (dll_crt0_1): Don't protect subproc_ready if it is NULL. |
| (do_exit): Avoid calling close_all_files if exiting from exec stub. |
| * net.cc: Reorganize to work around some compiler bugs. |
| * spawn.cc (spawn_guts): Set hExeced only after child stuff has been |
| completely initialized. |
| * syscalls.cc (_open): Protect against signals. |
| * utils/strace.cc (warn): New function. |
| (add_child): Issue warning when can't duplicate child process handle. |
| |
| Wed Aug 4 21:35:28 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * psapi.h: New file. |
| |
| Thu Aug 4 10:28:00 Corinna Vinschen <corinna@vinschen.de> |
| |
| * security.cc: Eliminate MALLOC_CHECK calls. |
| (lookup_name): New function simplifies the retrieval of user and group |
| names. |
| (alloc_sd): Call `lookup_name' instead of `LookupAccountName'. |
| * shared.cc (sec_user): Call `lookup_name' instead of |
| `LookupAccountName'. Eliminate 'free' call on stack space. |
| * winsup.h: Declare `lookup_name'. |
| |
| Wed Aug 4 16:24:02 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * a.out.h: Fix cut and paste from mime email typos. |
| |
| Mon Aug 2 19:08:48 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * Makefile.in: Fix utils dependency. Make clean more assertive. |
| * path.cc (mount_info::conv_to_win32_path): Fill in correct destination |
| when a device name is detected. |
| * syscalls.cc (chown): Always succeed when referencing a cygwin device. |
| (chmod): Ditto. |
| * net.cc (get_ifconf): Eliminate holdover from previous change. |
| |
| Mon Aug 2 13:07:44 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * dcrt0.cc (do_global_ctors): Remove previous change. It was just |
| wrong. |
| |
| Sun Aug 1 23:21:28 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| Throughout rename 'slave_alive' handle to 'inuse'. |
| * shared.h: Implement tty_attached() macro to determine when an actual |
| tty is associated with the process. |
| (class tty): Add some methods for manipulating an "inuse" event that is |
| common to both master and slave parts of a tty. |
| * dcrt0.cc (do_exit): Use tty_attached() to determine if signal should |
| be sent to process group. |
| * external.cc (fillout_pinfo): Return -1 if tty is not attached (i.e, |
| attached to a console). |
| * fhandler.h: Move more stuff into fhandler_tty_common and out from sub |
| classes. |
| * fhandler_console.cc (fhandler_console::read): Send SIGWINCH signal to |
| *correct* process group. |
| (fhandler_console::open): Fix incorrect argument ordering in set_ctty. |
| (fhandler_console::de_linearize): Remove unneeded handle resets. |
| * fhandler_tty.cc (fhandler_tty_slave::open): Fix incorrect argument |
| ordering in set_ctty. Use tty create_inuse method to create inuse |
| event. |
| (fhandler_tty_slave::close): Delete. |
| (fhandler_tty_slave::dup): Delete. |
| (fhandler_tty_slave::write): Minor cleanup of flow of control. |
| (fhandler_tty_common::dup): Subsume fhandler_tty_slave dup method. |
| (fhandler_pty_master::fhandler_pty_master): Zero inuse field. |
| (fhandler_pty_master::open): Set inuse field. |
| (fhandler_tty_common::close): New, superclass method. |
| (fhandler_tty_common::set_close_on_exec): Handle inuse field. |
| (fhandler_tty_common::fixup_after_fork): Ditto. |
| (fhandler_tty_slave::set_close_on_exec): Delete. |
| (fhandler_tty_slave::fixup_after_fork): Delete. |
| * path.cc (get_device_number): Use tty_attached() to figure out |
| /dev/tty. |
| * select.cc (peek_console): Send SIGWINCH signal to *correct* process |
| group. |
| * tty.cc (tty::master_alive): New method. |
| (tty::create_inuse): New method. |
| |
| Sun Aug 1 16:23:22 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * net.cc (get_ifconf): Use alloca for temporary buffer. |
| |
| Sun Aug 1 01:38:20 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| Modify de_linearize methods throughout to set unix and msdos path |
| names. |
| * dcrt0.cc (do_exit): Only remove shared memory when we're done with |
| it. |
| * exceptions.cc (try_to_debug): Move static variable outside of the |
| function so that it can more easily be set with gdb. |
| * fhandler_console.cc (fhandler_console::open): Handles are typically |
| hexadecimal in debugging output. |
| (fhandler_console::open): Do not open inherit console handles by |
| default. |
| (fhandler_console::dup): Just use open method to "duplicate" a console |
| handle. |
| (fhandler_console::fixup_after_fork): Do *not* close handles here since |
| they have not been inherited. |
| (fhandler_console::de_linearize): Ditto. |
| * utils/strace.cc (create_child): Correct debugging flags when not |
| tracking forked processes. |
| |
| Sat Jul 31 20:10:58 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * dcrt0.cc (do_global_ctors): Ensure that ctors are not called more |
| than once per session. |
| * fork.cc (fork): Use sig_protect to protect against signals during |
| fork. |
| * pinfo.cc (lpfu): Show windows pid in debugging message as this is |
| generally more useful. |
| * pinfo.cc (unlock_pinfo): Issue an error if ReleaseMutex fails. |
| (pinfo::record_death): Actually unlock pinfo on exit rather than allow |
| ExitProcess to do this since ExitProcess can sometimes take a *long* |
| time. |
| * spawn.cc (spawn_guts): Ensure that pinfo is always unlocked. |
| |
| Thu Jul 29 23:43:24 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| Throughout, consolidate pgid processing for console and tty into |
| fhandler_termios and tty_min. |
| * debug.h: Make WF?O functions the defaults for dealing with Waits. |
| These functions attempt to work around signal interrupt problems. |
| * debug.cc: Ditto. |
| * exceptions.cc (call_handler): Don't wait a long time for second |
| attempt to get signal mutex. |
| * fhandler_console.cc (fhandler_console::open): Set the "controlling |
| tty". |
| * fhandler_termios.cc: Move the ctty and pgid functions here. |
| (fhandler_termios::line_edit): Fix debug output. |
| * fhandler_tty.cc (fhandler_tty_slave_write): Use sig_protect to |
| protect against output_mutex deadlock. |
| * fork.cc (get_vfork_val): Conditionalize with NEWVFORK. |
| * syscalls.cc (setsid): Add debugging output. |
| (setpgid): Reorganize and add debugging output. |
| * tty.cc (tty::init): Use a method to clear the sid. |
| |
| Thu Jul 29 23:42:53 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| Patch from Egor Duda <deo@logos-m.ru>: |
| * grp.cc (read_etc_group): Use a default /etc/group entry when one |
| doesn't exist. |
| (getgrgid): Ditto. |
| * passwd.cc (read_etc_passwd): Use a default /etc/passwd entry when one |
| doesn't exist. |
| (search_for): Ditto. |
| * uinfo.cc (read_etc_group): Remove some defines. |
| * winsup.h: Move them here. |
| |
| 1999-07-29 Bernd Schmidt <bernds@cygnus.co.uk> |
| |
| * Makefile.in (SUBDIRS_AFTER): Build mingw before utils. |
| * utils/Makefile.in (MINGW_LDFLAGS): Add "-B../mingw/" |
| |
| |
| Tue Jul 27 23:31:28 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * dcrt0.cc: Add experimental vfork_storage initialization. |
| (do_exit): Ditto. |
| * exec.cc: Use _spawnve throughout as a common interface for execing a |
| program. |
| * fork.cc (vfork): Add beginnings of true vfork support. |
| * path.cc (sort_by_posix_name): Remove special casing of zero length |
| names since they should now be eliminated earlier on. |
| (sort_by_native_name): Ditto. |
| (mount_info::del_item): Remove hole from mount table specifically, here |
| or suffer weird behavior. Suggested by Andrew Dalgleish |
| <andrewd@axonet.com.au>. |
| * shared.cc: Make SHAREDVER "unsigned" to avoid a compiler warning. |
| * spawn.cc : Accommodate additional argument to _spawnve, throughout. |
| (_spawnve): Make this a global function and take an hToken argument so |
| that it can be used by sexecve. Accommodate experimental vfork |
| functionality. |
| * winsup.h: Add initial support for per-thread vfork stuff. |
| * include/cygwin/version.h: Bump shared memory version number. |
| |
| Mon Jul 26 20:59:58 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * path.cc (sort_by_posix_name): Report two zero length strings as being |
| equal or suffer an infinite loop. |
| (sort_by_native_name): Ditto. |
| * shared.cc (shared_info::initialize): Refuse to use a different DLL's |
| shared memory. |
| * shared.h: Fix mask for child_info sanity test. |
| |
| Sun Jul 18 16:30:31 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * security.cc: Various changes from Corinna. |
| |
| Sat Jul 17 22:33:45 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fork.cc (fork): Change DuplicateHandle slightly. |
| * security.cc (get_nt_attribute): Ignore error return from |
| set_process_privileges. |
| (set_nt_attribute): Ditto. |
| |
| Sat Jul 17 00:45:34 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * debug.h: Fix ForceCloseHandle1 in non-debug case. |
| |
| Fri Jul 16 23:47:31 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * sigproc.cc (proc_can_be_signalled): Accommodate different flavors of |
| myself. |
| * include/ddeml.h: Add missing struct. |
| * include/wingdi.h: Add missing defines. |
| |
| Fri Jul 16 23:01:30 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * Makefile.in: Attempt to cope when srcdir is a relative pathname. |
| * fork.cc (fork): Pass handle to parent process to fixup_after_fork. |
| Eliminate excess unlock_pinfos. |
| * hinfo.cc (hinfo::fixup_after_fork): Use inherited parent handle |
| rather than try to open the parent process explicitly. |
| * pinfo.cc (record_death): Cosmetic change. |
| * sigproc.cc (wait_sig): Add a debugging statement. |
| * winsup.h: Reflect change of argument for fixup_after_fork. |
| |
| Fri Jul 16 11:07:55 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * shared.h: Eliminate record_death_nolock. Just pass an argument to |
| record_death. |
| * pinfo.cc (record_death_nolock): Ditto. |
| * dcrt0.cc (__api_fatal): Use record_death with FALSE argument rather |
| than record_death_nolock. |
| * exceptions.cc (really_exit): Ditto. |
| * fork.cc (fork): Remove debugging statement. |
| |
| Wed Jul 14 22:08:52 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| Throughout, make parent_alive a local variable. Rename 'alive_parent' |
| to 'my_parent_is_alive'. |
| * autoload.h: Improve the description of the autoload mechanism. |
| * dcrt0.cc: Define parent_alive here. |
| (dll_crt0_1): When debugging, rotect handles inherited from fork/exec. |
| Force signal thread to finish initializing prior to calling main. |
| (dll_crt0): Reorganize child_info stuff to allow common initialization. |
| Accept parent_alive handle from invoker and ensure that this is not |
| inherited by other processes. |
| (do_exit): Ensure that exit_state is not duplicated by a fork. |
| (__api_fatal): Call 'try_to_debug' directly. |
| * debug.cc: Increase the size of the handle list. |
| (threadname): Add an optional argument to control locking. |
| * exceptions.cc (error_start_init): Make this a "C" function. |
| (try_to_debug): Ditto. Also, use Sleep rather than pause and loop so |
| that gdb can get in to interrupt things. |
| (sig_handle): |
| * external.cc (fillout_pinfo): Reorganize slightly and plan for the |
| future. |
| * fhandler.h: Add an argument to show the name of the handle for error |
| messages to fork_fixup. |
| * fhandler.cc (fhandler_base::fork_fixup): Ditto. |
| (set_inheriting): Rename a variable for clarity. |
| (fhandler_base::fixup_after_fork): Pass in the name of the handle to |
| fork_fixup. |
| * fhandler_tty (fhandler_tty_common:fixup_after_fork): Ditto. |
| (fhandler_tty_slave:fixup_after_fork): Ditto. |
| (fhandler_tty_master:fixup_after_fork): Ditto. |
| * fhandler_windows.cc (fhandler_windows::fixup_after_fork): Ditto. |
| * fhandler_console.cc (fhandler_console::open): Specifically open |
| console with ENABLE_PROCESSED_INPUT. |
| * fork.cc (sync_with_child): Call abort when DEBUGGING and there's an |
| error. |
| (resume_child): Ditto. Also, allow an ERROR_INVALID_HANDLE error if it |
| can't be duplicated as they seem to occur occasionally when the parent |
| copies the stack. |
| (fork): Use init_child_info to initialize structure passed to child. |
| Remove start time setting in favor of common function. Don't mess with |
| parent's parent_alive. |
| * heap.cc (sbrk): Simply code slightly. |
| * hinfo.cc (hinfo::dup2): Improve error handling. |
| * pinfo.cc (set_myself): Set start time here since it is called by |
| everything which sets myself. |
| (pinfo_init): Remove start_time setting in favor of common function. |
| * shared.h (pinfo): Reorganize so that signal stuff falls into section |
| of pinfo which is automatically zeroed when a new pid is initialized. |
| (PROC_MAGIC): Increment to detect cygwin1.dll's memory passing |
| disparities. |
| * sigproc.cc (proc_alive): Make this a function. Wait for target pid |
| to initialize. |
| (my_parent_is_alive): Rename from alive_parent. |
| (proc_can_be_signalled): Renamed from proc_alive macro. |
| (proc_exits): Use proc_can_be_signaleed(). |
| (proc_subproc): Don't put parent_alive in child. |
| (proc_terminate): Close hwait_subproc in a race-safe way. Ditto |
| sync_proc_subproc. |
| (sigproc_terminate): Always terminate proc_subproc thread first or it |
| may try to use signal thread as it is going away. Wait for signal |
| thread to exit. |
| (sig_send): Use proc_can_be_signalled(). |
| (init_child_info): New function. Initializes memory block passed by |
| spawn/fork. |
| (mutex_stack): Add thread name field. |
| (sig_wait): Set active state after all handles have been set up and |
| before protecting the handles. Use ForceCloseHandle to close |
| subproc_ready as it is now protected. Close signal_mutex here. |
| * sigproc.h: Accommodate alive_parent rename. |
| * spawn.cc Use init_child_info to initilize memory block passed to |
| subprocess. |
| * strace.cc (__system_printf): Write to screen before writing to strace |
| log. Only write to strace log if we're actually stracing. |
| * winsup.h: Declare the 'action on error' functions. |
| * utils/Makefile.in: (Patch from Egor Duda <deo@logos-m.ru>) Compile |
| strace using -mno-cygwin. |
| * utils/strace.cc: Allow ingw concession from Egor Duda. Attempt to |
| allow CTRL-C when stracing. |
| |
| Thu Jul 14 0:39:00 Corinna Vinschen <corinna@vinschen.de> |
| |
| * security.cc (alloc_sd): Delete special handling of uid/gid 513. |
| |
| Thu Jul 13 15:01:00 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler.cc (get_file_owner): Fix typo. |
| * path.cc (path_conv::path_conv) : Change `return' to `goto end' in |
| case of SYMLINK_IGNORE is set. |
| |
| Mon Jul 5 21:33:00 Corinna Vinschen <corinna@vinschen.de> |
| |
| * security.cc (WriteSD): Doesn't set errno if BackupWrite() |
| returns ERROR_INVALID_SECURITY_DESCR (which happens on FAT). |
| |
| Sat Jul 10 13:17:20 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * utils/strace.cc (error): Actually output error message. |
| (add_child): Duplicate inherited child process handle with all of the |
| privileges that we need. |
| |
| Fri Jul 9 01:37:23 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * include/cygwin/version.h: Bump CYGWIN_VERSION_API_MINOR to 14 |
| in honor of snprintf and vnsprintf additions. |
| |
| Fri Jul 9 00:04:03 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * path.cc (path_conv::path_conv): Correct buffer overflow condition. |
| * fhandler_console.cc (fhandler_console::open): *Need* to enable |
| processed input or CTRL-C won't stop anything unless it's at a prompt. |
| (fhandler_console::input_tcsetattr): Ditto. |
| |
| Thu Jul 8 18:27:49 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * Makefile.in: Add malloc debugging options. |
| * dcrt0.cc (api_fatal): Call abort when debugging so that the debugger |
| will pop up. |
| * debug.cc (close_handle): Unlock in pathological case. |
| * fhandler_console.cc (fhandler_console::read): Always respond to |
| windows size changes. |
| (fhandler_console::open): Always set things to ~ENABLE_PROCESSED_INPUT |
| so that we can control INTR character. Don't set pgid here. |
| (fhandler_console::input_tcsetattr): Turn on windows event so that we |
| can see screen resizes. |
| (fhandler_console::init): Don't set pgid here. |
| * fhandler_termios (fhandler_termios::tcinit): Set pgid here. |
| * fhandler.h: Fix set_has_acls method return. |
| * utils/strace.h: Pass CTRL-Cs to child process. |
| |
| Wed Jul 7 23:59:50 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * Makefile.in: Improve dependencies. |
| * autoload.h: Work around "function unused" messages for autoload init |
| functions. |
| * configure.in: Use CHECK_TOOL to find CC so that it will get the |
| proper host alias. |
| * configure: Regenerate. |
| * dcrt0.cc (do_exit): Minor reorganization of termination function |
| calls. |
| * debug.cc (close_handle): Issue an error when an attempt is makde to |
| close a handle with a name different from the one used to record it |
| previously. |
| * debug.h: Implement new macros for storing arbitrary handle names. |
| * exceptions.cc (handle_signal): Terminate the main thread when exiting |
| due to signal in signal thread. |
| * fhandler.h: Add an extra 'fd' argument to all ready_for_read methods. |
| * select.cc: Ditto, throughout. |
| * fhandler_console (get_tty_stuff): Protect the tty_stuff handle here. |
| * fhandler_termios.cc (fhandler_termios::line_edit): Accommodate fd |
| argument to ready_for_read. |
| * fhandler_tty.cc (fhandler_tty_master::init): Close an unneeded thread |
| handle. |
| * fork.cc (fork): Use standard name when protecting process handle. |
| * spawn.cc (spawn_guts): Ditto. |
| * shared.cc (open_shared_file_map): Protect cygwin_shared handle here. |
| * sigproc.cc: Throughout, close child process handle using standard |
| name. |
| * syscalls.cc (read_handler): Check that fd is still open prior to |
| performing an operation. Supply fd argument for ready_for_read. |
| * (_read): Supply fd argument for read_for_read. |
| * tty.cc (tty_list::terminate): Close unneeded handles as tty is |
| closing down. |
| (tty_list::allocate): Protect against signals. |
| |
| Mon Jul 5 14:52:40 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * cygwin.din: Export new snprintf and vnsprintf functions courtesy of |
| Egor Duda <deo@logos-m.ru>. |
| |
| Sun Jul 4 23:54:43 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * exceptions.cc (sigbegin): New function. Called prior to dispatching |
| to signal handler. |
| (sigreturn): New function. Called after signal handler returns. |
| (set_process_mask): Make stdcall. |
| (call_handler): Remove sigwrap asm stuff in favor of new |
| sigbegin/sigreturn scheme. |
| * winsup.h: Change set_process_mask declaration. |
| |
| Sun Jul 4 22:00:14 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * syscalls.cc (stat_worker): Previous change to check for extension |
| found dots not in the filename part. Fix this. |
| |
| Sat Jul 3 23:22:55 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * include/wincon.h: Add some missing defines. |
| * environ.cc: Remove extern which is now in winsup.h. |
| * fhandler.cc (get_file_owner): Rename argument. Test for allow_ntsec. |
| (get_file_group): Ditto. |
| (fhandler_disk_file::fstat): Use new method inode checking. |
| * fhandler.h: Rename a method. |
| * security.cc (set_file_attribute): Take an additional argument to |
| determine if ntsec security setting should be used. |
| * dir.cc (mkdir): Pass acl info to set_file_attribute. |
| * syscalls.cc (chown): Ditto. |
| (chmod): Ditto. |
| * winsup.h: Define allow_ntsec here. |
| |
| Sat Jul 3 15:09:34 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler.cc (fhandler_disk_file:;fstat): Move check of disk volume to |
| path_conv. Use new methods for determining if file system is ACL |
| capable. |
| (fhandler_disk_file::open): Set "has acls" flag here. |
| * fhandler.h: Store acl information in fhandler base class. |
| * path.cc (path_conv): Set acl information on successful return. |
| * path.h: Add acl info to path_conv class. |
| * security.cc (get_file_attribute): Set ENOSYS if can't get extended |
| attributes. |
| * syscalls.cc (chown): Pass acl information from path_conv to |
| get_file_attributes. |
| (chmod): Ditto. |
| (stat_worker): Ditto. |
| * uinfo.cc: Make all exported functions extern "C". |
| * winsup.h: Add rootdir() declaration. |
| |
| Fri Jul 2 15:13:08 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * autoload.h: New file. |
| |
| Thu Jul 1 23:16:34 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * net.cc (cygwin_gethostname): Use new win32_gethostname to |
| disambiguate between cygwin and winsock version. |
| * tty.cc (creat_tty_master): Disambiguate by using cygwin_gethostname |
| to find the hostname. |
| * winsup.h: Declare cygwin_gethostname. |
| |
| Thu Jul 1 22:36:31 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| Throughout, remove check for winsock initialization and indirect |
| references to winsock functions in favor of new dynamic DLL loading |
| method. |
| |
| * Makefile.in: Remove unneeded libraries. |
| * cygwin.din: Make gethostname == cygwin_gethostname like other network |
| functions. |
| * dcrt0.cc: Implement new "autoload" functionality for loading DLLs and |
| functions as they are needed. Add autoload functions for user32.dll. |
| (cygwin_dll_func_load): New function. |
| (dll_crt0): Issue a fatal error message if attempt to mix different |
| version DLLs is detected. |
| (api_fatal): Correct inexplicable use of buf + 8 when printing error |
| message into a buffer. |
| * fhandler.h: Cosmetic fixes. |
| * fhandler_tty.cc (fhandler_tty::close): Temporarily "if 0" out code |
| which sends EOF pulse to children. This should only happen when last |
| parent fd closes. |
| * heap.cc (sbrk): Implement new sbrk mechanism which returns memory to |
| Windows when top of heap decreases beyond a page boundary. |
| (getpagesize): New function. |
| * fork.cc (fork): Save new heap values in stuff passed to child. |
| * hinfo.cc (hinfo::build_fhandler): Don't do any checking on a handle |
| if the handle is NULL. Assume that it is a disk file. |
| * net.cc: Redo winsock functions to use dynamic loading scheme. |
| * shared.cc (shared_info::initialize): Cosmetic change. |
| * shared.h: Change magic number for memory block sent to child |
| processes. Accommodate new heap information in child_info. |
| * sigproc.cc (sig_dispatch_pending): Remove some memory debugging checks. |
| (__release_signal_mutex): Ditto. |
| * syscalls.cc (stat_worker): Don't attempt the .exe hack unless the |
| previous attempt to open the file resulted in an "ERROR_FILE_NOT_FOUND" |
| and the file did not already contain an extension. |
| * times.cc: Initialize static NO_COPY variables throughout or they will |
| not actually be NO_COPY. |
| * winsup.h: Rename heap fields in per_process to accommodate new sbrk. |
| Eliminate winsock stuff invalidated by dynamic loading change. |
| * include/winsock.h: Make this file C++ safe. |
| |
| Sun Jun 27 17:07:34 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * debug.h: Don't define MALLOC_DEBUG by default. |
| * fhandler.cc (fhandler_base::set_name): Always set names to NULL. Add |
| more slop to end of win32_path_name. |
| (fhandler_base::de_linearize): Set names to NULL. They'll be assigned |
| by the caller. |
| (fhandler_disk_file::get_native): Delete. |
| * fhandler.h: Ditto. |
| * hinfo.cc (hinfo::de_linearize_fd_array): Set path names after the |
| structure has been "delinearized". |
| * malloc.cc: Add debugging versions of malloc functions. |
| * syscalls.cc (stat_worker): Eliminate static buffer for thread safety. |
| |
| Wed Jun 23 22:53:00 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler.cc (fhandler_disk_file::fstat): If get_file_attribute() |
| signals a nonexistant acl, fstat sets default attributes now. |
| |
| Wed Jun 23 10:22:56 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * include/cygwin/version.h: Bump CYGWIN_VERSION_API_MINOR to 13. |
| |
| Wed Jun 23 10:39:07 1999 Mumit Khan <khan@xraylith.wisc.edu> |
| |
| * cygwin.din (gamma, gammaf, lgamma, lgammaf): Export. |
| (j0,j0f,j1,j1f,jn,jnf): Export underscore versions as well. |
| |
| Mon Jun 21 21:34:06 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| Sprinkle MALLOC_CHECK macro throughout. When turned on, this will give |
| a slightly better idea of where memory corruption occurs. Add slightly |
| modified versions of "error_start" code from Egor Duda |
| <deo@logos-m.ru>. |
| * Makefile.in: Add `utils' target. |
| * dcrt0.cc (do_exit): Attempt to detect loop conditions where do_exit |
| is called reentrantly and avoid the previously executed code in this |
| case. |
| * debug.h: Define MALLOC_CHECK macro for use with malloc debugging. |
| * environ.cc (environ_init): Add more slop at end of environ string |
| just to work around buggy programs. |
| (parse_options): Add error_start option to control core dumping or gdb |
| invocation. |
| * exceptions.cc (stackdump): New function. Dumps stack to stderr. |
| (error_start_init): New function. Initialize action on "core dumping" |
| error. |
| (handle_exceptions.cc): Use stackdump command to dump stack. Call |
| try_to_debug. |
| (set_process_mask): Must be __stdcall or compiler get's confused. |
| (sig_handle): Detect SIGQUIT and SIGABRT. Do a "stackdump" for these. |
| * fhandler.cc (get_file_owner): Add an argument to determine if |
| function should check for NT security. |
| (get_file_group): Ditto. |
| (fhandler_base::set_name): Don't free "fhandler_disk_dummy_name" path |
| names. |
| (rootdir): New function, pulled from the pages of syscalls.cc. |
| Determines the root dir of a given path. |
| (fhandler_disk_file::fstat): Get volume information of file in question |
| to determine if inodes are permanent and acls are available. This |
| replaces previous WinNT test. |
| (fhandler_base::~fhandler_base): free "fhandler_disk_dummy_name" path |
| names. |
| * fhandler.h: Change get_file_* declarations. |
| * fhandler_console.cc: Back out most of scroll fixes from April 17. |
| They caused weird scrolling behavior. |
| * fhandler_tty.cc (fhandler_pty_master::accept_input): Add debugging |
| message. |
| * security.cc (get_file_attribute): Add additional "check for ACL" |
| argument. |
| * path.cc (symlink_check_one): Use new argument to get_file_attribute. |
| * sigproc.cc (wait_subproc): Don't exit wait loop if WaitForMultipleObject |
| returns an error. Instead, loop for a while in case this is an expected |
| error. |
| * sigproc.h: Remove __stdcall from set_process_mask. |
| * spawn.cc (linebuf): Use initializers to set initial values. |
| (linebuf::append): Be defensive and ensure that enough space is |
| allocated for the new argument. |
| (linebuf::prepend): Ditto. |
| (spawn_guts): Correct logic which broke up program argument in a #! |
| script. |
| * syscalls.cc (chown): Use new argument to get_file_attribute. |
| (chmod): Use new argument to get_file_owner and get_file_group. |
| (stat_worker): Ditto. |
| (statfs): Break out code that determined the root directory of a given |
| path. Use new rootdir function instead. |
| * winsup.h: Reflect new get_file_attribute argument. |
| * include/sys/strace.h: Add "NOTALL" flag so that voluminous debugging |
| output can be avoided. |
| * utils/strace.cc: Honor NOTALL flag. Run at a higher priority. |
| |
| Mon Jun 14 18:33:08 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * syscalls.c (stat_worker): Consolidate calls to fh.fstat for both |
| directories and normal files. |
| * fhandler_tty.cc (fhandler_pty_master::close): Ensure that an "EOF |
| pulse" is sent to any executing child processes. |
| * path.cc (symlink_check_one): Check for ':\n' as well as '#!' to |
| determine if a file is executable. |
| |
| Mon Jun 14 16:04:00 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler_tty.cc (fhandler_pty_master::accept_input): Set read_retval |
| prior to performing a write to avoid a potential race condition. |
| * fhandler_termios.cc (fhandler_termios::line_edit): Don't set |
| read_retval here. It has to be set in an fhandler_tty accept_input. |
| * select.cc (peek_pipe): Fix typo which caused read_selected to be |
| tested twice rather than except_selected. |
| * shared.h (class tty_min): Remove read_retval from here. |
| (class tty) Put it here. |
| |
| Mon Jun 14 13:08:58 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * utils/Makefile.in: Consolidate and simplify. |
| |
| Mon Jun 14 12:43:32 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| Throughout, remove reliance on strace_* fields in pinfo class. Use |
| global instead. Remove STRACE_DUMP and STRACE_CACHE logic. |
| * pinfo.cc (set_myself): New function. |
| * dcrt0.cc (dll_crt0_1): Use the new function. |
| * environ.cc (parse_options): Remove strace environment variable logic. |
| (environ_init): Ditto. |
| * exceptions.cc (call_handler): Remove strace mutex considerations. |
| * fhandler_termios (fhandler_termios::line_edit): Remove STRACE_CACHE |
| logic. |
| * localtime.cc: Define 'lint' to eliminate warnings. |
| * smallprint.c (__small_vsprintf): Remove text formatting of windowss |
| errors. This is now done in the 'strace' program. |
| * strace.cc: Define 'strace_active' variable to control whether strace |
| should be carried out. |
| (strace_open): Delete. |
| (strace_init): Delete. |
| (get_strace_mutex): Delete. |
| (release_strace_mutex): Delete. |
| (strace_vsprintf): Preserve last error. |
| (strace_write): Communicate with strace program using |
| OutputDebugString. |
| (strace_dump): Delete. |
| (mark): Gut. |
| * winsup.h: Remove a declaration. Add a new one. |
| * include/sys/strace.h: Modify to accommodate new strace scheme. |
| * utils/Makefile.in: Build strace.exe |
| * utils/strace.cc: New file. |
| |
| Sat Jun 12 22:22:00 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler.cc (fhandler_disk_file::fstat): Must compute i-node numbers |
| via `get_namehash' for Windows 9x. |
| |
| Sat Jun 12 10:54:00 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler.cc (fhandler_base::read): Returns correct value |
| if raw_read fails. |
| * fhandler_raw.cc: More trace output. |
| * fhandler_floppy.cc: Ditto. |
| * fhandler_tape.cc: Ditto. |
| |
| Thu Jun 10 14:01:05 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * exceptions.c (handle_exceptions): Use ".stackdump" |
| extension instead of ".core". |
| * path.cc (mount_info::read_mounts): Prescan the mount lists |
| for /cygdrive stuff to delete rather than attempting to |
| delete it in the main "add mount loop". |
| (mount_item::getmntent): Fix "system"/"user" determination. |
| * winsup.h: Use void methods in thread classes where |
| appropriate. |
| |
| Wed Jun 9 23:16:04 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * mkvers.sh: Issue error if can't find version information. |
| |
| 1999-06-09 DJ Delorie <dj@cygnus.com> |
| |
| * localtime.c: new file; public domain timezone handling routines. |
| * tz_posixrules.h: new file; POSIX default timezone data |
| * times.cc: comment out localtime, gmtime, replace tzset with |
| cygwin_tzset |
| * Makefile.in: add localtime.c |
| |
| Wed Jun 9 00:49:04 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * spawn.cc (spawn_guts): Correctly handle #! processing when line |
| ends with white space. Also correctly handle scripts that do not |
| begin with #!. |
| |
| Mon Jun 7 17:04:36 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler_console.cc (fhandler_console::open): Need to initialize |
| tc here, too. |
| (fhandler_console::init): Initialize tc earlier. |
| |
| Mon Jun 7 00:02:51 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler.h (fhandler_termios): Move tc initialization |
| into init method, etc. |
| (fhandler_tty_common): Ditto. |
| * fhandler_console.cc (fhandler_console::fhandler_console): |
| Move tc initialization to init method. |
| (fhandler_console::init): Initialize tc stuff here. |
| (fhandler_console::dup): Ditto. |
| (fhandler_console::fixup_after_fork): Ditto. |
| (fhandler_console::de_linearize): Ditto. |
| * fhandler_termios (tcinit): Rename constructor. |
| Accept force argument to force termios initialization. |
| * fhandler_tty.cc (fhandler_tty_master::init): Move tc initialization |
| to common_init. |
| (fhandler_tty_common::dup): Use tcinit () to initialize tc field. |
| * tty.cc (tty::common_init): Ditto. |
| |
| Sun Jun 6 22:19:09 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * tty.cc (tty_list::terminate): Add \n to output message. |
| (tty::init): Clear slave_opened field or we can't reopen |
| ttys. |
| |
| Fri Jun 4 23:58:17 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler_tty.cc (fhandler_tty_slave::open): Reorganize |
| slightly to avoid a race with get_ttyp()->was_opened. |
| |
| 1999-06-04 DJ Delorie <dj@cygnus.com> |
| |
| * times.cc (totimeval): scale sub properly. |
| (gettimeofday): don't bias by timezone. |
| |
| Thu Jun 3 13:24:17 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler.h (fhandler_tty_common): Add two new methods. |
| * fhandler_tty.cc: Use new {acquire,release}_output_mutex |
| methods throughout for output_mutex. |
| (fhandler_tty_common::__acquire_output_mutex): New method. |
| (fhandler_tty_common::__release_output_mutex): New method. |
| * shared.h (get_output_mutex): Rename to open_output_mutex. |
| |
| Wed Jun 2 16:06:26 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * utils/mkpasswd.c (main): account for long int args to printfs. |
| |
| Wed Jun 2 16:08:08 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * smallprint.c (__small_vsprintf): Conditionalize display of |
| textual messages under CYGWIN_TEXT_ERROR. |
| * ntea.cc: Remove debugging code. |
| |
| Wed Jun 2 16:04:00 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * dcrt0.cc (dll_crt0_1): Call the functions `get_admin_sid', |
| `get_system_sid' and `get_world_sid' before heap initialization |
| to avoid heap fragmentation. |
| * security.cc (get_nt_attribute): Don't allocate memory |
| anymore. All memory is taken from stack. |
| (set_nt_attribute): Ditto. |
| (alloc_sd): Ditto. Change parameters to get a pointer to a |
| preallocated security descriptor and a pointer to it's length. |
| * shared.cc (sec_user): Don't allocate memory anymore. All |
| memory is taken from stack. Change parameters to receive a |
| pointer to a preallocated security buffer. |
| * shared.h: Change prototype for `sec_user' and `sec_user_nih'. |
| * sigproc.cc (getsem): Change call to `sec_user'. Additonally |
| buffer for `sec_user'. |
| * spawn.cc (spawn_guts): Ditto. |
| Change all error output in function `sec_user' and in module |
| `security.cc' from error text to error number output. |
| |
| Tue Jun 2 21:54:21 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * net.cc (get_if_flags): Change the UP and RUNNING state |
| of disconnected RAS interfaces to true. |
| |
| Thu Jun 1 22:47:00 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * security.cc (get_system_sid): New function to create |
| a SID for the well known group of local system. |
| (alloc_sd): New function. |
| (alloc_sd): Give ALL permissions to `system'. |
| * shared.cc (sec_user): Give ALL permissions to `system'. |
| (sec_user): Provide additionalparameter for a second SID. |
| This is used for `CreateProcessAsUser' call. |
| (sec_user_nih): Ditto. |
| * shared.h: Change prototypes for `sec_user' and |
| `sec_user_nih'. |
| * spawn.cc (spawn_guts): Now using `sec_user' in |
| `CreateProcessAsUser' call, if ntsec is set. |
| |
| Thu Jun 1 14:17:00 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * utils/mkpasswd.c: Change to output native names of |
| well known groups `Everyone' (SID 0) and `system' (SID 18). |
| * utils/mkgroup.c: Ditto plus output of native name of |
| well known group `None' (SID 513). |
| |
| Mon May 31 22:10:57 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * path.h: Use bit mask flags in path_conv to save exec, |
| symlink, binary status. Use methods to access and set |
| these flags. |
| * fhandler.cc: Use methods to access path_conv flags |
| throughout. |
| * path.cc: (symlink-check_one): Accept a bitmask flags |
| variable to accommodate path_conv changes. |
| (path_conv::path_conv): Propagate path_flags from mount |
| table to path_conv class. Avoid walking the mount table |
| twice to find "binary" info. |
| (mount_info::conv_to_win32_path): Accept additional flags |
| argument. Don't add trailing slash if not required. |
| Fill out both paths when cygdrive. |
| (mount_info::cygdrive_win32_path): Change debugging output |
| slightly. |
| (mount_info::set_flags_from_win32_path): Generalize from |
| mount_info::binary_win32_path_p. |
| (mount_item::getmntent): Honor MOUNT_EXEC flag. |
| * shared.h: Add new method to mount_info class. |
| * include/sys/mount.h: Add a comment. |
| * utils/mount.cc: Accept -x to force a mountpoint to default |
| to executable permission. Rename automount stuff to cygdrive. |
| |
| Mon May 31 19:00:00 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * environ.cc (environ_init): Set ntsec option by default |
| if running under NT. |
| * security.cc (set_nt_attribute): Delete superfluoues code. |
| * shared.cc (sec_user): Don't set owner in created security |
| descriptor. |
| * sigproc.cc (getsem): Use `sec_user' instead of `sec_user_nih'. |
| * spawn.cc (spawn_guts): Set security attribute of |
| `CreateProcess' to `sec_user' if ntsec is set, `sec_all_nih' |
| otherwise. |
| |
| Mon May 31 19:27:36 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| Throughout, change "automount" to cygdrive. |
| Throughout, change mount flags from signed to unsigned. |
| |
| * path.cc (iscygdrive): New macro. |
| (normalize_posix_path): Tack a '/' on the end of constructed |
| path only if there isn't one there already. |
| (mount_info::init): Simplify slightly. |
| (mount_info::conv_to_win32_path): Don't search for automount |
| stuff in the mount table. Instead special case the cygdrive |
| handling so that it will always be acceptable to use /cygdrive |
| regardless of other mounts. |
| (mount_info::cygdrive_posix_path): Rename from |
| build_automount_mountpoint_path. Fully build a posix path |
| given inputs. |
| (mount_info::cygdrive_win32_path): New function. |
| (mount_info::conv_to_posix_path): Precalculate the length |
| of the pathbuf for multiple uses. Just use cygdrive_posix_path |
| to derive a /cygdrive/x/foo style path. |
| (mount_info::read_mounts): Don't read /cygdrive/x mounts from |
| the registry. Delete them. |
| (mount_info::from_registry): Read cygdrive info earlier for |
| subsequent use by other mount routines. |
| (mount_info::add_reg_mount): Cosmetic changes. |
| (mount_info::read_cygdrive_info_from_registry): Always add |
| trailing slash to cygdrive. Precalculate the length of the |
| cygdrive. |
| (mount_item::getmntent): Cosmetic changes. |
| (mount): Return EINVAL on attempt to add a mount point which |
| begins with the current cygdrive. |
| * path.h: Remove unused script_p from path_conv class. |
| * shared.h: Add cygdrive_length to mount_list. Add new |
| cygdrive_win32_path method. |
| * include/sys/mount.h: Use enums for MOUNT_ constants. |
| |
| 1999-05-29 Keith Seitz <keiths@cygnus.com> |
| |
| * errno.cc (errmap): Map ERROR_NEGATIVE_SEEK to EINVAL. |
| |
| Fri May 28 21:43:56 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * times.cc (to_time_t): Rewrite slightly to avoid compiler |
| overoptimization. |
| |
| Fri May 28 21:10:33 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * sigproc.cc (getsem): Set security attribute of process |
| semaphore to `sec_user_nih()', if ntsec is set, `sec_none_nih' |
| otherwise. |
| |
| Wed May 26 22:56:51 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| Rename inuse_event and inuse_event_exists to "slave_alive" |
| throughout. |
| * shared.h: Eliminate inuse_event. Replace with a boolean. |
| Elminate slave_opened. |
| Add some function declarations used by new methods. |
| * fhandler_tty.cc (fhandler_pty_master::hit_eof): Use better |
| method for determining EOF for pty master. |
| (fhandler_tty_slave::open): Use method to acquire output_mutex. |
| Always create "inuse_event". Delete call to slave_opened. |
| (fhandler_tty_slave::write): Reorganize debugging output |
| slightly. |
| (fhandler_tty_master::close): Eliminate reference to inuse_event. |
| * tty.cc (tty_list::terminate): Eliminate call to slave_opened. |
| (tty_list::connect_tty): Use new exists() method to find out if |
| a tty exists. |
| (tty_list::allocate_tty): Rename argument for clarity. Use |
| new exists method to determine tty existence. |
| (tty::inuse): Delete. |
| (tty::init): Remove reference to inuse_event. |
| (tty::common_init): Ditto. |
| (tty::slave_opened): Delete. |
| * winsup.h: Move some function declarations to shared.h. |
| |
| Mon May 24 22:10:34 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * security.cc (WriteSD): Don't set errno, if BackupWrite() |
| returns ERROR_NOT_SUPPORTED. |
| * security.cc (set_nt_attribute): Change condition for |
| calling LookupAccountName() with domain name again. |
| * shared.cc (sec_user): Ditto. |
| |
| Mon May 24 22:10:34 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * include/winnt.h: Temporary erased definitions of QuadPart |
| in LARGE_INTEGER and ULARGE_INTEGER. |
| * security.cc (set_nt_attribute): Set standard attributes so |
| that reading and writing attributes for user and administrators |
| isn't hindered. |
| |
| Mon May 24 22:10:34 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * security.cc (ReadSD): New function. |
| * security.cc (WriteSD): Ditto. |
| * security.cc (get_admin_sid): Moved from shared.cc. |
| * security.cc (set_process_privileges): Moved from syscalls.cc, |
| shortened, changed return typ to int. Sets errno now. |
| * security.cc (set_file_attributes): Return type changed to int. |
| * security.cc (get_file_attributes): Ditto. |
| * security.cc (set_nt_attributes): Ditto. Cares for setting |
| of S_ISVTX now. |
| * security.cc (get_nt_attributes): Ditto. |
| * syscalls.cc (rel2abssd): #if 0'ed. |
| * syscalls.cc (set_process_privileges): Moved to security.cc. |
| * syscalls.cc (chown): Rewritten. |
| * syscalls.cc (chmod): Change call order of the functions |
| set_file_attributes() and SetFileAttributesA(). |
| * fhandler.cc (fhandler_base::fstat): Change check for |
| return value of get_file_attributes(). |
| * ntea.cc (NTReadEA): returns TRUE now, if allow_ntea is unset. |
| * ntea.cc (NTWriteEA): returns TRUE now, if allow_ntea is unset. |
| * shared.cc (get_admin_sid): Moved to security.cc. |
| * path.cc (symlink_check_one): Change check for return value |
| of get_file_attributes(). |
| |
| Mon May 24 22:10:34 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * security.cc (get_world_sid): Rewrite. |
| * security.cc (world_full_access): Delete. |
| * grp.cc: Use gid 0 as default gid. |
| * grp.cc (read_etc_group): Look for account name of world group. |
| * fhandler.cc (fhandler_base::open): Call `set_file_attribute' |
| only in case of disk file. |
| |
| Mon May 24 22:10:34 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * security.cc (get_file_attribute): Patched incorrect test |
| for symlink. |
| * security.cc (set_file_attribute): ditto. |
| |
| Mon May 24 22:10:34 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * security.cc: Special handling for user and/or administrators |
| permissions to write (extended) attributes. |
| |
| Mon May 24 22:10:34 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * security.cc: Don't allow 513(none) as user or group. |
| |
| Mon May 24 22:10:34 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * security.cc: new functions `set_nt_attribute()', `get_nt_attribute()' |
| and `set_file_attribute()' with additional parameters `uid' and `gid', |
| to support real NT security. |
| * winsup.h: Prototype for `set_file_attribute()' with four |
| parameters. |
| * dir.cc (mkdir): Calls `set_file_attribute()' now. |
| * syscalls.cc (chown): ditto. |
| * syscalls.cc (chmod): ditto, with correct uid/gid. |
| |
| Mon May 24 22:10:34 1999 Corinna Vinschen <corinna@vinschen.de> |
| |
| * shared.cc: New function `get_admin_sid()' to get a SID |
| of the administrators group or of administrator. |
| New functions `sec_user()' and `sec_user_nih()' to get |
| SECURITY_ATTRIBUTES with all permissions for the user and |
| the administtrator group. |
| * shared.h: Prototypes for the above new functions `sec_user()' |
| and `sec_user_nih()'. |
| * sigproc.cc (getsem): Create process semaphore with |
| permissions set by `sec_user()'. |
| |
| Mon May 24 20:29:29 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler_console.cc (fhandler_console::output_tcsetattr): |
| ONLRET was erroneously used in place of ONLCR. |
| (fhandler_console::read): Honor get_r_no_interrupt () so |
| that interrupts don't screw up tty reading. |
| * fhandler.h: Add some methods to fhandler_tty_master. |
| * fhandler_termios.cc (fhandler_termios::fhandler_termios): |
| ONLRET was erroneously used in place of ONLCR. |
| * fhandler_tty.cc (fhandler_tty_master::init): Associating |
| console capabilities with the tty capabilities is a bad |
| idea. Go back to using the console's own. |
| (fhandler_tty_master::fixup_after_fork): New method. |
| (fhandler_tty_master::de_linearize): New method. |
| (fhandler_tty_master::init_console): New method. |
| |
| Mon May 24 09:58:02 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * include/rapi.h: Add some more definitions. |
| |
| Sat May 22 21:45:01 1999 Mumit Khan <khan@xraylith.wisc.edu> |
| |
| * scandir.cc (scandir): Handle errno correctly. Do preallocation to |
| reduce realloc calls. |
| (alphasort): Use strcoll, not strcmp. |
| |
| Sat May 22 19:03:47 1999 Mumit Khan <khan@xraylith.wisc.edu> |
| |
| * dll_init.cc (DllList::recordDll): Forkee must reload dlopened |
| DLLs. Also use strcasematch, not strcmp to compare file name. |
| |
| Wed May 19 14:38:57 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * spawn.cc (linebuf::prepend): Fix possible reference to |
| uninitialized memory. |
| * winsup.h: Remove WINSUP_NO_CLASS_DEFS workaround. |
| * libccrt0.cc: Ditto. |
| * utils/cygwin.cc: Ditto. |
| * utils/mount.cc: Ditto. |
| * utils/ps.cc: Ditto. |
| |
| Sun May 16 17:22:50 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * include/winnt.h: Revert the previous reversion. The problem |
| with this include file was completely misdiagnosed. |
| |
| Sun May 16 16:05:07 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * sysdef/rapi.def: New definition file for RAPI.DLL. |
| * include/rapi.h: Preliminary RAPI declarations. |
| |
| Sun May 16 15:37:15 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * Makefile.in: Remove more obsolete code. |
| |
| Fri May 14 19:30:53 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * include/winbase.h: Change conditional to correctly refer |
| to UNDER_CE rather than UNICODE. |
| * include/winnt.h: Update MIPS and SHx CONTEXT definitions. |
| |
| Tue May 11 21:19:59 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * exceptions.cc (call_handler): Restore previously removed |
| 'leave' command as its absence causes programs to crash. It |
| should never have been deleted. |
| |
| Tue May 11 12:04:02 1999 Norbert Schulze <Norbert.Schulze@rhein-neckar.de> |
| |
| * times.cc (timezone): Properly adjust for daylight savings time. |
| (gettimeofday): Ditto. |
| (localtime): Ditto. |
| (tzset): Ditto. |
| |
| Mon May 10 23:31:36 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * include/winnt.h: Revert to previous version. There are problems |
| with the previous checkin. |
| * fhandler_console.cc (fhandler_console::de_linearize): Add defensive |
| code to ensure that console handles are opened correctly. |
| |
| Sun May 9 22:31:31 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * Makefile.in: Forgot to remove a reference to the deleted targets |
| below. |
| |
| Fri May 7 17:28:12 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * Makefile.in: Remove obsolete code. |
| * exceptions.cc (set_process_mask): Make this a __stdcall. |
| * sigproc.h: Fix declaration of set_process_mask. |
| * include/winnls.h: Add new code page defines. |
| * include/winnt.h: Various fixes from Anders Norlander |
| <anorland@hem2.passagen.se>. |
| |
| Tue May 4 22:20:05 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * include/winnt.h: Fix CONTEXT pointer typedefs. |
| |
| Mon May 3 11:32:32 1999 Mumit Khan <khan@xraylith.wisc.edu> |
| |
| * smallprint.c (__small_vsprintf): Display textual messages |
| for "%E" format type. |
| * dlfcn.cc (set_dl_error): Lose the "Win32 ". |
| |
| Sun May 2 12:22:17 1999 Mumit Khan <khan@xraylith.wisc.edu> |
| |
| * utils/Makefile.in (EXE_LDFLAGS): Provide default. |
| |
| 1999-04-30 DJ Delorie <dj@cygnus.com> |
| |
| * winsup.h (WINSUP_NO_CLASS_DEFS): if defined, don't include class |
| definitions (work around gcc bug) |
| * libccrt0.cc (WINSUP_NO_CLASS_DEFS): define |
| * utils/cygwin.cc (WINSUP_NO_CLASS_DEFS): define |
| * utils/mount.cc (WINSUP_NO_CLASS_DEFS): define |
| * utils/ps.cc (WINSUP_NO_CLASS_DEFS): define |
| |
| Thu Apr 29 13:55:57 1999 Mumit Khan <khan@xraylith.wisc.edu> |
| |
| * shared.h (read_mounts): Change prototype to accept a reference |
| to reg_key, not a copy. |
| * path.cc (read_mounts): Likewise. |
| |
| Thu Apr 29 11:06:37 1999 Mumit Khan <khan@xraylith.wisc.edu> |
| |
| * configure.in (EXE_LDFLAGS): Always add newlib if part of the |
| build tree. |
| * configure: Regenerate. |
| |
| * utils/Makefile.in (INCLUDES): Add newlib include directories. |
| (LDFLAGS): Replace this with |
| (ALL_LDFLAGS): this to avoid being overridden from higher level |
| Makefiles. |
| |
| Wed Apr 28 17:01:12 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * include/winnt.h: Add some handheld support. |
| * shared.cc (open_shared): Don't call OpenFileMapping with |
| a null name pointer. If the name is NULL it can't be opened. |
| |
| Fri Apr 23 00:28:38 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * winsup.h: Always clear memory in thread .create method or |
| suffer uninitialized pointers, etc. |
| |
| Wed Apr 21 03:56:54 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler_console.cc (fhandler_console::fhandler_console): |
| Set fork_fixup flag to ensure that shared info is duplicated. |
| (get_tty_stuff): Ensure that tty_stuff is initialized. |
| (fhandler_console::fixup_after_fork): Really force tc and |
| tty_stuff initialization. Close console handles or suffer |
| handle leak. (needs to be fixed) |
| (fhandler_console::de_linearize): Force tc and tty_stuff |
| initialization. |
| |
| Mon Apr 19 14:54:46 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * include/cygwin/version.h: Bump CYGWIN_VERSION_API_MINOR to 12. |
| |
| Sat Apr 17 15:35:34 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler_console (fhandler_console::fixup_after_fork): Make sure |
| that new shared memory for console is initialized. |
| (fhandler_console::scroll_screen): Set region bottom correctly. |
| (fhandler_console::write_normal): Fix win95 problem where attribute |
| was propagated to scrolled region. |
| * include/wingdi.h: Fix GOBJENUMPROC prototype. |
| |
| Wed Apr 7 20:00:00 1999 John Fortin (fortinj@ibm.net) |
| |
| * pthread.cc (pthread_suspend): New function. |
| (pthread_continue): Ditto. |
| * include/pthread.h: added pthread_suspend and pthread_continue |
| prototypes. |
| * cygwin.din: added above functions. |
| * thread.h: Add 'bool suspended' to class MTitem. Prototype |
| __pthread_suspend __pthread_continue. |
| * thread.cc (__pthread_suspend): New function. |
| (__pthread_continue): New function. |
| |
| Sun Apr 4 23:00:00 1999 John Fortin (fortinj@ibm.net) |
| |
| * pthread.cc (pthread_join): New function. |
| (pthread_detach): New function. |
| * include/pthread.h: added pthread_join and pthread_detach prototypes. |
| * cygwin.din: added above functions for exports. |
| * thread.h: Added char joinable to MTitem class. Add void * |
| return_ptr to ThreadItem class to receive pointer from pthread_exit |
| and pthread_join. Add __pthread_join and __pthread_detach prototypes. |
| * thread.cc: Change thread_init_wrapper to set item->return_ptr=ret |
| and comment out item->used = false. Need to look at this more. |
| (__pthread_join): New function. |
| (__pthread_detach): New function. |
| (__pthread_exit): Implement ( was NOT_IMP ). |
| * thread.cc (MTinterface::FindNextUnused) : Use joinable != 'Y' as |
| an additional conditional. We may need to use this info in |
| pthread_join. |
| |
| Mon Apr 5 23:09:06 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * dcrt0.cc (do_exit): Change a variable name to minimize confusion. |
| * fhandler.h (fhandler_tty): Remove ttyp field in favor of get_ttyp |
| method. |
| * fhandler_tty.cc: Use get_ttyp () method to retrieve pointer to |
| tty device throughout. |
| (fhandler_tty_master::init): Point console tc at tty's tc so |
| that they share the same termios structure. |
| * select.cc (fhandler_tty_common::ready_for_read): Use get_ttyp |
| method. |
| * tty.cc (tty::common_init): Ditto. |
| |
| Mon Apr 5 00:22:30 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler_console.cc (fhandler_console::char_command): Make |
| setting of scrolling region cause the cursor to be placed at |
| the beginning of the scrolling region. |
| * thread.cc (__pthread_kill): Defend against item->sigs being |
| uninitialized. |
| (__pthread_sigmask): Defened against item->sigs being uninitialized. |
| |
| Wed Mar 31 22:52:18 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * dcrt0.cc (dll_crt0): Restore pointer to shared console |
| terminfo structure. This allows subprocesses to set |
| sticky console attributes. |
| * fhandler_console.cc (get_tty_styff): New function. Returns |
| pointer to shared console terminfo structure, allocating shared |
| memory if required. |
| (fhandler_console::fhandler_console): Use get_tty_stuff(). |
| (fhandler_console::de_linearize): Ditto. |
| * fork.cc (fork): Save shared console handle for export to |
| subprocesses. |
| * spawn.cc (spawn_guts): Ditto. |
| * shared.cc (open_shared_file_map): Rewrite to use generic |
| open_shared() function. |
| (open_shared): New function. Generic shared memory open |
| used by console and cygwin shared memory. |
| * shared.h: Define new stuff used by above. |
| |
| Wed Mar 31 01:46:23 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler.h (fhandler_tty): Set tc = ttyp. |
| * fhandler_tty.cc (fhandler_tty_master::init): Ditto. |
| (fhandler_tty_common::dup): Ditto. |
| * tty.cc (tty::common_init): Ditto. |
| |
| Wed Mar 31 01:43:06 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * path.cc (mount_info::conv_to_win32_path): Reorganize to |
| correctly handle //x syntax. |
| |
| Tue Mar 30 14:42:05 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * strace.cc (strace_vsprintf): Fix incorrect buffer reference. |
| |
| Mon Mar 29 22:46:16 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * debug.cc (__lock): Return value for gcc bug workaround. |
| (__unlock): Ditto. |
| * fhandler_tty.cc (fhandler_tty_master::init): Remove extraneous |
| console initialization. Set termios to sensical values before |
| initializing the console. |
| (fhandler_tty_slave): Add some debugging output. |
| * strace.cc: Conditionalize stuff not required by STRACE_HHMMSS. |
| (strace_vsprintf): Remove dependency on time() for STRACE_HHMMSS. |
| |
| Mon Mar 29 10:50:00 Corinna Vinschen <corinna.vinschen@cityweb.de> |
| |
| * utils/passwd.c (GetPW): Correct cast in call to `NetUserGetInfo'. |
| |
| Sun Mar 28 16:54:57 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler.h: Remove tty_stuff field from fhandler_console |
| class. Use global instead to allow all console opens to |
| use same settings. |
| * fhandler_console.cc: Add new global. |
| (fhandler_console::tcgetattr): Use new global for initialization. |
| (fhandler_console::de_linearize): Ditto. |
| * fhandler_termios.cc (fhandler_termios::fhandler_termios): Don't |
| reinitialize an already initialized termios. Do not honor |
| CYGWIN=binmode for console output. It's too confusing. |
| * shared.h: Add `initialized' field to tty_min. |
| |
| Sun Mar 28 01:55:32 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * path.cc (path_prefix_p_): Add defensive code. |
| (slash_drive_prefix_p): Use macro to detect whether a character |
| is a path separator. |
| (mount_info::conv_to_win32_path): Rewrite to correctly handle |
| relative paths. |
| * strace.cc (strace_printf): Remove extraneous save of LastError. |
| * winsup.h (per_thread): Return TlsSetValue value. This seems |
| to work around a g++ bug. |
| |
| Thu Mar 25 13:00:00 Corinna Vinschen <corinna.vinschen@cityweb.de> |
| |
| * fhandler_raw.cc (fhandler_dev_raw::dup): New method. |
| * fhandler_tape.cc (fhandler_dev_tape::dup(): Ditto. |
| * fhandler.h: Added prototypes for the formentioned methods. |
| |
| Wed Mar 24 23:00:00 Corinna Vinschen <corinna.vinschen@cityweb.de> |
| |
| * fhandler_raw.cc (fhandler_dev_raw::linearize): |
| Only calling base class implementation now. |
| * fhandler_raw.cc (fhandler_dev_raw::de_linearize): |
| Only calling base class implementation and allocating devbuf now. |
| * fhandler_tape.cc (fhandler_dev_tape::linearize): Erased. |
| * fhandler_tape.cc (fhandler_dev_tape::de_linearize): Erased. |
| * fhandler_tape.cc (fhandler_dev_tape::fhandler_dev_tape): |
| Additional call to `set_cb()'. |
| * fhandler_floppy.cc (fhandler_dev_floppy::fhandler_dev_floppy): |
| Ditto. |
| * fhandler.h: Erased prototypes for linearize and de_linearize |
| methods of class fhandler_dev_tape. |
| |
| Thu Mar 25 14:05:57 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * signal.cc (pause): Make sure that signal has been dispatched |
| prior to pause returning. |
| |
| Wed Mar 24 20:04:21 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| Change get_input_handle to get_io_handle throughout. |
| Change output_handle_ to output_handle throughout. |
| Use sys/termios.h only where needed. |
| * Makefile.in: Add new object. |
| * fhandler.cc (fhandler_base::puts_readahead): New function. |
| Adds a string to the read ahead buffer. |
| (fhandler_base::put_readahead): New function. Adds a character |
| to the read ahead buffer. |
| (fhandler_base::get_readahead): New function. Gets a character |
| from the read ahead buffer. |
| (fhandler_base::peek_readahead): New function. Returns character |
| at beginning or end of read ahead buffer. |
| (fhandler_base::set_readahead_valid): Augmented from fhandler.h. |
| (fhandler_base::eat_readahead): Eat a character from the read |
| ahead buffer. |
| (fhandler_base::de_linearize): Reset read ahead info. |
| (fhandler_base::read): Honor new read ahead mechanism. |
| (fhandler_base::fhandler_base): Don't set binmode to default |
| if it has already been explicitly set. |
| * fhandler.h: Add *BINSET flags to track whether the binary |
| mode has been turned on or off explicitly. |
| (fhandler_base): Add elements for new read ahead method. Remove |
| old `readahead_'. |
| (fhandler_termios): New base class. |
| (fhandler_console): Use fhandler_termios base class. |
| Add new de_linearize method. |
| (fhandler_tty_common): Rewrite to use fhandler_termios base class. |
| (fhandler_pty_master): Ditto. |
| (fhandler_tty_master): Ditto. |
| * fhandler_console (fhandler_console::read): Rewrite to use functions |
| from fhandler_termios and read ahead for line editing. |
| (fhandler_console::read1): Remove. |
| (fhandler_console::open): Interruptible I/O is now handled in the |
| read function. Mark this. |
| (fhandler_console::output_tcsetattr): Use ONLRET to control |
| binary behavior since it is more closely analgous. |
| (fhandler_console::input_tcsetattr): Don't set console flags if |
| there is no change or Windows 95 will eat input. |
| (fhandler_console::tcsetattr): Use ONLRET to control binary behavior |
| since it is more closely analgous. |
| (fhandler_console::fhandler_console): Accommodate fhandler_termios |
| base class. |
| (fhandler_console::init): Ditto. |
| (fhandler_console::igncr_enabled): Ditto. |
| (fhandler_console::char_command): Use new read ahead method. |
| (fhandler_console::de_linearize): New function. |
| * fhandler_serial.cc: Need additional include. |
| * fhandler_tty.cc (fhandler_tty_master::fhandler_tty_master): |
| Accommodate fhandler_termios base class. |
| (fhandler_tty_master::init): Ditto. |
| (fhandler_tty_master::accept_input): New function. Sends |
| (possibly line-edited) input to slave. |
| (process_input): Use line editing capabilities of fhandler_termios |
| base class when processing input. |
| (fhandler_tty_slave::open): Accommodate fhandler_termios base class. |
| (fhandler_tty_slave::tcgetattr): Ditto. |
| (fhandler_tty_slave::ioctl): Ditto. |
| (fhandler_pty_master::fhandler_pty_master): Ditto. |
| (fhandler_pty_master::read): Ditto. |
| (fhandler_tty_slave::dup): Be more paranoid about setting output |
| handle in case of error. |
| * fhandler_tty.h: Accommodate new tty_min base class in tty class. |
| * hinfo.cc (hinfo::build_fhandler): Send tty 'unit' to constructor. |
| * select.cc (peek_console): Send resize event to window regardless |
| of tty setting. Eliminate ReadFile kludge. |
| * shared.h (tty_min): Rename termios field to avoid conflict. |
| * tty.cc (create_tty_master): Send tty number to build_fhandler. |
| (tty::common_init): Remove termios initialization. It's handled |
| via fhandler_termios, now. |
| * fhandler_termios: New file. Contains methods for dealing with |
| fhandler_termios class. |
| |
| Wed Mar 24 19:22:04 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * exceptions.cc (call_handler): Reorder to work around |
| gcc bug. |
| |
| Sun Mar 21 21:26:43 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler_serial.cc (fhandler_serial::raw_read): Protect |
| against uninitialized variable. Output debug info if |
| ClearCommError fails. Clear overlapped I/O on error or |
| signal. |
| (fhandler_serial::tcflow): Output debug info at start of |
| routine. |
| (fhandler_serial::tcsetattr): Add more debugging output. |
| Avoid re-setting parameters if there has been no change. |
| Setting parameters via SetCommState seems to cause loss of |
| input on Windows 9[58]. |
| |
| Wed Mar 17 12:56:25 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * include/winbase.h: Fix AllocateAndInitializeSid proto. |
| |
| Tue Mar 16 21:55:12 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * exceptions.cc (handle_exceptions): Always wait for sig_send |
| to exit or races can result. |
| |
| Tue Mar 16 13:04:34 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * include/cygwin/version.h: Bump CYGWIN_VERSION_API_MINOR to 11. |
| |
| Tue Mar 16 15:44:10 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * cygwin.din: Export telldir/seekdir. |
| |
| Tue Mar 16 13:50:51 1999 Corinna Vinschen <corinna.vinschen@cityweb.de> |
| |
| * dir.cc: Change unused struct member __d_find_first_called to |
| __d_position for use in new functions. |
| (telldir): New function. Returns current position in DIR stream. |
| (seekdir): New function. Seeks to new position in DIR stream. |
| |
| Mon Mar 15 19:17:23 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * sysdef/comctl32.def: Add InitCommonControlsEx. |
| |
| Mon Mar 15 19:45:10 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * dir.cc (mkdir): Remove final slash from a directory if |
| appropriate or windwows won't create the directory. |
| * errno.cc: Change text for EAGAIN to something a little |
| more sensical. |
| * exceptions.cc (call_handler): Add a debug message. |
| * fhandler.cc (fhandler_base::open): Don't attempt to set |
| the position of a com device. |
| * fhandler_serial.cc (fhandler_serial::raw_read): Reset |
| overlapped event if not armed. Don't attempt to find out |
| if characters are available if vmin_. |
| (fhandler_serial::raw_write): Clear pending I/O when |
| necessary. |
| (fhandler_serial::open): Set comm state to current rather |
| than zeroing. |
| (fhandler_serial::tcflush): Don't use "queue" as a flag. |
| TCI* defines are not bit masks. |
| * select.cc (peek_serial): Add debugging output. |
| * sigproc.cc (wait_sig): Minor cleanup. |
| * path.cc (nofinalslash): Make global. |
| * winsup.h: Ditto. |
| |
| Mon Mar 15 16:31:29 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * include/winnt.h: Add RID defs/protos from MSDN docs. |
| (SECURITY_*_RID, DOMAIN_*_RID*, etc.) |
| * include/richedit.h: Add missing SCF_* defines. |
| * include/commctrl.h: Add missing PBM_ defines, PBRANGE struct. |
| |
| Mon Mar 15 12:54:48 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * Makefile.in: Don't install include/Windows32 since it doesn't |
| exist any more. |
| * include/cygwin/version.h: Bump CYGWIN_VERSION_API_MINOR to 10. |
| |
| 1999-03-12 DJ Delorie <dj@cygnus.com> |
| |
| * net.cc (gethostbyname): support a.b.c.d notation internally, |
| in case there's no DNS at least partial support is there. |
| |
| Thu Mar 11 21:27:41 1999 Jeff Johnston <jjohnstn@cygnus.com> |
| |
| * cygwin.din: Added references to new fast-math routines. |
| |
| Wed Mar 10 19:22:46 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * include/commdlg.h: Add missing PageSetupDlg defines. |
| |
| Tue Mar 9 14:28:14 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * include/*.h: Switch Win32 API header file set to the one written |
| by Anders Norlander <anorland@hem2.passagen.se>. Headers now |
| fit the standard Win32 API header layout and are more complete. |
| These correspond to Anders' headers, version 0.1.5. Please read |
| sysdef/README for more information. |
| * include/Windows32/*.h: Delete in favor of above definitions. |
| |
| Changes to support the above: |
| * fhandler_console.cc (fhandler_console::char_command): Add newly |
| needed cast to DWORD *. |
| * fhandler_serial.cc (fhandler_serial::raw_read): Make n, minchars |
| DWORDs. |
| * fhandler_tty.cc: Include limits.h. |
| (fhandler_pty_master::doecho): Second arg is now DWORD. |
| (fhandler_pty_master::process_input_to_sl): Make n, written DWORD. |
| (fhandler_pty_master::process_slave_outpu): Make n DWORD. |
| (fhandler_tty_slave::close): Make towrite, n DWORDs. |
| (fhandler_tty_slave::write): Make n DWORD. |
| * fhandler.h: Adjust fhandler_pty_master::doecho proto. |
| * hinfo.cc: Include file reordering. |
| * malloc.cc: Ditto. |
| * net.cc: Ditto. |
| * fhandler_tape.cc (get_ll): Need to reference .u in |
| LARGE_INTEGER usages. |
| * ntea.cc: Ditto. |
| * pinfo.cc: Include limits.h. |
| * spawn.cc: Ditto. |
| * uinfo.cc: Ditto. |
| * uname.cc (uname): sysinfo struct now has anon union. |
| Adjust sprintf for dwProcessorType being a long now. |
| * syscalls.cc: Include limits.h and lmcons.h. Throughout, |
| reference .u in LARGE_INTEGER usages. |
| (logout): Make rd a DWORD. |
| |
| * utils/mkgroup.c: Always include lmaccess.h and lmapibuf.h. |
| Include stdio.h. |
| (enum_groups): Adjust for longs in fprintfs. |
| (main): Ditto. |
| * utils/mkpasswd.c: Include lmaccess.h and lmapibuf.h. |
| (enum_users): Adjust for longs in fprintfs. |
| (main): Ditto. |
| (enum_local_groups): Ditto. |
| * utils/passwd.c: Remove many Win32 API defines now in new |
| Win32 headers. Include lmaccess.h, lmerr.h, lmcons.h, |
| lmapibuf.h. |
| (PrintPW): Adjust for longs in fprintfs. |
| |
| Wed Mar 3 21:14:45 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * environ.cc (environ_init): Fix off-by-one error in initial |
| environment allocation. |
| * fhandler_serial.cc (fhandler_serial::tcflush): Use different |
| method for flushing since serial handles are now opened for |
| overlapped I/O. |
| * select.cc (cygwin_select): Make degenerate case interruptible. |
| * sigproc.cc (proc_exists): Recognize all kinds of myself pointers |
| as "existing". |
| |
| Tue Feb 16 23:00:48 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * include/Windows32/Functions.h: Correct two #ifndefs that were |
| switched. |
| |
| Mon Feb 15 22:41:54 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * spawn.cc (spawn_guts): Fix incorrect arg length when |
| constructing new arguments for #!. |
| |
| Fri Feb 12 13:25:50 1999 Drew Moseley <dmoseley@cygnus.com> |
| |
| * Makefile.in (install-info): Test for file existence before installing. |
| |
| Fri Feb 12 13:17:49 1999 Corinna Vinschen <corinna.vinschen@cityweb.de> |
| |
| * fhandler.cc (fhandler_disk_file::fstat): Handles directories, |
| returns unique i-node number. |
| * syscalls.cc (stat_worker): On WinNT, stat_worker calls |
| fhandler_disk_file::fstat for directories, too. |
| |
| 1999-02-10 DJ Delorie <dj@cygnus.com> |
| |
| * doc/doctool.c (scan_directory): check for opendir failing, |
| add closedir. |
| |
| Tue Feb 9 13:02:25 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * utils/mount.cc: Add fixme. |
| * doc/doctool.c: Correct typo in comment. |
| |
| Mon Feb 8 17:29:58 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * include/Windows32/UnicodeFunctions.h: Fix incorrect use of |
| BOOL -> WINBOOL. |
| * Windows32/ASCIIFunctions.h: Ditto. |
| |
| Fri Feb 5 09:38:25 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * path.cc (mount_info::add_item): Ensure that drive names |
| are added using X: notation. |
| |
| Thu Feb 4 00:28:58 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * path.cc (path_prefix_p_): Recognize ':' as a path separator. |
| (mount_info::conv_to_posix_path): Detect case where a '/' has |
| to be added to a path being constructed. |
| (realpath): Ensure that the full path name is returned. |
| |
| Wed Feb 3 22:57:42 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * shared.h (mount_info): Add two separate arrays to track |
| reverse sorting of win32/posix paths. |
| * path.cc (sort_by_posix_name): New function. Sorts by |
| posix path. |
| (sort_by_native_name): Rename from sort_by_name. |
| (mount_info::conv_to_win32_path): Use native sort order |
| when iterating through mount table. |
| (mount_info::binary_win32_path_p): Ditto. |
| (mount_info::getmntent): Ditto. |
| (mount_info::conv_to_posix_path): Use posix sort order |
| when iterating through mount table. |
| (sort): Use two arrays to track sorting of mount table. |
| (mount_info::add_item): Simplify slightly. |
| |
| Wed Feb 3 15:17:54 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * cygwin.din: Remove DATA attribute which was erroneously |
| added to __errno. |
| |
| Tue Feb 2 23:10:18 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * path.cc: Fix comment regarding UNC paths in mount table. |
| (mount_info::conv_to_win32_path): Add back code to handle |
| //<drive> paths for now. The plan is still to remove it again at |
| a later date. |
| (mount_info::slash_drive_to_win32_path): New. Convert a //<drive> |
| path to a Win32 path. Bring back from among the recently departed |
| path functions. |
| * shared.h: Add mount_info proto for slash_drive_to_win32_path. |
| |
| Tue Feb 2 22:52:43 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * include/lmaccess.h: Add stub. |
| * include/shlobj.h: Add stub. |
| |
| Tue Feb 2 22:34:06 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * shared.h: Change magic number associated with fork/exec |
| information as a temporary measure to eliminate strange |
| core dumps with multiple versions of cygwin1.dll. |
| |
| 1999-02-02 Brendan Kehoe <brendan@cygnus.com> |
| |
| * Makefile.in (readme.txt): Add missing -I$(srcdir)/doc. |
| |
| Tue Feb 2 01:10:31 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * sysdef/*: Replace all files with new ones by Anders |
| Norlander <anorland@hem2.passagen.se>. Please read sysdef/README |
| for more information. |
| |
| Mon Feb 1 14:55:11 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * path.cc (sort_by_name): Sort based on length of native_path |
| to ensure maximal match when converting from native -> UNIX. |
| * cygwin.din: Make more data variables DATA. |
| |
| Mon Feb 1 13:31:43 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * fhandler_tape.cc: Change all fhandler_tape private functions |
| to be named foo_bar_baz-style instead of FooBarBaz. Add some |
| parens around logical ors/ands for clarity. Respace. |
| * fhandler.h: Change protos here in light of above. |
| |
| Thu Jan 28 11:00:00 Corinna Vinschen <corinna.vinschen@cityweb.de> |
| |
| * errno.cc: Support for Windows errors ERROR_CRC and ERROR_NO_READY |
| and for error ENOMEDIUM. |
| |
| Wed Jan 27 01:05:39 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * dir.cc (rmdir): Correct errno setting when attempting to rmdir |
| a non-directory. |
| |
| Tue Jan 26 17:36:12 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * registry.cc (reg_key::build_reg): Add FIXME. |
| |
| Tue Jan 26 01:30:48 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * path.cc (mount_info::from_registry): Import old v1 mounts |
| only if current mount layout doesn't exist yet in both user |
| and system areas (when had_to_create_mount_areas == 2). |
| (mount_info::import_v1_mounts): New, was upgrade_v1_mounts. |
| (mount_info::from_v1_registry): Add missing comma in reg_key |
| creation call. |
| (mount_info::init): Init had_to_create_mount_areas to zero. |
| * external.cc (cygwin_internal): Fix reference to |
| upgrade_v1_mounts. |
| * shared.h: Change upgrade_v1_mounts proto to import_v1_mounts. |
| Add new had_to_create_mount_areas variable in mount_info class. |
| * registry.cc (reg_key::build_reg): Increment |
| had_to_create_mount_areas whenever we create a new mount area. |
| |
| * include/sys/mount.h: Don't define MOUNT_EXEC until we actually |
| implement this functionality. |
| |
| * utils/mount.cc (do_mount): Print warning messages after the |
| actual mount attempt so we don't see warnings when mount fails. |
| (usage): Change name of --upgrade-old-mounts flag to |
| --import-old-mounts. |
| (main): Ditto. |
| |
| Mon Jan 25 23:56:50 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * errno.cc (seterrno_from_win_error): New. Given a Windows |
| error code, set errno accordingly. |
| (seterrno): Just call seterrno_from_win_error with the |
| error code returned by a call to GetLastError. |
| * winsup.h: Define __seterrno_from_win_error. |
| * path.cc: Clean up more function description comments. |
| (mount_info::add_reg_mount): Don't need res, just return the |
| right values. |
| (del_reg_mount): Return int, not void. If we're deleting a |
| system mount, set errno to EACCES and return -1 if we don't |
| have a valid key handle. If mount delete fails, set errno |
| accordingly and return -1. Otherwise, return zero for success. |
| (cygwin_umount): Delete mount from registry first, only remove |
| from internal table if successful. |
| * shared.h: Make del_reg_mount proto return int. |
| |
| Mon Jan 25 22:40:15 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * path.cc (mount_info::mount_slash): Add mount to registry |
| first, only add to internal table if successful. |
| (mount_info::conv_to_posix_path): Ditto. |
| (mount): Ditto. |
| (mount_info::add_reg_mount): Return int, not void. If we're |
| writing a system mount, first check if we have a valid key handle. |
| If we don't, set errno to EACCES and return -1. Otherwise return |
| zero for success. |
| * shared.h: Make add_reg_mount proto return int. |
| |
| Mon Jan 25 20:40:26 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * path.cc (mount_info::init): Don't read automount info here. |
| (mount_info::from_registry): Read it here instead. Also, read |
| system registry info in KEY_READ mode. |
| (mount_info::read_mounts): Read mount info with KEY_READ access |
| permissions. |
| |
| Mon Jan 25 19:12:31 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * path.cc: Improve several function description comments. |
| (mount_info::init): Read automount information from the |
| registry before potentially automounting slash. |
| (mount_info::conv_to_posix_path): Create automount with |
| automount_flags flags. |
| (mount): Now flags is more than just a toggle so we |
| must check it in a different manner. And simply check |
| MOUNT_AUTO as the indicator. If we want to change the |
| automount_prefix, also change automount_flags as appropriate. |
| Fix args to syscall_printf. |
| (write_automount_info_to_registry): New. Was |
| write_automount_prefix_to_registry. |
| (read_automount_info_from_registry): New. Was |
| read_automount_prefix_from_registry. |
| * shared.h: Adjust protos for function renames just mentioned. |
| * include/sys/mount.h: Delete MOUNT_CHANGE_AUTOMOUNT_PREFIX |
| since we don't really need it. |
| * utils.cc (mount): Pass MOUNT_AUTO as indicator of desire to |
| change automount prefix. |
| (show_mounts): Change spacing so there's room for "system,auto" |
| in Type column. |
| |
| Mon Jan 25 13:17:40 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * path.cc: Change all references from "automount root" to |
| "automount prefix", avoiding potential nomenclature confusion |
| with the root of the file system. |
| (read_automount_prefix_from_registry): New. Was |
| read_automount_root_from_registry. |
| (read_automount_prefix_from_registry): New. Was |
| read_automount_root_from_registry. Also read the default |
| flags for automounts from registry at the same time. |
| (write_automount_prefix_to_registry): New. Was |
| write_automount_root_to_registry. Also set automount flags |
| in registry using new auto_flags arg. |
| (mount): Add flags arg to write_automount_prefix_to_registry call. |
| * shared.h: Add automount_flags variable to mount_info class. |
| Adjust protos for function renames listed above. |
| |
| * include/sys/mount.h: Comment out MOUNT_MIXED and MOUNT_SILENT |
| whose values could be reused now that we're using a new mount |
| layout. Change MOUNT_CHANGE_AUTOROOT to |
| MOUNT_CHANGE_AUTOMOUNT_PREFIX. |
| |
| * utils/mount.cc (change_automount_prefix): New. Was |
| change_automount_root. Add new flags argument so it's possible |
| to change the default automount flags. |
| (main): Option name change from --change-automount-root to |
| --change-automount-prefix. |
| (usage): Update in light of option changes. |
| * utils/umount.cc (remove_all_automounts): Also need to check |
| for mnt_type looking like "system,auto" now that it's possible |
| for automounts to be located in the system registry. |
| |
| Mon Jan 25 08:59:04 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * spawn.cc (linebuf::add): Ensure that there is always |
| enough space for line being added. Always null terminate. |
| (linebuf::prepend): Ditto. |
| |
| Sat Jan 23 01:30:16 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| Make mount.exe able to upgrade mounts: |
| * external.cc: Fix file description. |
| (cygwin_internal): Handle CW_READ_V1_MOUNT_TABLES case, in |
| which case call upgrade_v1_mounts to upgrade old registry |
| area mounts. |
| * external.h: Add CW_READ_V1_MOUNT_TABLES to enum. |
| * shared.h: Make upgrade_v1_mounts public. |
| |
| * utils/mount.cc: Include winsup.h, external.h, undef errno since |
| it's defined by winsup.h. |
| (usage): Add --upgrade-old-mounts option to usage info. |
| (main): Handle --upgrade-old-mounts flag by calling |
| cygwin_internal with the right constant. |
| |
| Sat Jan 23 00:40:17 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| First pass at mount table backwards compatibility with v1 |
| mounts: |
| * path.cc (mount_info::from_registry): For now, upgrade from |
| old v1 mount registry area if nmounts==0 after reading new mount |
| areas. |
| (mount_info::read_v1_mounts): New function. Given a regkey, read |
| the mounts in the old v1 registry layout corresponding to the key. |
| A "which" arg tells us which registry we're reading so that we |
| can include MOUNT_SYSTEM when reading old system mounts. |
| (mount_info::from_v1_registry): New function. Retrieve old v1 |
| mount table area mounts. |
| (mount_info::upgrade_v1_mounts): New function. Retrieve old |
| v1 mounts, add them to the current registry mount location. |
| (mount_info::to_registry): New function. For every mount in |
| the internal mount table, add it to the correct registry. |
| * shared.h: Add protos for new mount_info functions -- |
| from_v1_registry, read_v1_mounts, upgrade_v1_mounts, to_registry. |
| Don't need class name in protos for |
| build_automount_mountpoint_path, write_automount_root_to_registry, |
| and read_automount_root_from_registry. |
| |
| Fri Jan 22 22:45:07 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * spawn.cc (spawn_guts): Arg 2 missing from special case |
| command/cmd handling. |
| |
| Fri Jan 22 22:40:32 1998 Corinna Vinschen <corinna.vinsche@cityweb.de> |
| |
| * fhandler_raw.cc (fhandler_dev_raw::raw_read): bytes_to_read |
| corrected to multiple of 512 bytes instead of multiple to |
| devbufsiz. Insert break on ReadFile returned 0 Bytes. |
| |
| Fri Jan 22 15:50:49 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * mkvers.sh: Fix handling of CVS tag output. |
| * errno.cc: Mark exported data as __declspec(dllexport). |
| * times.cc: Ditto. |
| * fhandler.cc (fhandler_base::open): Yet another stab |
| at correcting handling of binmode/textmode ramifications. |
| * path.cc (hash_path_name): Make /. == '' for purposes |
| of generating a hash. |
| |
| Fri Jan 22 11:45:28 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * path.cc (slash_unc_prefix_p): Generalize to allow |
| either type of slash. |
| (mount_info::add_item): Don't disallow UNC specs in |
| the mount table. |
| * utils/Makefile.in: Always use current stub library. |
| |
| Fri Jan 22 08:52:36 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * environ.cc (regopt): Use correct registry key for Program |
| Options given new mount layout. |
| * cygwin.din: export __mb_cur_max from newlib. |
| |
| Thu Jan 21 16:52:20 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * path.cc (cygwin_split_path): Adjust two FIXMEs. |
| (mount_info::write_automount_root_to_registry): Return int, |
| 0 on success, -1 if path is problematic. |
| (mount): Check return of write_automount_root_to_registry |
| and act appropriately. Do syscall_printf when adjusting automount |
| as well as regular mount. |
| * shared.h: mount_info::write_automount_root_to_registry now |
| returns an int. |
| * utils/mount.cc (main): don't sanity-check automount path |
| here, instead let the DLL take care of that. |
| |
| Thu Jan 21 17:12:26 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * spawn.cc (spawn_guts): Rewrite argument handling for |
| cleaner, one-pass operation. |
| (linebuf::add): New method for adding arguments to end |
| of the argument list. |
| (linebuf::prepend): New method for pushing arguments on |
| the front of the argument list. |
| |
| Wed Jan 20 19:06:30 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * path.cc (mount_info::mount_slash): only call add_reg_mount if |
| add_item succeeded. |
| (mount_info::add_item): Fail if native path doesn't start with |
| <drive letter>: or if posix path doesn't start with a slash. |
| |
| Wed Jan 20 19:06:30 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * fhandler_raw.cc: Correct copyright date, reformat. |
| * fhandler_floppy.cc: Ditto. |
| * fhandler_tape.cc: Ditto. |
| |
| Wed Jan 20 17:54:02 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| Remove //<drive>/ support. Add support for automounts in |
| user registry area. |
| * path.cc: Rewrite, reformat docs at top in light of removing |
| //<drive>/ support and new automount support. Add more function |
| description comments. |
| (slash_drive_prefix_p): Remove function. |
| (build_slash_drive_prefix): Ditto. |
| (slash_drive_to_win32_path): Ditto. |
| (mount_info::init): After everything else, read the automount_root |
| by calling read_automount_root_from_registry(). |
| (mount_info::mount_slash): Automount slash with MOUNT_AUTO. |
| (mount_info::conv_to_win32_path): Remove //<drive>/ support code. |
| (mount_info::build_automount_mountpoint_path): Construct the name |
| of an automount POSIX path, given automount_root and the Win32 |
| path that needs to be automounted. |
| (mount_info::conv_to_posix_path): Automount missing drive letter |
| and call conv_to_posix_path again if path isn't covered by the |
| mount table but starts with "<letter>:". |
| (mount_info::read_automount_root_from_registry): New function. |
| Read in the value of automount_root from the current_user |
| registry mount area. If there isn't one, use default of |
| "/cygdrive" and write that to the registry by calling |
| write_automount_root_to_registry(). |
| (write_automount_root_to_registry): Write a value of |
| automount_root to the user registry area. |
| (mount_info::del_item): Add new flags arg to specify which |
| registry to delete the mount from. |
| (mount_info::del_reg_mount): Ditto. |
| (mount_item::getmntent): Use mount_info mnt_foo strings to store |
| strings passed back in the mntent struct. Otherwise if you |
| delete a mount item while using getmntent, the pointer may |
| change on the user. Add ",auto" to mnt_type if MOUNT_AUTO flag is |
| set. |
| (mount): Add support to set auto_root to path if flags is set |
| to the special MOUNT_CHANGE_AUTOROOT flag otherwise do the normal |
| thing. |
| (umount): Call cygwin_umount with flags value of 0. |
| (cygwin_umount): New exported function. Same as umount but |
| takes an additional flag argument that specifies which registry |
| area from which umount should remove the mount point. |
| * cygwin.din: Export the cygwin_umount call. |
| * shared.h (mount_info): Add public automount_root string. |
| Add public proto for write_automount_root_to_registry(). |
| Add private protos for build_automount_mountpoint_path() and |
| read_automount_root_from_registry(). Add flags arg to del_item |
| and del_reg_mount protos. Add strings used by getmntent et al |
| including mnt_type, mnt_opts, mnt_fsname, mnt_dir. (Can't just |
| pass back pointers to mount paths because they may change as |
| a result of a umount call. |
| |
| * include/sys/mount.h: Add new MOUNT_AUTO and |
| MOUNT_CHANGE_AUTOROOT flags. Add proto for cygwin_umount |
| function. |
| * include/cygwin/version.h: Bump CYGWIN_VERSION_API_MINOR to 9. |
| |
| * utils/mount.cc: Change missing_dir_warning flag to force |
| and init to FALSE instead of TRUE. Throughout swap names and |
| setting as appropriate. Include errno.h. |
| (usage): Remove info about --reset. Add info for new |
| --change-automount-root option. |
| (main): Don't check the --reset flag. Call change_automount_root |
| if invoked with --change-automount-root. Only call do_mount |
| if !mount_already_exists unless force flag is TRUE. Otherwise |
| fail. |
| (mount_already_exists): New helper function. Returns 1 |
| if the mount point of the same registry location is already |
| mounted. |
| (reset_mounts): Remove function. |
| (change_automount_root): New function that changes the |
| automount root in the registry via Cygwin by passing the new |
| path to mount() with the special MOUNT_CHANGE_AUTOROOT flag. |
| * utils/umount.cc: Add progname, set to argv[0]. Include string.h. |
| (usage): New function to print out usage info. |
| (main): Loop through argcs. Handle new flags to remove all mounts |
| of a specific type including --remove-all-mounts, |
| --remove-user-mounts, --remove-system-mounts, and |
| --remove-auto-mounts. New flag to specify removing a system |
| mount. Call cygwin_umount instead of umount, providing flags |
| as appropriate. |
| (remove_all_mounts): New function. Remove all mounts in |
| both tables. |
| (remove_all_automounts): Remove all mounts marked auto. |
| (remove_all_user_mounts): Remove all user mounts, including auto |
| mounts. |
| (remove_all_system_mounts): Remove all system mounts. |
| |
| * registry.cc (reg_key::get_string): Fix description comment. |
| * strace.cc: Minor reformatting. |
| |
| Wed Jan 20 17:49:20 1999 DJ Delorie <dj@cygnus.com> |
| |
| * fhandler.cc (raw_write): Make sure that a disk full error |
| is properly signalled. |
| (fhandler_base::open): Only tapes are read/write, cd-roms may be |
| read-only (from Corinna). |
| |
| Wed Jan 20 10:46:48 Corinna Vinschen <corinna.vinschen@cityweb.de> |
| |
| [applied by DJ Delorie <dj@cygnus.com>] |
| |
| * fhandler_raw.cc (fhandler_dev_raw::writebuf): Writes only |
| as much bytes as needed, instead of full buffer size. |
| |
| * fhandler_tape.cc (fhandler_dev_tape::close): Corrected error |
| handling in case of error while writing buffer content to dev. |
| |
| * fhandler_floppy.cc (fhandler_dev_floppy::close): Ditto. |
| |
| * fhandler_tape.cc (fhandler_dev_tape::writebuf): Delete function |
| |
| * fhandler_floppy.cc (fhandler_dev_floppy::writebuf): Ditto. |
| |
| Patch suggested by Ron Parker <rdparker@butlermfg.org> |
| * path.cc (mount_info::conv_to_win32_path): Change the |
| recognition of UNC devices, to support also paths of type |
| `\\.\UNC\'. |
| |
| * fhandler_tape.cc (fhandler_dev_tape::close): Fixed rewind |
| to block 1 instead of block 0 on rewind tapes in case of |
| uncaught signal (e.g. Ctrl-C). |
| |
| * path.cc (get_raw_device_number): New static function, |
| checks path for windows raw device. |
| |
| * path.cc (get_device_number): Change for recognition of |
| windows raw device paths by calling `get_raw_device_number()'. |
| |
| * path.h: Change prototype for `get_device_number()'. |
| |
| * Makefile.in: Added file 'fhandler_raw.o' to dependencies. |
| |
| * include/cygwin/rdevio.h: New file to support ioctl commands |
| on random access raw devices. At the time only get/set buffersize |
| for raw_read/raw_write. |
| |
| * fhandler.h: Change class hierarchy. 'fhandler_dev_floppy' |
| and 'fhandler_dev_tape' are now derived classes of |
| 'fhandler_dev_raw', which is derived from 'fhandler_base'. |
| |
| * fhandler_raw.cc: New file for implementation of class |
| 'fhandler_dev_raw' which is now base class for support of |
| mass storage raw devices. |
| |
| * fhandler_dev_tape.cc: Rewritten. |
| |
| * fhandler_dev_floppy.cc: Rewritten. Now supporting correct |
| lseek (seeking only to positions on 512 byte boundaries, |
| like supported from WinNT). |
| |
| * Makefile.in: Added file 'fhandler_floppy.o' to dependencies. |
| |
| * fhandler_floppy.cc: New file to support raw devices |
| including multi volume operations. |
| |
| * fhandler.cc: Delete 'fhandler_dev_floppy' implementation. |
| |
| * fhandler.h: Extend class fhandler_dev_floppy. |
| |
| * fhandler_tape.cc: Rewrite for correct support |
| of multi volume operations. Supports Setmarks now. |
| |
| * fhandler.h: Add private method `clear()' to class |
| fhandler_dev_tape. |
| |
| * Makefile.in: Add file 'fhandler_tape.o' to dependencies. |
| |
| * path.cc (mount_info::conv_to_win32_path): Change the |
| recognition of UNC devices, to support devices, which |
| are not partitions, too. |
| |
| * fhandler.h: Extend struct 'fhandler_dev_tape' for tape support. |
| Add method 'fstat' to fhandler_dev_floppy to get S_ISBLK(). |
| |
| * fhandler.cc (fhandler_base::open): In any case 'access_' has to |
| be GENERIC_READ | GENERIC_WRITE for tapes, to allow tape control. |
| No 'SetFilePointer' for tapes. |
| |
| * fhandler_tape.cc: New file to support rewind (/dev/stX) and |
| norewind (/dev/nstX) tapes. Supports ioctl() calls, described |
| in... |
| |
| * include/sys/mtio.h, include/cygwin/mtio.h: New header files |
| for tape support. |
| |
| Sat Jan 16 21:59:36 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * registry.h: Delete; move contents into shared.h except for |
| posix_path_p() routine which disappears. |
| * {Makefile.in, environ.cc, net.cc, path.cc, registry.cc, |
| shared.cc}: No longer include registry.h. |
| * dcrt0.cc (dll_crt0_1): don't check posix_path_p() |
| |
| * include/mntent.h (struct mntent): Drop const from strings. |
| * include/sys/mount.h: Change MOUNT_GLOBAL flag that nobody has |
| used yet to MOUNT_SYSTEM. Add MOUNT_EXEC flag. |
| * include/cygwin/version.h: Bump CYGWIN_VERSION_MOUNT_REGISTRY to |
| 2. Change CYGWIN_INFO_CYGWIN_REGISTRY_NAME to "Cygwin". |
| Change CYGWIN_INFO_CYGWIN_MOUNT_REGISTRY_NAME to "mounts v2". |
| |
| * registry.cc (reg_key::reg_key): Default key doesn't end in |
| "mounts" any more. |
| (reg_key::kill): Return error code from RegDeleteKeyA. |
| * path.cc: Reformat, reorder functionality, add comments |
| throughout. |
| (mount_info::init): Automount slash if it's not already mounted. |
| (mount_info::mount_slash): New private helper function. |
| (mount_info::binary_win32_path_p): Check flags to determine |
| if mount is binary or not, not binary_p. |
| (mount_info::read_mounts): Remove unneeded access argument. Use |
| RegEnumKeyEx to enumerate mount points in current registry |
| location where each key name returned is a posix_path mount |
| location. Use a subkey reg_key to read the posix_path's |
| corresponding native_path and flags. |
| (mount_info::from_registry): Access HKEY_LOCAL_MACHINE registry |
| with full access privs (which will fail if not administrator). |
| Fix registry path used to initialize HKEY_LOCAL_MACHINE reg_key. |
| (mount_info::to_registry): Delete function. Replaced by |
| add_reg_mount. |
| (mount_info::add_reg_mount): New function which adds a specified |
| mount point to the registry. |
| (mount_info::del_reg_mount): New function which deletes the |
| posix_path argument from the highest priority registry table it |
| can (first user, than system-wide). |
| (sort_by_name): If the two posix_paths are the same, then |
| differentiate between them looking at MOUNT_SYSTEM in their flags. |
| (mount_info::add_item): Also make sure that neither path is NULL. |
| Never claim mount point is busy: replace an existing posix_path |
| as long as it came from the same registry location. |
| (mount_info::del_item): Also make sure that neither path is NULL. |
| (mount_item::getmntent): Use mnt_type field to store user vs. |
| system registry location string. Cast all strings to char *. |
| Handle flags instead of binary_p. Change names of strings |
| returned in mnt_opts field. |
| (mount_item::init): Set flags, instead of dealing with binary_p |
| and silent_p. |
| (mount): Call add_reg_mount instead of to_registry. |
| (umount): Call del_reg_mount instead of to_registry. |
| (path_conv::path_conv): Remove reference to silent_p. |
| * path.h (path_conv): Remove silent_p. |
| |
| * utils/mount.cc: Add -s to usage (was a commented-out -g). |
| Or in MOUNT_SYSTEM if -s flag given. Add similar commented-out |
| support for future MOUNT_EXEC flag that will be added with -e. |
| (reset_mounts): Automount slash with zero for flags, not |
| MOUNT_SILENT which we no longer use for anything. |
| * utils/umount.cc: Also print out usage if the first argument |
| starts with a dash. |
| |
| Fri Jan 15 11:27:51 1999 DJ Delorie <dj@cygnus.com> |
| |
| * strace.cc: add macros to protect against buffer overruns |
| (strace_printf): increase buffer from 6000 to 1000 to build devo |
| * include/sys/strace.h: allow -DNOSTRACE again |
| |
| Fri Jan 15 11:27:51 1999 DJ Delorie <dj@cygnus.com> |
| |
| * dcrt0.cc (alloc_stack): add 16384 to work around Win95 page |
| fault during builds |
| * fork.cc (fork): try various things to avoid page faults during |
| win95 builds. |
| |
| Fri Jan 15 11:18:23 1999 DJ Delorie <dj@cygnus.com> |
| |
| * fhandler.cc (raw_write): check for disk full. |
| |
| Fri Jan 15 11:18:23 1999 DJ Delorie <dj@cygnus.com> |
| |
| * init.cc (dll_entry): if the DLL is being LoadLibrary'd, |
| initialize some things. |
| * heap.cc (_sbrk): detect uninitialized heap and initialize |
| * dcrt0.cc (user_data): initialize to something useful. |
| (do_global_ctors): make global for init.cc |
| |
| Thu Jan 14 02:16:44 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * dll_init.cc: Add missing FIXME in comment. |
| * fhandler_console: Ditto. |
| |
| Thu Jan 14 00:53:25 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * spawn.cc (iscmd): New function. |
| (spawn_guts): Treat command /c and cmd /c as special |
| cases. Don't quote arguments to these programs if |
| there are exactly three arguments. |
| * dcrt0.cc (dll_crt0_1): Initialize exceptions prior |
| to fork to allow forked processes to "dump core". |
| * errno.cc (seterrno): No need for this to be extern "C". |
| * winsup.h: Ditto. |
| |
| Wed Jan 13 19:06:08 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * registry.cc: Add comments corresponding to various reg_key |
| functions, minor reformatting. |
| (reg_key::reg_key): Delete already-commented-out function |
| |
| Wed Jan 13 15:41:34 1999 DJ Delorie <dj@cygnus.com> |
| |
| * errno.cc (_sys_errlist): Add "extern" to work around new gcc |
| restrictions. |
| |
| Mon Jan 11 14:56:27 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * spawn.cc (spawn_guts): Fix problem with #! and relative |
| directories. |
| |
| Mon Jan 11 09:00:29 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler_console.cc (fhandler_console::read1): Handle EOF as a |
| specific case. |
| |
| Sun Jan 10 23:44:22 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler.h: Define __fmode for convenience. Use throughout. |
| * environ.cc (parse_options): Use O_TEXT when nobinmode. |
| * fhandler.cc (fhandler_base::open): Don't honor __fmode |
| when disk file. Default to O_TEXT if no mode is specified. |
| (fhandler_base::fhandler_base): Don't honor __fmode when disk |
| file. Otherwise default to O_BINARY. |
| * pipe.cc (make_pipe): Default to O_BINARY if no mode specified. |
| |
| Sat Jan 9 20:58:34 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * Makefile.in: Correct previously messed up patch. |
| * thread.h: Add back a needed include. |
| * sigproc.cc (sigproc_init): Work around problem with older |
| compilers. |
| * wait.cc (wait4): Ditto. |
| * winsup.h (per_thread_waitq): Ditto. |
| * include/Windows32/CommonFunctions.h: Temporary change to |
| work around problems with older compilers. |
| |
| Fri Jan 8 12:53:53 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * environ.cc (parse_options): Add "forkchunk" debug setting. |
| Takes a value which is used to limit the size of individual memory |
| copies in a fork. |
| * fork.cc (fork_copy): Rewrite slightly to allow copying of |
| individual chunks of memory rather than all in one gulp. |
| Controlled by chunksize global variable. |
| |
| Thu Jan 7 22:02:18 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| patch from Corinna Vinschen <corinna.vinschen@cityweb.de>: |
| * utils/passwd.c: New file. |
| * utils/Makefile.in: Add dependencies for passwd. |
| * syscalls.cc (chmod): Change permission checking in case |
| of readonly test. |
| (stat_dev): Change default permission bits to allow writing |
| for all users. |
| (chown): Retry LookupAccountName with username set to domain\\username, |
| if returned SID-Type is not SidTypeUser. |
| |
| |
| Thu Jan 7 17:50:49 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler.cc (fhandler_base::set_name): Fix bug which |
| disallowed '%' in a file name. |
| |
| Thu Jan 7 00:21:41 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| * path.cc: Add comments. |
| * path.h: Correct file description comment. |
| |
| Tue Jan 5 16:07:15 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler_serial.cc (fhandler_serial::raw_read): Be more defensive |
| about not calling problematic functions when the overlapped I/O is |
| armed. Reset the overlapped event prior to calling read or suffer |
| an "operation aborted". |
| * select.cc (peek_serial): Ditto. |
| |
| Mon Jan 4 15:16:22 1999 Geoffrey Noer <noer@cygnus.com> |
| |
| Eliminate warnings: |
| * utils/mount.cc (show_mounts): make format a const char *. |
| * utils/ps.cc (main): make literal strings const char *s. |
| * utils/cygpath.cc (long_options): cast literal strings to char *s. |
| (main): |
| |
| Sun Jan 3 20:46:12 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * select.cc (peek_console): Remove #if 0 around NT code workaround. |
| |
| Sat Jan 2 00:04:01 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * Makefile.in: Remove include directories made obsolete by |
| recent changes to mmap.cc. Also remove libraries that appear |
| to be unnecessary for linking. |
| * mkvers.sh: Put contents of .snapshot-date, if available, into |
| the DLL. |
| |
| Fri Jan 1 22:44:49 1999 Christopher Faylor <cgf@cygnus.com> |
| |
| * fhandler.h (fhandler_serial): Add flag to track state of |
| overlapped serial I/O. Add overlapped_setup method for common |
| setup of overlapped structure. |
| * fhandler_serial.cc (fhandler_serial::overlapped_setup): New |
| method. Sets up the overlapped structure for overlapped serial I/O. |
| (fhandler_serial::raw_read): Use overlapped_armed flag to avoid |
| calling functions which perform overlapped operations if overlapped |
| I/O is in already progress. This should only be the case if a |
| previous operation was interrupted or select has detected serial I/O. |
| (fhandler_serial::open): Use overlapped_setup. |
| (fhandler_serial::fixup_after_fork): Ditto. |
| (fhandler_serial::de_linearize): Ditto. |
| (fhandler_serial::dup): Ditto. |
| (fhandler_serial::tcsetattr): Fix typo which caused IGNPAR |
| to be ignored. |
| * hinfo.cc (hinfo::select_read): Set saw_error to zero explicitly |
| to avoid spurious reporting of select errors. |
| (hinfo::select_write): Ditto. |
| (hinfo::select_except): Ditto. |
| * select.cc (peek_serial): Use overlapped_armed to avoid calling |
| functions which perform overlapped operations if overlapped I/O |
| is already in progress. |