diff options
author | Christopher Faylor <me@cgf.cx> | 2002-10-15 07:03:45 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2002-10-15 07:03:45 +0000 |
commit | fdb28b5e5f813721add3ba2b261dfe78f3b895cb (patch) | |
tree | 8bf842ee31e89bf925b36aaa4c882d77cc3bb544 /winsup/cygwin/shared_info.h | |
parent | 54030e2146f80ba055f4b7efa20467beab1487e9 (diff) | |
download | cygnal-fdb28b5e5f813721add3ba2b261dfe78f3b895cb.tar.gz cygnal-fdb28b5e5f813721add3ba2b261dfe78f3b895cb.tar.bz2 cygnal-fdb28b5e5f813721add3ba2b261dfe78f3b895cb.zip |
* child_info.h (CURR_CHILD_INFO_MAGIC): Reset.
(child_info_fork::mount_table): Remove.
(child_info_fork::myself_addr): Remove.
* fork.cc (fork_child): Don't set either of the above.
* dcrt0.cc (dll_crt0_1): Call memory_init as early as possible.
* fhandler_console.cc (console_state): Move to shared_info.h.
(fhandler_console::get_tty_stuff): Reflect open_shared arg change.
* pinfo.cc (myself_addr): Remove definition.
(pinfo::init): Get myself address from open_shared.
* pinfo.h (myself_addr): Remove declaration.
* shared.cc (open_shared): Rework so that known shared memory locations are
protected. Take shared memory type as fifth argument.
(memory_init): Reflect open_shared arg change.
* shared_info.h (shared_locations): New enum.
(console_state): Move here.
(open_shared): Reflect open_shared arg change in declaration.
Diffstat (limited to 'winsup/cygwin/shared_info.h')
-rw-r--r-- | winsup/cygwin/shared_info.h | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/winsup/cygwin/shared_info.h b/winsup/cygwin/shared_info.h index 232575bc7..a39275e49 100644 --- a/winsup/cygwin/shared_info.h +++ b/winsup/cygwin/shared_info.h @@ -161,6 +161,14 @@ extern shared_info *cygwin_shared; extern mount_info *mount_table; extern HANDLE cygwin_mount_h; +enum shared_locations +{ + SH_CYGWIN_SHARED, + SH_MOUNT_TABLE, + SH_SHARED_CONSOLE, + SH_MYSELF, + SH_TOTAL_SIZE +}; void __stdcall memory_init (); #define shared_align_past(p) \ @@ -169,8 +177,14 @@ void __stdcall memory_init (); system_info.dwAllocationGranularity))) #define cygwin_shared_address ((void *) 0xa000000) -#define mount_table_address shared_align_past (cygwin_shared) -#define cygheap_address shared_align_past ((mount_info *) shared_align_past (cygwin_shared)) + +#ifdef FHDEVN +struct console_state +{ + tty_min tty_min_state; + dev_console dev_state; +}; +#endif char *__stdcall shared_name (const char *, int); -void *__stdcall open_shared (const char *name, int n, HANDLE &shared_h, DWORD size, void *addr); +void *__stdcall open_shared (const char *name, int n, HANDLE &shared_h, DWORD size, shared_locations); |