Commit Graph

3990 Commits

Author SHA1 Message Date
Christopher Faylor 744ed079bc * strace.cc (main): Ensure POSIXLY_CORRECT argument ordering.
* cygcheck.cc (main): Ditto.
2004-02-10 16:01:31 +00:00
Corinna Vinschen 9ec70d2019 * fhandler_socket.cc (fhandler_socket::ioctl): Add FIONREAD handling. 2004-02-09 11:30:57 +00:00
Christopher Faylor cec4879206 * debug.h (console_printf): Define for non-debugging condition.
* cygtls.h (_threadinfo::lock): Remove wait argument.
(_threadinfo::interrupt_setup): Remove retaddr argument.
* exceptions.cc (_threadinfo::interrupt_setup): Ditto.
(_threadinfo::interrupt_now): Accommodate change to interrupt_setup argument.
(setup_handler): Ditto.  Always lock sig stack prior to determining interrupt
method.
* gendef (_sigfe): Correct thinko regarding cmpxchg.
(_sigbe): Ditto.
(_threadinfo::lock): Ditto.
(_threadinfo::pop): Eliminate left-over stack unlock.
* sigproc.cc (proc_subproc): Chnage debugging output to printed warning.
2004-02-09 04:04:24 +00:00
Christopher Faylor 6946073e78 * localtime.cc (localtime_r): Call tzset.
* Makefile.in: Make version.h/cygwin.din version check a warning since it is
not foolproof.
* cygheap.h (CYGHEAPSIZE): Bump size down.
* cygtls.h (_threadinfo::stacklock): New element.
(_threadinfo::pop): Make regparm.
(_threadinfo::lock): New function.
(_threadinfo::unlock): New function.
* cygtls.cc (_threadinfo::push): Wait for a lock on the stack before performing
the operation.
(_threadinfo::pop): Move to another file.
* cygwin.din: More SIGFE changes.
* exceptions.cc (try_to_debug): Always display messages on console.
(handle_exceptions): Unwind stack only when actually about to call sig_send.
(setup_handler): Lock stack prior to performing any operations.
* gendef (_sigfe): Ditto.
(_sigbe): Ditto.
(_threadinfo::pop): Ditto.  Move here.
* gen_tlsoffsets: Generate positive offsets.
* tlsoffsets.h: Regenerate.
2004-02-08 19:59:27 +00:00
Corinna Vinschen f5133f95b0 * bsd_mutex.cc (win_priority): Move to msleep helper function section.
(set_priority): Ditto. Fix formatting.
	(_msleep): Cleanup obj formatting.  Rearrange obj order.
2004-02-07 10:47:39 +00:00
Danny Smith a1bca00aa9 2004-02-07 Dan Aloni <da-x@gmx.net>
* lib/ddk/ntoskrnl.def (KeSetTimer,KeSetTimerEx): Correct
	suffix.
2004-02-07 08:54:03 +00:00
Corinna Vinschen 373a036f7b * bsd_mutex.cc (_msleep): Handle PCATCH using signal_arrived event.
* client.cc: Include sigproc.h.
        * msg.cc (client_request_msg::serve): Accomodate third parameter to
        process::process.
        * sem.cc (client_request_sem::serve): Ditto.
        * shm.cc (client_request_shm::serve): Ditto.
        * process.cc (process::process): Duplicate signal_arrived into
        Cygserver process space.
        (process::~process): Close _signal_arrived handle.
        (process_cache::process): Add signal_arrived handling.
        * process.h (process::process): Add signal_arrived parameter.
        (process:signal_arrived): New read accessor.
        (process:_signal_arrived): New member.
        (process_cache::process): Add signal_arrived parameter.
2004-02-06 16:25:58 +00:00
Corinna Vinschen 2a566ac3ef * cygserver.h (CYGWIN_SERVER_VERSION_API): Bump.
* cygserver_ipc.h (struct proc): Add signal_arrived member.
        (ipc_set_proc_info): Inititalize blk.signal_arrived.
