From aa77ee77968808b36029dc307178ada87967bb16 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Herm=C3=A8s=20B=C3=A9lusca-Ma=C3=AFto?= Date: Wed, 7 Nov 2012 21:04:47 +0000 Subject: [PATCH] [CONSRV] Add a new header containing per-process console-specific structure CSRSS_CON_PROCESS_DATA (it is stored inside one of the element of the ServerData array inside the CSR_PROCESS structure). It was deleted from csrsrv.h in revision r57673 and reappears here. Also add a macro in order to facilitate its access inside consrv. svn path=/branches/ros-csrss/; revision=57685 --- include/reactos/subsys/win/console.h | 34 ++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 include/reactos/subsys/win/console.h diff --git a/include/reactos/subsys/win/console.h b/include/reactos/subsys/win/console.h new file mode 100644 index 00000000000..60ae7377dee --- /dev/null +++ b/include/reactos/subsys/win/console.h @@ -0,0 +1,34 @@ +/* + * COPYRIGHT: See COPYING in the top level directory + * PROJECT: ReactOS Client/Server Runtime SubSystem + * FILE: include/reactos/subsys/win/console.h + * PURPOSE: Public definitions for Console API Clients + * PROGRAMMERS: Hermes Belusca-Maito (hermes.belusca@sfr.fr) + */ + +#ifndef _CONSOLE_H +#define _CONSOLE_H + +#pragma once + +#define ConsoleGetPerProcessData(pcsrprocess) \ + ((PCONSOLE_PROCESS_DATA)((pcsrprocess)->ServerData[CONSRV_SERVERDLL_INDEX])) + + +typedef struct _CONSOLE_PROCESS_DATA +{ + LIST_ENTRY ConsoleLink; + PCSR_PROCESS Process; // Parent process. + HANDLE ConsoleEvent; + /* PCSRSS_CONSOLE */ struct tagCSRSS_CONSOLE* Console; + /* PCSRSS_CONSOLE */ struct tagCSRSS_CONSOLE* ParentConsole; + BOOL bInheritHandles; + RTL_CRITICAL_SECTION HandleTableLock; + ULONG HandleTableSize; + /* PCSRSS_HANDLE */ struct _CSRSS_HANDLE* HandleTable; // Is it a length-varying table or length-fixed ?? + LPTHREAD_START_ROUTINE CtrlDispatcher; +} CONSOLE_PROCESS_DATA, *PCONSOLE_PROCESS_DATA; + +#endif // _CONSOLE_H + +/* EOF */