Commit Graph

5982 Commits

Author SHA1 Message Date
Christopher Faylor
2346864a45 * cygheap.cc (cygheap_fixup_in_child): Don't close parent handle here. Let the
caller do that.
* dcrt0.cc (child_info_spawn::handle_spawn): Close parent handle here to allow
fixup_after_exec functions to use it.
* cygtls.cc (_cygtls::call2): Avoid calling exit thread if called with
*crt0_1 functions.
* cygtls.h (_cygtls::isinitialized): Check that we actually have a tls before
seeing if it is initialized.
* gendef (_sigfe_maybe): Ditto.
* dcrt0.cc (dll_crt0_1): Remove static, use just one argument.
* dll_init.cc (dllcrt0_info): New structure.
(dll_dllcrt0): Change into a front-end to renamed dll_dllcrt0_1 so that we'll
always be assured of having something like a tls.
(dll_dllcrt0_1): New function, basically renamed from from dll_dllcrt0.
Unconditionally call _my_tls.init_exception_handler now that we are assured of
having a tls.  Change variable name from "linking" to "linked".
* winsup.h (dll_crt0_1): Declare.
(dll_dllcrt0_1): Ditto.
2006-06-02 00:09:50 +00:00
Danny Smith
6e0acd84f7 Expand wildcards in Dimitri Papadopoulos Changelog entries of:
2006-05-11, 2006-05-10, 2006-05-04, 2006-04-28, 2006-04-11,
2006-04-14, 2006-04-07.
2006-05-31 06:44:59 +00:00
Christopher Faylor
a2b6c06546 * cygtls.cc (_cygtls::call2): Don't call ExitThread on the main thread. 2006-05-31 02:14:17 +00:00
Christopher Faylor
08a968173b * winsup.api/cygload.h: Increase padding to 32768. 2006-05-31 01:49:02 +00:00
Christopher Faylor
56057f0394 * winf.h (MAXCYGWINCMDLEN): Set down size to 30000 or suffer fork errors. 2006-05-29 15:51:18 +00:00
Christopher Faylor
eb285e115c * sigproc.cc (child_info::proc_retry): Mask all of the bits we're interested
in, which includes bits above and below 0xc0000000.
2006-05-29 00:21:58 +00:00
Christopher Faylor
67ffc3c415 Put an underscore in front of the "active" in "strace.active". 2006-05-28 21:39:37 +00:00
Christopher Faylor
34f5d0879c white space 2006-05-28 15:50:14 +00:00
Christopher Faylor
29d1e62ed2 * dll_init.cc (dll_dllcrt0): Previous change didn't work very well with fork.
Semi-revert it but change name of variable to something that makes better
sense.
2006-05-27 22:55:58 +00:00
Christopher Faylor
17fed6fefc * thread.cc (verifyable_object_isvalid): Check for NULL specifically. 2006-05-27 19:00:36 +00:00
Christopher Faylor
939f16acf2 add missing comment 2006-05-27 18:53:36 +00:00
Christopher Faylor
344be4a719 * dll_init.cc (dll_dllcrt0): Call _my_tls.init_exception_handler if we've
finished initializing (Thanks to Gary Zablackis for noticing this problem).
Just use cygwin_finished_initializing rather than defining a separate variable.
2006-05-27 18:50:04 +00:00
Danny Smith
6b9a380455 Expand 2006-05-03 Dimitri Papadopoulos wildcards in Changelog 2006-05-25 09:19:26 +00:00
Danny Smith
1d37045968 Expand 2006-05-02 Dimitri Papadopoulos wildcards in Changelog 2006-05-25 09:04:55 +00:00
Christopher Faylor
3cd94e0c0a * debug.h (ModifyHandle): Define new macro.
(modify_handle): Declare new function.
* debug.cc (modify_handle): Define new function.
* fhandler.h (fhandler_base::fork_fixup): Change return value from void to
bool.
* fhandler.cc (fhandler_base::fork_fixup): Return true if fork fixup has been
done.
* pipe.cc (fhandler_pipe::set_close_on_exec): Set inheritance of protected
handle via ModifyHandle if DEBUGGING.
(fhandler_pipe::fixup_after_fork): Protect guard handle if fork fixup has been
done.
2006-05-25 05:40:51 +00:00
Christopher Faylor
38229bcdcf * cygtls.cc (_cygtls::call): Call call2 using _my_tls.
(_cygtls::init_exception_handler): Always replace existing exception handler
with cygwin exception handler.
* cygtls.h (_cygtls::call2): Remove static designation.
* dcrto.cc (dll_crt0_1): Define in a way that allows calling via _cygtls::call.
(_initialize_main_tls): Delete.
(_dll_crt0): Call dll_crt0_1 via cygtls::call.  Set _main_tls here.
* external.cc (cygwin_internal): Implement CW_CYGTLS_PADSIZE.
* include/sys/cygwin.h (CW_CYGTLS_PADSIZE): Define.
* tlsoffsets.h: Regenerate.
2006-05-25 02:33:13 +00:00
Christopher Faylor
99fc5e10f3 update to newer autoconf 2006-05-24 16:59:03 +00:00
Christopher Faylor
6265ac10be * strace.cc (proc_child): Propagate return code from child process.
(dostrace): Ditto.
(main): Ditto.
2006-05-24 16:50:50 +00:00
Christopher Faylor
8b08133112 * fhandler.cc (readv): Remove nonsensical assert. 2006-05-24 03:43:54 +00:00
Christopher Faylor
12a7d844b9 * select.cc (start_thread_socket): Delay setting thread local exitsock until we
know it's correct.  Return correct value on error.
2006-05-24 03:39:29 +00:00
Christopher Faylor
9905786a04 * select.cc (start_thread_socket): Clean up exitsock in case of error. Use
si->exitcode consistently.
2006-05-24 00:56:24 +00:00
Christopher Faylor
6813f009ba * child_info.h (_CI_SAW_CTRL_C): New enum.
(CURR_CHILD_INFO_MAGIC): Reset.
(saw_ctrl_c): New function.
(set_saw_ctrl_c): Ditto.
* sigproc.cc (child_info::proc_retry): Return EXITCODE_OK if we get
STATUS_CONTROL_C_EXIT and we actually saw a CTRL-C.
* spawn.cc (dwExeced): Delete.
(chExeced): New variable.
(spawn_guts): Set chExeced;
* exceptions.cc (dwExeced): Delete declaration.
(chExeced): Declare.
(ctrl_c_handler): Detect if we're an exec stub process and set a flag, if so.
* fhandler_tty.cc (fhandler_tty_common::__release_output_mutex): Add extra
DEBUGGING test.
* pinfo.cc: Fix comment.
2006-05-22 04:50:54 +00:00
Christopher Faylor
8ae1d98d8e * fhandle.h (fhandler_pipe::create_guard): Revert change which eliminated
SECURITY_ATTRIBUTES argument.
* pipe.cc (fhandler_pipe::open): Duplicate guard from other process and protect
it appropriately.  Eliminate unneeded writepipe_exists temporary variable.  Set
inheritance appropriately.
(fhandler_pipe::set_close_on_exec): Revert change which eliminated handling
guard inheritance.
(fhandler_pipe::fixup_after_fork): Ditto.  Use correct name of entity being
checked by fork_fixup.
(fhandler_pipe::fixup_after_exec): Don't bother with guard here.
(fhandler_pipe::dup): Cosmetic changes and revert creation of writepipe_exists
as noninheritable.
(fhandler_pipe::create): Revert change which eliminated SECURITY_ATTRIBUTES
argument.  Revert change which always made writepipe_exists noninheritable.
2006-05-21 21:02:52 +00:00
Christopher Faylor
9c9959a512 check in missing file 2006-05-21 17:27:14 +00:00
Danny Smith
8633e245b5 * lib/uuid.c (IID_IRpcProxyBuffer34): Remove definition. 2006-05-21 10:28:13 +00:00
Christopher Faylor
b7dd7dfcf3 typo 2006-05-21 05:37:24 +00:00
Christopher Faylor
b040009ecf * debug.cc (add_handle): Print handle value when collision detected.
* dtable.cc (dtable::stdio_init): Cosmetic change.
* fhandler.h (fhandler_base::create_read_state): Protect handle.
(fhandler_pipe::create_guard): Ditto.  Always mark the handle as inheritable.
(fhandler_pipe::is_slow): Return boolean value rather than numeric 1.
* pipe.cc (fhandler_pipe::fhandler_pipe): Always flag that we need fork fixup.
(fhandler_pipe::open): Don't pass security attributes to create_guard.
(fhandler_pipe::set_close_on_exec): Don't handle guard here.
(fhandler_pipe::close): Accommodate now-protected guard handle.
(fhandler_pipe::fixup_in_child): Don't proected read_state here.
(fhandler_pipe::fixup_after_exec): Close guard handle if close_on_exec.
(fhandler_pipe::fixup_after_fork): Don't bother with guard here.
(fhandler_pipe::dup): Don't set res to non-error prematurely.  Use boolean
values where appropriate.  Protect guard and read_state.
(fhandler_pipe::create): Don't call need_fork_fixup since it is now the
default.  Don't protect read_state or guard.
* pipe.cc (fhandler_base::ready_for_read): Use bool values for "avail".
* spawn.cc (spawn_guts): Set cygheap->pid_handle as inheritable when
protecting.
* select.cc (fhandler_pipe::ready_for_read): Actually get the guard mutex for
blocking reads.
2006-05-21 05:25:49 +00:00
Christopher Faylor
6118c524b0 * fhandler_tty.cc (fhandler_tty::close): Remove problematic hExeced guard. 2006-05-20 04:59:53 +00:00
Christopher Faylor
3b26b6a205 * fhandler_tty.cc (fhandler_tty_slave::open): Reinstate call to need_invisible
on first pty open.
2006-05-20 04:19:47 +00:00
Christopher Faylor
38f9b109b4 fix incorrect function name in old entry 2006-05-20 04:01:12 +00:00
Christopher Faylor
1160b21781 * fhandler_console.cc (fhandler_console::need_invisible): Allocate an invisible
window station when ctty != TTY_CONSOLE.
2006-05-19 00:32:36 +00:00
Danny Smith
01668fecd4 * mingwex/wcrtomb.c (wcrtomb_cp): Test (wc > 255) only if C locale.
Use supplied codepage as arg to WideCharToMultiByte.
2006-05-17 07:49:39 +00:00
Christopher Faylor
9fa8d227d4 * cygtls.cc (_cygtls::remove): Don't test for initialization since this
function will always be called when _my_tls is initialized.
* init.cc (dll_entry): Don't attempt to remove tls info if _my_tls is obviously
not even available.
2006-05-17 03:36:14 +00:00
Christopher Faylor
1e68a8ced0 correct changelog date 2006-05-16 03:24:26 +00:00
Christopher Faylor
562adf7890 * sigproc.cc (no_signals_available): Detect hwait_sig == INVALID_HANDLE_VALUE.
(wait_sig): Set hwait_sig to INVALID_HANDLE_VALUE on __SIGEXIT.
* cygtls.cc (_cygtls::init_thread): Zero entire _my_tls structure and no more.
* cygtls.h (_my_tls::padding): Delete.
(CYGTLS_PADSIZE): Redefine concept of padding to mean padding at the end of the
stack.
* dcrt0.cc (initialize_main_tls): Change return to void.
* gentls_offsets: Treat const specially, too.  Keep going after a '}' is found.
Change negative offset calculation to use CYGTLS_PADSIZE.
* init.cc (_my_oldfunc): New variable.
(threadfunc_fe): Use stored tls value for oldfunc rather than blindly writing
to the stack.
(munge_threadfunc): Set oldfunc in tls.
(dll_entry): Initialize tls allocation.
* tlsoffsets.h: Regenerate.
2006-05-16 03:14:24 +00:00
Christopher Faylor
a9e36321fd * ntdll.h (STATUS_INVALID_INFO_CLASS): Conditionalize. 2006-05-14 18:32:57 +00:00
Dimitri Papadopoulos
9385da4973 * include/rtutils.h (TraceDumpA,TraceDumpW,TracePutsA,TracePutsW)
(TraceRegisterA,TraceRegisterW,TraceVprintfA,TraceVprintfW): Define
	as macros.
	Thanks to:    Bruce M Simpson <bms_spc at sf dot net>