2004-02-06 16:18:59 +00:00
Corinna Vinschen 043878df18 * uinfo.cc (cygheap_user::init): Use sec_user_nih to build a
security descriptor. Set both the process and the default DACLs.
	* fork.cc (fork_parent): Use sec_none_nih security attributes.
	* spawn.cc (spawn_guts): Ditto.
2004-02-06 10:37:37 +00:00
Christopher Faylor 656a999a33 * cygwin.din: Make many more functions SIGFE.
* include/cygwin/version.h (CYGWIN_VERSION_SHARED_DATA): Bump.
2004-02-05 19:57:03 +00:00
Corinna Vinschen d82c6f474d * security.h (SID): New macro.
(well_known_*_sid): Change type to cygpsid.
	(cygsid::init): Delete declaration.
	* sec_helper.cc (well_known_*_sid): Define using above SID macro.
	(cygsid::init): Delete.
	* dcrt0.cc (dll_crt0_0): Do not call cygsid::init.
	* security.cc (get_user_local_groups): Change the second argument type
	to cygpsid.
2004-02-05 17:23:19 +00:00
Joshua Daniel Franklin 0d902e61d1 2004-02-04 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
* Makefile.in: Generate monolithic faq0.html file.
2004-02-05 05:00:34 +00:00
Danny Smith b5ce07f714 * mingwex/getopt.c: Define IS_POSIXLY_CORRECT as per
NetBSD getopt_long.c.
2004-02-05 03:17:46 +00:00
Danny Smith d11508dd22 * mingwex/strtold.c (__asctoe64) Reorganise. Fix setting error
codes and handling of special chars.
2004-02-05 03:12:15 +00:00
Christopher Faylor 120023b090 update copyright 2004-02-04 22:40:50 +00:00
Christopher Faylor 9e8c2fadf7 * tlsoffsets.h: Regenerate. 2004-02-03 22:05:02 +00:00
Christopher Faylor 06615351b1 * cygtls.h (_local_storage::signamebuf): Increase size to prevent overflow on
really odd values.
2004-02-03 22:04:27 +00:00
Christopher Faylor c571716c64 * Makefile.in (DLL_OFILES): Add strsig.o.
* cygtls.h (_local_storage::signamebuf) New element.
* sysconf.cc (sysconf): Implement _SC_RTSIG_MAX.
* tlsoffset.h: Regenerate.
* include/limits.h (_POSIX_RTSIG_MAX): New define.
(RTSIG_MAX): Ditto.
* include/cygwin/signal.h (SIGRTMIN): New define.
(SIGRTMAX): Ditto.
(NSIG): Bump.
* strsig.cc: New file.
2004-02-03 21:59:27 +00:00
Christopher Faylor 50be1d78d9 * window.cc (Winmain): Show windows error code in error output when
RegisterClass fails.
2004-02-03 19:41:28 +00:00
Christopher Faylor 528060195c * fhandler.h (*::fixup_after_exec): Eliminate unused handle argument.
* fhandler.h (dtable::fixup_after_exec): Eliminate unused handle argument.
* dcrt0.cc (dll_crt0_1): Reflect elimination of unused handle argument to
fixup_after_exec.
* dtable.cc (dtable::fixup_after_exec): Ditto.
* fhandler_console.cc (fhandler_console::fixup_after_exec): Ditto.
* fhandler_dsp.cc (fhandler_dsp::fixup_after_exec): Ditto.
* fhandler_raw.cc (fhandler_raw::fixup_after_exec): Ditto.
* fhandler_socket.cc (fhandler_socket::fixup_after_exec): Ditto.
* fhandler_virtual.cc (fhandler_virtual::fixup_after_exec): Ditto.
* pipe.cc (fhandler_pipe::fixup_after_exec): Ditto.
* spawn.cc (spawn_guts): Do not set ciresrv.parent.
* child_info.h (child_info_spawn::~child_info_spawn): Do not close parent.
Update CURR_CHILD_INFO_MAGIC.
* dcrt0.cc (dll_crt0_0): Do not close spawn_info->parent.  Pass NULL to
cygheap->fdtab.fixup_after_exec().
2004-02-02 21:00:07 +00:00
Christopher Faylor 6027d26d8b Throughout, change name from set_inheritance to set_no_inheritance to better
reflect input arguments of this function.
* cygheap.h (CYGHEAPSIZE): Increase size of cygheap to something closer to the
21st century.
2004-02-02 20:33:09 +00:00
Corinna Vinschen 8d9bbb5092 * cygerrno.h (set_errno): Replace semicolon with comma in non-DEBUGGING
version to avoid compile time error.
2004-02-02 10:47:29 +00:00
Danny Smith a37903bc43 * include/stdio.h (feof): Add inlined definition.
(ferror): Ditto.
2004-02-02 09:18:40 +00:00
Danny Smith 9512474d4d * include/oleacc.h (LIBID_Accessibility): Declare.
* lib/uuid.c (LIBID_Accessibility): Define.
2004-02-02 05:59:45 +00:00
Danny Smith 5773d89b94 * include/winioctl.h ( NTFS_VOLUME_DATA_BUFFER): Add structure.
(FSCTL_GET_NTFS_VOLUME_DATA): Add macro.
2004-02-02 05:48:16 +00:00
Danny Smith 75b0412ba8 * include/commctrl.h (ICC_STANDARD_CLASSES, ICC_LINK_CLASS): Add
defines.
2004-02-02 05:43:32 +00:00
Christopher Faylor 9e1ad59de6 * cygerrno.h (set_errno): Set global errno whenever setting thread specific
version.
* debug.cc (__set_errno): Ditto.
* exceptions.cc (handle_sigsuspend): Remove spurious sig_dispatch_pending call.
(set_signal_mask): When there seem to be pending signals to dispatch, tell
signal_dispatch_pending/sig_send not to specifically call any handlers.
* sigproc.h (sig_dispatch_pending): Change declaration to void.
* sigproc.cc (sig_dispatch_pending): Change definition to void.  Take an
argument to determine whether to tell sig_send to wait for handler to be
called.
* sigproc.cc (sig_send): Don't call signal handler when sig == __SIGFLUSHFAST.
(wait_sig): Honor __SIGFLUSHFAST.  Guard against sigpacket::process nuking
si_signo.
* sigproc.h (__SIGFLUSHFAST): Define new special signal.
(sig_dispatch_pending): Change declaration to void.  Take optional boolean
argument.
* fork.cc (vfork): Add debugging output.
2004-02-01 18:29:12 +00:00
Danny Smith f6565cd1a6 * mingwex/math/ldexpl.c (ldexpl): Call __asm__("fscale")
directly, rather than via scabnl.
2004-02-01 02:52:21 +00:00
Danny Smith 416bc45060 * mingwex/math/powl.c (powl): Return infinity if
extended precision multiplication of x by log2(y)
	overflows.
