* external.cc (cygwin_internal): Initialize various internal settings if

required to allow use of some things from user loaded DLL.
(CW_STRACE_ON): Add new feature.
(CW_CYGWIN_PID_TO_WINPID): Ditto.
* pinfo.cc (set_myself): Call "strace.hello" to initiate possible strace
session.
(pinfo::init): Guard against dereferencing uninitialized myself.
* sigproc.cc (wait_sig): Call strace.hello() when __SIGTRACE "signal" received.
* strace.cc (strace::hello): New method.
* wincap.cc (wincapc::init): Avoid initializing if already initialized.
* wincap.h (wincapc::wincapc): New method.
* include/sys/cygwin.h: Add new CW_ enums.  Kludge typedefs of {g,u}id_t if
required.
* strace.h (strace::hello): Declare new method.
This commit is contained in:
Christopher Faylor
2002-01-29 02:02:03 +00:00
parent a489b37643
commit 494a66d9c5
9 changed files with 94 additions and 25 deletions

View File

@ -66,7 +66,10 @@ typedef enum
CW_INIT_EXCEPTIONS,
CW_GET_CYGDRIVE_INFO,
CW_SET_CYGWIN_REGISTRY_NAME,
CW_GET_CYGWIN_REGISTRY_NAME
CW_GET_CYGWIN_REGISTRY_NAME,
CW_STRACE_ON,
CW_STRACE_OFF,
CW_CYGWIN_PID_TO_WINPID
} cygwin_getinfo_types;
#define CW_NEXTPID 0x80000000 // or with pid to get next one
@ -205,6 +208,11 @@ extern int cygwin_attach_handle_to_fd (char *, int, HANDLE, mode_t, DWORD);
#define TTY_CONSOLE 0x40000000
#ifndef _SYS_TYPES_H
typedef short uid_t;
typedef short gid_t;
#endif
struct external_pinfo
{
pid_t pid;