2006-05-12 18:09:15 +00:00
Dimitri Papadopoulos
ce4e2a866a * include/mprapi.h (MprAdminMIBBufferFree,MprAdminMIBEntryCreate)
(MprAdminMIBEntryDelete,MprAdminMIBEntryGet,MprAdminMIBEntryGetFirst)
	(MprAdminMIBEntryGetNext,MprAdminMIBEntrySet,MprAdminMIBGetTrapInfo)
	(MprAdminMIBServerConnect,MprAdminMIBServerDisconnect)
	(MprAdminMIBSetTrapInfo): Declare functions.
	Note: MprAdminMIBSetTrapInfo is missing from mprapi.def.
	(MIB_SERVER_HANDLE): New typedef.
	(MprConfigTransportSetInfo): Declare function.
	* lib/mprapi.def (MprSetupIpInIpInterfaceFriendlyNameEnum)
	(MprSetupIpInIpInterfaceFriendlyNameFree): Fix size.
2006-05-12 17:12:31 +00:00
Dimitri Papadopoulos
a9d6dd61c0 * lib/rtutils.def: New file. Generated on Windows XP.
(TracePrintf{AW},TracePrintfEx{AW}): Left out for now.
	* include/rtutils.h: New file.
	(TraceDump{AW},TracePuts{AW},TraceRegister{AW},TraceVprintf{AW}):
	Commented out, they're missing from rtutils.def.
