diff options
Diffstat (limited to 'winsup/cygwin/ChangeLog')
-rw-r--r-- | winsup/cygwin/ChangeLog | 339 |
1 files changed, 339 insertions, 0 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index ed76cc61e..379c97cd9 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,342 @@ +2013-06-04 Corinna Vinschen <corinna@vinschen.de> + + * fhandler.cc (fhandler_base::lock): Move to flock.cc. + (fhandler_base::fixup_after_exec): Reset mandatory_locking. + * fhandler.h (class fhandler_base): Add mandatory_locking status flag. + Add mandatory_locking accessor methods. Accommodate change throughout. + (fhandler_base::mand_lock): Declare. + (class fhandler_disk_file): Drop in favor of new status flag. + * (fhandler_disk_file::fcntl): Call need_fork_fixup if mandatory_locking + flag gets set. + * flock.cc (fhandler_base::lock): Define here. + (flock): Handle mandatory_locking. + (lockf): Ditto. + (fhandler_base::mand_lock): Define. + +2013-06-03 Corinna Vinschen <corinna@vinschen.de> + + * sigproc.cc (exit_thread): Allow to exit the thread while running + global dtors. Explain why. + +2013-06-02 Corinna Vinschen <corinna@vinschen.de> + + * autoload.cc (CancelSynchronousIo): Define. + * fcntl.cc (fcntl64): Drop handling of locking commands. + * fhandler.h (class fhandler_disk_file): Add mandatory_locking. + (fhandler_disk_file::fcntl): Declare. + (fhandler_disk_file::mand_lock): Declare. + * fhandler_disk_file.cc (fhandler_disk_file::fhandler_disk_file): + Initialize mandatory_locking. + (fhandler_disk_file::fcntl): New method. Handle F_LCK_MANDATORY and + locking commands. + (fhandler_disk_file::dup): Duplicate mandatory_locking. Fix a bug + when duplicating prw_handle failed. + (fhandler_disk_file::fixup_after_fork): Reset mandatory_locking. + * flock.cc (fhandler_disk_file::lock): Add comment. + (struct lock_parms): New struct to pass parameters to blocking_lock_thr + thread function. + (blocking_lock_thr): New thread function. + (fhandler_disk_file::mand_lock): New methof implementing mandatory + locking with Windows semantics. + * ntdll.h (NtLockFile): Declare. + (NtUnlockFile): Declare. + * include/fcntl.h: Fix a comment. + (F_LCK_MANDATORY): Define. Add lengthy comment to explain. + +2013-06-02 Corinna Vinschen <corinna@vinschen.de> + + * exceptions.cc (exception::handle): Resurrect accidentally lost + patch from 2009-07-22: Set si_addr according to POSIX for SIGSEGV. + +2013-05-31 Corinna Vinschen <corinna@vinschen.de> + + * include/sys/socket.h: Move SHUT_xx definitions from here... + * include/cygwin/socket.h: ...to here. + +2013-05-31 Corinna Vinschen <corinna@vinschen.de> + + * include/cygwin/if.h: Include cygwin/socket.h rather than sys/socket.h + to avoid circular dependency resulting in bogus compile time warnings. + +2013-05-28 Corinna Vinschen <corinna@vinschen.de> + + * fhandler_procsys.cc (fhandler_procsys::read): Just call + fhandler_base::raw_read from here. Drop comment. + (fhandler_procsys::write): Drop comment. + +2013-05-27 Corinna Vinschen <corinna@vinschen.de> + + * dll_init.cc (dll_list::topsort): Fix early-return condition to + accommodate process with all runtime loaded DLLs already dlclosed + at fork time. + * gendef (_sigfe_maybe): Fix code handling early return if we don't + have a tls, broken on 2013-05-21. + +2013-05-24 Corinna Vinschen <corinna@vinschen.de> + + * Makefile.in (DEFS): Unused, remove. + (COMPILE.cc): Move -mno-use-libstdc-wrappers flag from here... + ($(TEST_DLL_NAME)): ...to here since it's a link time flag. + +2013-05-24 Corinna Vinschen <corinna@vinschen.de> + + * pinfo.cc (pinfo::status_exit): Enhance comment. + +2013-05-24 Corinna Vinschen <corinna@vinschen.de> + + * environ.cc (win_env::add_cache): Set the Windows environment variable + using wide chars to make sure native chars don't get scrambled. + * environ.h (build_env): Fix formatting in declaration. + * pinfo.cc (pinfo::status_exit): Handle STATUS_NO_MEMORY. Explain why. + +2013-05-24 Corinna Vinschen <corinna@vinschen.de> + + * fork.cc (frok::parent): Always set CREATE_UNICODE_ENVIRONMENT flag. + Explain why. + +2013-05-23 Corinna Vinschen <corinna@vinschen.de> + + * fork.cc (frok::parent): Call CreateProcessW with command line set + to the parent command line. Change comment to explain why. + +2013-05-23 Corinna Vinschen <corinna@vinschen.de> + + * dcrt0.cc (child_info_fork::alloc_stack_hard_way): Fix datatype of + stacksize to SIZE_T. Cast to SIZE_T in pointer arithmetic. Slightly + enhance output in case of a fatal error. + * fork.cc (frok::parent): Always set ch.stackaddr to DeallocationStack + value of current thread to help stack reservation in + child_info_fork::alloc_stack_hard_way along. Simplify subsequent code + storing stack values in ch. Print guardsize in hex, too. + +2013-05-23 Corinna Vinschen <corinna@vinschen.de> + + * environ.cc (set_winsymlinks): Handle "winsymlinks:nativestrict" + option. On pre-Vista warn the user if the "winsymlinks:native*" option + is set. + * globals.cc (enum winsym_t): Add WSYM_nativestrict. + * path.cc (symlink_native): Don't create native symlink if target + does not exist. Explain why. Improve comments. + (symlink_worker): Change AFS symlink handling to WSYM_nativestrict. + Handle WSYM_nativestrict throughout. Change condition for bail out + to wsym_type == WSYM_nativestrict. Add comment. Fix formatting. + * shared_info.h (CURR_USER_MAGIC): Change to reflect change in + class user_info. + (class user_info): Add member warned_nonativesyms. + +2013-05-22 Corinna Vinschen <corinna@vinschen.de> + + * spinlock.h (ULONG): Replace LONG operator with ULONG to accommodate + the fact that CURR_SHARED_MAGIC and USER_SHARED_MAGIC are unsigned + values. + * shared.cc (shared_info::initialize): Drop explicit cast here. + +2013-05-21 Corinna Vinschen <corinna@vinschen.de> + + * Makefile.in (DLL_OFILES): Add arc4random.o. + * common.din: Export arc4random, arc4random_addrandom, arc4random_buf, + arc4random_stir and arc4random_uniform. + * mktemp.cc (arc4random): Remove static replacement function. + * posix.sgml (std-bsd): Add arc4random functions. + * include/cygwin/stdlib.h: Declare arc4random functions. + * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump. + * libc/arc4random.cc: New file implementing arc4random functions taken + from FreeBSD. + +2013-05-21 Corinna Vinschen <corinna@vinschen.de> + + * globals.cc (__isthreaded): New global variable. Explain what it's + used for. + * miscfuncs.cc (thread_wrapper): Set __isthreaded to 1 here. + +2013-05-21 Corinna Vinschen <corinna@vinschen.de> + + * fhandler.h (class fhandler_dev_random): Change type of pseudo to + uint32_t to make sure it's 32 bit on all supported platforms. + +2013-05-21 Corinna Vinschen <corinna@vinschen.de> + + x86_64 only: + * gendef (_sigfe_maybe): Drop pushing %r12, use %r10 instead since we + don't call yield anymore. + (_sigfe): Ditto. + (_sigbe): Ditto. + +2013-05-21 Corinna Vinschen <corinna@vinschen.de> + + * libc/base64.c: New file. + * Makefile.in (DLL_OFILES): Add base64.o. + * common.din: Export __b64_ntop and __b64_pton. + * posix.sgml (std-bsd): Add __b64_ntop and __b64_pton. + * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump. + +2013-05-21 Corinna Vinschen <corinna@vinschen.de> + + * syscalls.cc (open): Only return ENOTDIR if file exists. + +2013-05-16 Christopher Faylor <me.cygwin2013@cgf.cx> + + * sigproc.cc (sig_hold): Delete. + (sigheld): Delete. + (sig_send): Eliminate special-case __SIGHOLD handling. + (wait_sig): Just flag when signals are on hold and add them to the + queue rather than stalling the wait_sig loop. Clear the flag when + __SIGNOHOLD is specified. + +2013-05-14 Corinna Vinschen <corinna@vinschen.de> + + * Makefile.in (devices_CFLAGS): Drop -Os. + +2013-05-14 Corinna Vinschen <corinna@vinschen.de> + + * Makefile.in (localtime_CFLAGS): Define as -fwrapv since localtime + code requires int overflows to be fully defined. + * localtime.cc: Align a bit more to upstream code. + +2013-05-14 Corinna Vinschen <corinna@vinschen.de> + + * grp.cc (get_groups): Convert to void function. + (initgroups32): Accommodate the aforementioned change. + (getgrouplist): Ditto. + +2013-05-14 Corinna Vinschen <corinna@vinschen.de> + + * grp.cc (get_groups): Never return error. Always create a group list, + even if it's empty. + +2013-05-13 Christopher Faylor <me.cygwin2013@cgf.cx> + + * include/cygwin/version.h: Bump api minor number to reflect previous + change. + +2013-05-13 Christopher Faylor <me.cygwin2013@cgf.cx> + + * i686.din: Remove _strtold. + * x86_64.din: Move strtold definition... + * common.din: ...to here. + +2013-05-07 Christopher Faylor <me.cygwin2013@cgf.cx> + + * fhandler_tty.cc (fhandler_pty_common::__acquire_output_mutex): Never + wait an INFINITE amount of time. Instead default to 1/10 second. + (fhandler_pty_slave::open): Just default to INFINITE wait rather than + (now) waiting longer than other similar calls. + +2013-05-03 Christopher Faylor <me.cygwin2013@cgf.cx> + + * spawn.cc (ILLEGAL_SIG_FUNC_PTR): New define. + (system_call_handle): Rename from system_call_cleanup. + (is_system_call): New convenience method. + (system_call_handle::system_call_handle): Use ILLEGAL_SIG_FUNC_PTR + rather than cast. Call sig_send here rather than in caller. + Initialize oldint. + (system_call_handle::arm): New function pulled from constructor. + (~system_call_handle::system_call_handle): Use is_system_call(). + (child_info_spawn::worker): Use system_call_handle to set up for system + call early. Use arm call prior to waiting for child to properly set up + signal handling. Move comment closer to code it is commenting on. + +2013-05-01 Christopher Faylor <me.cygwin2013@cgf.cx> + + * resource.cc (setrlimit): Use consistent commenting style. Return + EINVAL when rlim_cur > rlim_max. + +2013-04-30 Yaakov Selkowitz <yselkowitz@users.sourceforge.net> + + Throughout, (mainly in fhandler*) fix remaining gcc 4.7 mismatch + warnings between regparm definitions and declarations. + * smallprint.cc (__small_vswprintf): Conditionalize declaration and + setting of l_opt for only x86_64. + * spawn.cc (child_info_spawn::worker): Remove unused 'pid' variable. + * thread.cc (verifyable_object_isvalid): Temporarily define as + non-inline with gcc 4.7+, regardless of target. + +2013-04-30 Christopher Faylor <me.cygwin2013@cgf.cx> + + * gendef: Fix sigfe.s typo. + +2013-04-30 Christopher Faylor <me.cygwin2013@cgf.cx> + + * spawn.cc (system_call_cleanup): Rename from pthread_cleanup. Extend + functionality. + (system_call_cleanup::system_call_cleanup): Set up signals like + system() requires. Unblock previously-blocked signal handling. + (system_call_cleanup::~system_call_cleanup): Restore signal handling + after system(). + (child_info_spawn::worker): Put signals on hold and use + system_call_cleanup class to set and restore signals rather than doing + it prior to to running the program. Remove the ill-conceived + pthread_cleanup stuff. + +2013-04-30 Christopher Faylor <me.cygwin2013@cgf.cx> + + * exceptions.cc (cygwin_exception::dumpstack): Guard against wild + pointer dereference. + (CYG_EXC_CONTINUE_EXECUTION): Define based on standard Windows + definition. + (CYG_EXC_CONTINUE_SEARCH): Ditto. + (exception::handle): Move andreas detection earlier. Make comment + clearer. + (signal_exit): Set core-dumped flag. + +2013-04-30 Christopher Faylor <me.cygwin2013@cgf.cx> + + * i686.din: New file. + * x86_64.din: New file. + * common.din: New file. + * cygwin.din: Delete. + * cygwin64.din: Delete. + * gendef: Rework to take options rather than using positional + parameters. Accept multiple files as input. + * Makefile.in: Rework to allow multiple .din files as input to gendef. + * configure.in: Change names of .din files to be expressively target + specific. + * aclocal.m4: Regenerate. + * configure: Ditto. + +2013-04-29 Christopher Faylor <me.cygwin2013@cgf.cx> + + * autoload.cc (CreateSymbolicLinkW): Rename from CreateSymbolicLink. + +2013-04-26 Corinna Vinschen <corinna@vinschen.de> + + * fcntl.cc (fcntl): Define as export alias for fcntl64 on x86_64. + +2013-04-24 Corinna Vinschen <corinna@vinschen.de> + + * autoload.cc (CreateSymbolicLink): Define. + * environ.cc (set_winsymlinks): Set allow_winsymlinks. + (parse_thing): Change "winsymlinks" to set by function. + * globals.cc (enum winsym_t): Define. + (allow_winsymlinks): Define as winsym_t. + (ro_u_afs): New R/O Unicode string. + * mount.cc (fs_info::update): Fix comment. Handle AFS. + (fs_names): Add "afs". + * mount.h (enum fs_info_type): Add afs. + (class fs_info): Implement afs. + * path.cc (symlink): Drop third parameter in call to symlink_worker. + (symlink_nfs): New function. + (symlink_native): New function. + (symlink_worker): Drop third argument. Handle native symlink type by + calling symlink_native. Move code to handle NFS to symlink_nfs. Fix + formatting. Slightly restructure code. + * path.h (class path_conv): Add fs_is_afs method. + (symlink_worker): Declare here. + * security.h: Define privilege constants as unsigned int instead of as + unsigned long. + * syscalls.cc (mknod_worker): Set third parameter in symlink_worker + call to WSYM_lnk. + * winsup.h (symlink_worker): Drop declaration here. + +2013-04-23 Corinna Vinschen <corinna@vinschen.de> + + * cygwin64.din (_setjmp): Export. + (_longjmp): Export. + +2013-04-23 Corinna Vinschen <corinna@vinschen.de> + + * Merge in cygwin-64bit-branch. See ChangeLog.64bit for details. + 2013-04-22 Corinna Vinschen <corinna@vinschen.de> * include/sys/queue.h: Delete in favor of more complete newlib file. |