summaryrefslogtreecommitdiff
path: root/winsup/cygwin/external.h
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/cygwin/external.h')
-rw-r--r--winsup/cygwin/external.h50
1 files changed, 50 insertions, 0 deletions
diff --git a/winsup/cygwin/external.h b/winsup/cygwin/external.h
new file mode 100644
index 00000000000..745c6a81b7d
--- /dev/null
+++ b/winsup/cygwin/external.h
@@ -0,0 +1,50 @@
+/* external.h: interface to Cygwin internals from external programs.
+
+ Copyright 1996, 1997, 1998, 1999, 2000 Cygnus Solutions.
+
+This file is part of Cygwin.
+
+This software is a copyrighted work licensed under the terms of the
+Cygwin license. Please consult the file "CYGWIN_LICENSE" for
+details. */
+
+typedef enum
+ {
+ CW_LOCK_PINFO,
+ CW_UNLOCK_PINFO,
+ CW_GETTHREADNAME,
+ CW_GETPINFO,
+ CW_SETPINFO,
+ CW_SETTHREADNAME,
+ CW_GETVERSIONINFO,
+ CW_READ_V1_MOUNT_TABLES
+ } cygwin_getinfo_types;
+
+struct external_pinfo
+ {
+ pid_t pid;
+ pid_t ppid;
+ HANDLE hProcess;
+ DWORD dwProcessId, dwSpawnedProcessId;
+ uid_t uid;
+ gid_t gid;
+ pid_t pgid;
+ pid_t sid;
+ int ctty;
+ mode_t umask;
+
+ long start_time;
+ struct rusage rusage_self;
+ struct rusage rusage_children;
+
+ char progname[MAX_PATH];
+
+ DWORD strace_mask;
+ HANDLE strace_file;
+
+ DWORD process_state;
+};
+
+extern "C" DWORD cygwin_internal (cygwin_getinfo_types, ...);
+
+#define CW_NEXTPID 0x80000000 // or with pid to get next one