newlib/winsup/cygwin/ChangeLog

306 lines
11 KiB
Plaintext
Raw Normal View History

Tue Jan 30 18:15:23 2001 Christopher Faylor <cgf@cygnus.com>
* include/cygwin/version.h: Bump version to 1.3.0.
Tue Jan 30 8:55:00 2001 Corinna Vinschen <corinna@vinschen.de>
* pinfo.cc (pinfo::init): Use INVALID_HANDLE_VALUE instead of
explicit cast (HANDLE) 0xffffffff.
* shared.cc (open_shared): Ditto.
Mon Jan 29 17:15:22 2001 Bill Hegardt <bill@troyxcd.com>
* fhandler_serial.cc (raw_write): Use local copy of OVERLAPPED
structure instead of shared structure to fix a race condition between
read/write.
Mon Jan 29 14:30:00 2001 Corinna Vinschen <corinna@vinschen.de>
* mmap.cc (mmap): Remove obsolete check for MAP_SHARED|MAP_ANON as
being invalid.
Mon Jan 29 10:23:00 2001 Corinna Vinschen <corinna@vinschen.de>
* mmap.cc (mmap_record::find_empty): Fix loop condition.
Sun Jan 28 19:40:40 2001 Christopher Faylor <cgf@cygnus.com>
* syscalls.cc (_link): Make sure that newpath does not exist. Set
errno if it does.
Sun Jan 28 19:29:08 2001 Christopher Faylor <cgf@cygnus.com>
* cygheap.cc (init_cheap): Don't specify a load address for the heap.
It doesn't work on #!*& Windows 9x.
(cygheap_init): Move GetUserName to memory_init.
* dcrt0.cc (dll_crt0_1): Call new memory_init functin, eliminate call
to heap_init.
* heap.cc (heap_init): Improve error output.
* heap.h: Correct some declarations.
* shared.cc (mount_table_init): Remove.
(memory_init): Renamed from shared_init. Reorganize to accomodate
strange Windows 9x problems with cygheap/heap interaction.
* shared_info.h: Rename shared_init to memory_init.
Sun Jan 28 01:25:33 2001 Christopher Faylor <cgf@cygnus.com>
* include/cygwin/version.h: Bump API version.
Sun Jan 28 01:18:22 2001 Christopher Faylor <cgf@cygnus.com>
* cygheap.cc (init_cheap): Move username initialization.
(cygheap_init): Here.
* shared_info.h (mount_info): Add a sys_mount_table_counter field.
(shared_info): Ditto.
* path.cc (mount_info::conv_to_win32_path): Check that our mount table
is in sync with the system mount table and reinitialize it if not.
(mount_info::add_reg_mount): Bump sys_mount_table counters if the
system mount table changes.
(mount_info::del_reg_mount): Ditto.
(mount_info::write_cygdrive_info_to_registry): Ditto.
(mount_info::remove_cygdrive_info_from_registry): Ditto.
Throughout, change 'cygwin_shared.mount' to 'mount_table'. * child_info.h (child_info): Move shared_h, console_h to cygheap. Add mount_h. * cygheap.h (init_cygheap): Add shared_h, console_h. * cygheap.cc (init_cheap): Initialize heap at a fixed location after the shared memory regions. Initialize cygheap->user name here. * dcrt0.cc (dll_crt0_1): Call getpagesize () to initialize constants. Remove cygheap_init since it is done in shared_init now. (_dll_crt0): Initialize mount_h, remove shared_h and console_h initialization. * fhandler_console.cc (console_shared_h): Eliminate. (get_tty_stuff): Use cygheap->console_h rather than console_shared_h. * heap.cc (heap_init): Use page size constant calculated earlier in initialization. * shared.cc: Eliminate cygwin_shared_h. Add cygwin_mount_h. (mount_table_init): New function for initializing a user mount table. (open_shared_file_map): Use constant for shared memory region. Initialize cygheap and mount table here. (open_shared): Improve debugging output. (shared_info::initialize): Eliminate call to mount.init. (shared_terminate): Use cygheap->shared_h. Close cygwin_mount_h. (open_shared_file_map): Eliminate. * shared_info.h (mount_info): Add a version field. (shared_align_past): New macro for calculating location for shared memory regions. * sigproc.cc (init_child_info): Eliminate shared_h, console_h. * spawn.cc (spawn_guts): Pass on cygwin_mount_h iff not a different user. * syscalls.cc (system_info): New global holding system memory defaults. (getpagesize): Use system_info. * uinfo.cc (internal_getlogin): Only fill in user name if nonexistent. * winsup.h: Declare system_info. * passwd.cc (read_etc_passwd): Use cygheap->user.name () rather than retrieving the name again.
2001-01-28 06:51:15 +01:00
Sun Jan 28 00:28:30 2001 Christopher Faylor <cgf@cygnus.com>
Throughout, change 'cygwin_shared.mount' to 'mount_table'.
* child_info.h (child_info): Move shared_h, console_h to cygheap. Add
mount_h.
* cygheap.h (init_cygheap): Add shared_h, console_h.
* cygheap.cc (init_cheap): Initialize heap at a fixed location after
the shared memory regions. Initialize cygheap->user name here.
* dcrt0.cc (dll_crt0_1): Call getpagesize () to initialize constants.
Remove cygheap_init since it is done in shared_init now.
(_dll_crt0): Initialize mount_h, remove shared_h and console_h
initialization.
* fhandler_console.cc (console_shared_h): Eliminate.
(get_tty_stuff): Use cygheap->console_h rather than console_shared_h.
* heap.cc (heap_init): Use page size constant calculated earlier in
initialization.
Throughout, change 'cygwin_shared.mount' to 'mount_table'. * child_info.h (child_info): Move shared_h, console_h to cygheap. Add mount_h. * cygheap.h (init_cygheap): Add shared_h, console_h. * cygheap.cc (init_cheap): Initialize heap at a fixed location after the shared memory regions. Initialize cygheap->user name here. * dcrt0.cc (dll_crt0_1): Call getpagesize () to initialize constants. Remove cygheap_init since it is done in shared_init now. (_dll_crt0): Initialize mount_h, remove shared_h and console_h initialization. * fhandler_console.cc (console_shared_h): Eliminate. (get_tty_stuff): Use cygheap->console_h rather than console_shared_h. * heap.cc (heap_init): Use page size constant calculated earlier in initialization. * shared.cc: Eliminate cygwin_shared_h. Add cygwin_mount_h. (mount_table_init): New function for initializing a user mount table. (open_shared_file_map): Use constant for shared memory region. Initialize cygheap and mount table here. (open_shared): Improve debugging output. (shared_info::initialize): Eliminate call to mount.init. (shared_terminate): Use cygheap->shared_h. Close cygwin_mount_h. (open_shared_file_map): Eliminate. * shared_info.h (mount_info): Add a version field. (shared_align_past): New macro for calculating location for shared memory regions. * sigproc.cc (init_child_info): Eliminate shared_h, console_h. * spawn.cc (spawn_guts): Pass on cygwin_mount_h iff not a different user. * syscalls.cc (system_info): New global holding system memory defaults. (getpagesize): Use system_info. * uinfo.cc (internal_getlogin): Only fill in user name if nonexistent. * winsup.h: Declare system_info. * passwd.cc (read_etc_passwd): Use cygheap->user.name () rather than retrieving the name again.
2001-01-28 06:51:15 +01:00
* shared.cc: Eliminate cygwin_shared_h. Add cygwin_mount_h.
(mount_table_init): New function for initializing a user mount table.
(open_shared_file_map): Use constant for shared memory region.
Initialize cygheap and mount table here.
Throughout, change 'cygwin_shared.mount' to 'mount_table'. * child_info.h (child_info): Move shared_h, console_h to cygheap. Add mount_h. * cygheap.h (init_cygheap): Add shared_h, console_h. * cygheap.cc (init_cheap): Initialize heap at a fixed location after the shared memory regions. Initialize cygheap->user name here. * dcrt0.cc (dll_crt0_1): Call getpagesize () to initialize constants. Remove cygheap_init since it is done in shared_init now. (_dll_crt0): Initialize mount_h, remove shared_h and console_h initialization. * fhandler_console.cc (console_shared_h): Eliminate. (get_tty_stuff): Use cygheap->console_h rather than console_shared_h. * heap.cc (heap_init): Use page size constant calculated earlier in initialization. * shared.cc: Eliminate cygwin_shared_h. Add cygwin_mount_h. (mount_table_init): New function for initializing a user mount table. (open_shared_file_map): Use constant for shared memory region. Initialize cygheap and mount table here. (open_shared): Improve debugging output. (shared_info::initialize): Eliminate call to mount.init. (shared_terminate): Use cygheap->shared_h. Close cygwin_mount_h. (open_shared_file_map): Eliminate. * shared_info.h (mount_info): Add a version field. (shared_align_past): New macro for calculating location for shared memory regions. * sigproc.cc (init_child_info): Eliminate shared_h, console_h. * spawn.cc (spawn_guts): Pass on cygwin_mount_h iff not a different user. * syscalls.cc (system_info): New global holding system memory defaults. (getpagesize): Use system_info. * uinfo.cc (internal_getlogin): Only fill in user name if nonexistent. * winsup.h: Declare system_info. * passwd.cc (read_etc_passwd): Use cygheap->user.name () rather than retrieving the name again.
2001-01-28 06:51:15 +01:00
(open_shared): Improve debugging output.
(shared_info::initialize): Eliminate call to mount.init.
(shared_terminate): Use cygheap->shared_h. Close cygwin_mount_h.
(open_shared_file_map): Eliminate.
* shared_info.h (mount_info): Add a version field.
(shared_align_past): New macro for calculating location for shared
memory regions.
Throughout, change 'cygwin_shared.mount' to 'mount_table'. * child_info.h (child_info): Move shared_h, console_h to cygheap. Add mount_h. * cygheap.h (init_cygheap): Add shared_h, console_h. * cygheap.cc (init_cheap): Initialize heap at a fixed location after the shared memory regions. Initialize cygheap->user name here. * dcrt0.cc (dll_crt0_1): Call getpagesize () to initialize constants. Remove cygheap_init since it is done in shared_init now. (_dll_crt0): Initialize mount_h, remove shared_h and console_h initialization. * fhandler_console.cc (console_shared_h): Eliminate. (get_tty_stuff): Use cygheap->console_h rather than console_shared_h. * heap.cc (heap_init): Use page size constant calculated earlier in initialization. * shared.cc: Eliminate cygwin_shared_h. Add cygwin_mount_h. (mount_table_init): New function for initializing a user mount table. (open_shared_file_map): Use constant for shared memory region. Initialize cygheap and mount table here. (open_shared): Improve debugging output. (shared_info::initialize): Eliminate call to mount.init. (shared_terminate): Use cygheap->shared_h. Close cygwin_mount_h. (open_shared_file_map): Eliminate. * shared_info.h (mount_info): Add a version field. (shared_align_past): New macro for calculating location for shared memory regions. * sigproc.cc (init_child_info): Eliminate shared_h, console_h. * spawn.cc (spawn_guts): Pass on cygwin_mount_h iff not a different user. * syscalls.cc (system_info): New global holding system memory defaults. (getpagesize): Use system_info. * uinfo.cc (internal_getlogin): Only fill in user name if nonexistent. * winsup.h: Declare system_info. * passwd.cc (read_etc_passwd): Use cygheap->user.name () rather than retrieving the name again.
2001-01-28 06:51:15 +01:00
* sigproc.cc (init_child_info): Eliminate shared_h, console_h.
* spawn.cc (spawn_guts): Pass on cygwin_mount_h iff not a different
user.
Throughout, change 'cygwin_shared.mount' to 'mount_table'. * child_info.h (child_info): Move shared_h, console_h to cygheap. Add mount_h. * cygheap.h (init_cygheap): Add shared_h, console_h. * cygheap.cc (init_cheap): Initialize heap at a fixed location after the shared memory regions. Initialize cygheap->user name here. * dcrt0.cc (dll_crt0_1): Call getpagesize () to initialize constants. Remove cygheap_init since it is done in shared_init now. (_dll_crt0): Initialize mount_h, remove shared_h and console_h initialization. * fhandler_console.cc (console_shared_h): Eliminate. (get_tty_stuff): Use cygheap->console_h rather than console_shared_h. * heap.cc (heap_init): Use page size constant calculated earlier in initialization. * shared.cc: Eliminate cygwin_shared_h. Add cygwin_mount_h. (mount_table_init): New function for initializing a user mount table. (open_shared_file_map): Use constant for shared memory region. Initialize cygheap and mount table here. (open_shared): Improve debugging output. (shared_info::initialize): Eliminate call to mount.init. (shared_terminate): Use cygheap->shared_h. Close cygwin_mount_h. (open_shared_file_map): Eliminate. * shared_info.h (mount_info): Add a version field. (shared_align_past): New macro for calculating location for shared memory regions. * sigproc.cc (init_child_info): Eliminate shared_h, console_h. * spawn.cc (spawn_guts): Pass on cygwin_mount_h iff not a different user. * syscalls.cc (system_info): New global holding system memory defaults. (getpagesize): Use system_info. * uinfo.cc (internal_getlogin): Only fill in user name if nonexistent. * winsup.h: Declare system_info. * passwd.cc (read_etc_passwd): Use cygheap->user.name () rather than retrieving the name again.
2001-01-28 06:51:15 +01:00
* syscalls.cc (system_info): New global holding system memory defaults.
(getpagesize): Use system_info.
* uinfo.cc (internal_getlogin): Only fill in user name if nonexistent.
* winsup.h: Declare system_info.
* passwd.cc (read_etc_passwd): Use cygheap->user.name () rather than
retrieving the name again.
Throughout, change 'cygwin_shared.mount' to 'mount_table'. * child_info.h (child_info): Move shared_h, console_h to cygheap. Add mount_h. * cygheap.h (init_cygheap): Add shared_h, console_h. * cygheap.cc (init_cheap): Initialize heap at a fixed location after the shared memory regions. Initialize cygheap->user name here. * dcrt0.cc (dll_crt0_1): Call getpagesize () to initialize constants. Remove cygheap_init since it is done in shared_init now. (_dll_crt0): Initialize mount_h, remove shared_h and console_h initialization. * fhandler_console.cc (console_shared_h): Eliminate. (get_tty_stuff): Use cygheap->console_h rather than console_shared_h. * heap.cc (heap_init): Use page size constant calculated earlier in initialization. * shared.cc: Eliminate cygwin_shared_h. Add cygwin_mount_h. (mount_table_init): New function for initializing a user mount table. (open_shared_file_map): Use constant for shared memory region. Initialize cygheap and mount table here. (open_shared): Improve debugging output. (shared_info::initialize): Eliminate call to mount.init. (shared_terminate): Use cygheap->shared_h. Close cygwin_mount_h. (open_shared_file_map): Eliminate. * shared_info.h (mount_info): Add a version field. (shared_align_past): New macro for calculating location for shared memory regions. * sigproc.cc (init_child_info): Eliminate shared_h, console_h. * spawn.cc (spawn_guts): Pass on cygwin_mount_h iff not a different user. * syscalls.cc (system_info): New global holding system memory defaults. (getpagesize): Use system_info. * uinfo.cc (internal_getlogin): Only fill in user name if nonexistent. * winsup.h: Declare system_info. * passwd.cc (read_etc_passwd): Use cygheap->user.name () rather than retrieving the name again.
2001-01-28 06:51:15 +01:00
Sat Jan 27 10:18:02 2001 Christopher Faylor <cgf@cygnus.com>
* path.cc (path_conv::check): Detect when path has symlinks.
(symlink_info::check): Remove debugging stuff.
(chdir): Use posix'ized win32 path if cd'ed to a path using symlinks.
Fri Jan 26 21:20:28 2001 Christopher Faylor <cgf@cygnus.com>
* exceptions.cc (sigreturn): Call any pending signals prior to
resetting the signal mask so that stacked signals behave correctly.
(sigdelayed): Avoid a race where a signal could end up calling an
incorrect signal handler if two signals come in close together.
Tue Jan 23 21:56:00 2001 Corinna Vinschen <corinna@vinschen.de>
* mmap.cc (fhandler_disk_file::mmap): Call CreateFileMapping with
len != 0 only when performing an anonymous mapping.
Mon Jan 22 15:35:28 2001 Christopher Faylor <cgf@cygnus.com>
* path.h: Add a new constant.
* syscalls.cc (_read): Oscillate errno check.
Mon Jan 22 15:27:12 2001 Christopher Faylor <cgf@cygnus.com>
* include/cygwin/version.h: Bump API to reflect setlogmask.
Sun Jan 21 22:40:25 2001 Jason Tishler <jt@dothill.com>
* cygwin.din: Add export for setlogmask().
* syslog.cc (setlogmask): New function.
Thu Jan 18 10:27:00 2001 Corinna Vinschen <corinna@vinschen.de>
* resource.cc (setrlimit): Support RLIMIT_NOFILE.
Wed Jan 17 23:23:12 2001 Christopher Faylor <cgf@cygnus.com>
* syscalls.cc (setdtablesize): Call with amount to increment not total
amount. Return success or failure error code.
Wed Jan 17 09:47:13 2001 Christopher Faylor <cgf@cygnus.com>
* autoload.cc (LoadDLLinitfunc): Remove debugging statement.
* exceptions.cc (sig_handle_tty_stop): Move setting of PID_STOPPED to
earlier in interrupt.
((interrupt_setup): i.e., here.
(sig_handle): Don't queue multiple SIGSTOPS.
* fhandler.h (bg_check_types): Enumerate return value of bg_check for
clarity.
* signal.cc (kill_pgrp): Minor cleanup.
* fhandler_termios.cc (fhandler_termios::bg_check): Use enumerated type
for function return. Don't raise signal if a signal is already queued.
* fhandler_console.cc (fhandler_console::read): Use enumerated return
type for bg_check.
* select.cc: Ditto, throughout.
* read.cc: Ditto, throughout.
* termios.cc: Ditto, throughout.
(_read): YA interrupt detect simplification.
* wait.cc (wait4): Ditto.
Wed Jan 17 10:56:00 2001 Corinna Vinschen <corinna@vinschen.de>
* cygheap.cc (cygheap_user::~cygheap_user): Temporarily
disable free'ing memory.
Tue Jan 16 18:01:00 2001 Corinna Vinschen <corinna@vinschen.de>
* mmap.cc (mmap): Initialize fh to avoid compiler warnings.
Mon Jan 15 21:07:00 2001 Christopher Faylor <cgf@cygnus.com>
* wait.cc (wait4): Rename variable for consistency. Allow restartable
signal behavior.
Mon Jan 15 23:15:00 2001 Corinna Vinschen <corinna@vinschen.de>
* mmap.cc (mmap): Add more parameter checking. Change error output
in case of EINVAL. Treat mmapping /dev/zero like MAP_ANONYMOUS.
Mon Jan 15 20:34:00 2001 Corinna Vinschen <corinna@vinschen.de>
* mmap.cc: include <unistd.h>. Define some bit operations for
the new page map.
(mmap_record): Change type of base_address_ to caddr_t.
Add map_map_ member. Add several methods to manipulate map_map_.
(mmap_record::alloc_map): New method.
(mmap_record::free_map): Ditto.
(mmap_record::find_empty): Ditto.
(mmap_record::map_map): Ditto.
(mmap_record::unmap_map): Ditto.
(list::add_record): Change return type to `mmap_record *'.
Allocate page map.
(list::match): New method.
(mmap): Partly rewritten to take care for the new page map. Add some
parameter checking.
(munmap): Ditto.
Mon Jan 15 13:50:00 2001 Corinna Vinschen <corinna@vinschen.de>
* heap.cc (heap_init): Fix extern declaration of getpagesize.
* syscalls.cc (getpagesize): Fix another typo.
Mon Jan 15 12:48:00 2001 Corinna Vinschen <corinna@vinschen.de>
* syscalls.cc (getpagesize): Save pagesize in global variable to
avoid calling GetSystemInfo too often.
* heap.cc (getpagesize): Eliminate.
(heap_init): Use getpagesize function from syscalls.cc.
Mon Jan 15 11:56:00 2001 Corinna Vinschen <corinna@vinschen.de>
* sysconf.cc (sysconf): return `getpagesize ()' on _SC_PAGESIZE
request to avoid implementing the same twice.
Sun Jan 14 14:07:50 2001 Christopher Faylor <cgf@cygnus.com>
* syscalls.cc (_read): Use more lightweight method for determining if
read has been interrupted by a signal.
Fri Jan 12 00:35:15 2001 Christopher Faylor <cgf@cygnus.com>
* debug.h: Add regparm attributes to some functions.
* signal.cc (sigaction): Don't treat SIGCONT specially.
* exceptions.cc (interrupt_setup): Save sa_flags of interrupted signal
for later use.
(sig_handler): Default any stopping signal to SIGSTOP.
(call_signal_handler): New function.
(sigdelayed0): New function.
* sigproc.cc (sigproc_init): Initialize SIGSTOP sigaction for special
behavior.
* sigproc.h: Define call_signal_handler.
* syscalls.cc (_read): Allow restartable signal behavior.
Thu Jan 11 13:17:00 2001 Corinna Vinschen <corinna@vinschen.de>
* fhandler.h (fhandler_base): New method `fixup_mmap_after_fork'.
(fhandler_disk_file: Ditto.
(fhandler_dev_mem): Ditto.
* fhandler_mem.cc (fhandler_dev_mem::open): Set OBJ_INHERIT attribute
for device\physicalmemory handle.
(fhandler_dev_mem::mmap): Ditto.
* fhandler_mem.cc (fhandler_dev_mem::fixup_mmap_after_fork): New
method.
* mmap.cc (mmap_record): Add private `fdesc_' member. Change
constructor accordingly.
(get_fd): New method.
(mmap): Use new mmap_record constructor.
(fhandler_base::fixup_mmap_after_fork): New method.
(fhandler_disk_file::fixup_mmap_after_fork): Ditto.
(fixup_mmaps_after_fork): Call `fixup_mmap_after_fork' of appropriate
fhandler class.
Wed Jan 10 22:08:30 2001 Kazuhiro Fujieda <fujieda@jaist.ac.jp>
* sigproc.cc (wait_sig): Allow SIGCONT when stopped.
Tue Jan 9 16:55:00 2001 Corinna Vinschen <corinna@vinschen.de>
Patch suggested by Ren<65> M<>ller Fonseca <fonseca@mip.sdu.dk>
* include/sys/socket.h: Change prototype to have 2nd parameter `const'.
* net.cc (cygwin_bind): Change 2nd parameter to `const'.
Sun Jan 7 22:59:37 2001 Christopher Faylor <cgf@cygnus.com>
* pinfo.cc (codepage_init): Move function.
* environ.cc (codepage_init): To here.
* exceptoins.cc (SIG_NONMASKABLE): Remove SIGCONT from consideration
since it is supposed to be maskable.
* signal.cc (sigaction): Ditto.
* sigproc.cc (wait_sig): Ditto.
* winsup.h: Eliminate global declaration of codepage_init.
Thu Jan 5 9:33:00 2001 Corinna Vinschen <corinna@vinschen.de>
* resource.cc (getrlimit): Set errno on EFAULT instead of returning
it.
(setrlimit): Ditto.
Thu Jan 5 3:38:00 2001 David Sainty <David.Sainty@optimation.co.nz>
* resource.cc (setrlimit): Prevent failing with an error when the
operation would not have changed anything.
2001-01-04 19:33:39 +01:00
Thu Jan 4 10:29:54 2001 Earnie Boyd <earnie_boyd@yahoo.com>
* thread.cc: Need LONG_MAX definition.
Wed Jan 3 13:47:23 2001 Christopher Faylor <cgf@cygnus.com>
* thread.cc (MTinterface::CreateSemaphore): Correctly set semaphore
max.
Wed Jan 3 09:44:51 2001 Christopher Faylor <cgf@cygnus.com>
* fhandler_console.cc (fhandler_console::read): Restore missing test
for code page before doing OemToCharBuff.
Wed Jan 3 09:20:20 2001 Jason Tishler <jt@dothill.com>
* include/cygwin/version.h: Fix typo in CYGWIN_VERSION_DLL_COMBINED
macro.