2004-02-01 00:10:17 +00:00
Danny Smith fff0b496a0 2004-01-31 Jiri Malak <Jiri.Malak@geac.cz>
* include/winuser.h (RT_MANIFEST): Make conditional on
	RC_INVOKED.
	(CREATEPROCESS_MANIFEST_RESOURCE_ID,
	ISOLATIONAWARE_MANIFEST_RESOURCE_ID,
	ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID): Add
	defines.
2004-01-31 09:08:15 +00:00
Danny Smith d2c7ccfc5f * mingwex/math/cephes_emath.h (__enan_64): Fix thinko.
(__enan_NI16): Fix another one.
	(__enan_NBITS): Tidy.
2004-01-31 08:44:01 +00:00
Christopher Faylor ef33379be8 * exceptions.cc (sig_handle_tty_stop): Avoid races by waiting for both
signal_arrived and for sigCONT.
(sigpacket::process): Enforce sending of both signal_arrived and sigCONT, where
appropriate.
* gendef (sigreturn): Save tls pointer in ebx so that it can jump into
sigdelayed and use the same register.
2004-01-26 22:25:57 +00:00
Christopher Faylor 5e0f482f2c * cygtls.cc (_threadinfo::init_thread): Add more local reent stdio
initialization.
* dcrt0.cc (initial_env): Can it really be true that XP doesn't allow attaching
a debugger during DLL attach?  Add temporary workaround.
(dll_crt0_0): Ensure that _impure_ptr stdio is initialized before any threads.
(dll_crt0_1): Move _impure_ptr initialization to dll_crt0_0.
* exceptions.cc (try_to_debug): Reinstate old method for looping while
debugging.
* syscalls.cc (_cygwin_istext_for_stdio): Regularize debugging output.  Remove
hopefully extraneous check.
(setmode_helper): Add debugging output for improbable case.  Use "binary"
rather "raw" for consistency.
2004-01-26 18:52:02 +00:00
Christopher Faylor d7231d7224 * fhandler.cc (fhandler_base::fhaccess): Avoid always setting errno to EACCESS
when return value is < 0.  Rely on errno being set properly.
2004-01-25 23:39:26 +00:00
Christopher Faylor 6bc774fc6b * sigproc.cc (proc_subproc): Don't protect *child's* handle. 2004-01-25 05:17:21 +00:00
Christopher Faylor 9157f0f3ec * fhandler.h (fhandler_base::fhaccess): Return int for compatibility with
access.
* fhandler.cc (fhandler_base::fhaccess): Return int.  Use consistent variable
name for exit value.  Exit at bottom, printing debugging information, like
other cygwin functions.
2004-01-24 20:34:27 +00:00
Joshua Daniel Franklin d5f60b41f4 Cleanup minor markup problems. 2004-01-24 08:10:27 +00:00
Joshua Daniel Franklin aff8b4f9aa 2004-01-24 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
* cygwinenv.sgml: Cleanup minor markup problems.
	* dll.sgml: Cleanup minor markup problems.
	* effectively.sgml: Cleanup minor markup problems.
	* gcc.sgml: Cleanup minor markup problems.
	* ntsec.sgml: Cleanup minor markup problems.
	* pathnames.sgml: Cleanup minor markup problems.
	* setup-net.sgml: Cleanup minor markup problems.
	* textbinary.sgml: Cleanup minor markup problems.
	* windres.sgml: Cleanup minor markup problems.
