| 2003-12-31 Christopher Faylor <cgf@redhat.com> |
| |
| * cygwin.din: Make crt0 functions NOSIGFE. |
| * include/cygwin/version.h: Gratuitous comment change. |
| * lib/_cygwin_crt0_common.cc: Remove unneeded declaration. |
| |
| 2003-12-29 Christopher Faylor <cgf@redhat.com> |
| |
| * cygtls.h (_threadinfo::stack): Increase stack size to accommodate |
| nested signal handlers. Reorganize to cause potential SEGV on stack |
| overflow. |
| * sigproc.cc (no_signals_available): Check sendsig value rather than |
| relying on obsolete sig_loop_wait. |
| (sigproc_terminate): Ditto. |
| (proc_can_be_signalled): Check sendsig value even for myself. |
| * tlsoffsets.h: Regenerate. |
| |
| 2003-12-29 Christopher Faylor <cgf@redhat.com> |
| |
| Move open_fhs from fhandler.h to cygheap.h for easier tracking. |
| Accommodate this change throughout. |
| * dtable.cc (dtable::add_archetype): Use correct count when iterating |
| through *active* archetypes. |
| * dtable.cc (dtable::fixup_after_exec): Close handle if close_on_exec |
| and archetype exists since archetype currently does not set windows |
| close-on-exec flag (FIXME). |
| * fhandler_tty.cc (fhandler_tty_slave::open): Change debugging output |
| slightly. |
| (fhandler_tty_slave::close): Ditto. |
| (fhandler_tty_slave::fixup_after_fork): Just report on inherited use |
| counts since since archetype currently does not set windows |
| close-on-exec flag (FIXME). |
| * pinfo.cc (_pinfo::set_ctty): Change debugging output slightly. |
| * cygheap.cc (cygheap_init): Remove open_fhs accommodation and use |
| count reporting. |
| * perthread.h (vfork_save::fhctty): New element. |
| * perthread.h (vfork_save::open_fhs): New element. |
| * fork.cc (vfork): Muck around with ctty and open_fhs stuff, both of |
| which are now saved in the vfork_save structure. |
| |
| 2003-12-27 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler.h (fhandler_tty_slave::archetype): Make public. |
| (report_tty_counts): New macro. Use throughout for reporting tty use |
| counts. |
| * dtable.cc (dtable::vfork_child_dup): Add debugging output for |
| usecount increment. Increment open_fhs if appropriate. |
| (dtable::vfork_parent_restore): "Close" artificially bumped ctty. |
| (dtable::vfork_child_fixup): Close ctty since it was bumped prior to |
| vfork. Save open_fhs around close since the closing of these handles |
| has no effect on the console. |
| * fhandler_tty.cc (fhandler_tty_slave::open): Reorganize calls to allow |
| for easier tracking of usecount modification. |
| (fhandler_tty_slave::open): Ditto. |
| |
| 2003-12-26 Christopher Faylor <cgf@redhat.com> |
| |
| * syscalls.cc (close_all_files): Simplify logic around closing ctty. |
| |
| 2003-12-26 Christopher Faylor <cgf@redhat.com> |
| |
| * pinfo.cc (_pinfo::set_ctty): *Always* call close on opened ctty since |
| it counts as an opened handle. |
| |
| 2003-12-26 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler.h (fhandler_tty_master::fixup_after_fork): Remove |
| declaration. |
| (fhandler_tty_master::fixup_after_exec): Ditto. |
| * fhandler_tty.cc (fhandler_tty_master::init): Fix so that children do |
| not inherit master tty handles. |
| (fhandler_tty_master::fixup_after_fork): Remove, since it was never |
| used. |
| (fhandler_tty_master::fixup_after_exec): Ditto. |
| * pinfo.cc (_pinfo::set_ctty): Increment open_fhs when ctty is set. |
| * cygheap.cc (cygheap_init): Ditto. |
| * syscalls.cc (setsid): *Always* call close on opened ctty since the |
| archetype is associated with the ctty and it counts as an opened |
| handle. |
| * tty.cc (tty::common_init): Don't protect input/output mutex since it |
| confuses subsequent fork/execs when CYGWIN=tty. |
| |
| * fhandler_process.cc (fhandler_process::fill_filebuf): Properly set |
| "file size" for "<defunct>" reporting when filebuf is zero length. |
| |
| 2003-12-26 Christopher Faylor <cgf@redhat.com> |
| |
| * exceptions.cc (try_to_debug): Fix off-by-one problem when resetting |
| environment variable after error_start detected. |
| |
| * fhandler_tty_slave.cc (fhandler_tty_slave::close): Clarify debug |
| message. |
| * syscalls.cc (setsid): Don't increment usecount here, since it will be |
| automatically decremented on close. |
| |
| 2003-12-26 Christopher Faylor <cgf@redhat.com> |
| |
| * exceptions.cc (setup_handler): Protect against a race. |
| |
| 2003-12-26 Christopher Faylor <cgf@redhat.com> |
| |
| * path.cc (mount_item::build_win32): Backslashify paths in non-managed |
| case. |
| |
| 2003-12-25 Christopher Faylor <cgf@redhat.com> |
| |
| * dcrt0.cc (reent_data): Reluctantly resurrect. |
| (__cygwin_user_data::impure_ptr): Ditto. |
| (_dll_crt0): Reluctantly initialize _impure_ptr here. |
| (initialize_main_tls): Eliminate local_clib initialization since it now |
| happens in init_thread. |
| * init.cc (dll_entry): Reluctantly remove code which set _impure_ptr to |
| the main thread's local_clib. |
| * perthread.h (reent_data): Remove obsolete declaration. |
| |
| * sigproc.cc (proc_subproc): Add more debugging output. |
| (get_proc_lock): Ditto. |
| |
| *dcrt0.cc (dll_crt0_1): Allocate argv[0] via malloc since main thread |
| could exit. |
| |
| 2003-12-23 Christopher Faylor <cgf@redhat.com> |
| |
| * fork.cc (fork_child): After a pthread/fork, ensure that impure |
| pointer stuff which resides in parent is propagated to child thread. |
| |
| 2003-12-23 Christopher Faylor <cgf@redhat.com> |
| |
| * exceptions.cc (set_signal_mask): Redefine to not pass by address. |
| Report calculated mask in debugging output. |
| * sigproc.h (set_signal_mask): Reflect above change in declaration. |
| |
| 2003-12-22 Christopher Faylor <cgf@redhat.com> |
| |
| * path.cc (mount_item::build_win32): Take path apart before feeding it |
| to fnmunge. |
| |
| 2003-12-21 Christopher Faylor <cgf@redhat.com> |
| |
| Throughout, change use of _reent_winsup()-> to _my_tls.locals. |
| instead. |
| Throughout, remove obsolete MT_SAFE/_CYG_THREAD_FAILSAFE considerations. |
| Througout, add cygtls.h include. |
| * Makefile.in (DLL_OFILES): Add cygtls.o. Add some more objects to the |
| -fomit-frame-pointer list. |
| * acconfig.h: Remove obsolete settings. |
| * config.h.in: Ditto. |
| * bsdlib.cc: Add cygtls.h include. |
| * configure.in: Remove --enable-extra-threadsafe-checking. |
| * configure: Regenerate. |
| * cygtls.h (_local_storage): New struct renamed from _winsup_t (sic). |
| (_threadinfo:local_clib): Add new field. |
| (_threadinfo::locals): Ditto. |
| (_threadinfo::init_thread): Accept second _reent * argument. |
| (_threadinfo::call): Define as regparm. |
| (CYGTLS_PADSIZE): Remove unnecessary slop. |
| (_getreent): Define as a macro. |
| * thread.h: Remove _CYG_THREAD_FAILSAFE and MT_SAFE stuff. |
| (_winsup_t): Move to cygtls.h. |
| (ResourceLocks::ResourceLocks): Eliminate empty constructor. |
| (MTinterface::reents): Eliminate. |
| (MTinterface::thread_self_key): Eliminate. |
| (MTinterface::MTinterface): Eliminate. |
| * dcrt0.cc: Include stdio.h for _impure_ptr initialization. |
| (do_global_ctors): Remove run_ctors_p (sic) considerations. Don't call |
| atexit here. |
| (__main): Initialize destructors for user here. |
| (dll_crt0_1): Accept a dummy argument. Don't call init_thread here. |
| Don't set _impure_ptr here. Call do_global_ctors after more things |
| have been initialized. |
| (_dll_crt0): Define zeros buffer as max of needed size of |
| CYGTLS_PADSIZE so that it can be used for two purposes while minimizing |
| stack usage. Initialize _impure_ptr specifically, for speed. Call |
| dll_crt0_1 with buffer argument. |
| (cygwin_dll_init): Call dll_crt0_1 with dummy argument. |
| * dtable.cc (dtable::find_unused_handle): Remove call to |
| AssertResourceOwner. |
| * exceptions.cc: Move _threadinfo stuff to new file. |
| * cygtls.cc: New file. |
| * gentls_offsets: Accommodate increasing complexity of cygtls.h. |
| * hires.h (hires_base::~hires_base): Remove. |
| * init.cc (dll_entry): Remove setting of reents. |
| * thread.cc: Remove syslog.h include. |
| (__getreent): Simplify to use _my_tls. |
| (_reent_winsup): Delete. |
| (AssertResourceOwner): Delete. |
| (MTinterface::Init): Remove setting of _clib and _winsup, with all that |
| entails. |
| (MTinterface::fixup_after_fork): Ditto. |
| (pthread::thread_init_wrapper): Ditto. Also remove call to |
| set_tls_self_pointer. |
| (pthread::set_tls_self_pointer): Eliminate. |
| (pthread::get_tls_self_pointer): Just return _my_tls.tid; |
| (__reent_t::init_clib): Eliminate. |
| * tlsoffsets.h: Regenerate. |
| |
| 2003-12-17 Christopher Faylor <cgf@redhat.com> |
| |
| * sigproc.cc (proc_subproc): Simplify code to just remove all zombies |
| if SIGCHLD == SIG_IGN. |
| |
| 2003-12-17 Christopher Faylor <cgf@redhat.com> |
| |
| * pinfo.h (pinfo::operator ==): Add a way to check for _pinfo types. |
| * sigproc.cc (proc_subproc): Ensure that zombie is removed when SIGCHLD |
| == SIG_IGN but still allow wait()ing threads to wake up. |
| |
| 2003-12-16 Christopher Faylor <cgf@redhat.com> |
| |
| * exceptions.cc (set_signal_mask): Report on input argument rather than |
| getsigmask. |
| |
| * fhandler.h (fhandler_base): Make friends with close_all_files. |
| * pinfo.cc (_pinfo::set_ctty): Add more debugging. |
| * sigproc.cc (proc_can_be_signalled): Detect state when signal handler |
| thread is gone in target process as an EPERM situation. Set errno to |
| ESRCH if process doesn't exist. |
| (sigproc_terminate): Set sendsig to illegal value when closed. |
| (sig_send): Rely on proc_can_be_signalled setting the proper errno. |
| * syscalls.cc (close_all_files): Detect when all ttys are closed prior |
| to calling close_all_files. The ctty needs to be closed explicitly in |
| this case. |
| |
| 2003-12-16 Corinna Vinschen <corinna@vinschen.de> |
| |
| * include/cygwin/ipc.h: Include sys/types.h. |
| |
| 2003-12-15 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * thread.cc (pthread::init_main_thread): Make sure that the main thread |
| has valid handles. |
| (pthread::create_cancel_event): Fix error message. |
| |
| 2003-12-14 Christopher Faylor <cgf@redhat.com> |
| |
| * winsup.h (access_worker): Declare with added fhandler_base parameter. |
| * syscalls.cc (access_worker): Accommodate extra fhandler_base |
| argument. Use it instead of stat_worker to determine stat information, |
| when appropriate. |
| * fhandler.cc (fhandler_base::device_access_denied): Pass fhandler |
| pointer to access_worker so that it can use the proper method for |
| determining stat information. |
| * fhandler_disk_file.cc (fhandler_disk_file::opendir): Ditto. |
| * path.cc (path_conv::check): Add read-only attribute to /cygdrive |
| default settings. |
| |
| 2003-12-14 Christopher Faylor <cgf@redhat.com> |
| |
| * exceptions.cc (ctrl_c_handler): Remove this thread from the signal |
| handler chain. |
| |
| 2003-12-14 Christopher Faylor <cgf@redhat.com> |
| |
| * cygthread.cc (cygthread::stub): Revert previous change and again |
| subsume cygthread::stub2. Just return from function now since |
| ExitThread is guaranteed by automatic _threadinfo wrapper. Define as |
| per ThreadProc convention. |
| (cygthread::stub2): Remove. |
| (cygthread::simplestub): Perform similar operations to cygthread::stub. |
| (cygthread::simplestub2): Remove. |
| * cygthread.h (cygthread::stub): Declare as per ThreadProc convention. |
| (cygthread::stub2): Remove declaration. |
| (cygthread::simplestub): Declare as per ThreadProc convention. |
| (cygthread::simplestub2): Remove declaration. |
| * cygtls.h (_threadinfo::call): Define first argument as per ThreadProc |
| convention. |
| (_threadinfo::call2): Ditto. |
| (_tlsbase): Define as char * pointer. |
| (_tlstop): New definition. |
| (_main_tls): Define here. |
| * dcrt0.cc (alloc_stack): Revert previous change which called |
| init_thread since information would be overwritten by fork later |
| anyway. |
| (dll_crt0_1): Use _tlsbase and _tlstop for setting stack bottom, top. |
| * exceptions.cc: Move _main_tls declaration to cygtls.h. |
| (_threadinfo::call): Define first argument as per ThreadProc |
| convention. |
| (_threadinfo::call2): Call ExitThread with thread function return |
| value. |
| (_threadinfo::init_thread): Don't initialize cygtls to zero if input |
| arg is NULL. |
| * fork.cc (fork_child): Reset _main_tls here. Reinitialize parts of |
| _my_tls after copying data from parent. |
| * init.cc (threadfunc_fe): New function. Front-end for all threads |
| created in cygwin processes. |
| (munge_threadfunc): New function. |
| (dll_entry): Call munge_threadfunc to force the call of a thread |
| wrapper. |
| * thread.cc (pthread::thread_init_wrapper): Perform similar operations |
| to cygthread::stub. |
| (pthread::thread_init_wrapper2): Remove. |
| * thread.h (pthread::thread_init_wrapper): Declare as per ThreadProc |
| convention. |
| (pthread::thread_init_wrapper2): Remove declaration. |
| * window.cc (Winmain): Just return from function now since ExitThread |
| is guaranteed by automatic _threadinfo wrapper. |
| |
| 2003-12-12 Christopher Faylor <cgf@redhat.com> |
| |
| * dtable.cc (dtable::delete_archetype): Add debugging. |
| (dtable::release): Move archetype deletion here. |
| (dtable::vfork_child_dup): Increment ctty usecount to catch later |
| close_all_files case in parent/child. |
| (dtable::vfork_child_fixup): Avoid using cygheap->foo where this should |
| really be using local references. Call close on archetyped handles |
| since the handles haven't had the noninherit flag set. |
| * fhandler_tty.cc (fhandler_tty_slave::close): Remove archetype |
| deletion code. Add defensive error message when DEBUGGING. |
| (fhandler_tty_common::set_close_on_exec): Use more robust method for |
| checking whether to set handles into noninherit if there is an |
| archetype associated with the fhandler. |
| |
| 2003-12-12 Christopher Faylor <cgf@redhat.com> |
| |
| * dcrt0.cc (alloc_stack): Move _main_tls if stack is relocated. |
| |
| 2003-12-11 Christopher Faylor <cgf@redhat.com> |
| |
| * miscfuncs.cc (low_priority_sleep): Correct thinko which caused |
| SetPriority to be called unnecessarily. |
| * thread.cc (pthread::init_main_thread): Call new create_cancel_event |
| function. |
| (pthread::precreate): Ditto. |
| (pthread::postcreate): Remove cancel_event creation. |
| (pthread::create_cancel_event): Define new function. |
| * thread.h (pthread::create_cancel_event): Declare new function. |
| |
| 2003-12-11 Brian Ford <ford@vss.fsi.com> |
| |
| * fhandler_serial.cc (fhandler_serial::tcflush): Simplify. Remove |
| read polling loop to avoid a hang with streaming devices. |
| |
| 2003-12-11 Christopher Faylor <cgf@redhat.com> |
| |
| * pinfo.cc (_pinfo::set_ctty): Correct stupid typo. |
| |
| 2003-12-11 Christopher Faylor <cgf@redhat.com> |
| |
| * cygheap.h (cygheap_types): Add HEAP_ARCHETYPES. |
| (init_cheap::ctty): Change to pointer. |
| * dtable.h (dtable::find_archetype): Declare new function. |
| (dtable::add_archetype): Declare new function. |
| (dtable::delete_archetype): Declare new function. |
| (dtable::narchetypes): Declare. |
| (dtable::farchetypes): Declare. |
| (dtable::initial_archetype_size): Declare. |
| (dtable::dtable): Initialize new fields. |
| (dtable::initial_archetype_size): Declare. |
| * dtable.cc (dtable::find_archetype): Define new function. |
| (dtable::add_archetype): Define new function. |
| (dtable::delete_archetype): Define new function. |
| (dtable::initial_archetype_size): Define. |
| * fhandler.h (fhandler_base::archetype): Declare. |
| (fhandler_base::usecount): Declare. |
| * fhandler.cc (fhandler_base::fhandler_base): Initialize new fields. |
| * fhandler_console.cc (fhandler_console::get_tty_stuff): Pass NULL to |
| third argument of set_ctty. |
| * fhandler_tty.cc (fhandler_tty_slave::open): Accommodate new archetype |
| method to create only one instance of a tty. |
| (fhandler_tty_slave::close): Don't close handles unless archetype |
| usecount is zero. When that happens, close archetype too. |
| (fhandler_tty_slave::dup): Just copy archetype. Set use count |
| appropriately. Set ctty, if appropriate. |
| (fhandler_tty_common::dup): Remove slave considerations. |
| (fhandler_tty_common::set_close_on_exec): Remove cygheap->ctty |
| considerations. |
| * pinfo.cc (_pinfo::set_ctty): Accommodate new archetype methods. |
| * pinfo.h (_pinfo::set_ctty): Make third argument explicit. |
| * syscalls.cc (close_all_files): Decrement controlling tty use count |
| before closing all handles to allow controlling tty to be closed. |
| Remove previous controlling tty considerations. |
| |
| 2003-12-09 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_tty.cc (fhandler_tty_common::dup): Just copy cygheap->ctty |
| to child if duping the current ctty. |
| (fhandler_tty_common::close): Move debugging statement earlier in function. |
| (fhandler_tty_slave::close): Return success when closing ctty. |
| * syscalls.cc (close_all_files): Avoid calling fhandler_tty_slave close |
| method so that open_fhs will not be decremented when closing cygheap |
| ctty. |
| (setsid): Ditto. |
| * dcrt0.cc (do_exit): Reorganize to avoid leaving a critical section |
| active after vfork. |
| * fhandler.h (fhandler_tty_slave::get_unit): Remove regparm parameter |
| since it can't work in a virtualized function. |
| |
| 2003-12-08 Christopher Faylor <cgf@redhat.com> |
| |
| * pinfo.cc (_pinfo::set_ctty): Don't copy over existing ctty if it is |
| active. |
| |
| 2003-12-08 Christopher Faylor <cgf@redhat.com> |
| |
| * thread.cc (pthread::precreate): Delete duplicate setting of |
| cancel_event. |
| |
| 2003-12-08 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler.h (fhandler_tty_slave::ttyname): Use name from pc since it |
| is guaranteed to be accurate. |
| * fhandler_tty.cc (fhandler_tty_slave::open): Increment open_fhs |
| appropriate when copying ctty. |
| (fhandler_tty_slave::close): Remove special case handling for |
| exit_state. Use ctty < 0 check instead. |
| (fhandler_tty_common::close): Set io_handle to NULL after closing. |
| * syscalls.cc (close_all_files): Specifically close cygheap->ctty, if |
| appropriate. |
| |
| 2003-12-07 Christopher Faylor <cgf@redhat.com> |
| |
| * spawn.cc (spawn_guts): Change type back to 'int' after erroneous |
| change below. |
| * wait.cc (wait4): Move sawsig initialization inside loop. |
| |
| 2003-12-07 Christopher Faylor <cgf@redhat.com> |
| |
| Change use of BOOL, TRUE, FALSE to bool, true, false, as appropriate, |
| throughout. |
| |
| 2003-12-07 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * tty.cc (tty::common_init): Remove call to SetKernelObjectSecurity and |
| edit some comments. |
| |
| 2003-12-07 Christopher Faylor <cgf@redhat.com> |
| |
| * cygheap.h (init_cygheap::ctty): Add new element. |
| * devices.in (device::parse): Remove special handling for /dev/tty. |
| * devices.cc: Regenerate. |
| * dtable.cc (build_fh_pc): Don't reset /dev/tty device. Let the device |
| opener do that. |
| * fhandler_termios.cc (tty_min::set_ctty): Redefine to _pinfo class. |
| * fhandler_tty.cc (fhandler_tty_common::set_close_on_exec): Avoid |
| setting noninherit flag for ctty. |
| * tty.h: Move BOOLs to bools. |
| (tty_min::set_ctty): Redeclare to _pinfo class. |
| * pinfo.cc (_pinfo::set_ctty): Define new function based on |
| tty_min::set_ctty. Change first argument from tty number to tty_min |
| class. |
| * pinfo.h (_pinfo::set_ctty): Declare. |
| * fhandler_console.cc (fhandler_console::get_tty_stuff): Reflect move |
| of set_ctty to _pinfo class. |
| * fhandler_tty.cc (fhandler_tty_slave::open): Treat FH_TTY specially. |
| Use saved cygheap value if it exists. Otherwise convert to real device |
| and save on first time open. |
| (fhandler_tty_common::dup): Potentially set controlling tty if duping a |
| slave tty. |
| * syscalls.cc (setsid): Close controlling tty in cygheap. |
| * tty.cc: Change some BOOLs to bools. |
| |
| 2003-12-07 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * syscalls.cc (locked_append): New. |
| (updwtmp): Remove mutex code and call locked_append. |
| (pututline): Ditto. |
| |
| 2003-12-06 Christopher Faylor <cgf@redhat.com> |
| |
| * exceptions.cc (_threadinfo::remove): Avoid a linked list walk. |
| |
| 2003-12-06 Christopher Faylor <cgf@redhat.com> |
| |
| * cygtls.h (_threadinfo::find_tls): New function. |
| * exceptions.cc (_threadinfo::find_tls): Rename from find_tls. Use |
| critical section to protect access to linked list. |
| |
| 2003-12-06 Christopher Faylor <cgf@redhat.com> |
| |
| * exceptions.cc (_threadinfo::remove): Avoid returning without |
| unlocking critical section in the (hopefully impossible) case of an |
| unrecognized thread. |
| |
| 2003-12-06 Christopher Faylor <cgf@redhat.com> |
| |
| * cygtls.h: Add more "don't parse this" guards. |
| (_threadinfo::init_thread): Rename from 'init'. |
| (_threadinfo::init): Declare new function. |
| (_threadinfo::protect_linked_list): Declare new critical section. |
| * dcrt0.cc (dll_crt0_1): Call init_thread to initialize thread stuff. |
| (_dll_crt0): Call _threadinfo::init prior to invoking dll_crt0_1. |
| * exceptions.cc (_threadinfo::init_thread): Rename from 'init'. |
| (_threadinfo::init): Define new function. Protect linked list |
| manipulation with new critical section. |
| (_threadinfo::call): Reflect function name change. |
| (_threadinfo::remove): Protect linked list manipulation with new |
| critical section |
| * gentls_offsets: Rework to allow multi-line "don't parse this" |
| protection. |
| * init.cc (dll_entry): Don't remove threads info stuff here since the |
| remove function uses a critical section which can't be used during |
| thread creation or destruction. |
| * thread.cc (pthread::exit): Call _threadinfo remove function here. |
| |
| 2003-12-05 Christopher Faylor <cgf@redhat.com> |
| |
| * cygthread.cc (cygthread::stub2): Remove myself from the list of |
| threads monitored by signals since this thread will never call raise or |
| sigwait. |
| (cygthread::simplestub2): Ditto. Set ev here. |
| (cygthread::cygthread): Don't set ev here for freerange thread. |
| |
| 2003-12-04 Christopher Faylor <cgf@redhat.com> |
| |
| * path.cc (slash_unc_prefix_p): Allow '.' as a valid character after |
| '\\' in a UNC path. |
| |
| 2003-12-04 Christopher Faylor <cgf@redhat.com> |
| |
| * exceptions.cc (setup_handler): Remove ill-advised debugging output. |
| |
| 2003-12-04 Corinna Vinschen <corinna@vinschen.de> |
| |
| * include/cygwin/types.h (struct __fcntl64): Fix datatype of l_start. |
| |
| 2003-12-03 Corinna Vinschen <corinna@vinschen.de> |
| |
| Substitute 0x7fffffff and 0xffffffff by INT32_MAX and UINT32_MAX |
| throughout, except in assembler code. |
| |
| 2003-12-03 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_disk_file.cc (fhandler_disk_file::lock): Use UINT32_MAX |
| instead of 0xffffffff. Accommodate Win 9x bug in evaluating length |
| of area to lock when given length is 0. |
| |
| 2003-12-03 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * fhandler_disk_file.cc (fhandler_disk_file::lock): Interchange |
| values of off_low and off_high. |
| |
| 2003-12-03 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fcntl.cc (fcntl_worker): Remove static storage class. |
| * flock.cc (flock): Use struct __flock64. Call fcntl_worker. |
| Use Cygwin errno functions instead of accessing errno directly. |
| * winsup.h: Declare fcntl_worker. |
| |
| 2003-12-03 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fcntl.cc: Whitespace cleanup. |
| |
| 2003-12-03 Christopher Faylor <cgf@redhat.com> |
| |
| * cygthread.cc (cygthread::stub): Properly establish _threadinfo |
| environment. |
| (cygthread::stub2): New function. |
| (cygthread::simplestub): Ditto. |
| (cygthread::simplestub2): New function. |
| * cygthread.h (cygthread::stub2): Declare new function. |
| (cygthread::simplestub2): Ditto. |
| * cygtls.h (_threadinfo::call): Declare new function. |
| (_threadinfo::call2): Ditto. |
| * dcrt0.cc (dll_crt0_1): Accommodate new _threadinfo::init which |
| doesn't return pointer to tls. |
| (_dll_crt0): Remove obsolete DECLARE_TLS_STORAGE. |
| (dll_crt0): Ditto. |
| * exceptions.cc (_threadinfo::call): New function. |
| (_threadinfo::call2): Ditto. |
| (_threadinfo::init): Don't return pointer. |
| * thread.cc (pthread::thread_init_wrapper): Properly establish |
| _threadinfo environment. |
| (pthread::thread_init_wrapper2): New function. |
| * thread.h (pthread::thread_init_wrapper): Remove noreturn attribute |
| (pthread::thread_init_wrapper2): Declare new function. |
| * winbase.h: Remove obsolete code. |
| |
| 2003-12-02 Christopher Faylor <cgf@redhat.com> |
| |
| * Makefile.in: Change the way that -f options are appended to CFLAGS, |
| slightly. |
| |
| 2003-12-02 Christopher Faylor <cgf@redhat.com> |
| |
| * fcntl.cc (_fcntl): Silence a compiler warning. |
| |
| 2003-12-02 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * pinfo.cc (pinfo::init): Use shared_name to construct the mapname. |
| |
| 2003-12-01 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * thread.cc (pthread_rwlock::add_reader): Remove mx parameter for |
| List_insert call. |
| (pthread::prepare): Ensure race safeness when adding function |
| pointers to atfork lists by using List_insert. |
| * thread.h (List_insert): Use InterlockedCompareExchangePointer to |
| ensure race safeness without using a mutex. |
| (List_remove): Use InterlockedCompareExchangePointer to |
| ensure race safeness with List_insert. |
| (List::insert): Remove mx parameter for List_insert call. |
| |
| 2003-12-01 Corinna Vinschen <corinna@vinschen.de> |
| |
| * Makefile.in (OBSOLETE_FUNCTIONS): Add fcntl. |
| (NEW_FUNCTIONS): Add fcntl64. |
| * cygwin.din: Export fcntl64. Make fcntl being SIGFE. |
| * fcntl.cc (fcntl_worker): New function. |
| (fcntl64): New function. |
| (_fcntl): Call fcntl_worker. Convert 32 bit flock structure into |
| 64 bit flock structure and vice versa. |
| * fhandler.cc (fhandler_base::lock): Change 2nd parameter to |
| struct __flock64 *. |
| * fhandler_disk_file.cc (fhandler_disk_file::lock): Ditto. Rework |
| to be 64 bit aware. |
| * fhandler.h: Accommodate above method argument changes. |
| * include/cygwin/types.h: Add struct __flock32 and __flock64. |
| Define struct flock according to setting of __CYGWIN_USE_BIG_TYPES__. |
| * include/cygwin/version.h: Bump API minor number. |
| |
| 2003-12-01 Corinna Vinschen <corinna@vinschen.de> |
| |
| * cygheap.cc (cygheap_init): Set cygheap->shared_prefix. |
| * cygheap.h (struct init_cygheap): Add shared_prefix. |
| * shared.cc (shared_name): Use cygheap->shared_prefix. |
| |
| 2003-12-01 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * shared.cc (shared_name): Take into account the SE_CREATE_GLOBAL_NAME |
| privilege when building the name string. |
| (open_shared): Remove the call to OpenFileMapping. |
| (shared_info::initialize): Move cygheap initialization to ... |
| (memory_init): ... here. Suppress now useless shared_h variable. |
| (user_shared_initialize): Make tu a cygpsid. |
| |
| 2003-12-01 Dr. Volker Zell <Dr.Volker.Zell@oracle.com> |
| |
| * include/tzfile.h: Remove duplicate definition of TM_SUNDAY. |
| * localtime.cc: Point TZDIR to the /usr/share/zoneinfo directory used |
| by the tzcode package. |
| |
| 2003-11-30 Corinna Vinschen <corinna@vinschen.de> |
| |
| * flock.cc: Renamed from flock.c. |
| |
| 2003-11-29 Christopher Faylor <cgf@redhat.com> |
| |
| * pinfo.h: Remove global_sigs declaration. |
| * siginfo.h: Move global_sigs declaration here. |
| * Makefile.in: Remove duplicate compiler flag. |
| |
| 2003-11-29 Christopher Faylor <cgf@redhat.com> |
| |
| * exceptions.cc (_threadinfo::pop): Zero *contents* of popped stack |
| location rather than the actual stack pointer. |
| |
| 2003-11-29 Nicholas Wourms <nwourms@netscape.net> |
| |
| * Makefile.in: (DLL_OFILES): Add flock.o. |
| * cygwin.din: Export flock. |
| * flock.c: New file. |
| * include/sys/file.h: Include sys/cdefs.h. |
| Add function prototype for flock(). |
| Add some comments from BSD's header for further clarity. |
| (L_SET, L_CURR, L_INCR, L_XTND): Redefine as the macros |
| SEEK_SET, SEEK_CUR, SEEK_CUR, & SEEK_END respectively. |
| (LOCK_SH,LOCK_EX,LOCK_NB,LOCK_UN): New macros for flock(). |
| * include/cygwin/version.h: Bump API minor number. |
| |
| 2003-11-28 Christopher Faylor <cgf@redhat.com> |
| |
| * sigproc.cc (no_signals_available): Fix so that non-zero exit state is |
| a true condition rather than errnoneously only checking other states |
| when exist_state was zero. |
| |
| 2003-11-28 Christopher Faylor <cgf@redhat.com> |
| |
| * pinfo.h (_pinfo::getthread2signal): Remove obsolete function. |
| * cygtls.h (_threadinfo): Define tid more precisely. |
| (_threadinfo::operator HANDLE): Define. |
| * exceptions.cc (_threadinfo::interupt_now): Use _threadinfo HANDLE |
| operator to derive thread handle. |
| (setup_handler): Ditto. |
| * sigproc.cc: Reorganize includes. Fix no_signals_available test to |
| properly return true when !sig_wait_loop. |
| |
| 2003-11-28 Christopher Faylor <cgf@redhat.com> |
| |
| * pinfo.h (_pinfo::getsig): Remove obsolete function, here and |
| throughout. |
| * exceptions.cc: Ditto. |
| * fhandler_termios.cc: Ditto. |
| * signal.cc: Ditto. |
| * sigproc.cc: Ditto. |
| |
| * Makefile.in: Revert previous change which made a cygwin.din newer |
| than a version.h a warning rather than an error. |
| |
| 2003-11-28 Christopher Faylor <cgf@redhat.com> |
| |
| * cygwin.din: Re-add inexplicably missing semaphore/msg functions. |
| |
| 2003-11-28 Christopher Faylor <cgf@redhat.com> |
| |
| * gendevices: Issue error when shilka is missing. |
| |
| 2003-11-28 Christopher Faylor <cgf@redhat.com> |
| |
| * include/cygwin/signal.h: New file. |
| |
| 2003-11-28 Christopher Faylor <cgf@redhat.com> |
| |
| Eliminate use of sigframe and sigthread throughout. |
| * Makefile.in (DLL_OFILES): Add sigfe.o. Remove reliance on cygwin.def |
| from cygwin0.dll dependency since dependence on sigfe.o implies that. |
| Generate def file on the fly using 'gendef'. |
| * configure.in: Don't auto-generate cygwin.def. |
| * configure: Regenerate. |
| * cygwin.din: Add SIGFE stuff where appropriate. |
| * dcrt0.cc (dll_crt0_1): Initialize cygwin tls early in process |
| startup. Set _main_tls to address of the main thread's cygwin tls. |
| * debug.h: Remove now unneeded WFSO and WFMO declarations. |
| * exceptions.cc (_last_thread): Define. |
| (set_thread_state_for_signals): New function. |
| (reset_thread_exception_for_signals): Ditto. |
| (init_thread_for_signals): Ditto. |
| (delete_thread_for_signals): Ditto. |
| (capture_thread_for_signals): Ditto. |
| (handle_exceptions): Set return address explicitly for exceptions prior |
| to calling sig_send. |
| (interrupt_on_return): Eliminate. |
| (setup_handler): Add preliminary implementation for dealing with |
| thread-specific signals by querying _main_tls. |
| (signal_exit): Use cygthread::main_thread_id instead of mainthread.id. |
| (call_signal_handler_now): For now, just handle the main thread. |
| * fork.cc (vfork): Save and restore main _my_tls. |
| * gendef: New file. Generates def file and sigfe.s file. |
| * gentls_offsets: New file. Generates offsets for perl to use in |
| sigfe.s. |
| * how-signals-work.txt: Mention that info is obsolete. |
| * init.cc (dll_entry): Initialize cygwin tls storage here. |
| * miscfuncs.cc (low_priority_sleep): Make a C function for easier |
| calling from asm. |
| * perthread.h (vfork_save::tls): New element. |
| * signal.cc (nanosleep): Replace previous use of |
| sigframe.call_signal_handler_now with straight call to |
| call_signal_handler_now. |
| (abort): Ditto. |
| * syscalls.cc (readv): Ditto. |
| * termios.cc (tcsetattr): Ditto. |
| * wait.cc (wait4): Ditto. |
| * sigproc.cc (sig_dispatch_pending): Ditto. |
| (sig_send): Ditto. |
| * sigproc.h: Declare call_signal_handler_now. |
| * thread.cc (pthread::thread_init_wrapper): Initialize cygwin tls. |
| Remove obsolete and unworking signal stuff. |
| * thread.h (verifyable_object::sigs): Eliminate. |
| (verifyable_object::sigmask): Eliminate. |
| (verifyable_object::sigtodo): Eliminate. |
| (verifyable_object::exit): Make attribute noreturn. |
| (verifyable_object::thread_init_wrapper): Ditto. |
| (pthread_null::exit): Ditto. |
| * winbase.h (__stackbase): Always define. |
| * winsup.h (low_priority_sleep): Declare as a "C" function. |
| * include/cygwin/version.h: Bump API version to reflect sigwait export. |
| |
| * include/sys/queue.h: Protect SLIST_ENTRY from previous declaration. |
| |
| * signal.cc (sigwait): Implement. |
| |
| * select.cc (fhandler_base::ready_for_read): Add debugging output. |
| |
| * devices.h: Define more device pointers via their storage. |
| * devices.in: Don't parse things like /dev/inet/tcp, as they really |
| have no meaning. |
| * devices.cc: Regenerate. |
| * gendevices: Set proper protection for output file. |
| |
| * cygtls.h: New file. |
| * gendef: New file. |
| * gentls_offsets: New file. |
| * tlsoffsets.h: New file. Autogenerated. |
| * config/i386/longjmp.c: Remove. File subsumed by gendef output. |
| * config/i386/makefrag: Remove obsolete file. |
| |
| * fhandler.cc: Remove spurious access_worker declaration. |
| |
| * spawn.cc (spawnve): Make debugging output more accurate. |
| |
| * cygwin-gperf: Remove. |
| * devices.cc: Remove. |
| |
| 2003-11-28 Christopher Faylor <cgf@redhat.com> |
| |
| * speclib: Use correct EOF marker. Ensure that directory is actually |
| deleted when running under Windows. |
| |
| 2003-11-27 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_disk_file.cc (fhandler_disk_file::readdir): Reorganize to |
| avoid inappropriate .lnk extensions with munged filenames under managed |
| mode. |
| |
| 2003-11-26 Corinna Vinschen <corinna@vinschen.de> |
| |
| * sec_helper.cc (set_process_privilege): Rename restore_priv to |
| priv_luid. |
| |
| 2003-11-26 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * sec_helper.cc (set_process_privilege): Call LookupPrivilegeValue |
| before opening the token. |
| |
| 2003-11-26 Corinna Vinschen <corinna@vinschen.de> |
| |
| * dir.cc (mkdir): Use local security_descriptor. Call |
| set_security_attribute appropriately. |
| * external.cc (cygwin_internal): Ditto. |
| * fhandler.cc (fhandler_base::open): Ditto. |
| * fhandler_socket.cc (fhandler_socket::bind): Ditto. |
| * path.cc (symlink_worker): Ditto. |
| * sec_acl.cc (setacl): Ditto. Call read_sd appropriately. |
| (getace): Ditto. |
| * sec_helper.cc (security_descriptor::malloc): New method. |
| (security_descriptor::realloc): New method. |
| (security_descriptor::free): New method. |
| * security.cc (read_sd): Get security_descriptor as parameter instead |
| of PSECURITY_DESCRIPTOR and a size. Drop unnecessary parameter check. |
| Allocate the security_descriptor buffer according to size returned by |
| a call to GetFileSecurity. Return buffer size on success. |
| (write_sd): Get security_descriptor as parameter instead of |
| PSECURITY_DESCRIPTOR and a size. |
| (get_nt_attribute): Use local security_descriptor. |
| (get_nt_object_attribute): Ditto in case of type == SE_REGISTRY_KEY. |
| Allocate security_descriptor buffer according to size returned by |
| a call to RegGetKeySecurity. |
| (alloc_sd): Make static. Get security_descriptor as parameter instead |
| of PSECURITY_DESCRIPTOR and a size. Drop unnecessary parameter check. |
| (set_security_attribute): Get security_descriptor as parameter instead |
| of PSECURITY_DESCRIPTOR and a size. |
| (set_nt_attribute): Use local security_descriptor. |
| (check_file_access): Ditto. |
| * security.h: Add class security_descriptor. |
| (read_sd): Change declaration to get security_descriptor as parameter |
| instead of PSECURITY_DESCRIPTOR and a size. |
| (write_sd): Ditto. |
| (set_security_attribute): Ditto. |
| (alloc_sd): Remove declaration. |
| * thread.cc (semaphore::semaphore): Use local security_descriptor. Call |
| set_security_attribute appropriately. |
| |
| 2003-11-26 Corinna Vinschen <corinna@vinschen.de> |
| |
| * sec_acl.h (getace): Use FILE_*_BITS as permission mask. |
| * security.cc (get_attribute_from_acl): Ditto. |
| * security.h (FILE_READ_BITS): Define to match also GENERIC bits. |
| (FILE_WRITE_BITS): Ditto. |
| (FILE_EXEC_BITS): Ditto. |
| |
| 2003-11-25 Christopher Faylor <cgf@redhat.com> |
| |
| * thread.cc: Minor whitespace cleanup. Remove some obsolete code. |
| |
| 2003-11-24 Christopher Faylor <cgf@redhat.com> |
| |
| * dtable.cc (build_fh_name): Set error in dummy fhandler when one is |
| noted during path_conv. |
| * fhandler.h (fhandler_base::set_error): New method. |
| |
| 2003-11-24 Christopher Faylor <cgf@redhat.com> |
| |
| * configure.in: Avoid using cygserver unless hosting on cygwin. |
| |
| 2003-11-23 Christopher Faylor <cgf@redhat.com> |
| |
| * sigproc.cc (sig_send): Correct below checkin. Use |
| thisframe.call_signal_handler. |
| |
| 2003-11-23 Christopher Faylor <cgf@redhat.com> |
| |
| * sigproc.cc (proc_exists): A zombie process does not exist. |
| (sig_send): Improve debugging output. Wait for pipe to be created |
| before trying to send to it. Call call_signal_handler_now if sending a |
| signal to myself. |
| |
| 2003-11-22 Christopher Faylor <cgf@redhat.com> |
| |
| * dcrt0.cc (check_sanity_and_sync): Correct api major version check so |
| that newer dlls will work with older apps but not vice versa. |
| |
| 2003-11-21 Christopher Faylor <cgf@redhat.com> |
| |
| * sem.cc: Always include signal.h to handle SIGSYS raise when |
| !USE_SERVER. |
| * shm.cc: Ditto. |
| |
| 2003-11-21 Christopher Faylor <cgf@redhat.com> |
| |
| * msg.cc: Always include signal.h to handle SIGSYS raise when |
| !USE_SERVER. |
| |
| 2003-11-20 Christopher Faylor <cgf@redhat.com> |
| |
| * configure.in: Make --use-server the default. Remove powerpc target. |
| * configure: Regenerate. |
| |
| 2003-11-20 Corinna Vinschen <corinna@vinschen.de> |
| |
| * msg.cc (msgctl): Raise SIGSYS if call not available. |
| (msgget): Ditto. |
| (msgrcv): Ditto. |
| (msgsnd): Ditto. |
| * sem.cc (semctl): Ditto. |
| (semget): Ditto. |
| (semop): Ditto. |
| * shm.cc (shmat): Ditto. |
| (shmctl): Ditto. |
| (shmget): Ditto. |
| (shmdt): Ditto. |
| |
| 2003-11-19 Corinna Vinschen <corinna@vinschen.de> |
| |
| * cygserver.h (client_request::request_code_t): Add |
| CYGSERVER_REQUEST_MSG and CYGSERVER_REQUEST_SEM. |
| (admininstrator_group_sid): Add extern declaration. |
| * cygserver_ipc.h: Rewrite. |
| * cygserver_msg.h: New file. |
| * cygserver_sem.h: New file. |
| * cygserver_shm.h: More or less rewrite. |
| * cygwin.din: Add msgctl, msgget, msgrcv, msgsnd, semctl, semget and |
| semop. |
| * msg.cc: Rewrite. |
| * safe_memory.h: Remove. |
| * sem.cc: Rewrite. |
| * shm.cc: Rewrite. |
| * include/cygwin/ipc.h: Use appropriate guard. |
| (struct ipc_perm): Add seq. |
| (IPCID_TO_IX): New define from BSD. |
| (IPCID_TO_SEQ): Ditto. |
| (IXSEQ_TO_IPCID): Ditto. |
| (IPC_R): Ditto. |
| (IPC_W): Ditto. |
| (IPC_M): Ditto. |
| * include/cygwin/msg.h: Use appropriate guard. #ifdef _KERNEL all stuff |
| not explicitely defined by SUSv3. Use signed types in structs to match |
| types used in BSD. |
| (msgqnum_t): Define unsigned. |
| (msglen_t): Ditto. |
| (struct msqid_ds): Add msg_first and msg_last. |
| (struct msginfo): Remove msgpool. Add msgssz and msgseg. |
| * include/cygwin/sem.h: Use appropriate guard. #ifdef _KERNEL all stuff |
| not explicitely defined by SUSv3. Use signed types in structs to match |
| types used in BSD. |
| (SEM_UNDO): Define appropriately. |
| (struct semid_ds): Add sem_base. |
| (struct seminfo): Add semmap and semusz. |
| (SEM_A): New define from BSD. |
| (SEM_R): Ditto. |
| (SEM_ALLOC): Ditto. |
| (union semun): Define. |
| * include/cygwin/shm.h: Use appropriate guard. #ifdef _KERNEL all stuff |
| not explicitely defined by SUSv3. Use signed types in structs to match |
| types used in BSD. |
| (SHMLBA): Define using cygwin_internal(CW_GET_SHMLBA) call. |
| (struct shmid_ds): Add shm_internal. |
| (struct shm_info): Rename shm_ids to used_ids as in BSD. Add define |
| for shm_ids. |
| * include/cygwin/sysproto.h: New file. |
| * include/cygwin/version.h: Bump API minor number. |
| * include/sys/ipc.h: New file. |
| * include/sys/msg.h: New file. |
| * include/sys/queue.h: New file from BSD. |
| * include/sys/sem.h: New file. |
| * include/sys/shm.h: New file. |
| * include/sys/sysproto.h: New file. |
| |
| 2003-11-19 Corinna Vinschen <corinna@vinschen.de> |
| |
| * dtable.cc (build_fh_pc): Resurrect accidentally removed |
| DEV_CYGDRIVE_MAJOR case. |
| |
| 2003-11-17 Brian Ford <ford@vss.fsi.com> |
| |
| * fhandler.cc (fhandler_base::lseek): Include high order offset |
| bits in return value. |
| |
| 2003-11-17 Corinna Vinschen <corinna@vinschen.de> |
| |
| * bsdlib.cc (getprogname): New function. |
| (setprogname): New funtion. |
| * cygwin.din: Export getprogname and setprogname. |
| * include/cygwin/version.h: Bumb API version number. |
| |
| 2003-11-15 Christopher Faylor <cgf@redhat.com> |
| |
| * include/limits.h: Revert unsanctioned changes below. |
| * include/cygwin/config.h: Ditto. |
| * include/sys/param.h: Ditto. |
| |
| 2003-11-14 Robert Collins <rbtcollins@hotmail.com> |
| Ron Parker <rdparker@butlermfg.com> |
| |
| * bsdlib.cc: Update throughout to use CYG_MAX_PATH rather than MAX_PATH. |
| * cygheap.h: Ditto. |
| * dcrt0.cc: Ditto. |
| * delqueue.cc: Ditto. |
| * dlfcn.cc: Ditto. |
| * dll_init.cc: Ditto. |
| * dll_init.h: Ditto. |
| * dtable.cc: Ditto. |
| * environ.cc: Ditto. |
| * environ.h: Ditto. |
| * exceptions.cc: Ditto. |
| * external.cc: Ditto. |
| * fhandler_disk_file.cc: Ditto. |
| * fhandler_proc.cc: Ditto. |
| * fhandler_process.cc: Ditto. |
| * fhandler_raw.cc: Ditto. |
| * fhandler_registry.cc: Ditto. |
| * fhandler_socket.cc: Ditto. |
| * fhandler_virtual.cc: Ditto. |
| * miscfuncs.cc: Ditto. |
| * mmap.cc: Ditto. |
| * netdb.cc: Ditto. |
| * path.cc: Ditto. |
| * path.h: Ditto. |
| * pinfo.cc: Ditto. |
| * pinfo.h: Ditto. |
| * pthread.cc: Ditto. |
| * registry.cc: Ditto. |
| * shared.cc: Ditto. |
| * shared_info.h: Ditto. |
| * smallprint.c: Ditto. |
| * spawn.cc: Ditto. |
| * strace.cc: Ditto. |
| * syscalls.cc: Ditto. |
| * thread.h: Ditto. |
| * uinfo.cc: Ditto. |
| * winsup.h: Ditto. |
| * include/limits.h: Ditto. |
| * include/cygwin/config.h: Ditto. |
| * include/sys/param.h: Ditto. |
| |
| 2003-11-12 Brian Ford <ford@vss.fsi.com> |
| |
| * dtable.cc (build_fh_pc): Use DEV_SERIAL_MAJOR to catch all serial |
| ports. Remove redundant FH_CYGDRIVE case since it is handled by |
| DEV_CYGDRIVE_MAJOR. |
| |
| 2003-11-11 Christopher Faylor <cgf@redhat.com> |
| Thomas Pfaff <tpfaff@gmx.net> |
| |
| * thread.cc (pthread::exit): Cleanup on thread exit. |
| (__reent_t::init_clib): Set thread local clib __cleanup var |
| appropriately. |
| |
| 2003-11-10 Christopher Faylor <cgf@redhat.com> |
| |
| * miscfuncs.cc (low_priority_sleep): Make a "C" function. |
| * winsup.h (low_priority_sleep): Revert previous change to declaration. |
| |
| 2003-11-10 Corinna Vinschen <corinna@vinschen.de> |
| |
| * winsup.h (low_priority_sleep): Fix declaration to avoid linker |
| warning. |
| |
| 2003-11-10 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * thread.cc (__reent_t::init_clib): Set thread local clib |
| __sdidinit var appropriately. |
| |
| 2003-11-08 Corinna Vinschen <corinna@vinschen.de> |
| |
| * syscalls.cc (ftruncate64): Log length as long long. |
| (logout): Erase ut_host. Don't write wtmp entry. Return 1 only |
| if matching utmp entry has been found, 0 otherwise. |
| |
| 2003-11-08 Corinna Vinschen <corinna@vinschen.de> |
| |
| * external.cc (cygwin_internal): Add CW_GET_UID_FROM_SID and |
| CW_GET_GID_FROM_SID handling. |
| * include/cygwin/version.h: Bump API minor number. |
| * include/sys/cygwin.h (cygwin_getinfo_types): Add |
| CW_GET_UID_FROM_SID and CW_GET_GID_FROM_SID. |
| |
| 2003-11-07 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_disk_file.cc (fhandler_disk_file::opendir): Reorganize to |
| handle freeing of memory on error condition. |
| |
| 2003-11-07 Christopher Faylor <cgf@redhat.com> |
| |
| * cygthread.cc (cygthread::freerange): Set inuse count. Avoid setting |
| ev from h as h would be NULL at this point. |
| (cygthread::operator new): Issue debugging info when overflowing the |
| thread pool. |
| (cygthread::cygthread): Set ev from h here after h has been initialized. |
| |
| 2003-11-06 Corinna Vinschen <corinna@vinschen.de> |
| |
| * bsdlib.cc (_vwarnx): New function. |
| (vwarn): Ditto. |
| (vwarnx): Ditto. |
| (warn): Ditto. |
| (warnx): Ditto. |
| (verr): Ditto. |
| (verrx): Ditto. |
| (err): Ditto. |
| (errx): Ditto. |
| * cygwin.din: Export above functions. |
| * include/err.h: New file. |
| * include/cygwin/version.h: Bump API minor number. |
| |
| 2003-11-06 Corinna Vinschen <corinna@vinschen.de> |
| |
| * syscalls.cc (getshmlba): New function. |
| * external.cc (cygwin_internal): Add CW_GET_SHMLBA handling. |
| * mmap.cc (mmap64): Call getshmlba to evaluate granularity. |
| * winsup.h (getshmlba): Add declaration. |
| * include/cygwin/version.h: Bump API minor number. |
| * include/sys/cygwin.h (cygwin_getinfo_types): Add CW_GET_SHMLBA. |
| |
| 2003-11-06 Christopher Faylor <cgf@redhat.com> |
| |
| * winsup.h: Declare access_worker. |
| |
| 2003-11-05 Corinna Vinschen <corinna@vinschen.de> |
| |
| * include/cygwin/types.h: Fix preprocessor guards for vm_offset_t and |
| vm_size_t. Add typedef for vm_object_t. |
| |
| 2003-11-05 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_disk_file.cc (fhandler_disk_file::opendir): Detect attempt |
| to open a directory which lacks read privileges. |
| |
| 2003-11-04 Corinna Vinschen <corinna@vinschen.de> |
| |
| * external.cc (cygwin_internal): Add CW_GET_POSIX_SECURITY_ATTRIBUTE |
| handling. |
| * include/cygwin/version.h: Bump API minor number. |
| * include/sys/cygwin.h (cygwin_getinfo_types): Add |
| CW_GET_POSIX_SECURITY_ATTRIBUTE. |
| |
| * exceptions.cc (init_global_security): Move from here... |
| * sec_helper.cc (init_global_security): ...to here. |
| |
| 2003-11-04 Christopher Faylor <cgf@redhat.com> |
| |
| * net.cc (dup_ent): Use IsBadStringPtr for alignment checks. Don't use |
| a known bad pointer. |
| |
| 2003-11-03 Corinna Vinschen <corinna@vinschen.de> |
| |
| * net.cc (dup_ent): Move Win 95 misalignment recogition before |
| trying to evaluate string length. |
| |
| 2003-10-31 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * thread.cc (pthread::thread_init_wrapper): Initialize exception |
| handling. |
| |
| 2003-10-31 Thomas Pfaff <tpfaff@gmx.net> |
| |
| Rename pthread::running to pthread::valid throughout. |
| |
| * thread.h: (pthread::suspend_all_except_self): New static method. |
| (pthread::resume_all): Ditto. |
| (pthread::suspend_except_self): New method. |
| (pthread::resume): Ditto. |
| * thread.cc (pthread::suspend_except_self): Implement. |
| (pthread::resume): Ditto. |
| |
| 2003-10-29 Danny Smith <dannysmith@users.sourceforege.net> |
| |
| * include/stdint.h: Prevent signed->unsigned conversion for 32 and |
| 64 bit min value constants. |
| |
| 2003-10-28 Igor Pechtchanski <pechtcha@cs.nyu.edu> |
| |
| * path.cc (dot_special_chars): New global variable. |
| (special_name): Make files ending in "." special. |
| (fnunmunge): Allow encoded ".". |
| (mount_item::fnmunge): Handle trailing ".". |
| |
| 2003-10-28 Christopher Faylor <cgf@redhat.com> |
| |
| * include/stdint.h: Duplicate below effort for rest of *64_*. |
| |
| 2003-10-28 Christopher Faylor <cgf@redhat.com> |
| |
| * include/stdint.h: Correctly define INT64_MAX. |
| |
| 2003-10-27 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * thread.h (fast_mutex::init): Initialize lock_counter. |
| |
| 2003-10-27 Corinna Vinschen <corinna@vinschen.de> |
| |
| * Makefile.in (OBSOLETE_FUNCTION): Add tmpfile. |
| (NEW_FUNCTIONS): Add _tmpfile64 -> tmpfile translation. |
| * cygwin.din: Export _tmpfile64 |
| * include/cygwin/version.h: Bump api minor number. |
| |
| 2003-10-27 Corinna Vinschen <corinna@vinschen.de> |
| |
| * cygwin.din: Add sem_close, sem_getvalue, sem_open and sem_timedwait. |
| * pthread.cc (+mangle_sem_name): New function. |
| (sem_open): Ditto. |
| (sem_close: Ditto. |
| (sem_timedwait): Ditto. |
| (sem_getvalue): Ditto. |
| * thread.cc (semaphore::semaphore): Rearrange member initialization. |
| Use appropriate security attribute for process shared semaphores. |
| (semaphore::semaphore): New constructor for named semaphores. |
| (semaphore::~semaphore): Care for semaphore name. |
| (semaphore::_post): Accommodate failing ReleaseSemaphore. Use value |
| returned by ReleaseSemaphore vor currentvalue. |
| (semaphore::_getvalue): New method. |
| (semaphore::_timedwait): Ditto. |
| (semaphore::_fixup_after_fork): Rearrange. Don't fail for process |
| shared semaphores. |
| (semaphore::open): New method. |
| (semaphore::timedwait): Ditto. |
| (semaphore::post): Fix return value. Set errno appropriately. |
| (semaphore::getvalue): New method. |
| * thread.h (class semaphore): Add prototypes for open, getvalue, |
| timedwait, _getvalue, _timedwait. Add prototypes for new constructor. |
| Add name member. |
| * include/semaphore.h: Add prototypes for sem_open, sem_close, |
| sem_timedwait and sem_getvalue. |
| include/cygwin/version.h: Bump API minor number. |
| |
| 2003-10-27 Corinna Vinschen <corinna@vinschen.de> |
| |
| * miscfunc.cc (__check_invalid_read_ptr): New function. |
| * winsup.h: Declare. |
| |
| 2003-10-26 Corinna Vinschen <corinna@vinschen.de> |
| |
| * security.h (cygpsid::debug_print): Avoid compiler warnings. |
| |
| 2003-10-25 Corinna Vinschen <corinna@vinschen.de> |
| |
| * path.cc (normalize_posix_path): Test runs of more than two |
| dots for being a run of only dots. Let it pass if not. |
| |
| 2003-10-25 Brian Ford <ford@vss.fsi.com> |
| |
| * fhandler.cc (fhandler_base::ioctl): Handle FIONBIO. |
| |
| 2003-10-24 Thomas Pfaff <tpfaff@gmx.net> |
| |
| Rename native_mutex to fast_mutex throughout. |
| Rename pthread_key::save_key_to_buffer to |
| pthread_key::_fixup_before_fork throughout. |
| Rename pthread_key::recreate_key_from_buffer to |
| pthread_key::_fixup_after_fork throughout. |
| |
| * thread.cc (native_mutex::init): Remove. |
| (native_mutex::lock): Ditto. |
| (native_mutex::unlock): Ditto. |
| (pthread::push_cleanup_handler): InterlockedExchangePointer |
| is not needed here. |
| (pthread_rwlock::pthread_rwlock): Initialize readers list mutex. |
| (pthread_rwlock::add_reader): Add reader via List_insert. |
| (pthread_rwlock::lookup_reader): Lock list while walking through. |
| (pthread_cond::init): Locking the init mutex is now void. |
| (pthread_rwlock::init): Ditto. |
| (pthread_mutex::init): Ditto. |
| * thread.h: Include security.h. |
| (fast_mutex): New class. Replacement for native_mutex. |
| (List_insert): New template function. |
| (List_remove): Ditto. |
| (List::List): Initialize synchronising mutex. |
| (List::fixup_after_fork): New method. |
| (List::insert): Add node via List_insert. |
| (List::remove): Remove node via List_remove. |
| (List::pop): Remove. |
| (List::for_each): Lock list while walking through. |
| (List::mx_init): New method. |
| (pthread_mutex::fixup_after_fork): Fixup mutex list after fork. |
| (pthread::fixup_after_fork): Ditto. |
| (pthread_conds::fixup_after_fork): Ditto. |
| (pthread_rwlock::fixup_after_fork): Ditto. |
| (semaphore::fixup_after_fork): Ditto. |
| (pthread_rwlock::readers_mx): New member. |
| |
| 2003-10-24 Brian Ford <ford@vss.fsi.com> |
| |
| * fhandler.cc (fhandler_base::fcntl): Don't clobber O_APPEND when |
| both O_NONBLOCK/O_NDELAY are set for F_SETFL. |
| |
| 2003-10-24 Corinna Vinschen <corinna@vinschen.de> |
| |
| * path.cc (win32_device_name): Fix comment. |
| |
| 2003-10-23 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_tty.cc (fhandler_tty_slave::ioctl): Properly set return |
| value in FIONBIO case. |
| |
| 2003-10-23 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_proc.cc (format_proc_partitions): Use new device code |
| to get major and minor device numbers. Fix size evaluation. |
| |
| 2003-10-22 Corinna Vinschen <corinna@vinschen.de> |
| |
| * external.cc (cygwin_internal): Add CW_GET_ERRNO_FROM_WINERROR |
| handling. |
| * include/cygwin/version.h: Bump API minor number. |
| * include/sys/cygwin.h (cygwin_getinfo_types): Add |
| CW_GET_ERRNO_FROM_WINERROR. |
| |
| 2003-10-22 Corinna Vinschen <corinna@vinschen.de> |
| |
| * Makefile.in: Add $(LIBSERVER) rule. |
| * cygserver.h: Moved from include/cygwin to here. |
| * cygserver_ipc.h: Moved from ../cygserver to here. |
| * cygserver_shm.h: Ditto. |
| * cygwin.din: Add shmat, shmctl, shmdt and shmget. |
| * fhandler_tty.cc (fhandler_tty_slave::open): Don't warn about handle |
| dup'ing if not build with USE_SERVER. |
| * shm.cc: Include cygerrno.h unconditionally. |
| (shmat): Set errno to ENOSYS and return -1 if not build with |
| USE_SERVER. |
| (shmctl): Ditto. |
| (shmdt): Ditto. |
| (shmget): Ditto. |
| * woutsup.h: Remove. |
| * include/cygwin/cygserver_process.h: Moved to ../cygserver directory. |
| * include/cygwin/cygserver_transport.h: Ditto. |
| * include/cygwin/cygserver_transport_pipes.h: Ditto. |
| * include/cygwin/cygserver_transport_sockets.h: Ditto. |
| * include/cygwin/version.h: Bump API minor number. |
| |
| 2003-10-16 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * syscalls.cc (seteuid32): Always construct a default DACL including |
| the new sid, Admins and SYSTEM and copy it to the new thread token. |
| * security.cc (create_token): Use a NULL default DACL in NtCreateToken. |
| |
| 2003-10-14 Micha Nelissen <M.Nelissen@student.tue.nl> |
| |
| * dcrt0.cc: Remove local variable alternate_charset_active. |
| * fhandler.h: Add variable alternate_charset_active, functions |
| str_to_con, con_to_str to dev_console structure. |
| * fhandler_console.cc (con_to_str): Move function into dev_console |
| class. |
| (str_to_con): Ditto. |
| (fhandler_console::read): Call con_to_str on dev_state. |
| (fhandler_console::write_normal): Call str_to_con on dev_state. |
| (fhandler_console::char_command): Change active_charset_active |
| assignment to be on dev_state. |
| * winsup.h: Remove global external variable alternate_charset_active. |
| |
| 2003-10-13 Micha Nelissen <M.Nelissen@student.tue.nl> |
| |
| * fhandler_console.cc (char_command): Add escape sequence for codepage |
| ansi <-> oem switching for ncurses frame drawing capabilities. |
| * dcrt0.cc: Add local variable alternate_charset_active. |
| * winsup.h: Add global external variable alternate_charset_active. |
| |
| 2003-10-14 Corinna Vinschen <corinna@vinschen.de> |
| |
| * exceptions.cc (ctrl_c_handler): Don't send SIGHUP on |
| CTRL_LOGOFF_EVENT to processes running in invisible Windows Stations. |
| * window.cc (has_visible_window_station): New function. |
| * winsup.h: Add declaration for has_visible_window_station. |
| |
| 2003-10-10 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_tty.cc (fhandler_tty_slave::open): Don't create a new window |
| station if one already exists. |
| |
| 2003-10-10 Christopher Faylor <cgf@redhat.com> |
| |
| * shared.cc (shared_info::initialize): Remove myself check since |
| hMainProc initialization will allow user initialization to work. |
| |
| 2003-10-09 Yitzchak Scott-Thoennes <sthoenna@efn.org> |
| |
| * include/sys/mman.h (MAP_FAILED): Define as void *. |
| |
| 2003-10-08 Christopher Faylor <cgf@redhat.com> |
| |
| * dcrt0.cc (hMainProc): Initialize to useful value for use when dll is |
| dynamically loaded. |
| * shared.cc (shared_info::initialize): Don't initialize user stuff if |
| myself doesn't exist. |
| |
| 2003-10-08 Corinna Vinschen <corinna@vinschen.de> |
| |
| * syscalls.cc (unlink): Don't even try DELETE_ON_CLOSE technique on |
| systems not supporting it. |
| |
| 2003-10-02 Christopher Faylor <cgf@redhat.com> |
| |
| * dcrt0.cc (dll_crt0_1): Call newlib __sinit routine to ensure that |
| stdio buffers are initialized to avoid thread initialization races. |
| |
| 2003-10-01 Christopher Faylor <cgf@redhat.com> |
| |
| * path.cc (win32_device_name): Only fill out destination buffer when |
| it's really a device. |
| |
| 2003-09-30 Christopher Faylor <cgf@redhat.com> |
| |
| * Makefile.in: Add YA method for generating devices.cc. |
| * child_info.h: YA update of another magic number. |
| * gendevices: New file. |
| * devices.in: New file. |
| * devices.cc: Regenerate. |
| * devices.shilka: Remove. |
| * devices.h: Correctly define device pointers. |
| (device): Remove now obsolete fields. |
| (device::native): Renamed from device::fmt. |
| * dtable.cc (build_fh_dev): Simplify in light of new unit parsing |
| scheme. |
| (build_fh_pc): Ditto. |
| * path.cc (win32_device_name): Ditto. |
| * fhandler.h (fhandler_base::get_native_name): Reflect renaming of fmt |
| to native. |
| * fhandler_tty.cc (fhandler_tty_mster::init): Initialize slave device |
| prior to reporting unit. |
| |
| 2003-09-30 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler.cc (fhandler_base::fstat): Drop FH_FLOPPY case. |
| |
| 2003-09-30 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler.h (class fhandler_dev_raw): Add method fstat. |
| * fhandler_raw.cc (fhandler_dev_raw::fstat): New method. |
| |
| 2003-09-30 Corinna Vinschen <corinna@vinschen.de> |
| |
| * devices.h (enum fh_devices): Remove DEV_RAWDRIVE_MAJOR and |
| FH_RAWDRIVE. |
| * devices.shilka (dev_rawdrive_storage): Remove. |
| (unit_devices): Remove pointer to dev_rawdrive_storage. |
| (uniq_devices): Remove rawdrive entry. |
| * dtable.cc (build_fh_pc): Remove DEV_RAWDRIVE_MAJOR case. |
| * path.cc (win32_device_name): ditto. |
| |
| 2003-09-29 Corinna Vinschen <corinna@vinschen.de> |
| |
| * syslog.cc (vsyslog): Print debug message if ReportEventA fails. |
| |
| 2003-09-28 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * sigproc.cc (proc_subproc): Restrict permissions on ppid_handle. |
| |
| 2003-09-28 Christopher Faylor <cgf@redhat.com> |
| |
| * devices.shilka (device::parse): Restore check for tty in unit |
| handling, but without the previous typo. |
| * devices.cc: Regenerate. |
| * devices.h (DEV_CYGDRIVE_MAJOR): Change major number to one used by |
| linux for "user-mode virtual block device". |
| |
| 2003-09-28 Corinna Vinschen <corinna@vinschen.de> |
| |
| * devices.h: Move a few device major numbers. Fix typo of FH_UDP. |
| * device.shilka: Remove /dev/hd device entries, rename all device_hd* |
| to device_sd*. |
| (device::parse): Disallow units outside lower and upper bounds. |
| * dtable.cc (build_fh_pc): Fix typo of FH_UDP. |
| * path.cc (win32_device_name): Fix win32 name creation to match new |
| device handling. |
| |
| 2003-09-27 Christopher Faylor <cgf@redhat.com> |
| |
| * device.shilka (device::parse): Allow units on other than tty. |
| |
| 2003-09-27 Corinna Vinschen <corinna@vinschen.de> |
| |
| * wincap.cc (wincapc::init): Allow requesting server info for NT4 SP6. |
| |
| 2003-09-27 Christopher Faylor <cgf@redhat.com> |
| |
| * path.cc (symlink_info::check): Use new introducer for mknod'ed files. |
| (parse_device): Ditto. |
| * syscalls.cc (mknod_worker): Ditto. |
| |
| 2003-09-27 Christopher Faylor <cgf@redhat.com> |
| |
| * devices.shilka: Add /dev/sda disk devices. |
| * devices.cc: Regenerate. |
| |
| 2003-09-27 Christopher Faylor <cgf@redhat.com> |
| |
| * cygwin-shilka: Remove '#line directives' or suffer debugging oddities. |
| Use -length option so that device prefixes are used. |
| * devices.cc: Regenerate. |
| * syscalls.cc (ttyname): Add debugging output. |
| |
| 2003-09-26 Vaclav Haisman <V.Haisman@sh.cvut.cz> |
| |
| * wincap.h (wincaps::is_server): New flag. |
| (wincapc::version): Change type to OSVERSIONINFOEX. |
| (wincapc::is_server): New function. |
| * wincap.cc (wincap_unknown::is_server): New initializer. |
| (wincap_95): Ditto. |
| (wincap_95osr2): Ditto. |
| (wincap_98): Ditto. |
| (wincap_me): Ditto. |
| (wincap_nt3): Ditto. |
| (wincap_nt4): Ditto. |
| (wincap_nt4sp4): Ditto. |
| (wincap_2000): Ditto. |
| (wincap_xp): Ditto. |
| (wincapc::init): Adapt to OSVERSIONINFOEX. Add detection of NT server |
| systems. |
| * sched.cc: Include windows.h and registry.h. |
| (sched_rr_get_interval): Re-implement for NT systems. |
| |
| 2003-09-26 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_tty.cc (fhandler_tty_slave::ioctl): Properly set |
| ioctl_request event when window size changes. Store failing errno in |
| ioctl_retval (needed?). |
| |
| 2003-09-26 Pavel Tsekov <ptsekov@gmx.net> |
| |
| * fhandler_console.c (fhandler_console::read): Record the state of the |
| SHIFT, CTRL and ALT keys at the time of the last keyboard input event. |
| (fhandler_console::ioctl): Handle requests to retrieve the keyboard |
| modifiers via the TIOCLINUX command. |
| * fhandler_tty.c (fhandler_tty_slave::read): Ditto. |
| * include/sys/termios.h (TIOCLINUX): New macro definition. |
| |
| 2003-09-26 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * pinfo.cc (pinfo::init): Do not give FILE_MAP_WRITE access to Everybody. |
| * exceptions.cc (sig_handle_tty_stop): Do not create pinfo parent with |
| PID_MAP_WRITE. |
| * fhandler_process.cc (fhandler_process::fill_filebuf): Ditto for pinfo p. |
| * signal.cc (kill_worker): Ditto for pinfo dest. |
| |
| 2003-09-26 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * pinfo.h (pinfo::set_acl): Declare. |
| * pinfo.cc (pinfo_fixup_after_fork): Duplicate with no rights. |
| (pinfo::set_acl): New. |
| * spawn.cc (spawn_guts): Call myself.set_acl. |
| |
| 2003-09-26 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * uinfo.cc (cygheap_user::init): Make sure the current user appears |
| in the default DACL. Rearrange to decrease the indentation levels. |
| Initialize the effec_cygsid directly. |
| (internal_getlogin): Do not reinitialize myself->gid. Open the process |
| token with the required access. |
| * cygheap.h (class cygheap_user): Delete members pid and saved_psid. |
| Create members effec_cygsid and saved_cygsid. |
| (cygheap_user::set_sid): Define inline. |
| (cygheap_user::set_saved_sid): Ditto. |
| (cygheap_user::sid): Modify. |
| (cygheap_user::saved_sid): Modify. |
| * cygheap.cc (cygheap_user::set_sid): Delete. |
| (cygheap_user::set_saved_sid): Ditto. |
| * sec_helper.cc (sec_acl): Set the correct acl size. |
| * autoload.cc (FindFirstFreeAce): Add. |
| * security.h: Define ACL_DEFAULT_SIZE. |
| |
| 2003-09-26 Corinna Vinschen <corinna@vinschen.de> |
| |
| * mmap.cc (munmap): Use correct address and length parameters when |
| calling fhandler's munmap. |
| |
| 2003-09-26 Corinna Vinschen <corinna@vinschen.de> |
| |
| * spawn.cc (spawn_guts): Set errno to E2BIG if command line is |
| longer than CreateProcess allows (32K). |
| |
| 2003-09-25 Christopher Faylor <cgf@redhat.com> |
| |
| * dtable.cc (build_fh_name): Return pointer to a 'nodevice' rather than |
| a NULL pointer or suffer SEGVs with invalid paths. |
| |
| 2003-09-25 Christopher Faylor <cgf@redhat.com> |
| |
| * fork.cc (fork_parent): Detect failed pinfo constructor. |
| * spawn.cc (spawn_guts): Don't overwrite ENOMEM errno on failed pinfo |
| constructor. |
| |
| 2003-09-25 Christopher Faylor <cgf@redhat.com> |
| |
| * spawn.cc (spawnve): Remove vfork short circuit and let caller deal |
| with error return. |
| |
| 2003-09-25 Pierre Humblet <pierre.humblet@ieee.org> |
| Christopher Faylor <cgf@redhat.com> |
| |
| * spawn.cc (spawn_guts): Catch potential error from pinfo.remember. |
| Change debug messages to make sense. Pass correct value to pinfo |
| constructor. Ensure cleanup after errors. Always reimpersonate after |
| errors. |
| |
| 2003-09-25 Christopher Faylor <cgf@redhat.com> |
| |
| * spawn.cc (spawn_guts): Move system signal handling stuff after |
| CreateProcess error check. |
| |
| 2003-09-25 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * shared_info.h: Update CURR_USER_MAGIC, CURR_SHARED_MAGIC and |
| SHARED_INFO_CB. |
| (mount_info::cb): Delete. |
| (mount_info::version): Delete. |
| (shared_info::delqueue): Delete. |
| * Makefile.in: Do magic for USER_MAGIC, class user_info, instead |
| of for mount_info. |
| |
| 2003-09-24 Christopher Faylor <cgf@redhat.com> |
| |
| * include/tzfile.h: Add some missing entries. |
| |
| 2003-09-24 Christopher Faylor <cgf@redhat.com> |
| |
| * include/paths.h: Add some missing entries. |
| |
| 2003-09-24 Christopher Faylor <cgf@redhat.com> |
| |
| * shared_info.h (CURR_MOUNT_MAGIC): Fix. |
| |
| * sigproc.cc (sigpacket): New structure. |
| (sig_send): Fill out sigpacket structure to send to signal thread |
| rather than racily sending separate packets. |
| (wait_sig): Use sigpacket structure to receive info from signal sender. |
| |
| 2003-09-24 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * shared_info.h (class user_info): New. |
| (cygwin_user_h): New. |
| (user_shared): New. |
| (enum shared_locations): Replace SH_MOUNT_TABLE by SH_USER_SHARED; |
| (mount_table): Change from variable to macro. |
| * shared.cc: Use sizeof(user_info) in "offsets". |
| (user_shared_initialize): Add "reinit" argument to indicate need |
| to reinitialize the mapping. Replace "mount_table" by "user_shared" |
| throughout. Call user_shared->mountinfo.init and |
| user_shared->delqueue.init. |
| (shared_info::initialize): Do not call delqueue.init. |
| (memory_init): Add argument to user_shared_initialize. |
| * child_info.h (child_info::mount_h): Delete. |
| (child_info::user_h): New. |
| * sigpproc.cc (init_child_info): Use user_h instead of mount_h. |
| * dcrt0.cc (_dll_crt0): Ditto. |
| * fhandler_disk_file.cc (fhandler_disk_file::close): Use |
| user_shared->delqueue instead of cygwin_shared->delqueue. |
| * fhandler_virtual.cc (fhandler_virtual::close): Ditto. |
| * syscalls.cc (close_all_files): Ditto. |
| (unlink): Ditto. |
| (seteuid32): Add argument to user_shared_initialize. |
| |
| 2003-09-24 Christopher Faylor <cgf@redhat.com> |
| |
| * devices.cc: New file. |
| * devices.gperf: New file. |
| * devices.shilka: New file. |
| * cygwin-gperf: New file. |
| * cygwin-shilka: New file. |
| * fhandler_fifo.cc: New file. |
| * fhandler_nodevice.cc : New file. |
| |
| 2003-09-24 Christopher Faylor <cgf@redhat.com> |
| |
| Reorganize headers so that path.h precedes fhandler.h throughout. |
| Remove device argument and unit arguments from fhandler constructors |
| throughout. Remove pc arguments to fhandler functions and use internal |
| pc element instead, throughout. Use dev element in pc throughout. Use |
| major/minor elements rather than units and device numbers previously in |
| fhandler class. Use correct methods for fhandler file names rather |
| than directly accessing file name variables, throughout. |
| * Makefile.in (DLL_OFILES): Add devices.o, fhandler_fifo.o |
| * dcrt0.cc (dll_crt0_1): Call device::init. |
| * devices.h: Renumber devices based on more Linux-like major/minor |
| numbers. Add more devices. Declare standard device storage. |
| (device): Declare struct. |
| * dir.cc (opendir): Use new 'build_fh_name' to construct a fhandler_* |
| type. |
| * dtable.cc (dtable::get_debugger_info): Ditto. |
| (cygwin_attach_handle_to_fd): Ditto. |
| (dtable::release): Remove special FH_SOCKET case in favor of generic |
| "need_fixup_before" test. |
| (dtable::init_std_file_from_handle): Use either build_fh_dev or |
| build_fh_name to build standard fhandler. |
| (dtable::build_fh_name): Renamed from dtable::build_fhandler_from_name. |
| Move out of dtable class. Don't accept a path_conv argument. Just |
| build it here and pass it to: |
| (build_fh_pc): Renamed from dtable::build_fhandler. Move out of dtable |
| class. Use intrinsic device type in path_conv to create new fhandler. |
| (build_fh_dev): Renamed from dtable::build_fhandler. Move out of |
| dtable class. Simplify arguments to just take new 'device' type and a |
| name. Just return pointer to fhandler rather than trying to insert |
| into dtable. |
| (dtable::dup_worker): Accommodate above build_fh name changes. |
| (dtable::find_fifo): New (currently broken) function. |
| (handle_to_fn): Use strechr for efficiency. |
| * dtable.h: Reflect above build_fh name changes and argument |
| differences. |
| (fhandler_base *&operator []): Return self rather than copy of self. |
| * fhandler.cc (fhandler_base::operator =): Use pc element to set |
| normalized path. |
| (fhandler_base::set_name): Ditto. |
| (fhandler_base::raw_read): Use method to access name. |
| (fhandler_base::write): Correctly use get_output_handle rather than |
| get_handle. |
| (handler_base::device_access_denied): New function. |
| (fhandler_base::open): Eliminate pc argument and use pc element of |
| fhandler_base throughout. |
| (fhandler_base::fstat): Detect if device is based in filesystem and use |
| fstat_fs to calculate stat, if so. |
| (fhandler_base::fhandler_base): Eliminate handling of file names and, |
| instead, just free appropriate component from pc. |
| (fhandler_base::opendir): Remove path_conv parameter. |
| * fhandler.h: Remove all device flags. |
| (fhandler_base::pc): New element. |
| (fhandler_base::set_name): Change argument to path_conv. |
| (fhandler_base::error): New function. |
| (fhandler_base::exists): New function. |
| (fhandler_base::pc_binmode): New function. |
| (fhandler_base::dev): New function. |
| (fhandler_base::open_fs): New function. |
| (fhandler_base::fstat_fs): New function. |
| (fhandler_base::fstat_by_name): New function. |
| (fhandler_base::fstat_by_handle): New function. |
| (fhandler_base::isfifo): New function. |
| (fhandler_base::is_slow): New function. |
| (fhandler_base::is_auto_device): New function. |
| (fhandler_base::is_fs_special): New function. |
| (fhandler_base::device_access_denied): New function. |
| (fhandler_base::operator DWORD&): New operator. |
| (fhandler_base::get_name): Return normalized path from pc. |
| (fhandler_base::get_win32_name): Return windows path from pc. |
| (fhandler_base::isdevice): Renamed from is_device. |
| (fhandler_base::get_native_name): Return device format. |
| (fhandler_fifo): New class. |
| (fhandler_nodevice): New class. |
| (select_stuff::device_specific): Remove array. |
| (select_stuff::device_specific_pipe): New class element. |
| (select_stuff::device_specific_socket): New class element. |
| (select_stuff::device_specific_serial): New class element. |
| (select_stuff::select_stuff): Initialize new elements. |
| * fhandler_disk_file.cc (fhandler_base::fstat_by_handle): Move to base |
| class from fhandler_disk_file. |
| (fhandler_base::fstat_by_name): Ditto. |
| (fhandler_base::fstat_by_name): Ditto. |
| (fhandler_disk_file::open): Move most functionality into |
| fhandler_base::open_fs. |
| (fhandler_base::open_fs): New function. |
| (fhandler_disk_file::close): Move most functionality into |
| fhandler_base::close_fs. |
| (fhandler_base::close_fs): New function. |
| * fhandler_mem.cc (fhandler_dev_mem::open): Use device name in |
| debugging output. |
| * fhandler_socket.cc (fhandler_socket::set_connect_secret): Copy |
| standard urandom device into appropriate place. |
| (fhandler_socket::accept): Reflect change in fdsock return value. |
| * fhandler_tty.cc: See "throughouts" above. |
| * net.cc: Accommodate fdsock change throughout. |
| (fdsock): Return success or failure, accept fd argument and device |
| argument. |
| * path.cc (symlink_info::major): New element. |
| (symlink_info::minor): New element. |
| (symlink_info::parse_device): Declare new function. |
| (fs_info::update): Accommodate changes in path_conv class. |
| (path_conv::fillin): Ditto. |
| (path_conv::return_and_clear_normalized_path): Eliminate. |
| (path_conv::set_normalized_path): New function. |
| (path_conv::path_conv): Set info in dev element. Use path_conv methods |
| Check for FH_FS rather than FH_BAD to indicate when to fill in |
| filesystem stuff. where appropriate rather than direct access. Use |
| set_normalized_path to set normalized path. |
| (windows_device_names): Eliminate. |
| (get_dev): Ditto. |
| (get_raw_device_number): Ditto. |
| (get_device_number): Ditto. |
| (win32_device_name): Call new device name parser to do most of the |
| heavy lifting. |
| (mount_info::conv_to_win32_path): Fill in dev field as appropriate. |
| (symlink_worker): Handle new device files. |
| (symlink_info::check): Ditto. |
| (symlink_info::parse_device): Define new function. |
| * path.h (executable_states): Move here from fhandler.h. |
| (fs_info): Rename variables to *_storage and create methods for |
| accessing same. |
| (path_conv): Add dev element, remove devn and unit and adjust inline |
| methods to accommodate. |
| (set_normalized_path): Declare new function. |
| * pinfo.cc (_pinfo::commune_recv): Add broken support for handling |
| fifos. |
| (_pinfo::commune_send): Ditto. |
| * pipe.cc (fhandler_pipe::close): check for existence of handle before |
| closing it. |
| (handler_pipe::create): Rename from make_pipe. Change arguments to |
| accept fhandler_pipe array. Accommodate fifos. |
| (pipe): Rework to deal with fhandler_pipe::create changes. |
| (_pipe): Ditto. |
| * select.cc: Use individual device_specific types throughout rather |
| than indexing with obsolete device number. |
| (set_bits): Use is_socket call rather than checking device number. |
| * shared_info.h (CURR_MOUNT_MAGIC): Update. |
| (conv_to_win32_path): Reflect addition of device argument. |
| * syscalls.cc (mknod_worker): New function. |
| (open): Use build_fh_name to build fhandler. |
| (chown_worker): Detect if this is an 'auto' device rather than an |
| on-filesystem device and handle appropriately. |
| (chmod_device): New function. |
| (chmod): Detect if this is an 'auto' device rather than an |
| on-filesystem device and handle appropriately. Use chmod_device to set |
| mode of in-filesystem devices. |
| (stat_worker): Eliminate path_conv argument. Call build_fh_name to |
| construct fhandler. Use fh->error() rather than pc->error to detect |
| errors in fhandler construction. |
| (access_worker): New function pulled from access. Accommodate |
| in-filesystem devices. |
| (access): Use access_worker. |
| (fpathconf): Detect if this is an 'auto' device rather than an |
| on-filesystem device and handle appropriately. |
| (mknod_worker): New function. |
| (mknod32): New function. |
| (chroot): Free normalized path -- assuming it was actually cmalloced. |
| * tty.cc (create_tty_master): Tweak for new device class. |
| (tty::common_init): Ditto. |
| * winsup.h (stat_worker): Remove. |
| (symlink_worker): Declare. |
| |
| * exceptions.cc (set_process_mask): Just call sig_dispatch_pending and |
| don't worry about pending_signals since sig_dispatch_pending should |
| always do the right thing now. |
| (sig_handle): Reorganize SIGCONT handling to more closely conform to |
| SUSv3. |
| * pinfo.h: Move __SIG enum to sigproc.h. |
| (PICOM_FIFO): New enum element. |
| (_pinfo): Remove 'thread2signal' stuff throughout class. |
| (_pinfo::commune_send): Make varargs. |
| (_pinfo::sigtodo): Eliminate. |
| (_pinfo::thread2signal): Ditto. |
| * signal.cc (kill_worker): Eliminate call to setthread2signal. |
| * sigproc.cc (local_sigtodo): Eliminate. |
| (getlocal_sigtodo): Ditto. |
| (sigelem): New class. |
| (pending_signals): New class. |
| (sigqueue): New variable, start of sigqueue linked list. |
| (sigcatch_nonmain): Eliminate. |
| (sigcatch_main): Eliminate. |
| (sigcatch_nosync): Eliminate. |
| (sigcomplete_nonmain): Eliminate. |
| (pending_signals): Eliminate. |
| (sig_clear): Call signal thread to clear pending signals, unless |
| already in signal thread. |
| (sigpending): Call signal thread to get pending signals. |
| (sig_dispatch_pending): Eliminate use of pending_signals and just check |
| sigqueue. |
| (sigproc_terminate): Eliminate all of the obsolete semaphore stuff. |
| Close signal pipe handle. |
| (sig_send): Eliminate all of the obsolete semaphore stuff and use pipe |
| to send signals. |
| (getevent): Eliminate. |
| (pending_signals::add): New function. |
| (pending_signals::del): New function. |
| (pending_signals::next): New function. |
| (wait_sig): Eliminate all of the obsolete semaphore stuff. Use pipe to |
| communicate and maintain a linked list of signals. |
| * sigproc.h: Move __SIG defines here. Add __SIGPENDING. |
| (sig_dispatch_pending): Remove "C" specifier. |
| (sig_handle): Accept a mask argument. |
| * thread.cc: Remove signal handling considerations throughout. |
| |
| 2003-09-22 Christopher Faylor <cgf@redhat.com> |
| |
| * dcrt0.cc (do_exit): Eliminate "C" linkage. Call events_terminate |
| early. |
| (exit_states): Move out of source file into header file. |
| * winsup.h: Move exit_states here. Remove "C" linkage from do_exit |
| declaration. |
| * debug.cc (lock_debug): Remove explicit (and incorrect) external for |
| exit_state. |
| * sigproc.cc (sig_dispatch_pending): Don't flush signals if exiting. |
| |
| 2003-09-20 Christopher Faylor <cgf@redhat.com> |
| |
| * spawn.cc (pthread_cleanup): New struct. |
| (do_cleanup): New function. |
| (spawn_guts): Initialize struct for pthread_cleanup handling to ensure |
| proper restoration of signals if/when thread is cancelled. Restore |
| settings using pthread_cancel_pop. |
| |
| 2003-09-19 Christopher Faylor <cgf@redhat.com> |
| |
| * include/cygwin/version.h: Bump DLL minor number to 6. |
| |
| 2003-09-19 Christopher Faylor <cgf@redhat.com> |
| |
| * thread.h (__reent_t::init_clib): Declare new function. |
| * thread.cc (__reent_t::init_clib): Define new function. |
| (pthread::thread_init_wrapper): Use __reent_t::init_clib to init local |
| clib storage and set std{in,out,err} appropriately. |
| |
| 2003-09-19 Christopher Faylor <cgf@redhat.com> |
| |
| * syscalls.cc (system): Strip signal considerations from here so that |
| they are not inherited by a child process. |
| * spawn.cc (spawn_guts): Handle system() signal stuff here. |
| * winsup.h (_P_SYSTEM): Define. |
| |
| 2003-09-18 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_tty.cc (fhandler_pty_master::process_slave_output): |
| Handle buf == NULL as flushing the buffer. |
| (fhandler_tty_slave::read): Handle ptr == NULL as flushing the buffer. |
| (fhandler_tty_slave::tcflush): Implement input queue flushing by |
| calling read with NULL buffer. |
| (fhandler_pty_master::tcflush): Ditto, calling process_slave_output. |
| * termios.cc (tcflush): Check for legal `queue' value. Return |
| EINVAL otherwise. |
| |
| 2003-09-16 Brian Ford <ford@vss.fsi.com> |
| |
| * syscalls.cc (gethostid): Add lpFreeBytesAvailable argument to |
| GetDiskFreeSpaceEx call since NT4 requires it. |
| |
| 2003-09-16 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_process.cc (fhandler_process::fill_filebuf): Open pinfo with |
| PID_MAP_RW. |
| * sigproc.cc (talktome): Ditto for winpids. |
| |
| 2003-09-16 Christopher Faylor <cgf@redhat.com> |
| |
| * pinfo.h (winpids::pid_access): New element. |
| (winpids::winpids): Rejigger to set pinfo_access. |
| * pinfo.cc (winpids::add): Try to open shared memory region with |
| supplied pinfo_access first, then default to readonly. |
| * fhandler_termios.cc (tty_min::kill_pgrp): When getting list of pids |
| to work with, suggest opening with PID_MAP_RW. |
| * signal.cc (kill_pgrp): Ditto. |
| * sigproc.cc (sig_send): Perform a write check on todo prior to |
| attempting to increment it. Return EACCES if we can't write to it. |
| |
| 2003-09-16 Corinna Vinschen <corinna@vinschen.de> |
| |
| * cygheap.cc (cygheap_user::set_saved_sid): Rename from set_orig_sid. |
| * cygheap.h (class cygheap_user): Rename orig_psid, orig_uid and |
| orig_gid to saved_psid, saved_uid and saved_gid respectively. |
| Rename methods orig_sid and set_orig_sid to saved_sid and set_saved_sid |
| respectively. |
| * sec_helper.cc (sec_acl): Accommodate above changes. |
| * spawn.cc (spawn_guts): Ditto. |
| * uinfo.cc (uinfo_init): Ditto. |
| |
| 2003-09-15 Christopher Faylor <cgf@redhat.com> |
| |
| * getopt.c (opterr): Reinstate initialization. |
| (optind): Ditto. |
| (optopt): Ditto. |
| * pinfo.cc: Include cygheap.h or suffer compile error. |
| * shared.h: Reset magic number. |
| |
| 2003-09-15 Christopher Faylor <cgf@redhat.com> |
| |
| * exceptions.cc (sig_handle_tty_stop): Fix boneheaded mistake by using |
| correct check for parent state rather than inverted check. |
| |
| 2003-09-15 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * security.h (__sec_user): Add "access2" argument. |
| (sec_acl): Add "original" and "access2" arguments. |
| (sec_user): Add "sid2" and "access2" argument. Remove dependence on |
| allow_ntsec. |
| (sec_user_nih): Ditto. |
| * sec_helper.cc (__sec_user): Add "has_security" test. |
| Call sec_acl with new arguments, letting it handle original_sid. |
| (sec_acl): Add "original" and "access2" arguments. Handle original_sid |
| depending on flag but avoiding duplicates. Use "access2" for sid2. |
| * pinfo.cc (pinfo::init): Use security attributes created by sec_user |
| when creating the mapping. |
| * security.cc (create_token): Adjust arguments in call to sec_acl. |
| Call sec_user instead of __sec_user. |
| * syscall.cc (seteuid32): Adjust arguments in call to sec_acl. Remove |
| now unnecessary test. Remove useless conversions to psid. |
| * dcrt0.cc (dll_crt0_1): Call cygsid::init before pinfo_init. |
| |
| 2003-09-13 Christopher Faylor <cgf@redhat.com> |
| |
| * Makefile.in: Make malloc_wrapper -fomit-frame-pointer. |
| |
| * cygwin.din: Remove extraneous mallinfo definition. |
| |
| * dcrt0.cc (quoted): Use strechr for efficiency. |
| |
| * fhandler.cc (fhandler_base::write): Correctly use get_output_handle |
| rather than get_handle. |
| (fhandler_base::lseek): Use method for accessing name in debug output. |
| |
| 2003-09-13 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_disk_file.cc (path_conv::ndisk_links): Fix potential |
| off-by-one problem when first file in a directory is a directory. |
| |
| 2003-09-13 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * include/sys/cygwin.h: Rename PID_UNUSED to PID_MAP_RW. |
| * pinfo.cc (pinfo_init): Initialize myself->gid. |
| (pinfo::init): Create the "access" variable, set it appropriately and |
| use it to specify the requested access. |
| * exceptions.cc (sig_handle_tty_stop): Add PID_MAP_RW in pinfo parent. |
| * signal.cc (kill_worker): Ditto for pinfo dest. |
| * syscalls.cc (setpgid): Ditto for pinfo p. |
| |
| 2003-09-13 Christopher Faylor <cgf@redhat.com> |
| |
| * include/cygwin/version.h: Bump DLL minor number to 5. |
| |
| 2003-09-12 Christopher Faylor <cgf@redhat.com> |
| |
| * thread.cc (MTinterface::fixup_after_fork): Remove code which |
| potentially overwrote _impure pointer with contents of thread which |
| invoked fork since this eliminates important information like the |
| pointer to the atexit queue. |
| |
| 2003-09-12 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_disk_file.cc (path_conv::ndisk_links): Fix problem where |
| search characters overwrote the path instead of being tacked on the |
| end. |
| |
| 2003-09-12 Christopher Faylor <cgf@redhat.com> |
| |
| * dcrt0.cc (_dll_crt0): Accommodate breaking apart of early_stuff_init. |
| * exceptions.cc (early_stuff_init): Delete. |
| (init_console_handler): New function - top half of early_stuff_init. |
| (init_global_security): New function - bottom half of early_stuff_init. |
| (sig_handle): Avoid special hExeced test for SIGINT. Just terminate |
| the captive process. |
| (signal_exit): Add debugging output. |
| * fhandler_tty.cc (fhandler_tty_slave::open): Don't allocate a console |
| if one already seems to exist. Properly initialize ctrl-c handling if |
| we do allocate a console. |
| * winsup.h (early_stuff_init): Delete declaration. |
| (init_console_handler): New declaration. |
| (init_global_security): New declaration. |
| |
| 2003-09-11 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_disk_file.cc (path_conv::ndisk_links): Rename from |
| num_entries. Accept an argument and calculate any extra links needed |
| based on missing . and .. entries. |
| (fhandler_disk_file::fstat_helper): Always call pc->ndisks_links() to |
| calculate the number of links. |
| * path.h (path_conv::ndisk_links): Declare. |
| |
| 2003-09-11 Christopher Faylor <cgf@redhat.com> |
| |
| * path.cc (normalize_posix_path): Put check for '//' prefix back to |
| denote a UNC path. |
| (slash_unc_prefix_p): Remove vestige of old //c method for accessing |
| drives. |
| |
| 2003-09-11 Christopher Faylor <cgf@redhat.com> |
| |
| * dir.cc (rmdir): Add more samba workarounds. |
| |
| 2003-09-11 Corinna Vinschen <corinna@vinschen.de> |
| |
| * shared.cc (user_shared_initialize): Revert length attribute for name |
| variable to be just UNLEN + 1. |
| |
| 2003-09-10 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * shared_info.h (shared_info::initialize): Remove argument. |
| * cygheap.h (cygheap_user::init): New declaration. |
| * uinfo.cc (cygheap_user::init): New. |
| (internal_getlogin): Move functionality to cygheap_user::init. Open |
| the process token to update the group sid. |
| * shared.cc (user_shared_initialize): Get the user information from |
| cygheap->user. |
| (shared_info::initialize): Remove argument. Call cygheap->user.init |
| instead of cygheap->user.set_name. |
| (memory_init): Do not get the user name and do not pass it to |
| shared_info::initialize. |
| * registry.cc (get_registry_hive_path): Make csid a cygpsid. |
| (load_registry_hive): Ditto. |
| |
| 2003-09-10 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_disk_file.cc (num_entries): Take . and .. into account if |
| they do not exist since cygwin simulates them. |
| (fhandler_cygdrive::fstat): Ditto. |
| (fhandler_cygdrive::readdir): Don't do any specific tests on |
| __d_position when seeing if a drive exists. |
| |
| 2003-09-10 Corinna Vinschen <corinna@vinschen.de> |
| |
| * Makefile.in (DLL_OFILES): Add getopt.o and iruserok.o. |
| * cygwin.din: Export __check_rhosts_file, __rcmd_errstr, optarg, |
| opterr, optind, optopt, optreset, getopt, getopt_long, iruserok |
| and ruserok. |
| * getopt.c: Moved from lib to here. Define opt* variables as |
| dllexport. |
| * iruserok.c: Moved from lib to here. Rearrange function order. |
| Prefer using 64/32 bit functions. |
| * syscalls.cc (shell_fp): Define as struct __sFILE64. |
| (getusershell): Use fopen64 instead of fopen. |
| * winsup.h: Add declarations for seteuid32, fopen64, |
| cygwin_gethostbyname and cygwin_inet_addr. |
| * include/getopt.h: Declare opt* variables dllimport. |
| * include/cygwin/version.h: Bump API minor number. |
| |
| 2003-09-10 Christopher Faylor <cgf@redhat.com> |
| |
| * exceptions.cc (sig_handle_tty_stop): Check parent PID_NOCLDSTOP |
| rather than erroneously checking *my own* sigtodo. |
| |
| 2003-09-10 Christopher Faylor <cgf@redhat.com> |
| |
| * Makefile.in: Add some more -fomit-frame-pointer files. |
| |
| * path.cc (conv_path_list_buf_size): Free normalized_path or suffer |
| memory leak. |
| * syscalls.cc (chroot): Ditto. |
| |
| 2003-09-10 Corinna Vinschen <corinna@vinschen.de> |
| |
| * Makefile.in (DLL_OFILES): Add bsdlib.o. |
| * autoload.cc (RegisterServiceProcess): Add. |
| * bsdlib.cc: New file. |
| (daemon): New function. |
| (login_tty): Ditto. |
| (openpty): Ditto. |
| (forkpty): Ditto. |
| * cygwin.din: Export daemon, forkpty, login_tty, logwtmp, updwtmp, |
| openpty and revoke. |
| * syscalls.cc (updwtmp): New function, writing to wtmp exclusively. |
| (logwtmp): Ditto. |
| (login): Call updwtmp instead of writing to wtmp by itself. |
| (logout): Ditto. |
| * tty.cc (revoke): New funtion. |
| * include/paths.h: Define _PATH_DEVNULL. |
| * include/pty.h: New header. |
| * include/cygwin/version.h: Bump API minor number. |
| * include/sys/utmp.h: Declare logwtmp with const arguments. |
| Declare updwtmp. |
| * lib/iruserok.c: New file. |
| (ruserok): New function. |
| (iruserok): Ditto. |
| (__ivaliduser): Ditto. |
| (__icheckhost): Ditto. |
| |
| 2003-09-10 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_socket.cc (fhandler_socket::fstat): Don't use PC_POSIX. |
| |
| 2003-09-09 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * shared_info.h: Include security.h. |
| (open_shared): Add psa argument. |
| (user_shared_initialize): New declaration. |
| * security.h: Add _SECURITY_H guard. |
| (sec_user): Use sec_none in the no ntsec case. |
| * spawn.cc (spawn_guts): Remove call to load_registry_hive. |
| * syscalls (seteuid32): If warranted, call load_registry_hive, |
| user_shared_initialize and RegCloseKey(HKEY_CURRENT_USER). |
| * shared.cc (user_shared_initialize): New. |
| (open_shared): Add and use psa argument. |
| (memory_init): Move mount table initialization to |
| user_shared_initialize. Call it. |
| |
| 2003-09-09 Corinna Vinschen <corinna@vinschen.de> |
| |
| * mmap.cc (mmap64): Change address types from caddr_t to void * |
| according to SUSv3. |
| (mmap): Ditto. |
| (munmap): Ditto. |
| (msync): Ditto. |
| (mprotect): Ditto. Move to before the fhandler methods. |
| * include/sys/mman.h: Change prototypes accordingly. |
| |
| 2003-09-08 Christopher Faylor <cgf@redhat.com> |
| |
| * dcrt0.cc (dlL_crt0_1): Set __argc_safe after __argc is absolutely |
| know to be set. |
| * exceptions.cc (sig_handle_tty_stop): Don't reset sigCONT event since |
| it is reset automatically. |
| * fork.cc (fork): Remove obsolete usage of PID_SPLIT_HEAP. |
| * include/sys/cygwin.h: Ditto. |
| * sigproc.cc (sig_send): Use sigframe init method to set frame since it |
| checks for previous ownership of the frame. |
| * sigproc.h (sigframe::init): Accept an "is_exception" argument. |
| |
| 2003-09-08 Christopher Faylor <cgf@redhat.com> |
| |
| * dir.cc (readdir): Reinstate setting of old ino field for legacy |
| applications. |
| * dirent.h (dirent): Rename unused field to __ino32. |
| |
| 2003-09-08 Christopher Faylor <cgf@redhat.com> |
| |
| * passwd.cc (getpwnam_r): Initialize pw_comment field. |
| |
| 2003-09-08 Christopher Faylor <cgf@redhat.com> |
| |
| * passwd.cc (getpwuid_r32): Initialize pw_comment field. |
| |
| 2003-09-08 Christopher Faylor <cgf@redhat.com> |
| |
| * sigproc.cc (wait_sig_inited): Remove assertion since it is racy. |
| |
| 2003-09-08 Corinna Vinschen <corinna@vinschen.de> |
| |
| * cygwin.din: Export endusershell, getusershell and setusershell. |
| * syscalls.cc (getusershell): New function. |
| (setusershell): Ditto. |
| (endusershell): Ditto. |
| * include/cygwin/version.h: Bump API minor number. |
| |
| 2003-09-08 Nicholas Wourms <nwourms@netscape.net> |
| |
| * cygwin.din: Export argz_add argz_add_sep argz_append argz_count |
| argz_create argz_create_sep argz_delete argz_extract argz_insert |
| argz_next argz_replace argz_stringify envz_add envz_entry envz_get |
| envz_merge envz_remove envz_strip |
| * include/cygwin/version.h: Bump api minor number. |
| |
| 2003-09-07 Christopher Faylor <cgf@redhat.com> |
| |
| Throughout, remove __d_u.__d_data fields from DIR structure. |
| * include/sys/dirent.h (dirent): Remvoe old_d_ino. |
| (DIR): Make __d_dirhash a 64 bit value. Remove __d_data and __d_u. |
| Add __flags. |
| * dir.cc (opendir_states): New enum. |
| (opendir): Clear new DIR __flags field. |
| (readdir): Fill in '.' and '..' entries if we hit EOF and we haven't |
| seen them already. Nuke setting of old_d_ino. |
| (rewinddir): Reset DIR __flags field. |
| (seekdir64): Ditto. |
| * fhandler_disk_file.cc (fhandler_cygdrive::fhandler_cygdrive): Remove |
| special handling of "." and ".." since they are now handled |
| automatically. |
| |
| 2003-09-07 Christopher Faylor <cgf@redhat.com> |
| |
| * include/cygwin/in.h: Don't define ipv6 stuff unless we call for it |
| specifically since it isn't really implemented yet. |
| |
| 2003-09-07 Christopher Faylor <cgf@redhat.com> |
| |
| * cygheap.cc (_csbrk): More left coercion cleanup. |
| * fhandler_tty.cc (fhandler_tty_slave::read): Ditto. |
| (fhandler_tty_slave::write): Ditto. |
| * fhandler_windows.cc (fhandler_windows::read): Ditto. |
| * heap.cc (sbrk): Ditto. |
| |
| 2003-09-07 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * signal.cc (nanosleep): Improve test for valid values. Round delay up |
| to resolution. Fix test for negative remainder. Use timeGetTime |
| through gtod. |
| (sleep): Round up return value. |
| |
| 2003-09-07 Pierre Humblet <pierre.humblet@ieee.org> |
| Christopher Faylor <cgf@redhat.com> |
| |
| * hires.h (HIRES_DELAY_MAX): Define. |
| (hires_ms::minperiod): Declare static. |
| (hires_ms::resolution): New. |
| (hires_ms::dmsecs): New. |
| (hires_ms::prime): Return UINT. |
| (gtod): Declare. |
| * times.cc (hires_ms::prime): Always calculate minperiod and set it to |
| 1 in case of failure. Return minperiod. |
| (hires_ms::resolution): Define. |
| (hires_ms::~hires_ms): Delete. |
| (hires_ms::usecs): Check minperiod to prime. |
| (gtod) Define as global. |
| |
| 2003-09-06 Christopher Faylor <cgf@redhat.com> |
| |
| Remove left coercion throughout. |
| |
| 2003-09-04 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * hires.h (hires_ms::~hires_ms): Delete declaration. |
| * times.cc (hires_ms::~hires_ms): Delete definition.. |
| |
| 2003-09-04 Christopher Faylor <cgf@redhat.com> |
| |
| * dcrt0.cc (__argc_safe): New variable. |
| (dll_crt0_1): Store argc in __argc_safe, which will theoretically |
| remain untouched by the user. |
| * fhandler_console.cc (fhandler_console::read): Silence some compiler |
| warnings. |
| * fhandler_raw.cc (fhandler_dev_raw::raw_read): Ditto. |
| * pinfo.cc (_pinfo::commune_recv): Carefully bound argv scan and check |
| for potentially bad pointers since user could have set argv cell to |
| anythinw. |
| * cygheap.h (CYGHEAPSIZE): Bump up size. |
| |
| 2003-09-04 Corinna Vinschen <corinna@vinschen.de> |
| |
| * sysconf.cc (sysconf): Return more accurate value for _SC_AVPHYS_PAGES. |
| |
| 2003-09-04 Corinna Vinschen <corinna@vinschen.de> |
| |
| * mmap.cc: Restructure. Add, remove and rewrite comments throughout |
| for better readability. Change function names for better |
| understanding. |
| (MAP_SET): Accommodate name change from map_map_ to page_map_. |
| (MAP_CLR): Ditto. |
| (MAP_ISSET): Ditto. |
| (mmap_record::page_map_): Rename from page_map_. |
| (mmap_record::get_map): Remove. |
| (mmap_record::alloc_page_map): Rename from alloc_map. Return bool |
| indicating success of cygheap memory allocation. |
| (mmap_record::free_page_map): Rename from free_map. |
| (mmap_record::fixup_page_map): Rename from fixup_map. |
| (mmap_record::find_unused_pages): Rename from find_empty. |
| (mmap_record::map_pages): Rename from map_map. |
| (mmap_record::unmap_pages): Rename from unmap_map. |
| (class list): Make all class members private. |
| (list::list): Remove. |
| (list::~list): Remove. |
| (list::get_fd): New attribute reader. |
| (list::get_hash): Ditto. |
| (list::get_record): Ditto. |
| (list::add_record): Manage all allocation for mmap_records. Check |
| for failed memory allocation and return NULL if so. |
| (list::set): New function. |
| (list::del_record): Rename from erase. Return true if last mmap_record |
| has been deleted, false otherwise. Check for legal incoming index |
| value. |
| (list::erase): Remove erase/0. |
| (list::search_record): Rename from match. |
| (map::map): Remove. |
| (map::~map): Remove. |
| (map::add_list): Manage all allocation for lists. Check for failed |
| memory allocation and return NULL if so. |
| (map::get_list): New method. |
| (map::del_list): Rename from erase. Check for legal incoming index |
| value. |
| (mmap64): Check for failed mmap_record memory allocation. Return |
| with MAP_FAILED and errno set to ENOMEM if so. |
| (munmap): Rearrange loop using new list and mmap_record accessor |
| functions. Rename loop index variables for better understanding. |
| Check if list can be deleted after last mmap_record in it has been |
| deleted. |
| (msync): Rearrange loop using new list and mmap_record accessor |
| functions. Rename loop index variables for better understanding. |
| (fixup_mmaps_after_fork): Ditto. |
| |
| 2003-09-03 Christopher Faylor <cgf@redhat.com> |
| |
| * cxx.cc (new): Fix formatting. Just return result of ccalloc rather |
| than calling memset explicitly. |
| |
| 2003-09-03 Christopher Faylor <cgf@redhat.com> |
| |
| * exceptions.cc (set_process_mask): Set pending signals only when |
| signals become unmasked. |
| * sigproc.cc (pending_signals): Flip back to a global. |
| (wait_sig): Don't set pending signals when there is an armed semaphore |
| or signal is blocked. |
| |
| * shared.cc (shared_info::initialize): Add a username parameter for |
| user-mode mounts. Reorganize to try to avoid startup race. |
| (memory_init): Move some stuff into shared_info::initialize. |
| * shared_info.h (shared_info::initialize): Change declaration. |
| (CURR_SHARED_MAGIC): Update. |
| |
| 2003-09-01 Christopher Faylor <cgf@redhat.com> |
| |
| * include/cygwin/version.h: Bump DLL minor number to 4. |
| |
| 2003-09-01 Christopher Faylor <cgf@redhat.com> |
| |
| * net.cc (dup_ent): Restore check for NULL input. |
| |
| 2003-08-31 Christopher Faylor <cgf@redhat.com> |
| |
| * include/sys/cygwin.h: Don't define cygwin-specific things if |
| !__CYGWIN__. |
| |
| 2003-08-31 Christopher Faylor <cgf@redhat.com> |
| |
| * cygheap.cc (cygheap_init): Allocate space for sigaction array in |
| cygheap. |
| * cygheap.h (cygheap_types): Add HEAP_SIGS. |
| * exceptions.cc (signal_fixup_after_exec): Remove from this file. |
| * pinfo.h (pinfo::getsig): Just return global_sigs array. |
| (pinfo::sigs): Delete. |
| * sigproc.cc (signal_fixup_after_exec): Move it here. |
| (global_sigs): New global array, moved from pinfo structure. |
| (sigalloc): New function. Allocate global sigaction array here. |
| (proc_subproc): Remove copysigs call. It's automatic now. |
| * include/sys/cygwin.h (PID_NOCLDSTOP): New value. |
| * signal.cc (sigaction): Set myself->PID_NODCLDSTOP when appropriate. |
| * sigproc.h (sigalloc): Declare. |
| |
| * fnmatch.c (fnmatch): Use C90 parameters. |
| (rangematch): Ditto. |
| |
| * fhandler.cc (fhandler_base::raw_read): Use right coercion to avoid a |
| compiler warning. |
| |
| 2003-08-31 Christopher Faylor <cgf@redhat.com> |
| |
| * net.cc (dup_ent): Make debugging output consistent. |
| |
| 2003-08-31 Christopher Faylor <cgf@redhat.com> |
| |
| Use dup_ent rather than specific dup_*_ptr functions throughout. |
| * (gen_ent): Delete. |
| (dup_ent): Subsume gen_ent functionality. |
| (dup_host_ptr): Delete. |
| (dup_proto_ptr): Ditto. |
| (dup_servent_ptr): Ditto. |
| |
| 2003-08-31 Christopher Faylor <cgf@redhat.com> |
| |
| * net.cc (gen_ent): Invert sense of null check so that debug output |
| makes sense. |
| |
| 2003-08-31 Christopher Faylor <cgf@redhat.com> |
| |
| * net.cc (free_char_list): Delete. |
| (dup_addr_list): Delete. |
| (dup_char_list): Delete. |
| (free_hostent_ptr): Delete. |
| (free_protoent_ptr): Delete. |
| (free_servent_ptr): Delete. |
| (DWORD_round): New function. |
| (strlen_round): New function. Returns strlen rounded up to word size. |
| (dup_ent): New, generic function to duplicate a {host,proto,serv}ent |
| structure. |
| (gen_ent): New macro. Generates a generic dup_{host,proto,serv}ent_ptr |
| function. |
| (cygwin_getservbyname): Remove call to free_servent_ptr, pass |
| servent_buf to dup_servent_ptr. |
| (cygwin_getservbyport): Ditto. |
| (cygwin_gethostbyname): Ditto for hostent. |
| (cygwin_gethostbyaddr): Ditto. |
| (cygwin_getprotobyname): Ditto for protoent. |
| (cygwin_getprotobynumber): Ditto. |
| |
| 2003-08-31 Christopher Faylor <cgf@redhat.com> |
| |
| * Makefile.in (MALLOC_OFILES): Always fill in with correct malloc |
| object. |
| * configure.in: Fill in MALLOC_OFILES with either debugging or regular |
| malloc. |
| * configure: Regenerate. |
| * dlmalloc.c: Make various fruitless changes to attempt to get to work. |
| * dlmalloc.h: Ditto. |
| * malloc.cc (free): Check malloc pool when debugging. |
| |
| * path.cc (win32_device_name): Eliminate compiler warning. |
| |
| * sigproc.cc (sig_dispatch_pending): Remove use of was_pending. Let |
| thisframe.call_signal_handler decide if handler should be called rather |
| than using bogus was_pending check. |
| |
| * exceptions.cc (interrupt_setup): Remove accidentally checked in |
| debugging code. |
| |
| 2003-08-30 Christopher Faylor <cgf@redhat.com> |
| |
| * heap.cc (sbrk): Save rounded address in user_heap_max. |
| |
| 2003-08-30 Christopher Faylor <cgf@redhat.com> |
| |
| * sigproc.cc (sig_dispatch_pending): Remove explicit call to |
| thisframe.call_signal_handler. |
| |
| 2003-08-30 Christopher Faylor <cgf@redhat.com> |
| |
| Remove some cygserver files. |
| |
| 2003-08-28 Christopher Faylor <cgf@redhat.com> |
| |
| * sigproc.h: Make some functions regparm. |
| * sigproc.cc (checkstate): Make regparm. |
| (getevent): Change parameters in declaration, rename from getsem, make regparm. |
| (sig_send): Recognize that nosync is now an event. Remove some old |
| cruft from previous interrupt anywhere signal handler. |
| (getevent): Change parameters in definition, rename from getsem. |
| Allocate event rather than semaphore. |
| (wait_sig): Treat sigcatch_nosync as an event. |
| |
| 2003-08-28 Christopher Faylor <cgf@redhat.com> |
| |
| * exceptions.cc (sigreturn): Fix problem where old return address was |
| not properly restored for a nested signal. |
| |
| 2003-08-27 Christopher Faylor <cgf@redhat.com> |
| |
| * autoload.cc (SwitchToThread): Declare as autoload function. |
| * cygthread.h (cygthread::main_thread_id): Make public. |
| * exceptions.cc (setup_handler): Remove unneeded priority stuff. |
| Rename label to reflect what it does. Add debugging for idiotic |
| Windows NT problem. Change debugging output to include signal number. |
| * miscfuncs.cc (low_priority_sleep): If available, use SwitchToThread |
| function to give time slice to other threads. |
| * wincap.cc: Properly define have_switch_to_thread throughout. |
| * wincap.h (wincap::switch_to_thread): New element. |
| |
| 2003-08-27 Christopher Faylor <cgf@redhat.com> |
| |
| * syscalls.cc (mount): Don't check win32_path when doing cygdrive |
| mount. |
| |
| 2003-08-27 Christopher Faylor <cgf@redhat.com> |
| |
| * specdir: Correctly remove temporary directory prior to use. |
| |
| 2003-08-27 Christopher Faylor <cgf@redhat.com> |
| |
| * sigproc.cc (wait_sig): Count number of iterations through |
| 'more_signals' loop and issue a warning if DEBUGGING and excessive. |
| (WFSO): When debugging and infinite timeout, loop. |
| |
| 2003-08-26 Corinna Vinschen <corinna@vinschen.de> |
| |
| * include/cygwin/stat.h: Allow definition of internal stat structures |
| also when compiling newlib. |
| |
| 2003-08-25 Christopher Faylor <cgf@redhat.com> |
| |
| Throughout, change USE_CYGSERVER to USE_SERVER. |
| * Makefile.in (LIBSERVER): Define and use. |
| * configure.in: Set LIBSERVER as appropriate. |
| * configure: Regenerate. |
| * acconfig.h: Regenerate. |
| * environ.cc: Rename allow_daemon to allow_server. Only recognize when |
| USE_SERVER is defined. |
| |
| 2003-08-23 Christopher Faylor <cgf@redhat.com> |
| |
| * syscalls.cc (_remove_r): Define. |
| |
| 2003-08-22 Corinna Vinschen <corinna@vinschen.de> |
| |
| * cygheap.h (enum cygheap_types): Add HEAP_MMAP. |
| (CYGHEAPSIZE): Add another 64K. |
| * mmap.cc: Use cmalloc, ccalloc and crealloc with HEAP_MMAP type |
| throughout. |
| |
| 2003-08-22 Christopher Faylor <cgf@redhat.com> |
| |
| * cygheap.cc (user_heap_info::max): New field. |
| * heap.cc (heap_init): Save pointer to end of heap reserved memory. |
| (sbrk): Don't attempt to commit memory beyond end of heap reserved |
| memory. Attempt to honor comment and reserve commitbytes if heapchunk |
| fails. |
| |
| 2003-08-20 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * exceptions.cc (sigreturn): Don't clobber ebp in recursive signal |
| calls. |
| |
| 2003-08-22 Christopher Faylor <cgf@redhat.com> |
| |
| * exceptions.cc (sig_handle): Change so that default signals indicate |
| success. |
| |
| 2003-08-21 Christopher Faylor <cgf@redhat.com> |
| |
| * sigproc.cc (wait_sig): Remove redundant test in do/while. |
| |
| 2003-08-21 Christopher Faylor <cgf@redhat.com> |
| |
| * sigproc.cc (wait_sig): Avoid infinite loop. |
| |
| 2003-08-20 Christopher Faylor <cgf@redhat.com> |
| |
| * speclib: Reenable removal of temp files. |
| |
| 2003-08-20 Christopher Faylor <cgf@redhat.com> |
| |
| * miscfuncs.cc (low_priority_sleep): Sleep at same priority as main |
| thread. |
| * sigproc.cc (wait_sig): Keep looping if there are more signals to |
| consider and we are flushing signals. |
| (sig_send): Put nonsync signals in the correct bucket. |
| |
| 2003-08-20 Christopher Faylor <cgf@redhat.com> |
| |
| * speclib: Fix created lib to avoid "File truncated" problems. |
| |
| 2003-08-20 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * exceptions.cc (interrupt_setup): Set sigsave.sig last to avoid a |
| race. |
| |
| 2003-08-20 Christopher Faylor <cgf@redhat.com> |
| |
| * sigproc.cc (wait_sig): Ensure that myself->getsigtodo array is |
| flushed on a __SIGFLUSH. |
| |
| 2003-08-20 Pierre Humblet <pierre.humblet@ieee.org> |
| Christopher Faylor <cgf@redhat.com> |
| |
| * exceptions.cc (_sigreturn): Handle nested signals without growing the |
| stack. |
| |
| 2003-08-19 Christopher Faylor <cgf@redhat.com> |
| |
| * exceptions.cc (pending_signals): Remove unneeded declaration. |
| * sigproc.cc (pending_signals): Make static. |
| (wait_sig): Use defined values rather than integers for rc. Never scan |
| both todo arrays as this could cause hangs if signals arrive from two |
| different sources. Rename saw_pending_signals to saw_failed_interrupt. |
| Exit loop when signal found. Enter low-priority sleep, if necessary, |
| after finished signalling completion. Set pending_signals when blocked |
| (from Pierre Humblet). |
| |
| 2003-08-19 Christopher Faylor <cgf@redhat.com> |
| |
| * signal.cc (sigpending): Move. |
| * sigproc.cc (sigpending): To here. |
| (getlocal_sigtodo): Return process-local signal array. |
| (sigpending): Accommodate new process-local signal array. |
| (sig_send): Ditto. |
| (sig_set_pending): Ditto. |
| (wait_sig): Ditto. |
| |
| 2003-08-19 Christopher Faylor <cgf@redhat.com> |
| |
| Throughout, eliminate argument to sig_dispatch_pending. |
| * exceptions.cc (setup_handler): Move non-interruptible condition |
| handling (back) to wait_sig. |
| (set_process_mask): Don't worry about calling sig_dispatch_pending from |
| sigthread since it is detected in the function anyway. |
| (sig_handle): Eliminate thisproc arg. Don't call sig_dispatch_pending |
| on SIGCONT since that should happen automatically. |
| * sigproc.cc (sig_dispatch_pending): Eliminate justwake argument. Just |
| return when called from sigthread. |
| (wait_sig): Change some variables to bool. Change inner while to an |
| if. Move uninterruptible signal handling here. |
| (sigproc_terminate): Don't call sig_dispatch_pending. Just increment |
| semaphore on exit. |
| |
| * speclib: Use slightly different (but still flawed) method for |
| determining symbols to extract from libraries. |
| |
| 2003-08-18 Christopher Faylor <cgf@redhat.com> |
| |
| * exceptions.cc (sigdelayed): Fix race where signal handler could get |
| the wrong mask (as suggested by Pierre Humblet). |
| |
| 2003-08-18 Christopher Faylor <cgf@redhat.com> |
| |
| * path.cc (mount): Add null/empty check for input parameters. |
| (umount): Add null/empty check for input parameters. |
| |
| 2003-08-17 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * grp.cc (read_group): Revert previous change. |
| * uinfo.cc (pwdgrp::load): Always reset curr_lines. |
| |
| 2003-08-17 Corinna Vinschen <corinna@vinschen.de> |
| |
| * errno.cc (errmap): Map ERROR_INVALID_BLOCK_LENGTH to EIO. |
| * fhandler_raw.cc (fhandler_dev_raw::raw_read): Set more accurate |
| errnos instead of EACCES. |
| (fhandler_dev_raw::raw_write): Ditto. |
| |
| 2003-08-17 Christopher Faylor <cgf@redhat.com> |
| |
| * path.cc (special_name): Accommodate all special names with |
| extensions. |
| |
| 2003-08-15 Corinna Vinschen <corinna@vinschen.de> |
| |
| * mmap.cc (mmap64): Avoid crash if file size is less than requested |
| map length. |
| |
| 2003-08-13 Igor Pechtchanski <pechtcha@cs.nyu.edu> |
| |
| * path.cc (special_name): Add checks for some specials followed by |
| a "." and a FIXME comment. |
| |
| 2003-08-13 Corinna Vinschen <corinna@vinschen.de> |
| |
| * cygwin.din: Accommodate change from cygwin_lstat to lstat. |
| * syscalls.cc: Add defines to avoid declaration issues when |
| renaming cygwin_lstat back to lstat. |
| (lstat): Reverted name change from cygwin_lstat. |
| |
| 2003-08-12 Corinna Vinschen <corinna@vinschen.de> |
| |
| * include/sys/param.h (NBBY): Define if not defined. |
| |
| 2003-08-12 Nicholas Wourms <nwourms@netscape.net> |
| |
| * include/sys/param.h (setbit): Add new bitmap related macro. |
| (clrbit): Likewise. |
| (isset): Likewise. |
| (isclr): Likewise. |
| (howmany): Add new counting/rounding macro. |
| (rounddown): Likewise. |
| (roundup): Likewise. |
| (roundup2): Likewise. |
| (powerof2): Likewise |
| (MIN): Add macro for calculating min. |
| (MAX): Add macro for calculating max. |
| |
| 2003-08-09 Christopher Faylor <cgf@redhat.com> |
| |
| * include/cygwin/version.h: Bump DLL minor number to 3. |
| |
| 2003-08-08 Gerrit P. Haase <gp@familiehaase.de> |
| |
| * include/stdint.h: Correctly define INT32_MIN. |
| |
| 2003-08-08 David Rothenberger <daveroth@acm.org> |
| |
| * grp.cc (read_group): Set __group32.gr_mem pointer back to &null_ptr |
| after free() is called. |
| |
| 2003-08-05 Christopher Faylor <cgf@redhat.com> |
| |
| * Makefile.in: Rework to accommodate new speclib arguments. |
| * speclib: Rework to extract everything from libcygwin.a rather than |
| building things from existing object files. |
| |
| 2003-08-05 Pavel Tsekov <ptsekov@gmx.net> |
| |
| * path.cc (cygdrive_getmntent): Do not skip over drives of type |
| DRIVE_REMOVABLE. |
| |
| 2003-08-05 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler.cc (fhandler_base::lseek): Be more paranoid when |
| constructing offsets from 64 bit value. |
| * syscalls.cc (logout): Avoid temp buffer memcpy since new scheme does |
| not require it. |
| (utmp_data): Rework as a macro which returns a pointer into a buffer. |
| (getutent): Use new buffer allocation mechanism to grab a utmp buffer. |
| (getutid): Ditto. |
| (pututline): Ditto. |
| |
| 2003-08-05 Pavel Tsekov <ptsekov@gmx.net> |
| |
| * fhandler_disk_file.cc (fhandler_cygdrive::readdir): Do not change |
| 'errno' if end of directory condition is encountered as per SUSv2. |
| * fhandler_proc.cc (fhandler_proc::readdir): Ditto. |
| * fhandler_process (fhandler_process::readdir): Ditto. |
| * fhandler_registry (fhandler_registry::readdir): Ditto. |
| |
| 2003-07-30 Christopher Faylor <cgf@redhat.com> |
| |
| * dcrt0.cc (_dll_crt0): Move strace.microseconds initialization to |
| after pthread initialization. |
| (dll_crt0_1): i.e., here. |
| |
| 2003-07-28 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_base.cc (fhandler_base::readv): Rework to properly return |
| number of bytes from read. |
| |
| 2003-07-28 Christopher Faylor <cgf@redhat.com> |
| |
| * include/cygwin/version.h: Bump DLL minor number to 2. |
| |
| 2003-07-26 Christopher Faylor <cgf@redhat.com> |
| |
| * exceptions.cc (ctrl_c_handler): Send SIGHUP when events occur only if |
| there is a tty associated with the process. Send SIGHUP on |
| CTRL_LOGOFF_EVENT. |
| |
| * fhandler_tty.cc (fhandler_tty_slave::open): Adjust console open |
| handle counter regardless of whether this is a pty or tty. |
| (fhandler_tty_slave::open): Ditto. |
| (fhandler_tty_slave::dup): Ditto. |
| (fhandler_tty_common::set_close_on_exec): Ditto. |
| (fhandler_tty_master::init_console): Decrement console open handle |
| counter after init since it will now be handled by all tty open. |
| * syscalls.cc (setsid): Rework debugging output slightly. |
| |
| 2003-07-25 Christopher Faylor <cgf@redhat.com> |
| |
| * configure.in: Use 'install-sh -c'. |
| * configure: Regenerate. |
| |
| 2003-07-25 Christopher Faylor <cgf@redhat.com> |
| |
| * configure.in: Always use install-sh. |
| * configure: Regenerate. |
| |
| 2003-07-25 Christopher Faylor <cgf@redhat.com> |
| |
| * include/cygwin/socket.h: Conditionalize [AP]F_INET6 define. |
| |
| 2003-07-25 Christopher Faylor <cgf@redhat.com> |
| |
| * Makefile.in (OBSOLETE_FUNCTION): Add fdopen. |
| |
| 2003-07-25 Christopher Faylor <cgf@redhat.com> |
| |
| * cygwin.din: Export _fdopen64 |
| * Makefile.in (NEW_FUNCTIONS): Add _fdopen64 -> fdopen translation. |
| * include/cygwin/version.h: Bump api minor number. |
| |
| * ntdll.h: Remove (now) duplicate FILE_SYNCHRONOUS_IO_NONALERT |
| definition. |
| |
| 2003-07-24 Christopher Faylor <cgf@redhat.com> |
| |
| * environ.cc (check_case_init): Use strncasematch. |
| |
| * cygwin.din: Export __mempcpy. |
| * cygwin/version.h: Bump api minor number. |
| |
| 2003-07-21 Pavel Tsekov <ptsekov@gmx.net> |
| |
| * mmap.cc: Use proper format specifiers for _off64_t and size_t in |
| format strings passed to syscall_printf () and debug_printf () |
| throughout. |
| |
| 2003-07-18 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * security.cc (verify_token): Fix white space and style. |
| Use type bool instead of BOOL and char. Use alloca |
| instead of malloc and free for my_grps. |
| |
| 2003-07-17 Corinna Vinschen <corinna@vinschen.de> |
| |
| * sysconf.cc (sysconf): Fix OPEN_MAX patch. Return page size on |
| _SC_PAGESIZE again. |
| |
| 2003-07-14 Corinna Vinschen <corinna@vinschen.de> |
| |
| * cygheap.h (class cygheap_user): Use INVALID_HANDLE_VALUE as invalid |
| value for tokens. |
| * syscalls.cc (seteuid32): Ditto. Set new_token to process token if |
| process token is suitable. |
| * uinfo.cc (uinfo_init): Initialize tokens in cygheap user info |
| to INVALID_HANDLE_VALUE. |
| |
| 2003-07-14 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * cygheap.h (enum impersonation): Delete. |
| (cygheap_user::impersonation_state): Delete. |
| (cygheap_user::current_token): New. |
| (cygheap_user::issetuid): Modify to use current_token. |
| (cygheap_user::token): Ditto. |
| (cygheap_user::deimpersonate): Ditto. |
| (cygheap_user::reimpersonate): Ditto. |
| (cygheap_user::has_impersonation_tokens): Ditto. |
| (cygheap_user::close_impersonation_tokens): Ditto. |
| * security.cc (cygwin_set_impersonation_token): Always set the token. |
| (verify_token): Change type of gsid to cygpsid. |
| (get_file_attribute): Use the effective ids. |
| * syscalls.cc (seteuid32): Modify to use cygheap_user::current_token. |
| * uinfo.cc (uinfo_init) Do not set cygheap->user.impersonation_state. |
| |
| 2003-07-12 Christopher Faylor <cgf@redhat.com> |
| |
| * pinfo.cc (_pinfo::commune_send): Fix bounds test so that poll of |
| communicating pid actually stops eventually. |
| |
| 2003-07-10 Christopher Faylor <cgf@redhat.com> |
| |
| * path.cc (get_device_number): Remove special com? consideration. |
| (special_chars): Make static. |
| (special_introducers): New. |
| (special_char): Allow specified valid_chars args. |
| (fnunmunge): Handle aux-like filenames correctly. |
| (special_name): Add con, conin$, conout$. |
| (mount_item::fnmunge): Use __small_sprintf return value to calculate |
| increments. |
| |
| 2003-07-09 Christopher Faylor <cgf@redhat.com> |
| |
| * include/cygwin/version.h: Bump DLL minor number to 1. |
| |
| 2003-07-09 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_proc.cc (format_proc_stat): Use correctly sized constants |
| for filling in zeros on 98. |
| |
| 2003-07-09 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_proc.cc (fhandler_proc::fill_filebuf): Allocate more space |
| for stat buffer. |
| (format_proc_stat): Reorganize to accumulate and report on all cpus. |
| |
| 2003-07-09 Christopher Faylor <cgf@redhat.com> |
| |
| * sysconf.cc (sysconf): Return processors online rather than bitmask |
| for _SC_NPROCESSORS_ONLN. |
| |
| 2003-07-08 Christopher Faylor <cgf@redhat.com> |
| |
| * cygheap.cc (creturn): Set appropriate errno when out of memory. |
| (ccalloc): Only issue system_printf when debugging. |
| * dtable.cc (dtable::extend): Only allocate 100 * the incremental growth |
| size max. Set errno appropriately. |
| (dtable::build_fhandler): Check for error from set_name. |
| * fhandler.cc (fhandler_base::set_name): Set errno and return error on OOM. |
| * fhandler.h (fhandler_base::set_name): Change to bool. |
| * fhandler_process.cc (format_process_stat): Fix formatting. |
| * resource.cc (getrlimit): Return greater of OPEN_MAX or fd table size. |
| * sysconf.cc (sysconf): Ditto. |
| |
| 2003-07-07 Christopher Faylor <cgf@redhat.com> |
| |
| * rmsym: Don't use ranlib. |
| |
| 2003-07-07 Christopher Faylor <cgf@redhat.com> |
| |
| * newsym: Reenable removal of tmp directory. Just use ar to generate |
| archive index. |
| * Makefile.in: Don't send ranlib to newsym or rmsym. |
| |
| 2003-07-07 Christopher Faylor <cgf@redhat.com> |
| |
| * newsym: Create objects that are closer to those created by dlltool so |
| as not to confuse --export-all-symbols. |
| * rmsym: Be a little more accepting of object filenames now that |
| dlltool can create different format files. |
| |
| 2003-07-06 Christopher Faylor <cgf@redhat.com> |
| |
| * newsym: Oops. Revert below change. |
| |
| 2003-07-06 Christopher Faylor <cgf@redhat.com> |
| |
| * newsym: Use correct prefix for generating imports. |
| * pinfo.cc (_pinfo::commune_send): Don't wait forever for a response |
| from another process. |
| |
| 2003-07-06 Christopher Faylor <cgf@redhat.com> |
| |
| * syscalls.cc (gethostid): Set thread affinity so that results are |
| predictable. |
| |
| 2003-07-05 Corinna Vinschen <corinna@vinschen.de> |
| |
| * mmap.cc (list::match): Add parameters to return valid address and |
| length back to munmap(). Evaluate intersection between given |
| area and mapped area and return it, if any. |
| (mmap64): On regular files, don't allow mappings beginning beyond |
| EOF. Return with errno set to ENXIO instead. |
| (munmap): Rewrite SUSv3 conformant. Check if given memory area is |
| valid. Unmap all maps inside given memory area. Don't return error |
| if no mapping has been unmapped. |
| |
| 2003-07-05 N Stephens <nigel@mips.com> |
| |
| * fhandler.h (fhandler_socket::get_connect_state): New method to |
| return socket connection state. |
| * fhandler_socket.cc (dup): Copy socket connect state to new file |
| handle. |
| * net.cc (cygwin_rcmd): Mark file handles of sockets returned by |
| rcmd() as CONNECTED state. |
| (cygwin_rexec): Similarly for rexec(). |
| (socketpair): Mark both ends of a new socket pair as CONNECTED. |
| |
| 2003-07-04 Corinna Vinschen <corinna@vinschen.de> |
| |
| * mmap.cc (fhandler_disk_file::mmap): Fix address test. |
| |
| 2003-07-03 Christopher Faylor <cgf@redhat.com> |
| |
| * path.cc (fillout_mntent): Change "posix" to "managed". |
| |
| 2003-07-02 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler.h (FH_ENC): New enum. |
| (fhandler_base::get_encoded): New function. |
| (fhandler_base::set_encoded): Ditto. |
| * fhandler_disk_file.cc (fhandler_disk_file::opendir): Set encoded flag |
| in fhandler, as appropriate. |
| (fhandler_disk_file::readdir): Unmunge filename as appropriate based on |
| new encoding flag. |
| * path.cc (normalize_posix_path): Don't punt on files with colons. |
| (special_char): New function. |
| (mount_item::fnmunge): Ditto. |
| (fnunmunge): Ditto. |
| (special_name): Ditto. |
| (mount_item::build_win32): Avoid drive considerations when file is |
| encoded. |
| (mount_info::conv_to_win32_path): Handle encoded filenames. |
| (mount_info::conv_to_posix_path): Ditto. |
| (fillout_mntent): Add posix string when directory is encoded. |
| * path.h (fnunmunge): Declare. |
| (path_conv::is_encoded): Declare. |
| |
| 2003-07-03 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_tty.cc (fhandler_tty_slave::open): Conditionalize a little |
| more of the cygserver stuff so that ttys actually work. |
| |
| 2003-07-03 Corinna Vinschen <corinna@vinschen.de> |
| |
| * mmap.cc (mmap64): Allow MAP_FIXED with pagesize granularity (4K). |
| If a non-zero addr is given, align it to the next lower 64K boundary. |
| (fhandler_disk_file::mmap): If a non-zero address is given, try |
| mapping using the given address first. If it fails and flags is not |
| MAP_FIXED, try again with NULL address. |
| |
| 2003-07-01 Christopher Faylor <cgf@redhat.com> |
| |
| * thread.cc: Remove _MT_SAFE conditional. |
| |
| 2003-07-01 Christopher Faylor <cgf@redhat.com> |
| |
| * configure.in: Fix --enable-server option. |
| * configure: Regenerate. |
| |
| 2003-07-01 Christopher Faylor <cgf@redhat.com> |
| |
| * Makefile.in: Remove cygserver stuff. |
| * acconfig.h: Add USE_CYGSERVER define. |
| * config.h.in: Regenerate. |
| * configure.in: Add --enable-server setting. |
| * configure: Regenerate. |
| * fhandler_tty.cc (fhandler_tty_slave::open): Conditionalize |
| compilation of cygserver stuff. |
| * fork.cc (fork_child): Ditto. |
| * shm.cc: Ditto. |
| * tty.cc (tty::common_init): Ditto. |
| |
| * dcrt0.cc: Use bool rather than BOOL for CYGWIN environment variable |
| definitions. |
| * environ.cc: Ditto. |
| * ntea.cc: Ditto. |
| * security.cc: Ditto. |
| * security.h: Ditto. |
| * syscalls.cc (check_posix_perm): Remove externs that were already |
| declared in a header. |
| * winsup.h: Ditto. Declare _MT_SAFE here. Delete it someday since |
| cygwin should always be _MT_SAFE. |
| |
| 2003-07-01 Christopher Faylor <cgf@redhat.com> |
| |
| * thread.cc: Remove _MT_SAFE conditional. |
| |
| 2003-07-01 Christopher Faylor <cgf@redhat.com> |
| |
| * configure.in: Fix --enable-server option. |
| * configure: Regenerate. |
| |
| 2003-07-01 Christopher Faylor <cgf@redhat.com> |
| |
| * Makefile.in: Remove cygserver stuff. |
| * acconfig.h: Add USE_CYGSERVER define. |
| * config.h.in: Regenerate. |
| * configure.in: Add --enable-server setting. |
| * configure: Regenerate. |
| * fhandler_tty.cc (fhandler_tty_slave::open): Conditionalize |
| compilation of cygserver stuff. |
| * fork.cc (fork_child): Ditto. |
| * shm.cc: Ditto. |
| * tty.cc (tty::common_init): Ditto. |
| |
| * dcrt0.cc: Use bool rather than BOOL for CYGWIN environment variable |
| definitions. |
| * environ.cc: Ditto. |
| * ntea.cc: Ditto. |
| * security.cc: Ditto. |
| * security.h: Ditto. |
| * syscalls.cc (check_posix_perm): Remove externs that were already |
| declared in a header. |
| * winsup.h: Ditto. Declare _MT_SAFE here. Delete it someday since |
| cygwin should always be _MT_SAFE. |
| |
| 2003-06-30 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * cygheap.h (enum impersonation): New enum. |
| (cygheap_user::token): Delete. |
| (cygheap_user::impersonated): Delete. |
| (cygheap_user::external_token): New member. |
| (cygheap_user::internal_token): New member. |
| (cygheap_user::impersonation_state): New member. |
| (cygheap_user::issetuid): Modify. |
| (cygheap_user::token): New method. |
| (cygheap_user::deimpersonate): New method. |
| (cygheap_user::reimpersonate): New method. |
| (cygheap_user::has_impersonation_tokens): New method. |
| (cygheap_user::close_impersonation_tokens): New method. |
| * dtable.cc (dtable::vfork_child_dup): Use new cygheap_user methods. |
| * fhandler_socket.cc (fhandler_socket::dup): Ditto. |
| * fork.cc (fork_child): Ditto. |
| (fork_parent): Ditto. |
| * grp.cc (internal_getgroups): Ditto. |
| * security.cc (verify_token): Ditto. |
| (check_file_access): Ditto. |
| (cygwin_set_impersonation_token): Detect conflicts. Set |
| user.external_token. |
| * spawn.cc (spawn_guts): Use new cygheap_user methods. |
| * syscalls.cc (seteuid32): Rearrange to use the two tokens |
| in cygheap_user. |
| (setegid32): Use new cygheap_user methods. |
| * uinfo.cc: (internal_getlogin): Ditto. |
| |
| 2003-06-25 Doru Carastan <doru.carastan@mvista.com> |
| |
| * Makefile.in: Use INSTALL_PROGRAM to install the cygwin DLL. |
| |
| 2003-06-24 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * thread.cc (MTinterface::fixup_after_fork): Fix thread list after |
| fork. |
| (pthread::threads): Instantiate. |
| (pthread::pthread): Initialize running and suspendend. |
| Initialize next with NULL. |
| Add thread to thread list if it is not the null_pthread. |
| (pthread::~pthread): Remove thread from thread list if it is |
| not the null_pthread. |
| (pthread::postcreate): Set running flag. |
| (pthread::exit): Reset running flag. |
| (pthread::cancel): Try to cancel thread only if still running. |
| (pthread::_fixup_after_fork): Implement. |
| (pthread::detach): Check if thread is still running before detach. |
| * thread.h (pthread::running): New member. |
| (pthread::next): Ditto. |
| (pthread::fixup_after_fork): New static method. |
| (pthread::threads): New static method. |
| (pthread::_fixup_after_fork): New method. |
| |
| 2003-06-20 Christopher Faylor <cgf@redhat.com> |
| |
| * pinfo.cc (_pinfo::commune_send): Don't attempt to communicate with a |
| pure windows process. |
| |
| 2003-06-18 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * autoload.cc (GetNetworkParams): Add. |
| * net.cc (getdomainname): Call GetNetworkParams and read the |
| DhcpDomain registry value if warranted. |
| |
| 2003-06-17 Christopher Faylor <cgf@redhat.com> |
| |
| * path.cc (mount): Do more strict checking on posix path arguments. |
| |
| 2003-06-15 Christopher Faylor <cgf@redhat.com> |
| |
| Throughout, remove "include <errno.h>" from files which already include |
| cygerrno.h. |
| |
| 2003-06-15 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * include/cygwin/config.h (__DYNAMIC_REENT__): Define. |
| * include/cygwin/version.h: Bump API minor version. |
| * cygwin.din: Export __getreent |
| * cygerrno.h: Include errno.h. Fix places where _impure_ptr is used |
| directly to store the errno value. |
| * debug.cc (__set_errno): Ditto. |
| * errno.cc: Remove _RRENT_ONLY define to get errno.cc compiled. |
| * signal.cc: Rename _reent_clib to _REENT throughout. |
| * thread.h (reent_clib): Remove prototype. |
| * thread.cc (reent_clib): Rename reent_clib to __getreent. Return |
| _impure_ptr until MTinterface is initialized. |
| (reent_winsup): Fix a possible SEGV when _r == NULL. Return NULL |
| instead. |
| * MTinterface::fixup_after_fork: Switch reent back to _impure_ptr to |
| keep signal handling running when fork is called from a thread other |
| than the mainthread. |
| |
| 2003-06-12 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * thread.cc (pthread_attr_init): Revert change from 2003-06-11 |
| to return 0 if attribute is already initialized back to EBUSY. |
| (pthread_condattr_init): Ditto. |
| (pthread_rwlockattr_init): Ditto. |
| (pthread_mutexattr_init): Ditto. |
| |
| 2003-06-12 Corinna Vinschen <corinna@vinschen.de> |
| |
| * exceptions.cc (ctrl_c_handler): Don't send a signal on |
| CTRL_SHUTDOWN_EVENT. Add a comment to rationalize the patch. |
| |
| 2003-06-11 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * thread.cc (pthread_attr_init): Return 0 if attribute is already |
| initialized. |
| Fix return code if out of memory. |
| (pthread_condattr_init): Ditto. |
| (pthread_rwlockattr_init): Ditto. |
| (pthread_mutexattr_init): Return 0 if attribute is already |
| initialized. |
| |
| 2003-06-09 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * spawn.cc (spawn_guts): Call CreateProcess while impersonated, |
| when the real {u,g}ids and the groups are original. |
| Move RevertToSelf and ImpersonateLoggedOnUser to the main line. |
| * uinfo.cc (uinfo_init): Reorganize. If CreateProcess was called |
| while impersonated, preserve the uids and gids and call |
| ImpersonateLoggedOnUser. Preserve the uids and gids on Win9X. |
| |
| * exceptions.cc (error_start_init): Quote the pgm in the command. |
| |
| 2003-06-07 Christopher Faylor <cgf@redhat.com> |
| |
| * poll.cc: Define FD_SETSIZE to ridiculously large number so that there |
| will be no artificially small limits. |
| |
| 2003-06-07 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_tty.cc (fhandler_tty_slave::close): Free the console when |
| last tty closes. |
| |
| 2003-06-07 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * fhandler_socket.cc (fhandler_socket::connect): Change error |
| handling for nonblocking connects to return EALREADY when |
| connect is called more than once for the same socket. |
| |
| 2003-06-06 Corinna Vinschen <corinna@vinschen.de> |
| |
| * cygwin.din: Add vsyslog. |
| * fhandler.cc (fhandler_base::write): Only make file sparse if the |
| seeked area is >= 128K. |
| * syslog.cc (vsyslog): New function, overtaking functionality from |
| syslog. |
| (syslog): Just call vsyslog. |
| * include/cygwin/version.h: Bump API minor. |
| * include/sys/syslog.h: Add vsyslog declaration. |
| |
| 2003-06-05 Christopher Faylor <cgf@redhat.com> |
| |
| * cygthread.cc (cygthread::terminate_thread): Change system_printf to |
| debug_printf. |
| |
| 2003-06-04 Christopher Faylor <cgf@redhat.com> |
| |
| * shared.cc (shared_info::heap_chunk_size): Be really defensive about |
| making sure that heap_chunk is set. |
| |
| 2003-06-04 Christopher Faylor <cgf@redhat.com> |
| |
| * path.cc (conv_path_list): Use correct value when calculating length |
| to avoid a potential SEGV. |
| |
| 2003-06-03 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * fhandler_disk_file.cc (fhandler_disk_file::fstat): Mark the pc |
| as non-executable if the file cannot be opened for read. Retry query |
| open only if errno is EACCES. Never change the mode, even if it is 000 |
| when query open() fails. |
| |
| 2003-06-03 Christopher Faylor <cgf@redhat.com> |
| |
| * configure.in: Allow any i?86 variant. |
| * configure: Regenerate. |
| |
| 2003-06-03 Corinna Vinschen <corinna@vinschen.de> |
| Thomas Pfaff <tpfaff@gmx.net> |
| |
| * fhandler_socket.cc (connect_thread): Remove. |
| (accept_thread): Remove. |
| (fhandler_socket::connect): Remove all special blocking handling. |
| (fhandler_socket::accept): Ditto. |
| * net.cc (cygwin_connect): Make blocking sockets temporarily |
| non-blocking and call cygwin_select on them to be interruptible. |
| (cygwin_accept): Ditto. |
| |
| 2003-06-02 Christopher Faylor <cgf@redhat.com> |
| |
| * spawn.cc (spawn_guts): Don't hang around if the parent doesn't exist. |
| |
| 2003-06-02 Christopher Faylor <cgf@redhat.com> |
| |
| * cygthread.h (cygthread::terminate_thread): Mark private. |
| * cygthread.cc (cygthread::terminate_thread): Deallocate free_range |
| thread stuff. |
| |
| 2003-06-02 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_socket.cc (fhandler_socket::accept): Rename `signalled' |
| to `interrupted' as used in fhandler_socket::connect. |
| |
| 2003-06-02 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_socket.cc (fhandler_socket::connect): Simplify previous |
| patch. |
| (fhandler_socket::accept): Ditto. |
| |
| 2003-06-02 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_socket.cc: Include cygthread.h. |
| (class sock_event): Remove. |
| (thread_connect): New function. |
| (thread_accept): Ditto. |
| (fhandler_socket::connect): Use cygthread instead of socket event |
| handling for blocking sockets. |
| (fhandler_socket::accept): Ditto. |
| |
| 2003-06-02 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler.cc (fhandler_base::write): Correct minor printf formatting |
| style glitch. |
| |
| 2003-06-01 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * fhandler_disk_file.cc (fhandler_disk_file::fstat_by_name): Assume |
| an existing directory is a root if FindFirstFile fails. |
| |
| 2003-05-30 Christopher Faylor <cgf@redhat.com> |
| |
| * path.cc (mount_info::conv_to_win32_path): gcc warning about chroot_ok |
| was actually valid. Fix it. |
| |
| 2003-05-30 Christopher Faylor <cgf@redhat.com> |
| |
| * cygheap.cc (init_cheap): Temporarily remove inline that newer gcc's |
| have problems with. |
| |
| * path.cc (path_conv::check): Rework has_acls logic slightly. Uncouple |
| exec tests away from filesystem tests. |
| |
| 2003-05-30 Corinna Vinschen <corinna@vinschen.de> |
| |
| * include/sys/param.h: Add DEV_BSIZE. |
| |
| 2003-05-29 Pierre Humblet <pierre.humblet@ieee.org> |
| Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_socket.cc (fhandler_socket::dup): Rearrange. Fix |
| conditional. |
| |
| 2003-05-28 Christopher Faylor <cgf@redhat.com> |
| |
| * mkvers.sh: Avoid "-dontuse" tags. |
| |
| * path.cc (path_conv::check): Set exec state based on known situations. |
| |
| * path.cc (mount_item::fnmunge): New function. |
| (mount_item::build_win32): New function. |
| (mount_info::conv_to_win32_path): Use build_win32 to build windows |
| path. |
| * path.h (mount_item::fnmunge): Declare new function. |
| (mount_item::build_win32): Ditto. |
| * sys/mount.h (MOUNT_ENC): Define. |
| |
| 2003-05-28 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_socket.cc (fhandler_socket::dup): If running impersonated, |
| revert to original account before calling fixup_before_fork_exec |
| and impersonate again afterwards. Change comment accordingly. |
| Clean up error handling and debug output. |
| |
| 2003-05-27 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * fhandler_socket.cc (sock_event::~sock_event): New method. |
| (sock_event::load): Change to void. Check if winsock2 is available. |
| (socke_event::wait): Return 0 if interruptible mode is not available. |
| (fhandler_socket::connect): Remove checks for winsock2 availability. |
| (fhandler_socket::accept): Ditto. |
| |
| 2003-05-27 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_socket.cc (fhandler_socket::dup): First try duplicating |
| using WSADuplicateSocket/WSASocket, if that fails, try DuplicateHandle. |
| |
| 2003-05-27 Bill C. Riemers <cygwin@docbill.net> |
| |
| * fhandler_disk_file.cc (fhandler_disk_file::fstat_helper): Filter |
| permissions through umask on FAT or if ntsec is off. |
| |
| 2003-05-26 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * syscalls.cc (statfs): Call GetDiskFreeSpaceEx before GetDiskFreeSpace. |
| |
| 2003-05-26 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler.cc (is_at_eof): Fix conditional. Use INVALID_FILE_SIZE |
| instead of numeric constant. |
| |
| 2003-05-26 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_socket.cc (fhandler_socket::connect): Guard calls to |
| sock_event methods by a check for WinSock2 availability. |
| (fhandler_socket::accept): Ditto. |
| |
| 2003-05-26 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler.h: Rename FH_W95LSBUG flag to FH_LSEEKED. |
| (fhandler_base::set_did_lseek): Rename from set_check_win95_lseek_bug. |
| (fhandler_base::get_did_lseek): Rename from get_check_win95_lseek_bug. |
| (fhandler_base::set_fs_flags): New method. |
| (fhandler_base::get_fs_flags): Ditto. |
| * fhandler.cc (fhandler_base::write): Make 64 bit clean. Convert file |
| to a "sparse" file when writing after a long lseek (>64K) beyond EOF. |
| (fhandler_base::lseek): Call set_did_lseek() instead of |
| set_check_win95_lseek_bug(). |
| (fhandler_base::fhandler_base): Initialize fs_flags to 0. |
| * fhandler_disk_file.cc (fhandler_disk_file::open): Don't create files |
| as "sparse" unconditionally. Set fs_flags member. |
| |
| 2003-05-25 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * autoload.cc (GetDiskFreeSpaceEx): Add. |
| * syscalls.cc (statfs): Call full_path.root_dir() instead of |
| rootdir(full_path). Use GetDiskFreeSpaceEx when available and |
| report space available in addition to free space. |
| * fhandler_disk_file.cc (fhandler_disk_file::fstat_by_name): |
| Do not call FindFirstFile for disk root directories. |
| |
| 2003-05-24 Joe Buehler <jhpb@draco.hekimian.com> |
| |
| * fhandler_process.cc (format_process_stat): Use PagefileUsage |
| instead of VirtualSize. |
| (get_mem_values): Ditto. |
| |
| 2003-05-21 Corinna Vinschen <corinna@vinschen.de> |
| |
| * shared_info.h: Match shared_name declaration with below change. |
| * shared.cc (shared_name): Use incoming char * parameter instead of |
| local static buffer. |
| (open_shared): Accommodate new calling convention for shared_name. |
| * exceptions.cc (events_init): Ditto. |
| * sigproc.cc (getsem): Ditto. |
| * syscalls.cc (login): Ditto. |
| (logout): Ditto. |
| (pututline): Ditto. |
| |
| 2003-05-20 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_socket.cc (secret_event_name): Return void. Use incoming |
| char * parameter instead of local static buffer. |
| (fhandler_socket::create_secret_event): Accommodate new calling |
| convention for secret_event_name. |
| (fhandler_socket::close_secret_event): Ditto. |
| |
| 2003-05-20 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_socket.cc (SECRET_EVENT_NAME): Remove. |
| (ENTROPY_SOURCE_NAME): Ditto. |
| (secret_event_name): New static function. Create shared event name |
| with "Global\" prefix on systems supporting terminal services. |
| (fhandler_socket::set_connect_secret): Fix conditional. |
| (fhandler_socket::create_secret_event): Create secret event using |
| secret_event_name(). |
| (fhandler_socket::close_secret_event): Ditto. |
| * shared.cc (shared_name): Create shared object name with "Global\" |
| prefix on systems supporting terminal services. |
| * wincap.cc: Set has_terminal_services capability throughout. |
| (wincap_2003): New global object representing Windows 2003 Server |
| capabilities. |
| (wincapc::init): Accommodate Windows 2003 Server. |
| * wincap.h (struct wincaps): Add has_terminal_services capability. |
| |
| 2003-05-20 Charles Wilson <cygwin@cwilson.fastmail.fm> |
| |
| * winsup/cygwin/include/cygwin/version.h: Bump API minor version. |
| * winsup/cygwin/include/cygwin/types.h: Define key_t as long long. |
| * winsup/cygwin/cygwin.din: Add ftok, _ftok. |
| * winsup/cygwin/ipc.cc (ftok): Rework implementation. |
| |
| 2003-05-18 Joe Buehler <jhpb@hekimian.com> |
| |
| * spawn.cc (spawn_guts): Show more of command line in strace output. |
| |
| 2003-05-15 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * thread.h (pthread::init_mainthread): Remove function parameter. |
| (MTinterface::Init): Ditto. |
| * thread.cc (MTinterface::Init): Remove function parameter. |
| Always initialize reent_key. |
| (pthread::init_mainthread): Remove function parameter. |
| (MTinterface::fixup_after_fork): Fix pthread::init_mainthread call. |
| * dcrt0.cc (dll_crt_0_1) Fix calls to MTinterface::Init and |
| pthread::init_mainthread. |
| Call pthread::init_mainthread only when not forked. |
| |
| 2003-05-15 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_proc.cc (format_proc_meminfo): Make swap memory output |
| Linux style values. |
| |
| 2003-05-13 Corinna Vinschen <corinna@vinschen.de> |
| |
| * include/cygwin/config.h: Define __USE_INTERNAL_STAT64 appropriately. |
| |
| 2003-05-12 Corinna Vinschen <corinna@vinschen.de> |
| |
| * Makefile.in (CYGWIN_START): Define as crt0.o. Add to TARGET_LIBS. |
| * fhandler.h (fhandler_virtual::fstat): Remove useless declaration. |
| * fhandler_virtual.cc: Remove _COMPILING_NEWLIB define. |
| * ipc.cc (ftok): Use stat64. |
| * syscalls.cc (_fstat64): Remove alias. |
| (_fstat): Ditto. |
| (_stat): Ditto. |
| (_fstat64_r): New function. |
| (_fstat_r): Ditto. |
| (_stat64_r): Ditto. |
| (stat_r): Ditto. |
| * crt0.o: New file, moved from newlib. |
| * include/sys/param.h: Ditto. |
| * include/sys/utime.h: Ditto. |
| * include/sys/utmp.h: Ditto. |
| * include/sys/dirent.h: Ditto. Expose different struct dirent, |
| dependening of the environment. |
| |
| 2003-05-11 Corinna Vinschen <corinna@vinschen.de> |
| |
| Replace ino_t by __ino64_t throughout. |
| |
| 2003-05-11 Corinna Vinschen <corinna@vinschen.de> |
| |
| * include/cygwin/types.h: Add key_t typedef. |
| |
| 2003-05-10 Christopher Faylor <cgf@redhat.com> |
| |
| * dir.cc (readdir): Fill out new old_d_ino field. |
| * fhandler.h (fhandler_base::namehash): Define as ino_t. |
| (fhandler_base::get_namehash): Ditto. |
| * fhandler_disk_file.cc (fhandler_disk_file::fstat_helper): Accommodate |
| new 64 bit st_ino. |
| * fhandler_socket.cc (fhandler_socket::fstat): Ditto. |
| * path.cc (hash_path_name): Return ino_t. |
| * syscalls.cc (stat64_to_stat32): Convert 64 bit inode to 32 bit. |
| * winsup.h (hash_path_name): Declare as returning ino_t. |
| * include/cygwin/stat.h (__stat32): Use 32 bit st_ino. |
| (__stat64): Use 64 bit st_ino. |
| * include/cygwin/types.h (__ino64_t): Define. |
| (__ino32_t): Ditto. |
| (ino_t): Define appropriately. |
| |
| 2003-05-10 Corinna Vinschen <corinna@vinschen.de> |
| |
| * Makefile.in (NEW_FUNCTIONS): All 32/64 from 0.79 API get |
| leading underscore. |
| * cygwin.din: Ditto. |
| * include/cygwin/version.h: Bump API minor number. |
| |
| 2003-05-09 Corinna Vinschen <corinna@vinschen.de> |
| |
| * include/cygwin/config.h: New file. |
| |
| 2003-05-09 Christopher Faylor <cgf@redhat.com> |
| |
| * cygthread.cc (cygthread::detach): Prioritize waiting for I/O |
| completion over waiting for signal delivery. |
| |
| 2003-05-06 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * signal.cc (nanosleep): Do not wait twice for signal arrival. |
| |
| 2003-05-03 Corinna Vinschen <corinna@vinschen.de> |
| |
| * include/cygwin/types.h: Fix erroneous definition of ino_t from |
| 2003-04-28. |
| |
| 2003-05-03 Corinna Vinschen <corinna@vinschen.de> |
| |
| * syscalls.cc (chown_worker): Allow chown'ing of socket files. |
| |
| 2003-04-30 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * Makefile.in: Revert patch from 2003-04-17. |
| |
| 2003-04-28 Brian Ford <ford@vss.fsi.com> |
| |
| * profil.h (PROFADDR): Prevent overflow when text segments are larger |
| than 256k. |
| * profil.c (profthr_func): Raise thread priority for more accurate |
| sampling. |
| |
| 2003-04-26 Christopher Faylor <cgf@redhat.com> |
| |
| * path.cc (hash_path_name): Use ino_t as type. |
| |
| 2003-04-26 Christopher Faylor <cgf@redhat.com> |
| |
| * errno.cc (_sys_nerr): Fix compile error erroneously checked in on |
| 2003-04-23. |
| |
| 2003-04-25 Corinna Vinschen <corinna@vinschen.de> |
| |
| * include/netinet/ip.h: Include netinet/in_systm.h and netinet/in.h |
| to allow standalone usage (autoconf). |
| |
| 2003-04-23 Christopher Faylor <cgf@redhat.com> |
| |
| * fork.cc: Change SLOW_PID_REUSE to NO_SLOW_PID_REUSE and invert ifdef |
| sense throughout. |
| |
| 2003-04-22 Christopher Faylor <cgf@redhat.com> |
| |
| * select.cc (fhandler_pipe::ready_for_read): Assure that get_guard is |
| called for successful non-blocking pipe reads. |
| |
| 2003-04-22 Corinna Vinschen <corinna@vinschen.de> |
| |
| * include/inttypes.h: New file. |
| * include/stdint.h: New file. |
| * include/cygwin/in.h: Include stdint.h instead of sys/types.h. |
| * include/cygwin/types.h: Include stdint.h. Remove typedefs for |
| intN_t and uintN_t since these are defined in stdint.h now. |
| |
| 2003-04-21 Christopher Faylor <cgf@redhat.com> |
| |
| * include/cygwin/version.h: Bump DLL major number to 1005. Change DLL |
| minor number to 0. Bump API minor number. |
| |
| 2003-04-20 Corinna Vinschen <corinna@vinschen.de> |
| |
| * autoload.cc (CreateWindowStationA): Add. |
| (SetProcessWindowStation): Add. |
| |
| 2003-04-19 Christopher Faylor <cgf@redhat.com> |
| |
| * wincap.h (wincaps:pty_needs_alloc_console): New element. |
| (wincapc:pty_needs_alloc_console): New function. |
| * wincap.cc: Add pty_needs_alloc_console throughout. |
| * fhandler_tty.cc (fhandler_tty_slave::open): Open an "invisible" |
| console on first pty allocation. |
| |
| 2003-04-18 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_tty.cc (fhandler_tty_slave::open): Allocate a console |
| whenever a pty is allocated. |
| |
| 2003-04-18 Christopher Faylor <cgf@redhat.com> |
| |
| * Makefile.in: Use ${nostdlib} variable. |
| |
| 2003-04-18 Diego Biurrun <diego@biurrun.de> |
| |
| * fhandler_proc.cc (format_proc_cpuinfo): Change /proc/cpuinfo "vendor |
| id" string to "vendor_id" to conform with Linux systems. |
| |
| 2003-04-17 Christopher Faylor <cgf@redhat.com> |
| |
| * syscalls.cc (setsid): Don't call FreeConsole if ctty is already < 0. |
| |
| 2003-04-17 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * Makefile.in: Add finline-functions optimization to CXXFLAGS. |
| * autoload.cc (LoadDLLprime): Rename std_dll_init to |
| _std_dll_init. |
| (std_dll_init): Remove name mangling prototype. Add attributes |
| used and noinline. |
| (wsock_init): Ditto. |
| Change wsock_init to _wsock_init in wsock32 and ws2_32 |
| LoadDLLprime. |
| * exceptions.cc (unused_sig_wrapper): Remove prototype. Add |
| attributes used and noinline. |
| * pwdgrp.h ((pwdgrp (passwd *&)): Remove inline code. |
| (pwdgrp (__group32 *&)): Ditto. |
| * grp.cc (pwdgrp (passwd *&)): Outline constructor. |
| (pwdgrp (__group32 *&)): Ditto. |
| |
| 2003-04-17 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * thread.h (pthread::equal): New static method. |
| * thread.cc: Rename pthread_equal to pthread::equal throughout. |
| (pthread_equal): Use pthread::equal to compare threads ids. |
| |
| 2003-04-15 Christopher Faylor <cgf@redhat.com> |
| |
| * termios.cc (setspeed): New function. |
| (cfsetospeed): Use setspeed to set speed. |
| (cfsetispeed): Use setspeed to set speed. |
| |
| 2003-04-15 Chris January <chris@atomice.net> |
| |
| * autoload.cc: Add load statement for UuidCreate, and |
| UuidCreateSequential. |
| * cpuid.h: New file. |
| * cygwin.din: Export gethostid. |
| * fhandler_proc.cc (cpuid): Move to cpuid.h. |
| (can_set_flag): Move to cpuid.h. |
| * syscalls.cc (gethostid): New function. |
| * version.h: Bump api minor version number to 83. |
| |
| 2003-04-15 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * thread.h (pthread_rwlock::release): New method. |
| * thread.cc (pthread_rwlock::unlock): Use release to signal waiting |
| threads. |
| (pthread_rwlock::rdlock_cleanup): Signal waiting threads after a |
| cancelation. |
| (pthread_rwlock::wrlock_cleanup): Ditto. |
| |
| 2003-04-13 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * mkvers.sh: Prefix day with 0 in date only when day < 10. |
| |
| 2003-04-11 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * security.cc (get_info_from_sd): New function. |
| (get_nt_attribute): Only call read_sd and get_info_from_sd. |
| Return void. |
| (get_file_attribute): Move sd error handling to get_info_from_sd. |
| and symlink handling to fhandler_disk_file::fstat_helper. |
| (get_nt_object_attribute): Only call read_sd and get_info_from_sd. |
| Return void. |
| (get_object_attribute): Remove symlink handling and simply return -1 |
| when ntsec is off. |
| * fhandler_disk_file.cc (fhandler_disk_file::fstat_helper): For |
| symlinks set the attribute, call get_file_attribute to get the ids |
| and return. In the normal case call get_file_attribute with the |
| addresses of the buffer ids and do not recheck if the file is a socket. |
| |
| 2003-04-10 Christopher Faylor <cgf@redhat.com> |
| |
| * cygthread.cc (cygthread::stub): Initialize stack pointer earlier. |
| (cygthread::simplestub): Initialize stack pointer. |
| (cygthread::terminate_thread): Account for possibility that stack |
| pointer has not been set. Issue warnings for unusual conditions. |
| |
| 2003-04-10 Corinna Vinschen <corinna@vinschen.de> |
| |
| * regex/regex.h: Define regoff_t as _off_t. |
| * regex/regex2.h: Ditto. |
| |
| 2003-04-10 Corinna Vinschen <corinna@vinschen.de> |
| |
| * cygwin.din: Export wcscoll, wcswidth and wcwidth. |
| * include/cygwin/version.h: Bump API minor number. |
| |
| 2003-04-10 Christopher Faylor <cgf@redhat.com> |
| |
| * cygthread.h: Change 'avail' cygthread element to 'inuse' throughout. |
| * cygthread.cc: Ditto. |
| (cygthread::stub): Don't initialize already initialized events. |
| (cygthread::freerange): Don't create thread here. |
| (cygthread::cygthread): Create thread here. Die if thread not created. |
| (cygthread::operator new): Simplify. Just grab a thread structure from |
| the pool. Don't try to start the thread. |
| (cygthread::terminate_thread): Don't close event handles. Just reuse |
| them. Call MEM_RELEASE rather than MEM_DECOMMIT (from Joe uehler). |
| |
| 2003-04-08 Bob Cassels <bcassels@abinitio.com> |
| |
| * fhandler_console.cc (fhandler_console::read) Handle certain key up |
| events, to allow pasting accented characters and typing them using the |
| "alt + numerics" sequences. |
| |
| 2003-04-07 Christopher Faylor <cgf@redhat.com> |
| |
| * include/limits.h (IOV_MAX): Set to a number which is small enough to |
| use in an array. |
| |
| 2003-04-04 Christopher Faylor <cgf@redhat.com> |
| |
| * cygthread.h (cygthread::avail): Make LONG for easier use with |
| Interlocked* functions. |
| * cygthread.cc (cygthread::init): Eliminate unneeded muto. |
| (cygthread::operator new): Don't lock. Instead change use of avail |
| variable into tri-state: available (1), not available (-1), |
| uninitialized (0). |
| (cygthread::terminate_thread): Set avail to uninitialized. |
| (cygthread::detach): Eliminate local 'avail'. Always set avail to 1 |
| unless signalled. |
| |
| 2003-04-04 Christopher Faylor <cgf@redhat.com> |
| |
| * cygthread.cc (cygthread::operator new): Be more defensive when messing with |
| threads that are marked "unavailable". |
| |
| 2003-04-03 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_console.cc (CONVERT_LIMIT): Use a size for the 21st century. |
| |
| 2003-04-03 Corinna Vinschen <corinna@vinschen.de> |
| |
| * external.cc (check_ntsec): Return general ntsec state on NULL |
| filename. Check wincap.is_security() additionally. |
| |
| 2003-04-02 Christopher Faylor <cgf@redhat.com> |
| |
| * Makefile.in (EXTRA_OFILES): Remove debugging object. |
| |
| 2003-04-02 Jason Tishler <jason@tishler.net> |
| Christopher Faylor <cgf@redhat.com> |
| |
| * external.cc (check_ntsec): New function. |
| (cygwin_internal): Add CW_CHECK_NTSEC handling to call check_ntsec() |
| from applications. |
| * include/cygwin/version.h: Bump API minor number. |
| * include/sys/cygwin.h (cygwin_getinfo_types): Add CW_CHECK_NTSEC. |
| |
| 2003-04-02 Christopher Faylor <cgf@redhat.com> |
| |
| * cygthread.cc (cygthread::new): Add more defensive debugging. |
| |
| 2003-04-01 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * fhandler.cc (fhandler_base::fstat): Set the uid and gid fields |
| from the current effective ids. |
| * fhandler_socket.cc (fhandler_socket::fstat): Keep the uid and gid set |
| by fhandler_base::fstat. |
| * security.cc (get_nt_attribute): Do not test wincap.has_security (). |
| (get_nt_object_attribute): Ditto. |
| (get_file_attribute): Add test for wincap.has_security (). |
| (get_object_attribute): Ditto. |
| |
| 2003-04-01 Corinna Vinschen <corinna@vinschen.de> |
| |
| * dir.cc: Change __off32_t to _off_t and __off64_t to _off64_t |
| throughout. |
| * fhandler.cc: Ditto. |
| * fhandler.h: Ditto. |
| * fhandler_clipboard.cc: Ditto. |
| * fhandler_disk_file.cc: Ditto. |
| * fhandler_dsp.cc: Ditto. |
| * fhandler_floppy.cc: Ditto. |
| * fhandler_mem.cc: Ditto. |
| * fhandler_proc.cc: Ditto. |
| * fhandler_process.cc: Ditto. |
| * fhandler_random.cc: Ditto. |
| * fhandler_registry.cc: Ditto. |
| * fhandler_tape.cc: Ditto. |
| * fhandler_termios.cc: Ditto. |
| * fhandler_virtual.cc: Ditto. |
| * fhandler_zero.cc: Ditto. |
| * mmap.cc: Ditto. |
| * pipe.cc: Ditto. |
| * syscalls.cc: Ditto. |
| * winsup.h: Ditto. |
| * include/cygwin/stat.h: Ditto. |
| * include/cygwin/types.h: Ditto. Remove definition of __off32_t |
| and __off64_t. |
| |
| 2003-03-31 Christopher Faylor <cgf@redhat.com> |
| |
| * exceptions.cc (setup_handler): Make sure winapi lock is released when |
| exiting loop. |
| |
| 2003-03-30 Christopher Faylor <cgf@redhat.com> |
| |
| * include/cygwin/fs.h: Remove unneeded include. |
| * include/cygwin/in.h: Include sys/types.h rather than cygwin/types.h. |
| |
| 2003-03-29 Corinna Vinschen <corinna@vinschen.de> |
| |
| * syscalls.cc (login): Fix comment. |
| (logout): Ditto. |
| |
| 2003-03-29 Corinna Vinschen <corinna@vinschen.de> |
| |
| * syscalls.cc: Slightly cleanup all utmp functions. |
| (login): Use mutex to secure against concurrent access to wtmp file. |
| (logout): Rewrite using POSIX calls. |
| (utmp_fd): Initialized to -1 now. Any value < 0 is treated as closed |
| in subsequent functions. |
| (utmp_readonly): New variable, indicating utmp file open for reading |
| only. |
| (internal_setutent): New function implementing setutent(). |
| (setutent): Call internal_setutent now. |
| (endutent): Reset utmp_readonly. |
| (getutent): Return immediately if utmp file can't be opened. |
| (getutid): Ditto. |
| (getutline): Ditto. |
| (pututline): Ditto. Use mutex to secure against concurrent access to |
| utmp file. |
| |
| 2003-03-28 Christopher Faylor <cgf@redhat.com> |
| |
| * Makefile.in: Remove EXE_LDFLAGS. Fix fhandler_CFLAGS typo. Recognize .s suffix. |
| * configure.in: Remove EXE_LDFLAGS. |
| * configure: Regenerate. |
| |
| 2003-03-28 Christopher Faylor <cgf@redhat.com> |
| |
| * include/sys/cygwin.h: Declare cygwin_internal as unsigned long. |
| * external.cc (cygwin_internal): Define as unsigned long. |
| |
| 2003-03-27 Christopher Faylor <cgf@redhat.com> |
| |
| * include/sys/cygwin.h: Move cygwin_internal outside of WINVER |
| conditional. |
| |
| 2003-03-27 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * thread.cc: Change 1==foo equations to foo==1 throughout. |
| |
| 2003-03-27 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * thread.h: Change class names, methods, members and local vars |
| according to the GNU coding style. |
| * thread.cc: Ditto. |
| * dcrt0.cc (dll_crt0_1): Rename pthread::initMainThread call to |
| pthread::init_mainthread. |
| * pthread.cc (pthead_getsequence_np): Rename pthread::isGoodObject |
| call to pthread::is_good_object. |
| |
| 2003-03-27 Joe Buehler <jhpb@draco.hekimian.com> |
| |
| * autoload.cc: Add RegGetKeySecurity(). |
| * security.cc (get_nt_object_attribute): Use RegGetKeySecurity() for |
| performance. |
| |
| 2003-03-25 Christopher Faylor <cgf@redhat.com> |
| Joe Buehler <jhpb@draco.hekimian.com> |
| |
| * fork.cc (fork_parent): Don't copy signals from parent to child here. |
| * sigproc.cc (proc_subproc): Copy signals from parent to child pinfo |
| here. |
| |
| 2003-03-23 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * thread.h (class List): Move inline code inside class declaration. |
| (List::forEach): Change callback parameter to template class member |
| function pointer. |
| (pthread_keys::fixup_before_fork): Change to inline. Use List::forEach |
| to fixup keys. |
| (pthread_keys::fixup_after_fork): Ditto. |
| (pthread_keys::runAllDestructors): Ditto. |
| (pthread_key::saveAKey): Remove. |
| (pthread_key::restoreAKey): Ditto. |
| (pthread_key::destroyAKey): Ditto. |
| (pthread_key::run_destructor): Rename to runDestructor. |
| (pthread_mutex::fixup_after_fork): Change to inline. Use List::forEach |
| to fixup mutexes after a fork. |
| (pthread_mutex::FixupAfterFork): New method. |
| (pthread_mutex::mutexes): New member. |
| (pthread_cond::fixup_after_fork): Change to inline. Use List::forEach |
| to fixup conds after a fork. |
| (pthread_cond::FixupAfterFork): New method. |
| (pthread_cond::conds): New member. |
| (pthread_rwlock::fixup_after_fork): Change to inline. Use |
| List::forEach to fixup rwlocks after a fork. |
| (pthread_rwlock::FixupAfterFork): New method. |
| (pthread_rwlock::rwlocks): New member. |
| (semaphore::fixup_after_fork): Change to inline. Use List::forEach to |
| fixup mutexes after a fork. |
| (semaphore::FixupAfterFork): New method. |
| (semaphore::semaphores): New member. |
| (MTinterface::mutexs): Remove. |
| (MTinterface::conds): Ditto. |
| (MTinterface::rwlocks): Ditto. |
| (MTinterface::semaphores): Ditto. |
| (pthread_equal): Add extern "C". |
| (pthread_mutex_lock): Ditto. |
| |
| * thread.cc (MTinterface::fixup_after_fork): Change fixup_after_fork |
| calls for pthread objects. |
| (semaphore::conds): Instantiate. |
| (pthread_cond::pthread_cond): Use List::Insert rather than custom list |
| code. |
| (pthread_cond::~pthread_cond): Use List::Remove rather than custom list |
| code. |
| (pthread_cond::fixup_after_fork): Rename to FixupAfterFork. |
| (pthread_rwlock::rwlocks): Instantiate. |
| (pthread_rwlock::pthread_crwlock): Use List::Insert rather than custom |
| list code. |
| (pthread_rwlock::~pthread_rwlock): Use List::Remove rather than custom |
| list code. |
| (pthread_rwlock::fixup_after_fork): Rename to FixupAfterFork. |
| (pthread_key::saveAKey): Remove. |
| (pthread_key::fixup_before_fork): Ditto. |
| (pthread_key::restoreAKey): Ditto. |
| (pthread_key::fixup_after_fork): Ditto. |
| (pthread_key::destroyAKey): Ditto. |
| (pthread_key::runAllDestructors): Ditto. |
| (pthread_key::run_destructor): Rename to runDestructor. |
| (pthread_mutex::mutexes): Instantiate. |
| (pthread_mutex::pthread_mutex): Use List::Insert rather than custom |
| list code. |
| (pthread_mutex::~pthread_mutex): Use List::Remove rather than custom |
| list code. |
| (pthread_mutex::fixup_after_fork): Rename to FixupAfterFork. |
| (semaphore::conds): Instantiate. |
| (semaphore::semaphore): Use List::Insert rather than custom list code. |
| (semaphores::~semaphore): Use List::Remove rather than custom list |
| code. |
| (semaphore::fixup_after_fork): Rename to FixupAfterFork. |
| |
| 2003-03-22 Christopher Faylor <cgf@redhat.com> |
| |
| * pipe.cc (fhandler_pipe::dup): Don't dup input_handle if it doesn't |
| exist. |
| |
| 2003-03-22 Christopher Faylor <cgf@redhat.com> |
| |
| * syscalls.cc (unlink): Be more defensive when SetFileAttributes is |
| called. Fix typo in debugging output. |
| |
| 2003-03-21 Christopher Faylor <cgf@redhat.com> |
| |
| * fork.cc: Conditionalize use of slow_pid_reuse throughout. It's not |
| necessary for newer versions of bash. |
| |
| 2003-03-20 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_socket.cc (fhandler_socket::sendto): Restrict EPIPE and |
| SIGPIPE handling to connection oriented sockets. Add comment. |
| |
| 2003-03-19 Christopher Faylor <cgf@redhat.com> |
| |
| * sigproc.h (signal_fixup_after_exec): Eliminate argument in declaration. |
| * exceptions.cc (signal_fixup_after_exec): Eliminate argument in |
| definition. Don't reset signal handlers after spawm. Just treat like |
| fork/exec. |
| * dcrt0.cc (dll_crt0_1): Don't pass PROC_SPAWN argument to |
| signal_fixup_after_exec. |
| * syscalls.cc (unlink): Don't change attributes of file if not readonly/system. |
| Ditto for resetting of arguments. |
| |
| 2003-03-19 Corinna Vinschen <corinna@vinschen.de> |
| |
| * glob.c: Eliminate __INSIDE_CYGWIN__ preprocessor conditionals |
| throughout. |
| |
| 2003-03-19 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_disk_file.cc (fhandler_disk_file::fstat_helper): Fix |
| wrong usage of S_IFDIR. |
| * security.cc (get_attribute_from_acl): Ditto. |
| (get_file_attribute): Fix wrong usage of S_IFLNK. |
| (get_object_attribute): Ditto. |
| (alloc_sd): Fix wrong usage of S_IFDIR. |
| * syscalls.cc (chmod): Allow chmod'ing of socket files. |
| |
| 2003-03-19 Corinna Vinschen <corinna@vinschen.de> |
| |
| * include/cygwin/version.h (CYGWIN_VERSION_CHECK_FOR_USING_BIG_TYPES): |
| Define. |
| * glob.c (g_lstat): Use CYGWIN_VERSION_CHECK_FOR_USING_BIG_TYPES |
| instead of numerical constants. |
| (g_stat): Ditto. |
| |
| 2003-03-18 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * pthread.cc (pthread_attr_init): Remove |
| (pthread_attr_destroy): Ditto. |
| (pthread_attr_setdetachstate): Ditto. |
| (pthread_attr_getdetachstate): Ditto. |
| (pthread_attr_setstacksize): Ditto. |
| (pthread_attr_getstacksize): Ditto. |
| (pthread_attr_setinheritsched): Ditto. |
| (pthread_attr_getinheritsched): Ditto. |
| (pthread_attr_setschedparam): Ditto. |
| (pthread_attr_getschedparam): Ditto. |
| (pthread_attr_setschedpolicy): Ditto. |
| (pthread_attr_getschedpolicy): Ditto. |
| (pthread_attr_setscope): Ditto. |
| (pthread_attr_getscope): Ditto. |
| (pthread_attr_setstackaddr): Ditto. |
| (pthread_attr_getstackaddr): Ditto. |
| (pthread_key_create): Ditto. |
| (pthread_key_delete): Ditto. |
| (pthread_setspecific): Ditto. |
| (pthread_getspecific): Ditto. |
| (pthread_kill): Ditto. |
| (pthread_sigmask): Ditto. |
| (pthread_equal): Ditto. |
| (pthread_mutex_lock): Ditto. |
| (pthread_mutex_trylock): Ditto. |
| (pthread_mutex_unlock): Ditto. |
| (pthread_mutex_destroy): Ditto. |
| (pthread_mutex_setprioceiling): Ditto. |
| (pthread_mutex_getprioceiling): Ditto. |
| (pthread_mutexattr_destroy): Ditto. |
| (pthread_mutexattr_getprioceiling): Ditto. |
| (pthread_mutexattr_getprotocol): Ditto. |
| (pthread_mutexattr_getpshared): Ditto. |
| (pthread_mutexattr_gettype): Ditto. |
| (pthread_mutexattr_init): Ditto. |
| (pthread_mutexattr_setprioceiling): Ditto. |
| (pthread_mutexattr_setprotocol): Ditto. |
| (pthread_mutexattr_setpshared): Ditto. |
| (pthread_mutexattr_settype): Ditto. |
| (pthread_cond_destroy): Ditto. |
| (pthread_cond_signal): Ditto. |
| (pthread_cond_broadcast): Ditto. |
| (pthread_condattr_init): Ditto. |
| (pthread_condattr_destroy): Ditto. |
| (pthread_condattr_getpshared): Ditto. |
| (pthread_condattr_setpshared): Ditto. |
| (pthread_rwlock_destroy): Ditto. |
| (pthread_rwlock_rdlock): Ditto. |
| (pthread_rwlock_tryrdlock): Ditto. |
| (pthread_rwlock_wrlock): Ditto. |
| (pthread_rwlock_trywrlock): Ditto. |
| (pthread_rwlock_unlock): Ditto. |
| (pthread_rwlockattr_init): Ditto. |
| (pthread_rwlockattr_getpshared): Ditto. |
| (pthread_rwlockattr_setpshared): Ditto. |
| (pthread_rwlockattr_destroy): Ditto. |
| (pthread_getconcurrency): Ditto. |
| (pthread_setconcurrency): Ditto. |
| (pthread_getschedparam): Ditto. |
| (pthread_setschedparam): Ditto. |
| |
| * thread.h (__pthread_attr_init): Remove prototype. |
| (__pthread_attr_destroy): Ditto. |
| (__pthread_attr_setdetachstate): Ditto. |
| (__pthread_attr_getdetachstate): Ditto. |
| (__pthread_attr_setstacksize): Ditto. |
| (__pthread_attr_getstacksize): Ditto. |
| (__pthread_attr_setinheritsched): Ditto. |
| (__pthread_attr_getinheritsched): Ditto. |
| (__pthread_attr_setschedparam): Ditto. |
| (__pthread_attr_getschedparam): Ditto. |
| (__pthread_attr_setschedpolicy): Ditto. |
| (__pthread_attr_getschedpolicy): Ditto. |
| (__pthread_attr_setscope): Ditto. |
| (__pthread_attr_getscope): Ditto. |
| (__pthread_attr_setstackaddr): Ditto. |
| (__pthread_attr_getstackaddr): Ditto. |
| (__pthread_key_create): Ditto. |
| (__pthread_key_delete): Ditto. |
| (__pthread_setspecific): Ditto. |
| (__pthread_getspecific): Ditto. |
| (__pthread_kill): Ditto. |
| (__pthread_sigmask): Ditto. |
| (__pthread_equal): Ditto. |
| (__pthread_mutex_lock): Ditto. |
| (__pthread_mutex_trylock): Ditto. |
| (__pthread_mutex_unlock): Ditto. |
| (__pthread_mutex_destroy): Ditto. |
| (__pthread_mutex_setprioceiling): Ditto. |
| (__pthread_mutex_getprioceiling): Ditto. |
| (__pthread_mutexattr_destroy): Ditto. |
| (__pthread_mutexattr_getprioceiling): Ditto. |
| (__pthread_mutexattr_getprotocol): Ditto. |
| (__pthread_mutexattr_getpshared): Ditto. |
| (__pthread_mutexattr_gettype): Ditto. |
| (__pthread_mutexattr_init): Ditto. |
| (__pthread_mutexattr_setprioceiling): Ditto. |
| (__pthread_mutexattr_setprotocol): Ditto. |
| (__pthread_mutexattr_setpshared): Ditto. |
| (__pthread_mutexattr_settype): Ditto. |
| (__pthread_cond_destroy): Ditto. |
| (__pthread_cond_signal): Ditto. |
| (__pthread_cond_broadcast): Ditto. |
| (__pthread_condattr_init): Ditto. |
| (__pthread_condattr_destroy): Ditto. |
| (__pthread_condattr_getpshared): Ditto. |
| (__pthread_condattr_setpshared): Ditto. |
| (__pthread_rwlock_destroy): Ditto. |
| (__pthread_rwlock_rdlock): Ditto. |
| (__pthread_rwlock_tryrdlock): Ditto. |
| (__pthread_rwlock_wrlock): Ditto. |
| (__pthread_rwlock_trywrlock): Ditto. |
| (__pthread_rwlock_unlock): Ditto. |
| (__pthread_rwlockattr_init): Ditto. |
| (__pthread_rwlockattr_getpshared): Ditto. |
| (__pthread_rwlockattr_setpshared): Ditto. |
| (__pthread_rwlockattr_destroy): Ditto. |
| (__pthread_getconcurrency): Ditto. |
| (__pthread_setconcurrency): Ditto. |
| (__pthread_getschedparam): Ditto. |
| (__pthread_setschedparam): Ditto. |
| |
| * thread.cc: Rename __pthread_equal to pthread_equal throughout. |
| Change pthread_self parameter appropriate. |
| (__pthread_attr_init): Remove __ prefix. Change to extern "C". |
| (__pthread_attr_destroy): Ditto. |
| (__pthread_attr_setdetachstate): Ditto. |
| (__pthread_attr_getdetachstate): Ditto. |
| (__pthread_attr_setstacksize): Ditto. |
| (__pthread_attr_getstacksize): Ditto. |
| (__pthread_attr_setinheritsched): Ditto. |
| (__pthread_attr_getinheritsched): Ditto. |
| (__pthread_attr_setschedparam): Ditto. |
| (__pthread_attr_getschedparam): Ditto. |
| (__pthread_attr_setschedpolicy): Ditto. |
| (__pthread_attr_getschedpolicy): Ditto. |
| (__pthread_attr_setscope): Ditto. |
| (__pthread_attr_getscope): Ditto. |
| (__pthread_attr_setstackaddr): Ditto. |
| (__pthread_attr_getstackaddr): Ditto. |
| (__pthread_key_create): Ditto. |
| (__pthread_key_delete): Ditto. |
| (__pthread_setspecific): Ditto. |
| (__pthread_getspecific): Ditto. |
| (__pthread_kill): Ditto. |
| (__pthread_sigmask): Ditto. |
| (__pthread_equal): Ditto. |
| (__pthread_mutex_lock): Ditto. |
| (__pthread_mutex_trylock): Ditto. |
| (__pthread_mutex_unlock): Ditto. |
| (__pthread_mutex_destroy): Ditto. |
| (__pthread_mutex_setprioceiling): Ditto. |
| (__pthread_mutex_getprioceiling): Ditto. |
| (__pthread_mutexattr_destroy): Ditto. |
| (__pthread_mutexattr_getprioceiling): Ditto. |
| (__pthread_mutexattr_getprotocol): Ditto. |
| (__pthread_mutexattr_getpshared): Ditto. |
| (__pthread_mutexattr_gettype): Ditto. |
| (__pthread_mutexattr_init): Ditto. |
| (__pthread_mutexattr_setprioceiling): Ditto. |
| (__pthread_mutexattr_setprotocol): Ditto. |
| (__pthread_mutexattr_setpshared): Ditto. |
| (__pthread_mutexattr_settype): Ditto. |
| (__pthread_cond_destroy): Ditto. |
| (__pthread_cond_signal): Ditto. |
| (__pthread_cond_broadcast): Ditto. |
| (__pthread_condattr_init): Ditto. |
| (__pthread_condattr_destroy): Ditto. |
| (__pthread_condattr_getpshared): Ditto. |
| (__pthread_condattr_setpshared): Ditto. |
| (__pthread_rwlock_destroy): Ditto. |
| (__pthread_rwlock_rdlock): Ditto. |
| (__pthread_rwlock_tryrdlock): Ditto. |
| (__pthread_rwlock_wrlock): Ditto. |
| (__pthread_rwlock_trywrlock): Ditto. |
| (__pthread_rwlock_unlock): Ditto. |
| (__pthread_rwlockattr_init): Ditto. |
| (__pthread_rwlockattr_getpshared): Ditto. |
| (__pthread_rwlockattr_setpshared): Ditto. |
| (__pthread_rwlockattr_destroy): Ditto. |
| (__pthread_getconcurrency): Ditto. |
| (__pthread_setconcurrency): Ditto. |
| (__pthread_getschedparam): Ditto. |
| (__pthread_setschedparam): Ditto. |
| |
| 2003-03-18 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * cygwin.din: Add pthread_rwlock_destroy, pthread_rwlock_init, |
| pthread_rwlock_rdlock, pthread_rwlock_tryrdlock, |
| pthread_rwlock_wrlock, pthread_rwlock_trywrlock, |
| pthread_rwlock_unlock, pthread_rwlockattr_init, |
| pthread_rwlockattr_getpshared, pthread_rwlockattr_setpshared, |
| and pthread_rwlockattr_destroy. |
| * include/cygwin/version.h: Bump API minor number. |
| * include/pthread.h (PTHREAD_RWLOCK_INITIALIZER): Define a |
| reasonable value. |
| Add prototypes for pthread_rwlock_destroy, pthread_rwlock_init, |
| pthread_rwlock_rdlock, pthread_rwlock_tryrdlock, |
| pthread_rwlock_wrlock, pthread_rwlock_trywrlock, |
| pthread_rwlock_unlock, pthread_rwlockattr_init, |
| pthread_rwlockattr_getpshared, pthread_rwlockattr_setpshared, |
| and pthread_rwlockattr_destroy. |
| * thread.h (PTHREAD_ONCE_MAGIC): Remove superflous semicolon. |
| (PTHREAD_RWLOCK_MAGIC): New define. |
| (PTHREAD_RWLOCKATTR_MAGIC): Ditto. |
| (pthread_rwlockattr): New class. |
| (pthread_rwlock): Ditto. |
| (MTinterface::rwlocks): New member. |
| (MTinterface::MTinterface): Initialize rwlocks. |
| Add prototypes for __pthread_rwlock_destroy, |
| __pthread_rwlock_wrlock, __pthread_rwlock_trywrlock, |
| __pthread_rwlock_unlock, __pthread_rwlockattr_init, |
| __pthread_rwlockattr_getpshared, __pthread_rwlockattr_setpshared, |
| and __pthread_rwlockattr_destroy. |
| * thread.cc (MTinterface::Init): Initialize rwlock internal mutex. |
| (MTinterface::fixup_after_fork): Fixup rwlocks after fork. |
| (pthread_rwlockattr::isGoodObject): Implement. |
| (pthread_rwlockattr::pthread_rwlockattr): Ditto. |
| (pthread_rwlockattr::~pthread_rwlockattr): Ditto. |
| (pthread_rwlock::initMutex): Ditto. |
| (pthread_rwlock::pthread_rwlock): Ditto. |
| (pthread_rwlock::~pthread_rwlock): Ditto. |
| (pthread_rwlock::RdLock): Ditto. |
| (pthread_rwlock::TryRdLock): Ditto. |
| (pthread_rwlock::WrLock): Ditto. |
| (pthread_rwlock::TryWrLock): Ditto. |
| (pthread_rwlock::UnLock): Ditto. |
| (pthread_rwlock::addReader): Ditto. |
| (pthread_rwlock::removeReader): Ditto. |
| (pthread_rwlock::lookupReader): Ditto. |
| (pthread_rwlock::RdLockCleanup): Ditto. |
| (pthread_rwlock::WrLockCleanup): Ditto. |
| (pthread_rwlock::fixup_after_fork): Ditto. |
| (pthread_rwlock::isGoodObject): Ditto. |
| (pthread_rwlock::isGoodInitializer): Ditto. |
| (pthread_rwlock::isGoodInitializerOrObject): Ditto. |
| (pthread_rwlock::isGoodInitializerOrBadObject): Ditto. |
| (__pthread_rwlock_destroy): Ditto. |
| (pthread_rwlock::init): Ditto. |
| (__pthread_rwlock_rdlock): Ditto. |
| (__pthread_rwlock_tryrdlock): Ditto. |
| (__pthread_rwlock_wrlock): Ditto. |
| (__pthread_rwlock_trywrlock): Ditto. |
| |
| 2003-03-18 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * thread.h (pthread_cond::ExitingWait): Remove. |
| (pthread_cond::mutex): Ditto. |
| (pthread_cond::cond_access): Ditto. |
| (pthread_cond::win32_obj_id): Ditto. |
| (pthread_cond::TimedWait): Ditto. |
| (pthread_cond::BroadCast): Ditto. |
| (pthread_cond::Signal): Ditto. |
| (pthread_cond::waiting): Change type to unsigned long. |
| (pthread_cond::pending): New member. |
| (pthread_cond::semWait): Ditto. |
| (pthread_cond::mtxIn): Ditto. |
| (pthread_cond::mtxOut): Ditto. |
| (pthread_cond::mtxCond): Ditto. |
| (pthread_cond::UnBlock): New method. |
| (pthread_cond::Wait): Ditto. |
| * thread.cc: Update list of cancellation points. |
| (pthread_cond::pthread_cond): Rewrite. |
| (pthread_cond::~pthread_cond): Ditto. |
| (pthread_cond::TimedWait): Remove. |
| (pthread_cond::BroadCast): Ditto. |
| (pthread_cond::Signal): Ditto. |
| (pthread_cond::UnBlock): Implement. |
| (pthread_cond::Wait): Ditto. |
| (pthread_cond::fixup_after_fork): Rewrite. |
| (pthread_mutex::fixup_after_fork): Remove DETECT_BAD_APP |
| conditional. |
| (__pthread_cond_broadcast): Just return 0 if the condition is |
| not initialized. Call pthread_cond::UnBlock to release blocked |
| threads. |
| (__pthread_cond_signal): Ditto. |
| (__pthread_cond__dowait): Rewrite. |
| (pthread_cond_timedwait): Add pthread_testcancel call. Fix |
| waitlength calculation. |
| (pthread_cond_wait): Add pthread_testcancel call. |
| |
| 2003-03-18 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * include/pthread.h (PTHREAD_MUTEX_NORMAL): New define. |
| * thread.cc: Remove errno.h include. |
| (pthread::precreate): Change internal mutex type to normal. |
| (pthread_mutex::canBeUnlocked): Implement. |
| (pthread_mutex::pthread_mutex): Initialize lock_counter with 0. |
| (pthread_mutex::Lock): Rename to _Lock. Add self parameter. |
| Change lock_counter logic. Update SetOwner call. |
| (pthread_mutex::TryLock): Rename to _TryLock. Add self parameter. |
| Change lock_counter logic. Update SetOwner call. |
| (pthread_mutex::UnLock): Rename to _UnLock. Add self parameter. |
| Change lock_counter logic. |
| (pthread_mutex::Destroy): Rename to _Destroy. Update TryLock call. |
| (pthread_mutex::SetOwner): Move to thread.h as inline. |
| (pthread_mutex::LockRecursive): Ditto. |
| (pthread_mutex::fixup_after_fork): Change lock_counter logic. |
| (__pthread_mutexattr_settype): Add PTHREAD_MUTEX_NORMAL to valid |
| types check. |
| * thread.h: Include errno.h and limits.h. |
| (MUTEX_LOCK_COUNTER_INITIAL): Remove. |
| (MUTEX_OWNER_ANONYMOUS): New define. |
| (pthread_mutex::canBeUnlocked): New static method. |
| (pthread_mutex::lock_counter): Change type to unsigned long. |
| (pthread_mutex::GetPthreadSelf): New method. |
| (pthread_mutex::Lock): Call _Lock with pthread_self pointer. |
| (pthread_mutex::TryLock): Call _TryLock with pthread_self pointer. |
| (pthread_mutex::UnLock): Call _UnLock with pthread_self pointer. |
| (pthread_mutex::Destroy): Call _Destroy with pthread_self pointer. |
| (pthread_mutex::SetOwner): Moved from thread.cc as inline. |
| (pthread_mutex::LockRecursive): Ditto. |
| (pthread_mutex::_Lock): New method. |
| (pthread_mutex::_TryLock): New method. |
| (pthread_mutex::_UnLock): New method. |
| (pthread_mutex::_Destroy): New method. |
| |
| 2003-03-18 Christopher January <chris@atomice.net> |
| |
| * fhandler_proc.cc (format_proc_cpuinfo): Use IsProcessorFeaturePresent |
| only on Windows NT. Read CPU Mhz value only on NT. Revert previous |
| change so cpuid instruction is called even on non-NT systems. |
| |
| 2003-03-17 Corinna Vinschen <corinna@vinschen.de> |
| |
| * glob.c (g_lstat): Change API minor test to match API minor number |
| change in previous patch. |
| (g_stat): Ditto. |
| |
| 2003-03-17 Christopher Faylor <cgf@redhat.com> |
| |
| * include/cygwin/version.h: Reorganize last two api versions so that |
| btowc and trunc exports show up before previous bump since there has |
| been no exported version of the DLL with the 64 bit changes yet but |
| 1.3.22 will have the btowc and trunc. |
| |
| 2003-03-17 Christopher Faylor <cgf@redhat.com> |
| |
| * cygwin.din: Export btowc, trunc. |
| * include/cygwin/version.h: Reflect new exports. |
| * syscalls.cc (_stat): Rename to stat to avoid newlib wrapper. |
| * syscalls.cc (_fstat): Ditto. |
| |
| 2003-03-16 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_console.cc (fhandler_console::close): Correct check for |
| current tty. Add debugging output when console is freed. |
| (set_console_state_for_spawn): Add debugging output. |
| * fhandler_tty.cc (fhandler_tty_slave::open): Don't decrement console |
| open flag when vforking. |
| * sigproc.cc (sigproc_terminate): Fix debugging output. |
| * spawn.cc (handle): Eliminate second argument. |
| (spawn_guts): Reflect elimination of argument change to handle. |
| * syscalls.cc (setsid): Add debugging output when console is freed. |
| |
| 2003-03-14 Christopher Faylor <cgf@redhat.com> |
| |
| * syscalls.cc (rename): Revert assumption that DELETE_ON_CLOSE works on |
| Win9x. |
| |
| 2003-03-13 Christopher Faylor <cgf@redhat.com> |
| |
| * include/cygwin/version.h: Bump DLL minor number to 23. |
| |
| 2003-03-13 Corinna Vinschen <corinna@vinschen.de> |
| |
| * autoload.cc (IsProcessorFeaturePresent): Add. |
| * fhandler_proc.cc (format_proc_cpuinfo): Add case for 9x systems. |
| |
| 2003-03-13 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_proc.cc (format_proc_cpuinfo): Fix vendor id in cpuid case. |
| |
| 2003-03-13 Corinna Vinschen <corinna@vinschen.de> |
| |
| * net.cc (cygwin_rcmd): Use correct file descriptor in call to fdsock. |
| (cygwin_rexec): Ditto. |
| |
| 2003-03-13 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_tty.cc (fhandler_tty_slave::close): Fix typo in debug |
| output. |
| |
| * syscalls.cc (rename): Assume that DELETE_ON_CLOSE works on Win9x. |
| |
| 2003-03-11 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_socket.cc (fhandler_socket::dup): Don't call |
| fhandler_base::dup() but call DuplicateHandle directly instead to have |
| control over socket inheritence. |
| |
| 2003-03-11 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_socket.cc (fhandler_socket::dup): On NT systems avoid |
| using WinSock2 socket duplication methods. Add comment. |
| |
| 2003-03-11 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * fhandler_socket.cc (fhandler_socket::fixup_after_fork): |
| Set io_handle to INVALID_SOCKET in case of failure. |
| (fhandler_socket::dup): Return 0 if the io_handle is valid. |
| |
| 2003-03-10 Corinna Vinschen <corinna@vinschen.de> |
| |
| * sec_acl.cc (setacl): Don't handle DELETE flag specially. |
| * security.cc (alloc_sd): Ditto. |
| |
| 2003-03-09 Corinna Vinschen <corinna@vinschen.de> |
| |
| * winver.rc: Change Copyright hint to include 2003. |
| |
| 2003-03-09 Corinna Vinschen <corinna@vinschen.de> |
| |
| Switch to 32/64 datatypes: |
| * Makefile.in (OBSOLETE_FUNCTIONS): Add open acl aclcheck aclfrommode |
| aclfrompbits aclfromtext aclsort acltomode acltopbits acltotext chown |
| facl fchown fgetpos fopen freopen fseeko fsetpos fstat ftello |
| ftruncate getegid geteuid getgid getgrent getgrgid getgrnam getgroups |
| getpwuid getpwuid_r getuid initgroups lchown lseek lstat mknod mmap |
| seekdir setegid seteuid setgid setgroups setregid setreuid setuid stat |
| telldir truncate. |
| (NEW_FUNCTIONS): Add _open64 acl32 aclcheck32 aclfrommode32 |
| aclfrompbits32 aclfromtext32 aclsort32 acltomode32 acltopbits32 |
| acltotext32 chown32 facl32 fchown32 fgetpos64 fopen64 freopen64 |
| fseeko64 fsetpos64 fstat64 ftello64 ftruncate64 getegid32 geteuid32 |
| getgid32 getgrent32 getgrgid32 getgrnam32 getgroups32 getpwuid32 |
| getpwuid_r32 getuid32 initgroups32 lchown32 lseek64 lstat64 mknod32 |
| mmap64 seekdir64 setegid32 seteuid32 setgid32 setgroups32 setregid32 |
| setreuid32 setuid32 stat64 telldir64 truncate64 to substitute the |
| above. |
| * cygserver_shm.h (class client_request_shm): Change uid_t and gid_t |
| members to __uid32_t and __gid32_t. |
| * cygwin.din: Add symbols acl32 aclcheck32 aclfrommode32 |
| aclfrompbits32 aclfromtext32 aclsort32 acltomode32 acltopbits32 |
| acltotext32 facl32 fgetpos64 fopen64 freopen64 fseeko64 fsetpos64 |
| _fstat64 ftello64 _lseek64 mknod32 _open64. |
| * glob.c: Include perprocess.h. |
| (globtilde): Call getpwuid32 and getuid32 instead of getpwuid and |
| getuid. |
| (g_lstat): Check for applications API version to call the appropriate |
| typed gl_lstat function. |
| (g_stat): Ditto for gl_stat. |
| * shm.cc (client_request_shm::client_request_shm): Call geteuid32 |
| and getegid32 instead of geteuid and getegid throughout. |
| * syscalls.cc (_open64): New alias for open. |
| (_lseek64): New alias for lseek64. |
| (_fstat64): New alias for fseek64. |
| (mknod32): New function. |
| (mknod): Calls mknod32 now. |
| * winsup.h: Make function declarations for getuid32, geteuid32, |
| and getpwuid32 accessible for plain C sources. Add declarations |
| for getegid32 and getpwnam. |
| * include/cygwin/version.h: Bum API minor number to 78. |
| * include/sys/cygwin.h: Guard C++ specific members of struct |
| per_process against inclusion in plain C sources. |
| * include/sys/mman.h (mman): Add guard to avoid type clash when |
| compiling Cygwin. |
| |
| 2003-03-09 Christopher Faylor <cgf@redhat.com> |
| |
| * include/cygwin/version.h: Bump DLL minor number to 22. |
| |
| 2003-03-09 Christopher Faylor <cgf@redhat.com> |
| |
| Do some minor reformatting of 'extern "C"' use throughout. |
| |
| 2003-03-06 Christopher January <chris@atomice.net> |
| |
| * autoload.cc (GetSystemTimes): Define new autoload function. |
| * fhandler_proc.cc (proc_listing): Add cpuinfo and partitions entries. |
| (fhandler_proc::fill_filebuf): Add PROC_CPUINFO and PROC_PARTITIONS |
| cases. |
| (format_proc_uptime): Use GetSystemTimes if available. |
| (read_value): New macro. |
| (print): New macro. |
| (cpuid): New function. |
| (can_set_flag): New function. |
| (format_proc_cpuinfo): New function. |
| (format_proc_partitions): New function. |
| |
| 2003-03-09 Christopher Faylor <cgf@redhat.com> |
| |
| * syscalls.cc (unlink): Attempt to be more clever about setting |
| attributes of file. Only open file in query mode to avoid having to |
| mess with security stuff for reading. |
| |
| 2003-03-09 Corinna Vinschen <corinna@vinschen.de> |
| |
| * rmsym: Fix regular expression. |
| |
| 2003-03-09 Christopher Faylor <cgf@redhat.com> |
| |
| * Makefile.in: Change from using new-* to cygwin0 for temporary |
| targets. |
| |
| 2003-03-09 Corinna Vinschen <corinna@vinschen.de> |
| |
| * include/cygwin/socket.h: Set SOMAXCONN to Winsock2 value. |
| |
| 2003-03-08 Christopher Faylor <cgf@redhat.com> |
| |
| * syscalls.cc (unlink): Always attempt to use FILE_FLAG_CLOSE_ON_DELETE |
| to delete files since this allows us to preserve the protection of hard |
| linked files. |
| (link): Generate full path for potentially recalculated .lnk target. |
| |
| 2003-03-08 Christopher Faylor <cgf@redhat.com> |
| |
| Revert below changes regarding _pinfo::cmdline. |
| |
| 2003-03-08 Corinna Vinschen <corinna@vinschen.de> |
| |
| * external.cc (cygwin_internal): Change n to __off64_t to match change |
| of _pinfo::cmdline. |
| * fhandler.h (class fhandler_virtual): Change filesize member to |
| __off64_t. |
| * fhandler_proc.cc (format_proc_meminfo): Change to return __off64_t. |
| (format_proc_stat): Ditto. |
| (format_proc_uptime): Ditto. |
| * fhandler_process.cc (format_process_stat): Ditto. |
| (format_process_status): Ditto. |
| (format_process_statm): Ditto. |
| * pinfo.cc (_pinfo::cmdline): Expect __off64_t parameter. |
| * pinfo.h (class _pinfo): Change declaration of cmdline accordingly. |
| |
| 2003-03-07 Christopher Faylor <cgf@redhat.com> |
| |
| * path.h (PATH_LNK): New enum val. |
| (path_conv::is_lnk_symlink): New function. True if path represents |
| .lnk style symlink. |
| * path.cc (check_shortcut): Set PATH_LNK in pflags when appropriate. |
| (symlink_info::check): Ditto. Remove PATH_LNK from pflags initially. |
| * syscalls.cc (unlink): Always remove readonly attribute from a symlink |
| regardless of type. |
| (link): (from Corinna Vinschen) Allow links to symlinks. Reset |
| attributes on a symlink after successful link creation. |
| (chmod): Use is_lnk_symlink where appropriate. |
| (rename): Ditto. |
| |
| 2003-03-07 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * tty.cc (create_tty_master): Call GetComputerName instead of |
| cygwin_gethostname. Set ut_id. |
| * syscalls.cc (login): Call endutent. |
| (setutent): Do not seek after a fresh open. |
| |
| 2003-03-07 Corinna Vinschen <corinna@vinschen.de> |
| |
| * syscalls.cc (seteuid32): Fix formatting. |
| |
| 2003-03-04 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * thread.cc (MTinterface::fixup_after_fork): Initialize mainthread |
| prior to pthread objects. |
| |
| 2003-03-04 Jason Tishler <jason@tishler.net> |
| |
| * fhandler_socket.cc (fhandler_socket::dup): Initialize type. |
| |
| 2003-03-03 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler.h (fhandler_tty_slave::close): Declare new function. |
| (fhandler_tty_slave::dup): Declare new function. |
| (fhandler_tty_slave::fixup_after_function): Declare new function. |
| * fhandler_tty.cc (fhandler_tty_slave_open): Only increment |
| fhandler_console::open_fhs when associated with a pty. |
| (fhandler_tty_slave::close): Define new function. Decrement |
| fhandler_console::open_fhs when associated with a pty. |
| (fhandler_tty_slave::dup): Define new function. Increment |
| fhandler_console::open_fhs when associated with a pty. |
| (fhandler_tty_slave::fixup_after_fork): Define new function. Increment |
| fhandler_console::open_fhs when associated with a pty. |
| |
| 2003-03-03 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_tty.cc (fhandler_pty_slave::open): Grudgingly increment |
| fhandler_console::open_fhs here. |
| (fhandler_pty_slave::close): Ditto for close. |
| |
| 2003-03-02 Christopher Faylor <cgf@redhat.com> |
| |
| * lib/getopt.c: Refresh from NetBSD sources. |
| |
| 2003-03-02 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_console.cc (fhandler_console::close): Don't decrement |
| in use counter if in vfork fixup stage. |
| |
| 2003-03-02 Christopher Faylor <cgf@redhat.com> |
| |
| * lib/getopt.c: Nuke use of unneeded BSDisms. |
| |
| 2003-03-02 Christopher Faylor <cgf@redhat.com> |
| |
| * dll_init.cc (dll_list::load_after_fork): Don't revert to LoadLibrary |
| if LoadLibraryEx fails. |
| * dtable.cc (dtable::dec_console_fds): Eliminate. |
| (dtable::release): Don't treat console specially. |
| (dtable::build_fhandler): Ditto. |
| * dtable.h (console_fds): Eliminate. |
| (dtable::dec_console_fds): Eliminate. |
| (dtable::inc_console_fds): Eliminate. |
| * fhandler.h (fhandler_console::open_fhs): New static element. |
| * fhandler_console.cc (fhandler_console::open): Increment open_fs. |
| (fhandler_console::close): Call FreeConsole if no more open consoles |
| and ctty is not associated with the console. |
| * syscalls.cc (setsid): Simplify check for when to call FreeConsole. |
| (check_pty_fds): Eliminate definition. |
| * winsup.h (check_pty_fds): Eliminate declaration. |
| |
| 2003-03-02 Christopher Faylor <cgf@redhat.com> |
| |
| * dll_init.cc (dll_list::load_after_fork): Fix typo where result of |
| LoadLibrary was ignored. |
| |
| 2003-03-01 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_socket.cc (fhandler_socket::bind): Open and write socket |
| file using Win32 calls. |
| |
| 2003-03-01 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_socket.cc (get_inet_addr): Open and read socket file using |
| Win32 calls. |
| |
| 2003-02-28 Christopher Faylor <cgf@redhat.com> |
| |
| * cygwin.din: Wrap atexit and exit with cygwin, thread-safe functions. |
| * dcrt0.cc (cygwin_atexit): New function. |
| (cygwin_exit): Ditto. |
| |
| 2003-02-28 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * syscalls.cc (fstat64): Pass get_name () to pc. |
| (access): Pass fn to stat_worker. |
| |
| 2003-03-27 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_socket.cc (class sock_event): New class managing Winsock |
| events for interruptible socket calls. |
| (fhandler_socket::connect): Move support for interruptible call to |
| class sock_event. Use class object instead. |
| (fhandler_socket::accept): Ditto. Remove useless casts. |
| |
| 2003-03-27 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * fhandler_socket.cc (fhandler_socket::connect): Add support for |
| an interruptable connect. |
| |
| 2003-02-27 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * uinfo.cc (internal_getlogin): Only update user.groups.pgsid |
| if the call to set the primary group succeeds. |
| |
| 2003-02-27 Christopher Faylor <cgf@redhat.com> |
| |
| * cygthread::detach: Improve error message. |
| |
| 2003-02-26 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * sec_helper.cc (get_sids_info): debug_print owner_sid and group_sid. |
| |
| 2003-02-25 Corinna Vinschen <corinna@vinschen.de> |
| |
| * mmap.cc (mmap64): Fix returned address by taking the granularity |
| into account. |
| |
| 2003-02-23 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * syslog.cc (syslog): Do not unlock the file before closing it |
| and remove debug_printf about stream errors. |
| |
| 2003-02-22 Christopher Faylor <cgf@redhat.com> |
| |
| * cygmalloc.h: Remove MORECORE_CANNOT_TRIM. It's not true. |
| # cygwin.din: Export mallinfo. |
| # malloc_wrapper.cc (mallinfo): New function. |
| |
| 2003-02-22 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * syslog.cc (syslog): Do not print the Windows pid. Print the Cygwin |
| pid as an unsigned decimal. On Win95 print a timestamp and attempt to |
| lock the file up to four times in 3 ms. |
| |
| 2003-02-21 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_socket.cc (fhandler_socket::fhandler_socket): Fix compiler |
| warning. |
| (fhandler_socket::fstat): Simplify. Set st_uid/st_gid to effective |
| uid/gid of current process in case of open sockets. |
| |
| 2003-02-21 Corinna Vinschen <corinna@vinschen.de> |
| |
| * dtable.cc (dtable::build_fhandler_from_name): Set some fhandler |
| data on sockets to evaluate AF_LOCAL sockets correctly. |
| (dtable::build_fhandler): Set unit number on sockets. |
| * fhandler.h (fhandler_socket): Add unit number. |
| (fhandler_socket::get_unit): New method. |
| * fhandler_socket.cc (fhandler_socket::fhandler_socket): Set unit |
| number. |
| (fhandler_socket::fstat): Reorganize to return more Linux-like |
| values. |
| * net.cc: include ctype.h. |
| (fdsock): Set unit number when building fhandler. |
| * path.cc (path_conv::check): Set device type to FH_SOCKET if file |
| is a AF_UNIX socket. |
| (get_devn): Evaluate unit for virtual socket devices. |
| (win32_device_name): Set windows path for sockets to unix_path with |
| just backslashes to keep the different names. |
| * syscalls.cc (fstat64): Don't override st_ino, st_dev and st_rdev |
| for sockets. |
| (stat_worker): Ditto. |
| |
| 2003-02-21 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * autoload.cc (AccessCheck): Add. |
| (DuplicateToken): Add. |
| * security.h (check_file_access): Declare. |
| * syscalls.cc (access): Convert path to Windows, check existence |
| and readonly attribute. Call check_file_access instead of acl_access. |
| * security.cc (check_file_access): Create. |
| * sec_acl (acl_access): Delete. |
| |
| 2003-02-19 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler.cc (fhandler_base::open): Move some filesystem specific |
| stuff. |
| (fhandler_disk_file::open): Accept some filesystem specific stuff. |
| * sigproc.cc (wait_for_sigthread): Become slightly more thread safe. |
| (sig_send): Don't assume that signal thread is ready. |
| |
| 2003-02-20 Corinna Vinschen <corinna@vinschen.de> |
| |
| * wincap.h (wincap): Remove unnecessary definition of |
| supports_sparse_files. |
| * wincap.cc: Ditto. |
| |
| 2003-02-20 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_disk_file.cc (fhandler_disk_file::opendir): Check descriptor |
| created by cygheap_fdnew constructor. |
| * fhandler_virtual.cc (fhandler_virtual::opendir): Ditto. |
| * fhandler_socket.cc (fhandler_socket::accept): Ditto and move |
| creation of file descriptor behind blocking OS call. |
| * net.cc (cygwin_socket): Ditto. |
| (cygwin_rcmd): Ditto. |
| (cygwin_rresvport): Ditto. |
| (cygwin_rexec): Ditto. |
| (socketpair): Ditto. |
| |
| 2003-02-20 Corinna Vinschen <corinna@vinschen.de> |
| |
| * autoload.cc (GetCompressedFileSize): Add. |
| * fhandler_disk_file.cc (fhandler_disk_file::fstat_helper): Compute |
| st_blocks value from GetCompressedFileSize() if available. |
| |
| 2003-02-18 Vaclav Haisman <V.Haisman@sh.cvut.cz> |
| |
| * wincap.h (wincaps::supports_sparse_files): New flag. |
| (wincapc::supports_sparse_files): New method. |
| * wincap.cc (wincap_unknown): Define value for the new flag. |
| (wincap_95): Ditto. |
| (wincap_95osr2): Ditto. |
| (wincap_98): Ditto. |
| (wincap_98se): Ditto. |
| (wincap_me): Ditto. |
| (wincap_nt3): Ditto. |
| (wincap_nt4): Ditto. |
| (wincap_nt4sp4): Ditto. |
| (wincap_2000): Ditto. |
| (wincap_xp): Ditto. |
| * path.h (path_conv::fs_flags): New method. |
| * fhandler_disk_file.cc: Include winioctl.h for DeviceIoControl. |
| (fhandler_disk_file::open): Set newly created and truncated files as |
| sparse on platforms that support it. |
| |
| 2003-02-17 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * grp.cc (internal_getgroups): Handle properly tokens with |
| no groups. Fix bug introduced on 2003-02-04. |
| |
| 2003-02-16 Christopher Faylor <cgf@redhat.com> |
| |
| * cygwin.din: Export all appropriate newlib libm functions. Sort. |
| * include/cygwin/version.h: Bump API minor number. |
| |
| 2003-02-15 Christopher Faylor <cgf@redhat.com> |
| |
| * cygwin.din: Export all appropriate newlib libc functions. |
| * include/cygwin/version.h: Bump API minor number. |
| |
| 2003-02-14 Jason Tishler <jason@tishler.net> |
| |
| * mmap.cc (mprotect): Add missing break. |
| |
| 2003-02-13 Christopher Faylor <cgf@redhat.com> |
| |
| * exceptions.cc (try_to_debug): Don't reset priority when returning |
| from non-waitloop call. |
| |
| 2003-02-13 Vaclav Haisman <V.Haisman@sh.cvut.cz> |
| Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_console.cc (fhandler_console::write_normal): Use MessageBeep |
| for bell sound. |
| * autoload.cc (MessageBeep): Add. |
| |
| 2003-02-13 Christopher Faylor <cgf@redhat.com> |
| |
| * include/cygwin/types.h: Use correct ifdef guard for u_ definitions. |
| |
| 2003-02-13 Christopher Faylor <cgf@redhat.com> |
| |
| * environ.cc (environ_init): Use strechr. |
| |
| 2003-02-13 Christopher Faylor <cgf@redhat.com> |
| |
| * include/cygwin/in.h (sockaddr_in): Fix typo. |
| |
| 2003-02-12 Christopher Faylor <cgf@redhat.com> |
| |
| * path.h (path_conv): Reorganize slightly. |
| |
| 2003-02-12 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_tty.cc (process_input): Add sanity check to ensure that |
| console typeahead is cleared on signal. |
| |
| 2003-02-12 Christopher Faylor <cgf@redhat.com> |
| |
| * spawn.cc (linebuf::~linebuf): Resurrect commented out (for |
| debugging?) code. |
| |
| 2003-02-10 Ralf Habacker <ralf.habacker@freenet.de> |
| |
| * include/cygwin/in.h (in_attr_t): Define new type. |
| * include/arpa/inet.h (inet_addr): Change return type to in_addr_t. |
| (inet_lnaof): Ditto. |
| (inet_netof): Ditto. |
| (inet_network): Ditto. |
| |
| 2003-02-10 Christopher Faylor <cgf@redhat.com> |
| |
| * include/cygwin/types.h: Move many *_t typedefs here. Protect them |
| with ifdefs. |
| * fhandler_disk_file.cc (fhandler_disk_file::fstat): Change ntsec_atts to mode_t. |
| * security.cc (get_attribute_from_acl): Accept mode_t attribute. |
| (get_nt_attribute): Ditto. |
| (get_file_attribute): Ditto. |
| (get_nt_object_attribute): Ditto. |
| (get_object_attribute): Ditto. |
| * security.h: Reflect above changes. |
| * syscalls.cc (chown_worker): Change attrib to mode_t. |
| |
| 2003-02-08 Christopher Faylor <cgf@redhat.com> |
| |
| * include/cygwin/version.h: Bump DLL minor number to 21. |
| |
| 2003-02-07 Christopher Faylor <cgf@redhat.com> |
| |
| * malloc.cc (DEFAULT_MMAP_THRESHOLD): Bump down to 16MB thanks to below |
| changes. |
| |
| 2003-02-07 Corinna Vinschen <corinna@vinschen.de> |
| |
| * mmap.cc (mmap_record::alloc_map): De-inline. Add offset and length |
| parameter. Only protect pages actually unused currently. Do job |
| of map_map() when initializing a map. |
| (mmap_record::map_map): Reduce functionality for the reuse case |
| of private anonymous mapping. |
| (mmap_record::fixup_map): Format change. |
| (list::add_record): Add offset and length parameter to call |
| mmap_record::alloc_map() correctly. |
| (mmap64): Rename `l' variable to `map_list'. Accommodate above changes. |
| (munmap): Rename `l' variable to `map_list'. |
| (msync): Ditto. |
| (fhandler_disk_file::mmap): Streamline code. |
| (mprotect): Ditto. |
| (fixup_mmaps_after_fork): Rename `l' variable to `map_list'. |
| |
| 2003-02-07 Vaclav Haisman <V.Haisman@sh.cvut.cz> |
| Christopher Faylor <cgf@redhat.com> |
| |
| * exceptions.cc (try_to_debug): Set priority of current thread rather |
| than the main thread. Make busy waiting loop less busy. Restore |
| priority when function returns. |
| |
| 2003-02-07 Christopher Faylor <cgf@redhat.com> |
| |
| * malloc.cc (DEFAULT_MMAP_THRESHOLD): Set high to avoid mmaps. |
| |
| 2003-02-07 Christopher Faylor <cgf@redhat.com> |
| |
| * pipe.cc (fhandler_pipe::close): Avoid extraneous this->. |
| |
| 2003-02-06 Christopher Faylor <cgf@redhat.com> |
| |
| * heap.cc (heap_init): Remove debugging code. |
| |
| 2003-02-06 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * security.h: Introduce names UNKNOWN_UID and UNKNOWN_GID and delete |
| declaration of is_grp_member. |
| * uinfo.cc (internal_getlogin): Use UNKNOWN_GID. |
| * passwd.cc (pwdgrp::read_passwd): Use UNKNOWN_UID. |
| * grp.cc (pwdgrp::read_group): Change group name to provide better |
| feedback. |
| (getgrgid): Use gid16togid32. |
| * sec_helper.cc (is_grp_member): Delete. |
| |
| 2003-02-05 Christopher Faylor <cgf@redhat.com> |
| |
| * path.cc: Change 'to_posix_p' to 'to_posix' throughout. |
| (conv_path_list_buf_size): Accommodate relative paths. |
| |
| 2003-02-05 Christopher Faylor <cgf@redhat.com> |
| |
| * path.cc (etc::dir_changed): Fix debug printf. |
| |
| 2003-02-05 Corinna Vinschen <corinna@vinschen.de> |
| |
| * sec_acl.cc (setacl): Move all permission settings to beginning of |
| loop. Set default rights to same values as in alloc_sd(). Set DELETE |
| for owner and default owner only if S_IWOTH is given. |
| |
| 2003-02-05 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * sec_acl.cc: Change all __aclent16_t to __aclent32_t except in |
| wrapper function definitions. Replace call to the aclXYZ functions by |
| calls aclXYZ32. |
| (searchace): Change type of third argument to __uid32_t and use |
| ILLEGAL_UID instead of -1; |
| (setacl): Remove some initializations. Only give STANDARD_RIGHTS_WRITE |
| for S_IWOTH. Replace -1 by ILLEGAL_UID. |
| (getacl): Change type of owner_sid, group_sid and ace_sid to cygpsid. |
| In last else clause, suppress second call to ace_sid.get_id and use |
| TRUE in first call. Replace EqualSid by ==. |
| (acl_access): Call internal_getgroups in USER and GROUP cases. |
| (acecmp: Define static. |
| (acl32): Create from 16 bit type. |
| (facl32): Ditto. |
| (lacl32): Ditto. |
| (aclcheck32): Ditto. |
| (aclsort32): Ditto. |
| (acltomode32): Ditto. |
| (aclfrommode32): Ditto. |
| (acltopbits32): Ditto. |
| (aclfrompbits32): Ditto. |
| (acltotext32): Ditto. |
| (aclfromtext32): Ditto, and use strechr. |
| (acl16to32): Create. |
| (acl): Make it a wrapper function. |
| (facl): Ditto. |
| (lacl): Ditto. |
| (aclcheck): Ditto. |
| (aclsort): Ditto. |
| (acltomode): Ditto. |
| (aclfrommode): Ditto. |
| (acltopbits): Ditto. |
| (aclfrompbits): Ditto. |
| (acltotext): Ditto. |
| (aclfromtext): Ditto. |
| * security.cc (write_sd): Call set_process_privilege and check |
| ownership. |
| (alloc_sd): Remove call to set_process_privilege and the owner check. |
| |
| 2003-02-05 Christopher Faylor <cgf@redhat.com> |
| |
| * include/sys/cygwin.h: Use C-style comments. |
| |
| 2003-02-05 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * sec_helper.cc (get_sids_info): New function. |
| * security.cc (extract_nt_dom_user): Simplify with strechr. |
| (get_user_groups): Initialize glen to MAX_SID_LEN. |
| (get_user_local_groups): Ditto. |
| (get_attribute_from_acl): Define ace_sid as cygpsid. |
| (get_nt_attribute): Define owner_sid and group_sid as cygpsid. |
| Call get_sids_info instead of cygsid.get_{u,g}id and is_grp_member. |
| (get_nt_object_attribute): Ditto. |
| (alloc_sd): Define ace_sid as cygpsid. |
| |
| 2003-02-04 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * syscalls.cc (struct system_cleanup_args): New struct. |
| (system_cleanup): New function. |
| (system): Use pthread_cleanup_push and _pop to save and restore |
| signal handlers and sigprocmask. |
| |
| 2003-02-04 Corinna Vinschen <corinna@vinschen.de> |
| |
| * path.cc (symlink): Create security attributes so that only the |
| user can modify the symlink. |
| * security.cc (set_security_attribute): Remove symlink special |
| handling. |
| |
| 2003-02-04 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * grp.cc (internal_getgroups): Do not return without closing |
| the process handle. |
| |
| 2003-02-04 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * security.h (class cygpsid): New class. |
| (class cygsid): Use cygpsid as base. Remove members psid, get_id, |
| get_uid, get_gid, string, debug_printf and the == and != operators. |
| (cygsidlist::clear_supp): Only do work if setgroups has been called. |
| * sec_helper.cc: Define sid_auth NO_COPY. |
| (cygpsid::operator==): New operator. |
| (cygpsid::get_id): New function. |
| (cygpsid::string): New function. |
| (cygsid::string): Delete. |
| (cygsid::get_id): Delete. |
| * pwdgrp.h: Change arguments of internal_getpwsid, |
| internal_getgrsid and internal_getgroups to cygpsid. |
| * passwd.cc (internal_getpwsid): Change argument from cygsid to cygpsid. |
| * grp.cc (internal_getgrsid): Ditto. |
| (internal_getgroups): Ditto. |
| |
| 2003-02-03 Christopher Faylor <cgf@redhat.com> |
| |
| Eliminate most unneeded this-> pointers throughout. |
| |
| 2003-02-03 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * security.h: Add third argument to set_process_privilege. |
| * autoload.cc: Add OpenThreadToken. |
| * sec_helper.cc (set_process_privilege): Add and use use_thread |
| argument. |
| * security.cc (alloc_sd): Modify call to set_process_privilege. |
| Remember the result in each process. If failed and file owner is not |
| the user, fail. |
| |
| 2003-02-03 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_socket.cc (fhandler_socket::recvfrom): Return buffer |
| length and don't set errno in case of WSAEMSGSIZE error. |
| (fhandler_socket::recvmsg): Ditto. |
| |
| 2003-02-01 Christopher Faylor <cgf@redhat.com> |
| |
| * grp.cc (getgrent32): Only refresh group entries when at beginning. |
| (internal_getgrsid): Only refresh if uninitialized. |
| (internal_getgrent): Ditto. |
| * passwd.cc (getpwent): Only refresh passwd entries when at beginning. |
| (pwdgrp::read_passwd): linebuf *cannot* be NO_COPY. |
| (internal_getpwsid): Only refresh if uninitialized. |
| (getpass): No need to refresh passwd data here. |
| * pwdgrp.h (refresh): Eliminate default. |
| |
| 2003-01-31 Christopher Faylor <cgf@redhat.com> |
| |
| * dlfcn.cc (dlerror): Only report load errors once per error. |
| |
| 2003-01-31 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_serial.cc (fhandler_serial::open): Avoid extraneous setting |
| of res. |
| |
| * termios.cc (tcsetattr): Correctly record errno after tcsetattr call. |
| |
| 2003-01-31 Troy Curtiss <troyc@usa.net> |
| |
| * fhandler_serial.cc (fhandler_serial::tcsetattr): Add error-checking |
| so that if any Win32 SetComm*() calls fail, errno gets set to EINVAL |
| and tcsetattr() returns -1. Catch invalid bitrates, mostly. If baud |
| rate setting is B0, just drop DTR and leave Win32 DCB bitrate as-is |
| since 0 is not a valid Win32 setting. |
| (fhandler_serial::tcgetattr): If DTR is low, populate the bitrate as |
| B0, otherwise get it from the DCB. |
| |
| 2003-01-31 Christopher Faylor <cgf@redhat.com> |
| |
| * passwd.cc (pwdgrp::read_passwd): linebuf *must* be static (from |
| Pierre Humblet). |
| * pwdgrp.h (pwdgrp::refresh): Avoid calling read function if we already |
| have lock since that means we are in the process of reading the file. |
| |
| 2003-01-31 Jason Tishler <jason@tishler.net> |
| |
| * shared.cc (shared_info::heap_chunk_size): Use correct variable when |
| reading HKLM. |
| |
| 2003-01-30 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_registry.cc (fhandler_registry::exists): Fix off-by-one |
| error when inspecting path. |
| |
| 2003-01-29 Christopher Faylor <cgf@redhat.com> |
| |
| * lib/getopt.c: Allow environment variable control of POSIXLY_INCORRECT |
| behavior. |
| |
| 2003-01-28 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_socket.cc (fhandler_socket::accept): On successful execution |
| set connection state of returned socket to CONNECTED. |
| |
| 2003-01-27 Christopher Faylor <cgf@redhat.com> |
| |
| * passwd.cc (pwdgrp::parse_passwd): Be more unforgiving about |
| non-numeric fields. |
| |
| 2003-01-26 Christopher Faylor <cgf@redhat.com> |
| |
| * uinfo.cc (pwdgrp::next_num): Remove check for NULL since it is no |
| longer a valid return from next_str. |
| (pwdgrp::add_line): Duh. Revert to use strchr. |
| |
| 2003-01-26 Christopher Faylor <cgf@redhat.com> |
| |
| * string.h (strechr): New function. |
| * uinfo.cc (pwdgrp::next_str): Search only for input char in string. |
| Return EOS on failure. Don't check for NULL since it shouldn't be |
| possible. |
| (pwdgrp::add_line): Revert to replacing '\n' in input line with '\0'. |
| (pwdgrp::next_num): Pass explicit separator character to next_str. |
| * grp.cc (pwdgrp::parse_group): Ditto. |
| * passwd.cc (pwdgrp::parse_passwd): Ditto. Revamp test for garbage |
| input. |
| * pwdgrp.h (pwdgrp::next_str): Don't use default parameter. |
| |
| 2003-01-26 Christopher Faylor <cgf@redhat.com> |
| |
| * uinfo.cc (pwdgrp::load): Regularize strace output. Add warning for |
| CreateFile failure. |
| |
| 2003-01-26 Christopher Faylor <cgf@redhat.com> |
| |
| * passwd.cc (pwdgrp::parse_passwd): Eliminate use of memset. The |
| structure should always be completely filled out. |
| * grp.cc (pwdgrp::parse_group): Ditto. |
| |
| 2003-01-26 Christopher Faylor <cgf@redhat.com> |
| |
| * grp.cc (pwdgrp::parse_group): Fix off-by-one problem in allocating |
| gr_mem. |
| |
| 2003-01-26 Christopher Faylor <cgf@redhat.com> |
| |
| * include/sys/strace.h (paranoid_printf): Define as not being part of |
| "all" output. |
| |
| 2003-01-25 Christopher Faylor <cgf@redhat.com> |
| |
| * pwdgrp.h (pwdgrp::next_num): Rename from next_int. Returns |
| true/false if parse operation succeeded. |
| (pwdgrp::reparse): Remove. |
| (pwdgrp::raw_ptr): New function. Returns pointer in line. |
| (pwdgrp::next_num): New functions for parsing other than unsigned long. |
| * grp.cc (pwdgrp::parse_group): Reinstate previous parsing behavior. |
| Don't fill in fields with NULL and assign empty gr_mem to known pointer |
| rather than doing a pointless calloc. Streamline gr_mem parsing. |
| Don't increment curr_lines here. |
| * passwd.cc (pwdgrp::parse_passwd): Use new behavior of next_num. |
| Don't increment curr_lines here. |
| * uinfo.cc (pwdgrp::next_str): Keep returning EOL if out of data. |
| (pwdgrp::reparse): Remove. |
| (pwdgrp::next_num): Rename from next_int. Return bool indicating |
| success of parse, argument returns value parsed. |
| (pwdgrp::add_line): Increment curr_lines here on successful parse. |
| (pwdgrp::load): (from Pierre Humblet) Don't return status. Just report |
| it here. |
| |
| 2003-01-25 Christopher Faylor <cgf@redhat.com> |
| |
| * pwdgrp.cc (pwdgrp::reparse): Declare. |
| * uinfo.cc (pwdgrp::reparse): Define. |
| * grp.cc (pwdgrp::parse_group): Use reparse. |
| |
| 2003-01-25 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * syscalls.cc (seteuid32): On Win95 get the pw entry. If it exists |
| update the euid and call cygheap->user.set_name. Remove special |
| handling of ILLEGAL_UID. |
| (setgid32): Add a debug_printf. On Win95, always set the egid. |
| Remove special handling of ILLEGAL_GID. Do not compare gid and gr_gid. |
| * child_info.h (class cygheap_exec_info): Remove uid. |
| * spawn.cc (spawn_guts): Do not set ciresrv.moreinfo->uid. |
| * dcrto.cc (dll_crt0_1): Always call uinfo_init. |
| * uinfo.cc (uinfo_init): Reorganize and close handle if needed. |
| (cygheap_user::ontherange): Do not call internal_getpwnam if pw is NULL. |
| |
| 2003-01-24 Christopher Faylor <cgf@redhat.com> |
| |
| * fhandler_console.cc (fhandler_console::send_winch_maybe): Reset |
| scroll region if size changes. |
| |
| 2003-01-24 Pierre Humblet <pierre.humblet@ieee.org> |
| Jason Tishler <jason@tishler.net> |
| |
| * cygwin.din: Export setreuid32, setreuid, setregid32, setregid. |
| * syscalls.cc (setreuid32): New function. |
| (setreuid): Ditto. |
| (setregid32): Ditto. |
| (setregid): Ditto. |
| * include/cygwin/version.h: Bump API minor number. |
| |
| 2003-01-23 Christopher Faylor <cgf@redhat.com> |
| |
| * pwdrp.h (pwdgrp::refresh): Lock entire test prior to reading. |
| |
| 2003-01-23 Christopher Faylor <cgf@redhat.com> |
| |
| * grp.cc (pwdgrp::parse_group): Eliminate arg and use class member |
| instead. Use next_str and next_int to parse arguments. |
| * passwd.cc (pwdgrp::parse_passwd): Ditto. |
| (grab_string): Eliminate. |
| (grab_int): Ditto. |
| * pwdgrp.h (pwdgrp::parse): Eliminate input arg. |
| (pwdgrp::parse_passwd): Reflect above change. |
| (pwdgrp::parse_group): Reflect above change. |
| (pwdgrp::next_str): New function. |
| (pwdgrp::next_int): Ditto. |
| (pwdgrp::gets): Eliminate. |
| * uinfo.cc (pwdgrp::next_str): New function. |
| (pwdgrp::next_int): Ditto. |
| (pwdgrp::add_line): Subsume gets. |
| (pwdgrp::gets): Eliminate. |
| (pwdgrp::load): Just call add_line to parse input buffer. |
| |
| 2003-01-22 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * include/pthread.h (PTHREAD_MUTEX_RECURSIVE): Revert changes from |
| 2003-01-09 mutex patch. |
| (PTHREAD_MUTEX_ERRORCHECK): Ditto. |
| |
| 2003-01-22 Corinna Vinschen <corinna@vinschen.de> |
| |
| * cygrun.c: Move from here to ../testsuite. |
| * Makefile.in: Remove cygrun.exe dependencies. |
| |
| 2003-01-21 Jason Tishler <jason@tishler.net> |
| |
| * cygwin.din: Export nanosleep(). |
| * signal.cc (nanosleep): New function. |
| (sleep): Move old functionality to nanosleep(). Call nanosleep(). |
| (usleep): Remove old functionality. Call nanosleep(). |
| * include/cygwin/version.h: Bump API minor number. |
| |
| 2003-01-21 Christopher Faylor <cgf@redhat.com> |
| |
| * grp.cc: Call gr.refresh() rather than doing isunitialized tests |
| throughout. |
| (gr): Use constructor (sigh). |
| (pwdgrp::parse_group): Rename from parse_grp. |
| (pwdgrp::read_group): Rename from read_etc_group. Just call gr.load |
| with a single argument. |
| * passwd.cc: Call pr.refresh() rather than doing isunitialized tests |
| throughout. |
| (pr): Use constructor (sigh). |
| (pwdgrp::parse_passwd): Rename from "parse_pwd". |
| (pwdgrp::read_passwd): Rename from read_etc_passwd. Just call pr.load |
| with a single argument. |
| * pwdgrp.h (pwdgrp_state): Eliminate. |
| (pwdgrp): Reflect above renamings. |
| (pwdgrp::etc_ix): Rename from pwd_ix. |
| (pwdgrp::read): New element. |
| (pwdgrp::lock): New element. |
| (pwdgrp::refresh): New function. |
| (pwdgrp::load): Eliminate variations which take buffer arguments. |
| (pwdgrp::pwdgrp): New constructors. Initialize mutex here. |
| * uinfo.cc (pwdgrp::load): Accommodate pwd_ix -> etc_ix renaming. |
| (pwdgrp::load): Set initialized state to true rather than setting state |
| to loaded. |
| |
| 2003-01-21 Christopher Faylor <cgf@redhat.com> |
| |
| * include/cygwin/version.h: Bump DLL minor number. |
| |
| 2003-01-21 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * path.h (etc::change_possible): Revert the type to bool. |
| (etc::set_last_modified): Remove obsolete function. |
| * path.cc (etc::change_possible): Revert type to bool. |
| (etc::test_file_change): Do not test for negative values of |
| change_possible and do not set it to -res. |
| (etc::dir_changed): When the handle is NULL, call memset instead of |
| test_file_changed. When the handle is invalid, return true. Detect |
| filename change in /etc. |
| (etc::file_changed): Remove unneeded check for !fn[n]. |
| * uinfo.cc (pwdgrp::load): Eliminate spurious setting of fh to NULL. |
| * pwdgrp.h (pwdgrp::operator =): Eliminate. |
| |
| 2003-01-19 Christopher Faylor <cgf@redhat.com> |
| |
| * pwdgrp.h (etc): Move to path.h. |
| (pwdgrp::max_lines): New field. |
| (pwdgrp::curr_lines): New field. |
| (pwdgrp::pwdgrp_buf): Ditto. |
| (pwdgrp_buf_elem_size): Ditto. |
| (pwdgrp_parse): Ditto. |
| (pwdgrp::gets): Just declare here. |
| (pwdgrp::load): Ditto. Just take one argument. |
| (pwdgrp::load): Define overloaded function accepting passwd buf. |
| (pwdgrp::load): Define overloaded function accepting group buf. |
| * grp.cc: Use pwdgrp elements rather than standalone static variables |
| throughout. |
| (curr_lines): Eliminate. |
| (max_lines): Ditto. |
| (add_grp_line): Ditto. |
| (parse_grp): Define as returning boolean. Accept void * arg and line |
| count. Coerce first argument into __group32 buf reference. Increment |
| curr_line as appropriate. |
| (read_etc_group): Pass pwdgrp buffer to gr.load. |
| * passwd.cc: Use pwdgrp elements rather than standalone static variables |
| throughout. |
| (curr_lines): Eliminate. |
| (max_lines): Ditto. |
| (add_grp_line): Ditto. |
| (parse_passwd): Define as returning boolean. Accept void * arg and line |
| count. Coerce first argument into passwd buf reference. Increment |
| curr_line as appropriate. |
| (read_etc_group): Pass pwdgrp buffer to pr.load. |
| * path.cc (etc::fn): Extend buffer size to allow index by 1 rather than |
| zero. |
| (etc::last_modified): Ditto. |
| (etc::change_possible): Ditto. Renamed from sawchange. Change to |
| signed char since elements are now tri-state. |
| (etc::init): Assume "handle" is 1 based rather than 0. |
| (etc::test_file_change): New function. Sets change_possible based on |
| file date comparison. |
| (etc::dir_changed): Check file states immediately after changed_h is |
| initialized to avoid a race. |
| (etc::file_changed): Use test_file_change to detect if file needs to be |
| updated. |
| * path.h (etc): Move class here from pwdgrp.h. |
| * uinfo.cc: Move etc:: functions to path.cc. Move pwdgrp functions |
| here. |
| (pwdgrp::gets): Eliminate buf checks. Just check eptr and set lptr. |
| (pwdgrp::add_line): New function. |
| (pwdgrp::load): Call generic add_line function which will call correct |
| parser. |
| |
| 2003-01-17 Christopher Faylor <cgf@redhat.com> |
| |
| * cygheap.cc: Change most 'int's to 'unsigned's. |
| (_cmalloc): Only check for size of malloced region when calculating |
| bucket. Add overhead when performing the sbrk. Previous change broke |
| _crealloc. |
| |
| 2003-01-17 Christopher Faylor <cgf@redhat.com> |
| |
| * dcrt0.cc (initialize_env): Use colon for CYGWIN_DEBUG separator. |
| * grp.cc: Change most statics to NO_COPY throughout. |
| * passwd.cc: Ditto. |
| |
| 2003-01-17 Christopher Faylor <cgf@redhat.com> |
| |
| * pwdgrp.h: Change some BOOLs to bools. |
| (pwdgrp::pwdgrp): Remove unneeded constructor. |
| * passwd.cc: Change BOOL to bool throughout. |
| |
| 2003-01-17 Corinna Vinschen <corinna@vinschen.de> |
| |
| * cygwin.din: Add strerror_r. |
| * include/cygwin/version.h: Bump API minor number. |
| |
| 2003-01-17 Christopher Faylor <cgf@redhat.com> |
| |
| * uinfo.cc (etc::dir_changed): Don't print a warning if can't open |
| /etc, unless debugging. |
| |
| 2003-01-17 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * grp.cc (read_etc_group): On NT, add a line for gid = -1. Change name |
| "unknown" to "mkgroup". |
| (internal_getgrgid): Do not return default in nontsec case. |
| (internal_getgroups): Add argument srchsid and look for it in groups if |
| not NULL. |
| * passwd.cc (read_etc_passwd): On NT, add a line for uid = -1. Use |
| same default uid for Win95 and NT. Call cygheap_user::ontherange to |
| initialize HOME. |
| |
| 2003-01-16 Christopher Faylor <cgf@redhat.com> |
| |
| * cygheap.cc (init_cygheap::etc_changed): Move to uinfo.cc. |
| * cygheap.h (init_cygheap::etc_changed_h): Remove. |
| (init_cygheap::etc_changed): Ditto. |
| * grp.cc (group_state): Remove. Use gr instead throughout. |
| (gr): Define as class pwdgrp. |
| (read_etc_group): Remove gr definition. Remove calls to |
| set_last_modified and close. Pass add_grp to gr.load to load file. |
| * passwd.cc (passwd_state): Remove. Use pr instead, throughout. |
| (pr): Define as class pwdgrp. |
| (read_etc_passwd): Remove pr definition. Remove calls to |
| set_last_modified and close. Pass add_pwd_line to pr.load to load |
| file. |
| * pwdgrp.h (etc): New helper class for pwdgrp. |
| (pwdgrp): Combine pwdgrp_check and pwdgrp_read into one class. Remove |
| file_w32 and last_modified fields. |
| (pwdgrp::set_last_modified): Remove. |
| (pwdgrp::isinitializing): Remove FindFirstFile stuff. Move to |
| etc::file_changed. |
| (pwdgrp::load): Rename from 'open'. Call etc::init to initialize etc |
| scanning. Close file handle after reading buffer into memory. Parse |
| buffer by calling second argument. |
| (pwdgrp::gets): Reorganize slightly to rely on eptr starting at |
| beginning of buffer. |
| (pwdgrp::close): Remove. |
| * uinfo.cc (etc::dir_changed): New function. |
| (etc::init): Ditto. |
| (etc::file_changed): Ditto. |
| (etc::set_last_modified): Ditto. |
| |
| 2003-01-16 Jason Tishler <jason@tishler.net> |
| |
| * mmap.cc (fixup_mmaps_after_fork): Add ERROR_NOACCESS to the list of |
| ReadProcessMemory() error codes that trigger a retry with temporary |
| PAGE_READONLY access. Note that this can occur on NT 4.0. |
| |
| 2003-01-15 Christopher Faylor <cgf@redhat.com> |
| |
| * path.cc (normalize_posix_path): Convert win32 path separators to |
| slashes when full path is specified. |
| |
| 2003-01-15 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * cmalloc.cc (_cmalloc): Fix memory leak. |
| |
| 2003-01-15 Corinna Vinschen <corinna@vinschen.de> |
| |
| * autoload.cc: Fix copyright date. |
| * fhandler_dsp.cc: Ditto. |
| * mmap.cc: Ditto. |
| * net.cc: Ditto. |
| * ntdll.h: Ditto. |
| * signal.cc: Ditto. |
| * syscalls.cc: Ditto. |
| * uname.cc: Ditto. |
| * wait.cc: Ditto. |
| |
| 2003-01-14 Corinna Vinschen <corinna@vinschen.de> |
| |
| * mmap.cc (fixup_mmaps_after_fork): Copy protection to child process. |
| Change ambiguous debug output. |
| |
| 2003-01-14 Corinna Vinschen <corinna@vinschen.de> |
| |
| * mmap.cc (mmap_record::access): Change argument type to caddr_t |
| for strictness. |
| (mprotect): Protect against calling VirtualProtect() for shared |
| pages on 9x/Me. |
| (fixup_mmaps_after_fork): If ReadProcessMemory() fails, try to |
| change protection of parent page to PAGE_READONLY, then try again. |
| Revert protection afterwards. |
| |
| 2003-01-14 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * syscalls.cc (system): Add pthread_testcancel call. |
| * thread.cc: Update list of cancellation points. |
| |
| 2003-01-14 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * wait.cc: Include thread.h |
| (wait4): Add pthread_testcancel call. |
| Wait for child process and cancellation event. |
| * thread.cc: Update list of cancellation points. |
| |
| 2003-01-14 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * signal.cc (sleep): Add pthread_testcancel call. |
| Wait for signal and cancellation event. |
| (usleep): Ditto. |
| |
| 2003-01-14 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * exceptions.cc (handle_sigsuspend): Add pthread_testcancel call. |
| Wait for signal and cancellation event. |
| * thread.cc: Update list of cancellation points. |
| |
| 2003-01-14 David Huang <davehzhr@hotmail.com> |
| |
| * fhandler_dsp.cc (fhandler_dsp::ioctl): Add limited support for |
| SNDCTL_DSP_GETFMTS. |
| |
| 2003-01-12 Christopher Faylor <cgf@redhat.com> |
| |
| * ntdll.h: Fix typo. |
| |
| 2003-01-12 Corinna Vinschen <corinna@vinschen.de> |
| |
| * uname.cc (uname): Use cygwin_gethostname() to retrieve hostname. |
| |
| 2003-01-12 Pierre Humblet <pierre.humblet@ieee.org> |
| |
| * sec_acl.cc (search_ace): Use id == -1, instead of < 0, as wildcard. |
| (setacl): Start the search for a matching default at the next entry. |
| Invalidate the type of merged entries instead of clearing it. |
| Use well_known_creator for default owner and owning group and do |
| not try to merge non-default and default entries in these cases. |
| (getacl): Recognize well_known_creator for default owner and group. |
| (acl_worker): Improve errno settings and streamline the nontsec case. |
| * security.cc (write_sd): Remove the call to set_process_privilege. |
| (alloc_sd): If the owner changes, call set_process_privilege and return |
| immediately on failure. Change inheritance rules: on new directories add |
| inherit only allow ACEs for creator_owner, creator_group and everyone. |
| Preserve all inheritances through chmod and chown calls. Introduce |
| isownergroup to implement the uid == gid case, to keep the inheritance |
| code simple. Do not initialize owner_sid and group_sid and stop using |
| the variable psd. |
| |
| 2003-01-10 Christopher Faylor <cgf@redhat.com> |
| |
| * net.cc: Use gethostname define from winsock2.h. |
| |
| 2003-01-10 Christopher Faylor <cgf@redhat.com> |
| |
| * path.cc: Unrevert below reversion except for |
| mount_info::conv_to_posix_path part. |
| |
| 2003-01-10 Corinna Vinschen <corinna@vinschen.de> |
| |
| * path.cc: Revert patch from 2003-01-09 to normalize a windows path |
| rather than converting to posix. |
| |
| 2003-01-10 Corinna Vinschen <corinna@vinschen.de> |
| |
| * autoload.cc (gethostname): Make call optional, return 1 if function |
| can't get loaded. |
| * net.cc (cygwin_gethostname): Call GetComputerName if return value |
| of gethostname is non-zero. |
| |
| 2003-01-10 Charles Wilson <cwilson@ece.gatech.edu> |
| |
| * cygwin.din: Add asprintf and vasprintf, as well as the reentrant |
| versions and underscore variants. |
| * include/cygwin/version.h: Bump CYGWIN_VERSION_API_MINOR. |
| |
| 2003-01-10 Corinna Vinschen <corinna@vinschen.de> |
| |
| * net.cc (cygwin_gethostname): Fix call to wsock function gethostname. |
| |
| 2003-01-09 Christopher Faylor <cgf@redhat.com> |
| |
| * cygthread.cc (cygthread::cygthread): Be more noisy about odd |
| condition. |
| * miscfuncs.cc (low_priority_sleep): Sleep in regular priority if |
| that's what we're currently running at. |
| |
| 2003-01-09 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * include/semaphore.h: Modify typedef for sem_t. |
| * include/cygwin/types.h: Modify typedefs for pthread_t, |
| pthread_mutex_t, pthread_key_t, pthread_attr_t, |
| pthread_mutexattr_t, pthread_condattr_t, pthread_cond_t, |
| pthread_rwlock_t and pthread_rwlockattr_t. |
| |
| 2003-01-09 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * thread.h (WAIT_CANCELED): New define. |
| (pthread::cancelable_wait): New static method. |
| * thread.cc (pthread::cancelable_wait): Implement. |
| (semaphore::Wait): Wait on semaphore and thread cancellation. |
| (pthread::join): Wait on joined thread and thread cancellation. |
| (semaphore::wait): Add testcancel to check for thread |
| cancellation even if the semaphore is available. |
| |
| 2003-01-09 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * include/pthread.h: Add define for errorchecking mutexes. |
| Change default mutex type. |
| * thread.cc (pthread_cond::TimedWait): Update mutex unlock |
| calls. |
| (pthread_mutex::pthread_mutex): New implement. |
| (pthread_mutex::~pthread_mutex): Ditto. |
| (pthread_mutex::Lock): Ditto. |
| (pthread_mutex::TryLock): Ditto. |
| (pthread_mutex::UnLock): Ditto. |
| (pthread_mutex::Destroy): Implement new method. |
| (pthread_mutex::SetOwner): Ditto. |
| (pthread_mutex::LockRecursive): Ditto. |
| (pthread_mutex::fixup_after_fork): Restore locking state after |
| fork. |
| (__pthread_mutex_lock): Return pthread_mutex::Lock errorcode. |
| (__pthread_mutex_trylock): Return pthread_mutex::TryLock |
| errorcode. |
| (__pthread_mutex_unlock): Return pthread_mutex::UnLock |
| errorcode. |
| (__pthread_mutex_destroy): Call pthread_mutex::Destroy to |
| destroy mutex. |
| (__pthread_mutexattr_settype): Allow errorchecking and recursive |
| types. |
| * thread.h (MUTEX_LOCK_COUNTER_INITIAL): New define. |
| (pthread_mutex::criticalsection): Remove. |
| (pthread_mutex::lock_counter): New member. |
| (pthread_mutex::recursion_counter): Ditto. |
| (pthread_mutex::owner): Ditto. |
| (pthread_mutex::type): Ditto. |
| (pthread_mutex::Destroy): New method. |
| (pthread_mutex::SetOwner): Ditto. |
| (pthread_mutex::LockRecursive): Ditto. |
| |
| 2003-01-09 Thomas Pfaff <tpfaff@gmx.net> |
| |
| * pthread.cc (pthread_cond_init): Use new pthread_cond::init. |
| * thread.cc: Some white spaces cleanups. |
| Change __pthread_cond_init to pthread_cond::init throughout. |
| (nativeMutex): Move class methods outside pthread_mutex. |
| (MTinterface::Init): Initialize pthread_cond init lock. |
| (pthread_cond::condInitializationLock): Instantiate. |
| (pthread_cond::initMutex): New Method. |
| (pthread_cond::isGoodInitializerOrBadObject): Ditto. |
| * thread.h: Some white spaces cleanups. |
| (nativeMutex): Move class declaration outside pthread_mutex. |
| (pthread_cond::condInitializationLock): New static member. |
| (pthread_cond::initMutex): New Method. |
| (pthread_cond::isGoodInitializerOrBadObject): Ditto. |
| (__pthread_cond_init): Remove prototype. |
| |
| 2003-01-09 Corinna Vinschen <corinna@vinschen.de> |
| |
| * fhandler_disk_file.cc (num_entries): Return 2 as link count if |
| directory unreadable. |
| |
| 2003-01-09 Corinna Vinschen <corinna@vinschen.de> |
| |
| * security.cc (get_nt_attribute): Always return -1 when read_sd() |
| fails. |
| (get_file_attribute): Set permissions to 0 and owner/group to -1 |
| if security descriptor is unreadable. |
| |
| 2003-01-09 Christopher Faylor <cgf@redhat.com> |
| |
| Use isdirsep rather than SLASH_P throughout. |
| * path.cc (iscygdrive): Disallow /cygdrive\x. |
| (normalize_posix_path): "Normalize" a windows path, if detected, rather |
| than converting to posix. |
| |
| 2003-01-06 Troy Curtiss <troyc@usa.net> |
| |
| * fhandler_serial.cc (fhandler_serial::tcsetattr): Add support and |
| capability checking for B230400 bitrate. |
| (fhandler_serial::tcgetattr): Add support for B230400 bitrate. |
| * include/sys/termios.h: Add B230400 definition for Posix support of |
| 230.4Kbps. |
| |
| 2003-01-05 Christopher Faylor <cgf@redhat.com> |
| |
| * pinfo.cc (_pinfo::commune_send): Use myself->lock rather than just |
| lock when leaving. |
| |
| 2003-01-03 Christopher Faylor <cgf@redhat.com> |
| |
| * dtable.h (dtable::in_vfork_cleanup): New function. True if vfork |
| cleanup needed. |
| * dtable.cc (dtable::vfork_parent_restore): Remove assertion. |
| * pipe.cc (fhandler_pipe::close): Don't close read_state during |
| fork_fixup since it wasn't inherited. |
| |
| 2003-01-01 Christopher Faylor <cgf@redhat.com> |
| |
| * passwd.cc (getpwuid_r32): Revert previous change. |
| |
| 2003-01-01 Christopher Faylor <cgf@redhat.com> |
| |
| * sysconf.cc (sysconf): Return arbitrary values for |
| _SC_GETGR_R_SIZE_MAX, _SC_LOGIN_NAME_MAX, _SC_GETPW_R_SIZE_MAX. |
| |
| * passwd.cc (getpwuid_r32): Add uid/gid fields to size check |
| calculation. |
| |