aboutsummaryrefslogtreecommitdiff
path: root/winsup/cygwin/ChangeLog
AgeCommit message (Collapse)AuthorFilesLines
2013-07-31* environ.cc (known): Add preload keyword.github/calloutcalloutChristopher Faylor1-0/+15
* external.cc: Include new callout.h header. (cygwin_internal): Initial implementation of CW_CALLOUT and CW_CYGHEAP_MALLOC. (dll_preload): Handle CYGWIN=preload:foo.dll. (dummy_callout): Default NULL callout function. * globals.cc: Include new callout.h header. (callout): Declare/define. * uname.cc (uname): Initial implementation of callout handling. * winsup.h (dll_preload): Declare. * include/cygwin/version.h: Bump API minor number to 269. * include/sys/cygwin.h: Define CW_CALLOUT, CW_CYGHEAP_MALLOC.
2013-07-31* cygheap.cc (cmalloc): Use size_t for size field.Christopher Faylor1-1/+22
(cmalloc_abort): Ditto. (crealloc): Ditto. (crealloc_abort): Ditto. (ccalloc): Ditto. (ccalloc_abort): Ditto. * cygheap_malloc.h (HEAP_USER): Add. (cmalloc): Use size_t for size field in declaration. (cmalloc_abort): Ditto. (crealloc): Ditto. (crealloc_abort): Ditto. (ccalloc): Ditto. (ccalloc_abort): Ditto. * path.cc (normalize_posix_path): Don't check existence of / or // dir in parent dir check.
2013-07-31 * path.cc (normalize_posix_path): Don't check existence of / or // dirCorinna Vinschen1-0/+5
in parent dir check.
2013-07-26cygwin directory changes:Christopher Faylor1-0/+9
* environ.cc (tty_is_gone): Delete. (known): Delete tty, add wincmdln. * globals.cc: Reorganize list of environment bools, remove explicit = false for slight load time optimization. (wincmdln): New global. * spawn.cc (child_info_spawn::worker): Honor wincmdln. doc directory changes: * new-features.sgml (ov-new1.7.23): Add new section. Mention wincmdln. * cygwinenv.xml: Mention wincmdln.
2013-07-23 * ntdll.h (struct _SEMAPHORE_BASIC_INFORMATION): Define.Corinna Vinschen1-0/+23
(enum _SEMAPHORE_INFORMATION_CLASS): Define. (NtQuerySemaphore): Declare. * thread.h (class semaphore): Add member startvalue. (semaphore::fixup_before_fork): New inline method. (semaphore::_fixup_before_fork): Declare. * thread.cc (MTinterface::fixup_before_fork): Additionally call semaphore::fixup_before_fork. (semaphore::semaphore): Set currentvalue to -1. Set startvalue to incoming initializer value. (semaphore::_getvalue): Just query semaphore using NtQuerySemaphore rather then using WFSO/Release. (semaphore::_post): Drop setting currentvalue. It's not thread-safe. (semaphore::_trywait): Ditto. (semaphore::_timedwait): Ditto. (semaphore::_wait): Ditto. (semaphore::_fixup_before_fork): New method, setting currentvalue from actual windows semaphore right before fork. (semaphore::_fixup_after_fork): Drop kludge from 2013-07-10. Drop FIXME comment.
2013-07-23 * cygtls.cc (well_known_dlls): Add kernelbase.dll.Corinna Vinschen1-0/+4
2013-07-22 * include/cygwin/version.h (CYGWIN_VERSION_DLL_MINOR): Bump to 23.Corinna Vinschen1-0/+4
2013-07-21 * regex/regcomp.c (wgetnext): Add a kludge to be more glibc compatible.Corinna Vinschen1-0/+5
Add comment to explain.
2013-07-20* exceptions.cc (signal_exit): Remove comment. Use __builtin_frame_address.Christopher Faylor1-0/+5
2013-07-20* exceptions.cc (signal_exit): Nope. Nevermind. Dump core unconditionally.Christopher Faylor1-0/+5
2013-07-19* exceptions.cc (signal_exit): Add a FIXME comment.Christopher Faylor1-0/+4
2013-07-19* exceptions.cc (signal_exit): Only dump core when it's a "kernel" signal.Christopher Faylor1-0/+6
Only use RtlCaptureContext on x86_64. It doesn't seem to do what's expected on x86.
2013-07-19* spawn.cc (child_info_spawn::worker): Reinstate using temp buffer for wideChristopher Faylor1-0/+8
character command-line storage. Use wcs method to convert command line. * winf.h (lb_wcs): Delete. (linebuf::wcs): Implement new single-argument method.
2013-07-19* lib/libcmain.c (main): Don't point to last quoted character if the only thingChristopher Faylor1-0/+5
in the buffer is the program name.
2013-07-19.Christopher Faylor1-3/+3
2013-07-19* common.din: Export GetCommandLine{A,W}.Christopher Faylor1-0/+21
* kernel32.cc: Add includes needed for GetCommandLine functions. (ucmd): New function. (cygwin_GetCommandLineW): Ditto. (cygwin_GetCommandLineA): Ditto. * spawn.cc (child_info_spawn::worker): Rename one_line -> cmd. Use lb_wcs macro to generate a wide character version of the line buffer. Remove duplicate printing of command line. Don't access members of linebuf directly. * winf.h: Use pragma once. (linebuf): Make storage private. (linebuf::operator size_t): New operator. Return size of buf. (linebuf::operator wchar_t): New operator. (linebuf::wcs): New function. (lb_wcs): New macro. * include/cygwin/version.h: Bump API minor number to 268. * strfuncs.cc: Clarify descriptive file comment.
2013-07-19 * cygtls.cc (_cygtls::remove): Close cw_timer handle, thus avoidingCorinna Vinschen1-0/+5
handle leak.
2013-07-19 * cygserver_ipc.h (ipc_retval::ipc_retval): Take ssize_t as argumentCorinna Vinschen1-0/+6
to make sure entire ipc_retval union is initialized on all supported platforms.
2013-07-18 * path.cc (normalize_posix_path): Start checking path before ".." atCorinna Vinschen1-0/+6
dst, rather than at dst_start, otherwise suffer loss of one leading slash in case of UNC paths.
2013-07-17* winsup.h (cygbench): Fix declaration to match definition.Christopher Faylor1-0/+5
* dcrt0.cc (initial_env): Remove unused variable.
2013-07-15 Remove /dev/mem, /dev/kmem, /dev/port support.Corinna Vinschen1-0/+15
* Makefile.in (DLL_OFILES): Drop fhandler_mem.o. (fhandler_mem_CFLAGS): Remove rule. * devices.in (enum fh_devices): Remove FH_MEM, FH_KMEM and FH_PORT. * devices.cc: Regenerate. * dtable.cc (fh_alloc): Drop handling for FH_MEM, FH_KMEM and FH_PORT. * fhandler.h (class fhandler_dev_mem): Remove. * fhandler_mem.cc: Remove file. * globals.cc (ro_u_pmem): Remove. * mmap.cc (fhandler_dev_mem::mmap): Remove. (fhandler_dev_mem::munmap): Remove. (fhandler_dev_mem::fixup_mmap_after_fork): Remove.
2013-07-15 * include/cygwin/version.h (CYGWIN_VERSION_DLL_MINOR): Bump to 22.Corinna Vinschen1-0/+4
2013-07-15 * path.cc (symlink_native): Fix common prefix search. Enhance comment.Corinna Vinschen1-0/+4
2013-07-11 * uname.cc (uname): Drop unused code.Corinna Vinschen1-0/+4
2013-07-10* gentlsoffsets: Clean up a little.Christopher Faylor1-0/+8
* thread.cc (semaphore::_fixup_after_fork): Report on potential problem parameter. Make sure that currentvalue is never zero. (semaphore::init): Make cosmetic change.
2013-07-10 * cygwin.sc.in (.text.*): Fold into .text on all platforms.Corinna Vinschen1-0/+8
(.eh_frame): Add section. * environ.cc (my_findenv): Drop __stdcall attribute. (getearly): Ditto. (findenv_func): Drop cast.
2013-07-03* fhandler.cc (fhandler_base::close_with_arch): Make sure that the archetype isChristopher Faylor1-0/+6
deleted when close_with_arch is referenced *via* the archetype.
2013-06-28 * path.cc (find_fast_cwd_pointer): Use gas syntax for assemblerCorinna Vinschen1-0/+6
description in all comments. Make algorithm work on Windows 8.1 Preview.
2013-06-27 * dcrt0.cc (child_info_fork::alloc_stack): Fix a comparison to avoidCorinna Vinschen1-0/+6
taking 4K more stack in forked child. * fork.cc (frok::parent): Print child exit code in hex if sync failed.
2013-06-24* common.din (rawmemchr): Export.Yaakov Selkowitz1-0/+6
* posix.sgml (std-gnu): Add rawmemchr. * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
2013-06-21 * path.cc (cygwin_conv_path): Handle NULL "from" path gracefully.Corinna Vinschen1-0/+6
* path.sgml (func-cygwin-conv-path): Document returning EINVAL if "from" is NULL.
2013-06-19* winf.h (av::unshift): Make __reg2.Christopher Faylor1-0/+4
2013-06-19* spawn.cc (child_info_spawn::worker): Eliminate call to newargv.set() in favorChristopher Faylor1-0/+18
of conglomerated newargv.setup(). Let newargv.setup() decide when to call dup_all(). Only set argc and argv for cygwin processes. (av::setup): Rename from av::fixup. Accept argc and argv parameters. Fill out argv and argc here. Duplicate whole argv structure when this is a Cygwin executable. * winf.cc (linebuf::fromargv): Don't bother duplicating argv elements since they will never be used. * winf.h (av::set): Delete. (av::setup): Rename from av::fixup. Add two parameters. (av::replace0_maybe): Assign calloced to 1 rather than 'true' for clarity. (av::dup_maybe): Delete. (av::dup_all): Set calloced to show that we have duplicated all of the arguments in the list.
2013-06-19 * nlsfuncs.cc (__collate_range_cmp): Convert input to wchar_t and callCorinna Vinschen1-0/+6
wcscoll since all calling functions are using wide chars. Explain in preceeding comment.
2013-06-19* spawn.cc (child_info_spawn::worker): Eliminate wascygexec.Christopher Faylor1-0/+4
2013-06-19* dcrt0.cc (child_info_fork::alloc_stack): Don't subtract 4096 from stackChristopher Faylor1-0/+5
pointer since getstack() already does that.
2013-06-18 * gmon.c: Drop gratuitous inclusion of strings.h. Remove __MINGW32__Corinna Vinschen1-0/+5
around definition of bzero.
2013-06-18 * Makefile.in (VPATH): Drop CONFIG_DIR.Corinna Vinschen1-0/+19
(EXTRA_DLL_OFILES): Remove. (DLL_OFILES): Remove EXTRA_DLL_OFILES. (ASFLAGS): Define as -D_WIN64 on x86_64. (GMON_OFILES): Add mcountFunc.o. ($(srcdir)/$(TLSOFFSETS_H)): Use target_cpu rather than CONFIG_DIR. * configure.ac (CONFIG_DIR): Remove definition. * configure: Regenerate. * gcrt0.c: Use latest version from Mingw-w64 project. * gmon.c: Ditto. * gmon.h: Ditto. * mcount.c: Ditto. * mcountFunc.S: Ditto, new file. * profil.c: Ditto. * profil.h: Ditto. * config: Remove entire directory.
2013-06-17 * path.cc (cnt_bs): New inline function.Corinna Vinschen1-0/+5
(symlink_native): Fix creating relative native symlink.
2013-06-17 * fhandler_clipboard.cc (fhandler_dev_clipboard::read): Fix bufferCorinna Vinschen1-0/+5
read access overrun when pos > 0.
2013-06-17 * times.cc (GetSystemTimePreciseAsFileTime): Add comment to declaration.Corinna Vinschen1-0/+6
(__to_clock_t): Remove a debug_printf. (times): Align syscall_printf to debug output of other system calls.
2013-06-14 * autoload.cc (GetSystemTimePreciseAsFileTime): Define.Corinna Vinschen1-1/+12
* times.cc (GetSystemTimePreciseAsFileTime): Temporarily declare here to workaround missing definition in 32 bit w32api headers. (get_system_time): New always inline function to call either GetSystemTimePreciseAsFileTime or GetSystemTimeAsFileTime on a per OS basis. Call throughout instead of GetSystemTimeAsFileTime. * wincap.h (wincaps::has_precise_system_time): New element. * wincap.cc: Implement above element throughout.
2013-06-14 Streamline time/times functionality. Remove last remains of formerCorinna Vinschen1-0/+39
Windows 9x compatibility. * fhandler_disk_file.cc (fhandler_base::fstat_helper): Drop now unneeded casts in calls to_timestruc_t. (fhandler_base::utimens_fs): Ditto for timespec_to_filetime. * fhandler_proc.cc (format_proc_stat): Ditto for to_time_t. * hires.h (class hires_ms): Remove unused member initime_ns. Remove declarations for timeGetTime_ns and prime. (hires_ms::uptime): Remove. * posix_ipc.cc (ipc_cond_timedwait): Ditto for timespec_to_filetime. * fhandler_registry.cc (fhandler_registry::fstat): Add cast. * resource.cc (fill_rusage): Call NtQueryInformationProcess rather than GetProcessTimes to deal with LARGE_INTEGER rather than FILETIME. * times.cc: Simplify time handling. Throughout, use LARGE_INTEGER rather than FILETIME to simplify computations. Throughout use {u}int64_t rather than {unsigned} long long. Drop unneeded casts since NSPERSEC is 64 bit anyway. (systime_ns): Remove. (times): Call NtQuerySystemInformation to fetch boot time. Call NtQueryInformationProcess rather than GetProcessTimes to deal with LARGE_INTEGER rather than FILETIME. Call GetSystemTimeAsFileTime. (totimeval): Use constant 1000000 as in other functions. (time_t_to_filetime): Remove. (to_time_t): Change return type to time_t. (time_as_timestruc_t): Rename filetime to systime. (time): Ditto. Add cast. (hires_ns::nsecs): Fix return type cast. (hires_ms::timeGetTime_ns): Remove. (hires_ns::prime): Remove. (hires_ms::nsecs): Drop call to prime. Call GetSystemTimeAsFileTime directly. Subtract FACTOR here since it's the only function needing to do so. (minperiod): Cosmetically change to ULONG. (hires_ns::resolution): Fix return type cast. (hires_ms::resolution): Simplify, rely on NtQueryTimerResolution. * winsup.h: Align time related prototypes to above changes.
2013-06-13 * net.cc (gen_old_if_name): New function to generate short interfaceCorinna Vinschen1-0/+6
names for old pre-1.7 applications. (get_ifs): Call gen_old_if_name for said old applications.
2013-06-13 * posix.sgml (fcntl, flock, lockf): Point to implementation notes.Corinna Vinschen1-0/+4
2013-06-12 * path.cc (normalize_posix_path): Fix long-standing problem whichCorinna Vinschen1-0/+5
allows to access files via ".." using an invalid POSIX path.
2013-06-11 * winver.rc (FileDescription): Remove (R).Corinna Vinschen1-0/+4
2013-06-10 * sec_auth.cc (get_user_groups): Don't handle ERROR_ACCESS_DENIED asCorinna Vinschen1-0/+5
error. Explain why.
2013-06-08clarify entryChristopher Faylor1-1/+1
2013-06-08* exceptions.cc (try_to_debug): Don't use yield() when waiting for anotherChristopher Faylor1-0/+7
process. (sigpacket::setup_handler): Fix long-standing problem where loop could exit with lock held.