2004-01-24 08:09:45 +00:00
Christopher Faylor f4e815bc30 * cygheap.cc (init_cygheap::close_ctty): Protect YA vforkism.
* fhandler.h (fhandler_base::has_acls): Make pass through for path_conv method.
(fhandler_base::isremote): Ditto.
(fhandler_base::is_fs_special): Ditto.
(fhandler_base::has_attribute): Ditto.  Define new function.
(fhandler_base::fhaccess): Declare new function based on access_worker.
(fhandler_base::set_has_acls): Eliminate obsolete function.
(fhandler_base::set_isremote): Ditto.
* fhandler.cc (fhandler_base::fhaccess): Move from syscalls.cc and into
fhandler_base class.  Use fhandler methods to access data rather than path_conv
stuff.
(fhandler_base::device_access_denied): Use fhaccess method.
* fhandler_disk_file.cc (fhandler_disk_file::opendir): Ditto.
(fhandler_base::open_fs): Remove calls to obsolete functions.
* fhandler_virtual.cc (fhandler_virtual::open): Ditto.
* winsup.h (access_worker): Remove obsolete access_worker declaration.
*syscalls.cc (access_worker): Move function to fhandler.cc.
(access): Use fhaccess method.
* pinfo.cc (_pinfo::set_ctty): Clarify debugging output.
* sigproc.cc (sig_dispatch_pending): Ditto.
* syscalls.cc (setsid): Perform minor rearrangement.
2004-01-24 03:40:33 +00:00
Pierre Humblet b9a766427b 2004-01-23 Pierre Humblet <pierre.humblet@ieee.org>
* fhandler_socket.cc (fhandler_socket::create_secret_event): Avoid
        creating multiple handles. Always allow event inheritance but set the
        handle inheritance appropriately. Improve error handling.
        (fhandler_socket::check_peer_secret_event): Improve error handling.
        (fhandler_socket::close_secret_event): Simply call CloseHandle.
        (fhandler_socket::set_close_on_exec): Set secret event inheritance.
