| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
| |
* ntdll.h: Define CreateDisposition Flags. Add comments.
* winlean.h: Define FILE_SHARE_VALID_FLAGS if using Mingw64 headers.
|
|
|
|
|
|
|
|
|
|
| |
* select.cc (allocfd_set): Try to make a little more efficient.
(cygwin_select): Break into two functions to avoid what seems to be a strange
compiler problem with alloca and sel constructor.
(select): New function. Always honor return from call_signal_handler.
(select_stuff::wait): Always honor return from call_signal_handler.
* select.h (select_stuff::select_stuff): Use NULL to initialize pointers rather
than 0.
|
|
|
|
|
|
| |
for comparison.
* ntdll.h: Drop defining NT status codes in favor of including
ntstatus.h.
|
|
|
|
|
| |
rather than PCVOID.
* miscfuncs.h (WritePipeOverlapped): Ditto.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(ImpersonateNamedPipeClient): Add missing WINAPI.
* ntdll.h (STATUS_INVALID_PARAMETER): Only define if it isn't already.
(STATUS_DLL_NOT_FOUND): Ditto.
(STATUS_ENTRYPOINT_NOT_FOUND): Ditto.
(enum _EVENT_TYPE): Guard against redefinition since it's already
defined in Mingw64's ntdef.h.
(enum _TIMER_TYPE): Ditto.
(enum _SECTION_INHERIT): Define if using Mingw64 headers since it's
missing in Mingw64's ntdef.h.
* winlean.h (__STRALIGN_H_): Define before including windows.h.
|
| |
|
| |
|
|
|
|
| |
cancelling thread.
|
|
|
|
| |
relative time.
|
| |
|
|
|
|
|
| |
mount_info::cygdrive_posix_path to convert DOS paths to POSIX paths.
Add comment to explain why that's necessary at all.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(cancelable_wait): Define variant which accepts DWORD time argument.
(cygwait): Use cancelable_wait with DWORD argument.
(cygwait): Use cancelable_wait with DWORD argument and cw_sig_eintr for
timeout-only case.
* exceptions.cc (handle_sigsuspend): Use LARGE_NULL as second argument to
distinguish between cancelable_wait variants.
* thread.cc (pthread_mutex::lock): Ditto.
(pthread::join): Ditto.
(semaphore::_timedwait): Ditto.
* thread.h (fast_mutex::lock): Ditto.
* wait.cc (wait4): Ditto.
|
|
|
|
| |
Check in actual change associated with ChangeLog.
|
|
|
|
|
|
|
|
| |
handling of call_signal_handler.
* cygwait.h (WAIT_CANCELED): Move here and redefine.
(WAIT_SIGNALED): Ditto.
* thread.h (WAIT_CANCELED): Delete.
(WAIT_SIGNALED): Ditto.
|
|
|
|
|
| |
creating valid native NT installation_root path. Only strip last
backslash from path if the result is a valid NT path. Explain why.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* DevNotes: Add entry cgf-000012.
* Makefile.in (DLL_OFILES): Add cygwait.o.
* sigproc.h: Remove cygwait definitions.
* cygwait.h: New file. Define/declare Cygwin waitfor functions.
* cygwait.cc: Ditto.
* exceptions.cc: Include cygwait.h.
(handle_sigsuspend): Accommodate change in cancelable_wait arguments.
(sigpacket::process): Display thread tls in debugging output.
* fhandler.cc (fhandler_base_overlapped::wait_overlapped): Use symbolic names
for signal and cancel return.
* fhandler_console.cc (fhandler_console::read): Ditto.
(fhandler_dev_dsp::Audio_out::waitforspace): Ditto.
fhandler_dev_dsp::Audio_in::waitfordata): Ditto.
* fhandler_fifo.cc (fhandler_fifo::wait): Ditto.
* fhandler_serial.cc (fhandler_serial::raw_read): Ditto.
* fhandler_tty.cc (fhandler_pty_slave::read): Ditto.
* select.cc (cygwin_select): Ditto.
* wait.cc (wait4): Ditto.
* thread.cc (cancelable_wait): Move definition to cygwait.h.
(pthread_cond::wait): Accommodate change in cancelable_wait arguments.
(pthread_mutex::lock): Ditto.
(pthread_spinlock::lock): Ditto.
(pthread::join): Ditto.
(pthread::thread_init_wrapper): Display tls in debugging output.
(semaphore::_timedwait): Ditto.
* thread.h (cw_sig_wait): Move to cygwait.h.
(cw_cancel_action): Delete.
(cancelable_wait): Move declaration to cygwait.h.
|
| |
|
|
|
|
| |
left-parenthesis in ERE, as in glibc.
|
|
|
|
|
|
| |
(R_386_PC16): Define.
(R_386_8): Define.
(R_386_PC8): Define.
|
|
|
|
|
| |
(select_stuff::wait): Return select_set_zero on timeout.
(thread_socket): Report timeout when debugging.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* include/machine/elf.h: New header, from FreeBSD.
* include/sys/elf.h: Ditto.
* include/sys/elf32.h: Update from FreeBSD.
* include/sys/elf64.h: Ditto.
* include/sys/elf_common.h: Ditto.
(R_IA64_*): Define Linux-style names as aliases to R_IA_64_*.
(R_SH_*): Define, based on sh-4 psABI.
(R_390_*): Define, based on s390x psABI.
* include/sys/elf_generic.h: Ditto.
|
|
|
|
| |
STATUS_NOT_SUPPORTED to EPERM as well.
|
|
|
|
|
| |
passed in.
* syscalls.cc (dup_finish): Pass O_EXCL in flags to dtable::dup3.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* fhandler.h (fhandler_base::refcnt): Delete.
(fhandler_base::inc_refcnt): New function.
(fhandler_base::dec_refcnt): New function.
* cygheap.h (cygheap_fdnew::~cygheap_fdnew): Accommodate split of refcnt to
inc_refcnt/dec_refcnt.
(cygheap_fdget::cygheap_fdget): Ditto.
(cygheap_fdget::~cygheap_fdget::cygheap_fdget): Ditto.
* dtable.cc (dtable::release): Ditto.
(cygwin_attach_handle_to_fd): Ditto.
(dtable::init_std_file_from_handle): Ditto.
(dtable::dup3): On success, return with fdtab locked.
* dtable.h (dtable): Add dup_finish as a friend.
* syscalls.cc (dup_finish): Define new function. Increment refcnt while fdtab
is locked.
(dup2): Use common dup_finish() to perform dup operation.
(dup3): Ditto.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* mount.cc (fs_info::update): Recognize ReFS.
* mount.h (enum fs_info_type): Add refs.
(class fs_info): Add refs flag and accessor methods.
* ntdll.h (RtlAddAccessAllowedAceEx): Declare.
(RtlAddAccessDeniedAceEx): Declare.
* path.h (path_conv::fs_is_refs): Define.
* sec_helper.cc (_recycler_sd): New function to create security
descriptors suitable for the recycler bin starting with Vista.
* security.cc (add_access_allowed_ace): Use RtlAddAccessAllowedAceEx
and drop code to set AceFlags explicitely.
(add_access_denied_ace): Use RtlAddAccessDeniedAceEx and drop code to
set AceFlags explicitely.
* security.h (_recycler_sd): Declare.
(recycler_sd): Define.
* syscalls.cc (desktop_ini): Change formatting.
(desktop_ini_ext): Define third line of recycler desktop.ini file
since Vista,
(try_to_bin): Handle ReFS just like NTFS. Write Vista and later
Recycler in all uppercase, just like shell32 does when recreating it.
Fix comments to include ReFS. Don't implicitely reuse object
attributes from earlier NtOpenFile call, rather recreate it for safety.
Use recycler_sd call when creating security descriptor for Recycler
dirs and files on Vista and later. Write third line of desktop.ini
when on Vista and later.
|
|
|
|
| |
"Server 2012".
|
| |
|
|
|
|
|
| |
return.
(select_stuff::wait): Semi-revert to previous method for filling out w4.
|
|
|
|
| |
(select_stuff::wait): Ditto.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* select.cc (set_handle_or_return_if_not_open): Remove unneeded final backslash
from definition.
(cygwin_select): Reorganize to incorporate outer retry loop. Move remaining
time recalculation here for retry case. Use select_stuff::wait_states for loop
control.
(select_stuff::cleanup): Avoid unneeded initialization.
(select_stuff::wait): Modify definition to return select_stuff::wait_states.
Eliminate is_cancelable. Don't element 1 of an array if it is a cancel handle.
Remove loop. Rely on being called from enclosing loop in cygwin_select.
Remove time recalculation when restarting. Try harder to always return from
the bottom.
* select.h (select_stuff::wait_state): New enum.
(select_stuff::wait): Modify declaration to return select_stuff::wait_states.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
mapped memory. Shorten static library name buffer to MAX_PATH. Use
strlcpy to copy library name to buffer. Only Unmap "map" if it has been
Mapped before.
* pinfo.cc (status_exit): Drop unneeded declaration of
find_first_notloaded_dll in favor of the declaration in winsup.h.
|
|
|
|
|
|
|
|
|
|
| |
handles thread cancellation by itself.
(class __cygwin_lock_handler): Remove.
(__cygwin_lock_cleanup): Remove.
(__cygwin_lock_lock): Revert newlib workaround,
(__cygwin_lock_trylock): Ditto.
(__cygwin_lock_unlock): Ditto.
(pthread::pop_cleanup_handler): Ditto.
|
|
|
|
| |
entirely.
|
|
|
|
| |
source cygsid.
|
|
|
|
|
|
|
| |
* make-64bit-version-with-mingw-w64.sh (LIBS): Ditto.
* cyglsa.c: Drop NTDLL function declarations. Use equivalent advapi32
functions again, throughout.
* cyglsa64.dll: Regenerate.
|
| |
|
|
|
|
|
| |
a signal, recalculate timeout. Apply temporary fix to avoid crashes
after calling the signal handler. Explain.
|
|
|
|
| |
ERROR_OPERATION_ABORTED rather than ERROR_IO_INCOMPLETE after CancelIo.
|
|
|
|
| |
directly in case of non-blocking I/O and handle result gracefully.
|
|
|
|
|
|
| |
for cygwin_finished_initializing to handle process startup.
(__cygwin_lock_trylock): Ditto.
(__cygwin_lock_unlock): Ditto.
|
|
|
|
|
|
| |
into account.
(__cygwin_lock_trylock): Ditto.
(__cygwin_lock_unlock): Ditto.
|
|
|
|
| |
Cygwin code since it looks like the problem is Windows only.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
newlib doesn't install cleanup handlers. Explain the problem.
(class __cygwin_lock_handler): New class.
(__cygwin_lock_cleanup): New function.
(__cygwin_lock_lock): Push __cygwin_lock_cleanup thread cleanup
handler.
(__cygwin_lock_trylock): Ditto.
(__cygwin_lock_unlock): Pop thread cleanup handler.
(pthread::pop_cleanup_handler): Temporarily allow cleanup function to
destroy cleanup handler so we can pop in another function than we
pushed in.
|
|
|
|
| |
if the thread is not executing Cygwin or Windows code. Explain why.
|
|
|
|
| |
Explain why.
|
|
|
|
|
|
| |
to PTHREAD_CANCEL_DISABLE from here...
(pthread::pop_all_cleanup_handlers): ...to here, otherwise any explicit
call to pthread_cleanup_pop disables cancellation for this thread.
|