2006-05-12 13:28:46 +00:00
Dimitri Papadopoulos
0146332359 * include/mprapi.h (MprInfoBlockAdd,MprInfoBlockFind)
(MprInfoBlockQuerySize,MprInfoBlockRemove,MprInfoBlockSet)
	(MprInfoCreate,MprInfoDelete,MprInfoDuplicate)
	(MprInfoRemoveAll): Declare functions.
2006-05-12 13:05:42 +00:00
Dimitri Papadopoulos
bdfe484ea1 * include/mprapi.h (MprConfigBufferFree,MprConfigGetFriendlyName)
(MprConfigGetGuidName,MprConfigInterfaceCreate)
	(MprConfigInterfaceDelete,MprConfigInterfaceEnum)
	(MprConfigInterfaceGetHandle,MprConfigInterfaceGetInfo)
	(MprConfigInterfaceSetInfo,MprConfigInterfaceTransportAdd)
	(MprConfigInterfaceTransportEnum,MprConfigInterfaceTransportGetHandle)
	(MprConfigInterfaceTransportGetInfo,MprConfigInterfaceTransportRemove)
	(MprConfigInterfaceTransportSetInfo,MprConfigServerBackup)
	(MprConfigServerConnect,MprConfigServerDisconnect)
	(MprConfigServerGetInfo,MprConfigServerInstall)
	(MprConfigServerRestore,MprConfigTransportCreate)
	(MprConfigTransportDelete,MprConfigTransportEnum)
	(MprConfigTransportGetHandle,MprConfigTransportGetInfo)
	(MprConfigTransportSetInfo): Declare functions.