2004-01-24 00:14:27 +00:00
Christopher Faylor f723909038 * configure.in: Remove NEWVFORK default.
* configure: Regenerate.
* dcrt0.cc: Conditionalize vfork stuff throughout.
* dtable.cc: Ditto.
* perthread.h: Ditto.
* pipe.cc (fhandler_pipe::close): Ditto.
* spawn.cc (spawnve): Ditto.
* syscalls.cc (setsid): Ditto.
* exceptions.cc (sigpacket::process): Use macro to refer to vfork pid.
* debug.cc (verify_handle): Define new function.
* debug.h (VerifyHandle): Define new macro.
(verify_handle): Declare new function
* fhandler.cc (fhandler_base::dup): Verify that dup'ed handle is not supposed
to be in use.
(fhandler_base::set_inheritance): Ditto.
(fhandler_base::fork_fixup): Ditto.
* fhandler_socket.cc (fhandler_socket::dup): Ditto.
* fhandler_tty.cc (fhandler_tty_slave::open): Ditto.
* net.cc (set_socket_inheritance): Ditto.
* pinfo.cc (pinfo_fixup_after_exec): Ditto.
* sigproc.cc (proc_subproc): Ditto.
(sig_send): Ditto.
* spawn.cc (spawn_guts): Ditto.
* thread.cc (pthread::init_mainthread): Ditto.
* pipe.cc (fhandler_pipe::close): Close read_state with ForceCloseHandle since
it was protected.
(fhandler_pipe::fixup_after_exec): Protect read_state handle.
(fhandler_pipe::dup): Correctly close open handles on error condition.  Verify
that dup'ed handle is not supposed to be in use.
(fhandler_pipe::create): Protect read_state.
2004-01-23 23:05:33 +00:00
Christopher Faylor 7dddf53f5c * cygcheck.cc (pretty_id): Make more robust in absence of id.exe. 2004-01-23 23:04:27 +00:00
Christopher Faylor 35b7fc6c00 * exceptions.cc (sig_handle_tty_stop): Fix boneheaded mistake by using correct
check for parent state rather than inverted check mistakenly introduced on
2003-09-15.
2004-01-23 15:44:15 +00:00
Christopher Faylor a33df42223 * fhandler_serial.cc (fhandler_serial::raw_write): Prevent a deadlock when the
input buffer overflows.
(fhandler_serial::raw_read): Correct to print the actual error and only call
PurgeComm when necessary.
2004-01-23 15:22:48 +00:00
Christopher Faylor fba870ac94 change comment. 2004-01-22 19:16:17 +00:00
Christopher Faylor 35711de753 * dcrt0.cc (reent_data): Make global.
* cygwin.din: Reexport reent_data.
2004-01-22 19:14:07 +00:00
Christopher Faylor 39d06d71ff * cygtls.cc (_threadinfo::remove): Don't assume that we are removing _my_tls.
* exceptions.cc (setup_handler): Improve debugging output.
(call_signal_handler_now): Remove ill-advised debugger call.
* sigproc.cc (sigcomplete_main): Delete.
(sig_send): Honor FIXME and avoid using main thread's completion event for
everything or suffer races.
(pending_signals::add): Default stored mask to current process mask rather than
mask at time of signal send.
(wait_sig): Add debugging output.
* sigproc.h (sigpacket::mask_storage): Delete.
2004-01-22 19:03:19 +00:00
Christopher Faylor 537ca63f8e * fhandler.cc (fhandler_base::open): Revert isfs change. 2004-01-22 15:08:08 +00:00
Corinna Vinschen 30352c261c * cygpath.cc (dowin): Revert accidental checkin from November. 2004-01-22 09:21:56 +00:00
Christopher Faylor a1dcf5d848 * devices.in: Change raw com device to more correct form. 2004-01-21 19:14:19 +00:00