| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
comment.
* mount.cc (mount_info::from_fstab): Use tmp_pathbuf rather than
stack for big local buffer.
* net.cc (cygwin_gethostname): Call GetComputerNameExA rather than
GetComputerNameA if gethostname failed.
* shared.cc (user_info::initialize): Fix formatting.
* include/sys/file.h: Define flock and accompanying macros if not
already defined in sys/_default_fcntl.h.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* include/cygwin/socket.h: Fix formatting.
(IP_UNICAST_IF): Define.
(IPV6_JOIN_GROUP): Remove Windowism.
(IPV6_LEAVE_GROUP): Ditto.
(IPV6_UNICAST_IF): Define.
(IPV6_TCLASS): Ditto.
(IPV6_RECVTCLASS): Ditto.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
definitions in newlib.
(LOCK_EX): Ditto.
(LOCK_NB): Ditto.
(LOCK_UN): Ditto.
(flock): Ditto.
(F_OK): Drop. Already correctly defined in unistd.h.
(X_OK): Ditto.
(W_OK): Ditto.
(R_OK): Ditto.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* fork.cc (frok::parent): When initializing pinfo for child new PID_NEW flag +
actual defined constant rather than raw number. Don't set start_time here.
* pinfo.cc (pinfo::thisproc): Use PID_NEW when initializing pinfo. Avoid
checking h for NULL multiple times. Don't set start_time here.
(pinfo_init): Aways set ppid last. Tweak strace output.
(pinfo::init): Handle new PID_NEW flag. Wait for shared memory to contain
useful information. Set start_time if PID_NEW.
(_onreturn:h): Define as HANDLE rather than HANDLE *.
(_onreturn::~onreturn): Accommodate h definition change.
(_onreturn::no_close_handle): Rename from no_close_p_handle. Take a pinfo arg
and set hProcess to h before zeroing.
(winpids::add): Don't open a handle to our own process. Change logic
associated with when a handle gets closed. Accommodate no_close_handle
changes.
(winpids::enum_processes): Simplify process enumeration loop.
(winpids::set): Eliminate ill-considered malloc locking.
* sigproc.cc (proc_subproc): Always set ppid last.
|
|
|
|
|
| |
Harden _XOPEN_SOURCE guard against applications defining _XOPEN_SOURCE
with empty value.
|
| |
|
| |
|
|
|
|
| |
Prototype if not __STRICT_ANSI__ or _XOPEN_SOURCE is defined appropriately.
|
| |
|
|
|
|
|
|
|
| |
* exec.cc (execve): Add EXPORT_ALIAS _execve.
* include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
* posix.sgml (std-susv4): Add posix_spawn[...] here.
(std-notimpl): Drop here.
|
|
|
|
| |
newlib in terms of C99 "restrict" keyword.
|
|
|
|
| |
in newlib's stdlib.h now.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(IdnToUnicode): Define.
(FreeAddrInfoW): Define.
(GetAddrInfoW): Define.
(GetNameInfoW): Define.
* net.cc: Drop W. Richard STEVENS libgai implementation.
(cygwin_freeaddrinfo): Move code from ipv4_freeaddrinfo here. Move
definition up in file to avoid forward declaration in ga_duplist.
(ga_dup): Take addrinfoW as input. Add parameters to get IDN flags
and to set error value. Handle IDN flags and especially AI_CANONIDN.
Convert input wchar_t ai_canonname string to multibyte for output.
(ga_duplist): Add parameters to get IDN flags and to set error value
and propagate to ga_dup. Call cygwin_freeaddrinfo.
(gai_errmap): Add comments. Align error strings to GLibc. Add
EAI_IDN_ENCODE entry.
(get_ipv6_funcs): Remove.
(load_ipv6_guard): Remove.
(ipv6_inited): Remove.
(load_ipv6): Remove.
(load_ipv6_funcs): Remove.
(cygwin_getaddrinfo): Drop calling load_ipv6. Handle AI_IDN* flags.
Convert input strings to wchar_t and call GetAddrInfoW/FreeAddrInfoW.
In case hints is NULL, set default ai_flags explicitely to
AI_V4MAPPED | AI_ADDRCONFIG, as documented for Glibc. Only add AI_ALL
if AI_ADDRCONFIG is not given. Unconditionally add Windows-specific
AI_DISABLE_IDN_ENCODING to ai_flags to make IDN behaviour compatible
to Glibc even on Windows 8 and later.
(cygwin_getnameinfo): Drop calling load_ipv6. Handle NI_IDN* flags.
Call GetNameInfoW and convert returned strings from wchar_t to
multibyte.
* include/netdb.h: Add comments to describe flags and error values.
(AI_*): Define all flags using hex values for clearness.
(AI_IDN): Define.
(AI_CANONIDN): Define.
(AI_IDN_ALLOW_UNASSIGNED): Define.
(AI_IDN_USE_STD3_ASCII_RULES): Define.
(NI_*): Define all flags using hex values for clearness.
(NI_IDN): Define.
(NI_IDN_ALLOW_UNASSIGNED): Define.
(NI_IDN_USE_STD3_ASCII_RULES): Define.
(EAI_IDN_ENCODE): Define.
|
|
|
|
| |
* include/exceptions.h: Remove.
|
|
|
|
|
| |
* include/exceptions.h: Disable content for x86_64 since it's not
using frame based exception handling anymore.
|
| |
|
| |
|
|
|
|
| |
to 25.
|
|
|
|
|
|
|
|
|
| |
of drives supporting select partitions.
(mtinfo_drive::get_status): Fill in current partition and number of
partitions on tape into mt_resid.
* include/cygwin/mtio.h (struct mtget): Align mt_resid comment to
aforementioned change.
* include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
|
|
|
|
|
|
|
|
|
|
| |
size of unused2 accordingly.
* include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
* lib/_cygwin_crt0_common.cc (_cygwin_crt0_common): Initialize
u->posix_memalign with address of posix_memalign.
* malloc_wrapper.cc (posix_memalign): Call user-provided posix_memalign
rather than just returning ENOSYS.
* globals.cc (__cygwin_user_data): Initialize posix_memalign member.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
| |
|
|
|
|
|
| |
* posix.sgml (std-gnu): Add rawmemchr.
* include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
| |
* include/cygwin/socket.h: ...to here.
|
|
|
|
| |
to avoid circular dependency resulting in bogus compile time warnings.
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
|
| |
* 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.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
* include/sys/sysinfo.h (struct sysinfo): Rename __unused member to __f.
* libc/fts.c (__FBSDID): Drop definition.
* regex/regexec.c (__unused): Drop definition.
|
| |
|
|
|
|
|
|
|
|
| |
follow Linux.
* fhandler_socket.cc: Change UNIX_PATH_LEN to UNIX_PATH_MAX throughout.
(fhandler_socket::recv_internal): Don't return prematurely in case of
successful return. For AF_LOCAL sockets, overwrite returned AF_INET
name with AF_LOCAL name.
|
| |
|
|
|
|
|
| |
(error_one_per_line): Ditto.
(error_print_progname): Ditto.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* cygtls.h (_cygtls::func): Define as a sa_sigaction style function.
* exceptions.cc (sig_handle_tty_stop): Ditto.
(_cygtls::interrupt_setup): Fix coercion to accommodate 'func' change.
(ctrl_c_handler): Use tty kill_pgrp to send a signal.
(sigpacket::process): Don't process sigflush here.
(_cygtls::call_signal_handler): Reorganize to avoid a race. Always call
sa_sigaction style function.
* fhandler_termios.cc (is_flush_sig): Define new function.
(tty_min::kill_pgrp): Handle tty flush when signal detected.
(fhandler_termios::bg_check): Be slightly more paranoid about checking for
valid tty.
(fhandler_termios::sigflush): Don't flush unless tty owner.
* fhandler_tty.cc (fhandler_pty_slave::ioctl): Use tty kill_pgrp to send
signal.
(fhandler_pty_master::ioctl): Ditto.
* signal.cc (killsys): Delete definition.
* sigproc.h (killsys): Delete declaration.
* include/cygwin/signal.h (siginfo_t): Simplify union/struct nesting slightly.
Implement mechanism to allow cygwin data passing.
|
|
|
|
| |
checkins. Regularize copyright format.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* exception.h (cygwin_exception): New class.
(cygwin_exception::dumpstack): Declare new function.
(cygwin_exception::context): Ditto.
(cygwin_exception::dump_exception): Ditto.
* exceptions.cc (cygwin_exception::dump_exception): Move into cygwin_exception
class. Accommodate new variable names.
(cygwin_exception::dumpstack): Ditto stackdump -> dumpstack.
(exception::handle): Move andreas processing earlier. Defer signal processing
decisions to the signal thread where they belong. Pass exception information
to sig_send via new siginfo_t si_cyg field.
(ctrl_c_handler): Wait for SIGHUP signal to be processed since it could cause a
process exit and we don't want races with thread exit lock.
(signal_exit): Move back here from sigproc.cc. Modify arguments and remove
from sigpacket class. Decide when to dump core based on signal type.
(sigpacket::process): Handle exiting signals in context of threads rather than
in the signal thread. Signal debugger on non-Windows signals. Remove
setup_signal_exit call.
* sigproc.cc (no_signals_available): Remove argument.
(signal_exit_code): Delete.
(close_my_readsig): Ditto.
(_cygtls::signal_exit): Move to exceptions.cc.
(sigproc_terminate): Don't attempt to terminate signal thread.
(setup_signal_exit): Delete.
(exit_thread): Use new si_cyg entry in siginfo_t.
(sig_send): Just use empty initializer for si. Accommodate change in
no_signals_available argument.
(wait_sig): Remove attempt to "go asynchronous" on process exit. Delete
__SIGEXIT handling. Don't ever exit.
* sigproc.h: Remove __SIGEXIT from signal enum. Renumber.
* include/cygwin/signal.h (siginfo_t): Add si_cyg entry.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
an already sparse file. Drop check for FILE_SUPPORTS_SPARSE_FILES
flag. Explicitely set FILE_ATTRIBUTE_SPARSE_FILE attribute in
cached attributes.
(fhandler_base::lseek): Only set did_lseek if sparseness is supported.
* fhandler_disk_file.cc (fhandler_disk_file::ftruncate): Don't attempt
to sparsify an already sparse file. Explicitely set
FILE_ATTRIBUTE_SPARSE_FILE attribute in cached attributes.
* mount.cc (oopt): Add "sparse" flag.
(fillout_mntent): Ditto.
* path.h (enum path_types): Add PATH_SPARSE.
(path_conv::support_sparse): New method.
(path_conv::fs_flags): Constify.
(path_conv::fs_name_len): Ditto.
include/sys/mount.h: Replace unused MOUNT_MIXED flag with MOUNT_SPARSE.
|
|
|
|
| |
(WAIT_MYPGRP): Define.
|