2006-05-12 12:57:33 +00:00
Dimitri Papadopoulos
8595d0d7b8 * include/mprapi.h:(MprAdminBufferFree)
(MprAdminDeregisterConnectionNotification,MprAdminGetErrorString)
	(MprAdminInterfaceConnect,MprAdminInterfaceCreate)
	(MprAdminInterfaceDelete,MprAdminInterfaceDeviceGetInfo)
	(MprAdminInterfaceDeviceSetInfo,MprAdminInterfaceDisconnect)
	(MprAdminInterfaceEnum,MprAdminInterfaceGetCredentials)
	(MprAdminInterfaceGetCredentialsEx,MprAdminInterfaceGetHandle)
	(MprAdminInterfaceGetInfo,MprAdminInterfaceQueryUpdateResult)
	(MprAdminInterfaceSetCredentials,MprAdminInterfaceSetCredentialsEx)
	(MprAdminInterfaceSetInfo,MprAdminInterfaceTransportAdd)
	(MprAdminInterfaceTransportGetInfo,MprAdminInterfaceTransportRemove)
	(MprAdminInterfaceTransportSetInfo)
	(MprAdminInterfaceUpdatePhonebookInfo,MprAdminInterfaceUpdateRoutes)
	(MprAdminIsServiceRunning,MprAdminRegisterConnectionNotification)
	(MprAdminServerConnect,MprAdminServerDisconnect)
	(MprAdminServerGetCredentials,MprAdminServerGetInfo)
	(MprAdminServerSetCredentials,MprAdminTransportCreate)
	(MprAdminTransportGetInfo,MprAdminTransportSetInfo): Declare functions.
2006-05-12 12:33:37 +00:00
Dimitri Papadopoulos
28eba36967 * include/ipxtfflt.h: New file. 2006-05-12 11:55:45 +00:00
Dimitri Papadopoulos
a1c9200d10 * lib/mprapi.def: Regenerate on Windows XP.
Would need to be regenerated on Windows Server 2003.
2006-05-12 07:14:40 +00:00
Dimitri Papadopoulos
f5c9583cc6 * include/mprapi.h: Fix header guard. Cleanup.
(MprAdminAcceptNewConnection,MprAdminAcceptNewConnection2)
	(MprAdminAcceptNewLink,MprAdminAcceptReauthentication)
	(MprAdminConnectionHangupNotification)
	(MprAdminConnectionHangupNotification2)
	(MprAdminGetIpAddressForUser)(MprAdminInitializeDll)
	(MprAdminTerminateDll,MprAdminLinkHangupNotification)
	(MprAdminReleaseIpAddress): Declare functions.
2006-05-12 06:22:48 +00:00
Dimitri Papadopoulos
239ed4afff * include/ipifcons.h: Cleanup.
* include/ipxconst.h: Fix header guard.
	* include/ipxrtdef.h: include <ipxconst.h>.
2006-05-12 05:59:41 +00:00
Dimitri Papadopoulos
dfe2700797 * include/ipxrtdef.h: Cleanup.
(IPX_INTERFACE_INFO_TYPE,IPX_STATIC_ROUTE_INFO_TYPE)
	(IPX_STATIC_SERVICE_INFO_TYPE,IPX_SERVICE_FILTER_INFO_TYPE)
	(IPX_ROUTE_FILTER_INFO_TYPE,IPX_IN_TRAFFIC_FILTER_INFO_TYPE)
	(IPX_ADAPTER_INFO_TYPE,IPXWAN_INTERFACE_INFO_TYPE,IPX_GLOBAL_INFO_TYPE)
	(IPX_STATIC_NETBIOS_NAME_INFO_TYPE)
	(IPX_IN_TRAFFIC_FILTER_GLOBAL_INFO_TYPE)
	(IPX_OUT_TRAFFIC_FILTER_INFO_TYPE)
	(IPX_OUT_TRAFFIC_FILTER_GLOBAL_INFO_TYPE): Define.
	* include/routprot.h: Cleanup.
	(PROTO_IP_*,IPRTRMGR_PID,IPX_PROTOCOL_*): Define.
	* include/fltdefs.h: New file.
	* include/ipinfoid.h: New file.
2006-05-11 15:58:39 +00:00
Dimitri Papadopoulos
51d7d63178 * include/strmif.h (IAMAnalogVideoDecoder,IAMAudioInputMixer)
(IAMAudioRendererStats,IAMBufferNegotiation,IAMCameraControl)
	(IAMCertifiedOutputProtection): Add interfaces.
	* include/adsprop.h: New file.
	* include/cmnquery.h: New file.
	* include/dsadmin.h: New file.
	* include/dsclient.h: New file.
	* include/dsgetdc.h: New file.
	* include/dsquery.h: New file.
	* include/dsrole.h: New file.
	* include/ntdsapi.h: New file.
	* include/ntdsbcli.h: New file.
	* include/objsel.h: New file.
	Not finished. Just wanted to submit this before I'm disembarked
	from the project, so that the work isn't lost...
2006-05-11 09:53:34 +00:00
Brian Dessent
a72a9c190f * Makefile.in (clean): Also delete *.dbg. 2006-05-10 22:01:57 +00:00
Dimitri Papadopoulos
d7046e80d7 * include/qedit.h (DEXTER_*,SCompFmt0): Add structures.
(DEXTERF_TRACK_SEARCH_FLAGS,TIMELINE_MAJOR_TYPE): Add enums.
	(CONNECTF_DYNAMIC_*,SFN_VALIDATEF_*,RESIZEF_*): Define.
2006-05-10 09:35:26 +00:00