mirror of
https://github.com/reactos/reactos.git
synced 2025-08-05 19:12:57 +00:00
[CONSRV]
- Use the new PCONSOLE_PROCESS_DATA type instead of PCSR_PROCESS, for accessing console-specific fields inside a console structure (the code modifications inside these functions will follow in the next commits). - Remove unneeded included header files in consrv.h. - Use a DLL instance in order to facilitate the access to win32 resources. - Activate the declaration of server apis (or rename existing ones to the Windows scheme from the http://j00ru.vexillium.org/csrss_list/api_list.html#Windows_2k3 list). - Comment the Win32CsrValidateBuffer helper (because it should be replaced by the usage of CsrValidateMessageBuffer). - Add the list of the old APIs (just for me, to remember at the end to check that I didn't forget ome of them during the process of moving / renaming). svn path=/branches/ros-csrss/; revision=57686
This commit is contained in:
parent
aa77ee7796
commit
34086f2971
4 changed files with 169 additions and 59 deletions
|
@ -136,13 +136,15 @@ typedef struct ConsoleInput_t
|
||||||
#define ConioResizeBuffer(Console, Buff, Size) (Console)->Vtbl->ResizeBuffer(Console, Buff, Size)
|
#define ConioResizeBuffer(Console, Buff, Size) (Console)->Vtbl->ResizeBuffer(Console, Buff, Size)
|
||||||
|
|
||||||
/* console.c */
|
/* console.c */
|
||||||
NTSTATUS FASTCALL ConioConsoleFromProcessData(PCSR_PROCESS ProcessData, PCSRSS_CONSOLE *Console);
|
NTSTATUS FASTCALL ConioConsoleFromProcessData(PCONSOLE_PROCESS_DATA ProcessData,
|
||||||
|
PCSRSS_CONSOLE *Console);
|
||||||
VOID WINAPI ConioDeleteConsole(Object_t *Object);
|
VOID WINAPI ConioDeleteConsole(Object_t *Object);
|
||||||
VOID WINAPI CsrInitConsoleSupport(VOID);
|
VOID WINAPI CsrInitConsoleSupport(VOID);
|
||||||
VOID FASTCALL ConioPause(PCSRSS_CONSOLE Console, UINT Flags);
|
VOID FASTCALL ConioPause(PCSRSS_CONSOLE Console, UINT Flags);
|
||||||
VOID FASTCALL ConioUnpause(PCSRSS_CONSOLE Console, UINT Flags);
|
VOID FASTCALL ConioUnpause(PCSRSS_CONSOLE Console, UINT Flags);
|
||||||
VOID FASTCALL ConioConsoleCtrlEvent(DWORD Event, PCSR_PROCESS ProcessData);
|
VOID FASTCALL ConioConsoleCtrlEvent(DWORD Event, PCONSOLE_PROCESS_DATA ProcessData);
|
||||||
VOID FASTCALL ConioConsoleCtrlEventTimeout(DWORD Event, PCSR_PROCESS ProcessData,
|
VOID FASTCALL ConioConsoleCtrlEventTimeout(DWORD Event,
|
||||||
|
PCONSOLE_PROCESS_DATA ProcessData,
|
||||||
DWORD Timeout);
|
DWORD Timeout);
|
||||||
|
|
||||||
/* coninput.c */
|
/* coninput.c */
|
||||||
|
|
|
@ -21,11 +21,8 @@
|
||||||
#include <csr/csrsrv.h>
|
#include <csr/csrsrv.h>
|
||||||
|
|
||||||
/* CONSOLE Headers */
|
/* CONSOLE Headers */
|
||||||
|
#include <win/console.h>
|
||||||
#include <win/conmsg.h>
|
#include <win/conmsg.h>
|
||||||
// #include <win/base.h>
|
|
||||||
|
|
||||||
//#include "guiconsole.h"
|
|
||||||
//#include "tuiconsole.h"
|
|
||||||
|
|
||||||
#include "resource.h"
|
#include "resource.h"
|
||||||
|
|
||||||
|
@ -33,10 +30,13 @@
|
||||||
#include "console.h"
|
#include "console.h"
|
||||||
|
|
||||||
|
|
||||||
|
extern HINSTANCE ConSrvDllInstance;
|
||||||
extern HANDLE ConSrvHeap;
|
extern HANDLE ConSrvHeap;
|
||||||
// extern HANDLE BaseSrvSharedHeap;
|
// extern HANDLE BaseSrvSharedHeap;
|
||||||
// extern PBASE_STATIC_SERVER_DATA BaseStaticServerData;
|
// extern PBASE_STATIC_SERVER_DATA BaseStaticServerData;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
typedef struct Object_tt
|
typedef struct Object_tt
|
||||||
{
|
{
|
||||||
LONG Type;
|
LONG Type;
|
||||||
|
@ -47,6 +47,16 @@ typedef struct Object_tt
|
||||||
} Object_t;
|
} Object_t;
|
||||||
|
|
||||||
|
|
||||||
|
typedef struct _CSRSS_HANDLE
|
||||||
|
{
|
||||||
|
Object_t *Object;
|
||||||
|
DWORD Access;
|
||||||
|
BOOL Inheritable;
|
||||||
|
DWORD ShareMode;
|
||||||
|
} CSRSS_HANDLE, *PCSRSS_HANDLE;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* alias.c */
|
/* alias.c */
|
||||||
CSR_API(SrvAddConsoleAlias);
|
CSR_API(SrvAddConsoleAlias);
|
||||||
CSR_API(SrvGetConsoleAlias);
|
CSR_API(SrvGetConsoleAlias);
|
||||||
|
@ -56,34 +66,31 @@ CSR_API(SrvGetConsoleAliasExes);
|
||||||
CSR_API(SrvGetConsoleAliasExesLength);
|
CSR_API(SrvGetConsoleAliasExesLength);
|
||||||
|
|
||||||
/* coninput.c */
|
/* coninput.c */
|
||||||
CSR_API(SrvReadConsole);
|
|
||||||
CSR_API(CsrReadInputEvent);
|
|
||||||
CSR_API(SrvFlushConsoleInputBuffer);
|
|
||||||
CSR_API(SrvGetConsoleNumberOfInputEvents);
|
|
||||||
CSR_API(SrvGetConsoleInput);
|
CSR_API(SrvGetConsoleInput);
|
||||||
CSR_API(SrvWriteConsoleInput);
|
CSR_API(SrvWriteConsoleInput);
|
||||||
|
CSR_API(SrvReadConsole);
|
||||||
|
CSR_API(SrvFlushConsoleInputBuffer);
|
||||||
|
CSR_API(SrvGetConsoleNumberOfInputEvents);
|
||||||
|
|
||||||
/* conoutput.c */
|
/* conoutput.c */
|
||||||
|
CSR_API(SrvReadConsoleOutput);
|
||||||
|
CSR_API(SrvWriteConsoleOutput);
|
||||||
|
CSR_API(SrvReadConsoleOutputString);
|
||||||
|
CSR_API(SrvWriteConsoleOutputString);
|
||||||
|
CSR_API(SrvFillConsoleOutput);
|
||||||
CSR_API(SrvWriteConsole);
|
CSR_API(SrvWriteConsole);
|
||||||
CSR_API(SrvGetConsoleScreenBufferInfo);
|
CSR_API(SrvSetConsoleCursorPosition);
|
||||||
CSR_API(SrvSetConsoleCursor);
|
|
||||||
CSR_API(CsrWriteConsoleOutputChar);
|
|
||||||
CSR_API(CsrFillOutputChar);
|
|
||||||
CSR_API(CsrWriteConsoleOutputAttrib);
|
|
||||||
CSR_API(CsrFillOutputAttrib);
|
|
||||||
CSR_API(SrvGetConsoleCursorInfo);
|
CSR_API(SrvGetConsoleCursorInfo);
|
||||||
CSR_API(SrvSetConsoleCursorInfo);
|
CSR_API(SrvSetConsoleCursorInfo);
|
||||||
CSR_API(CsrSetTextAttrib);
|
CSR_API(SrvSetConsoleTextAttribute);
|
||||||
CSR_API(SrvCreateConsoleScreenBuffer);
|
CSR_API(SrvCreateConsoleScreenBuffer);
|
||||||
|
CSR_API(SrvGetConsoleScreenBufferInfo);
|
||||||
CSR_API(SrvSetConsoleActiveScreenBuffer);
|
CSR_API(SrvSetConsoleActiveScreenBuffer);
|
||||||
CSR_API(SrvWriteConsoleOutput);
|
|
||||||
CSR_API(SrvScrollConsoleScreenBuffer);
|
CSR_API(SrvScrollConsoleScreenBuffer);
|
||||||
CSR_API(CsrReadConsoleOutputChar);
|
|
||||||
CSR_API(CsrReadConsoleOutputAttrib);
|
|
||||||
CSR_API(SrvReadConsoleOutput);
|
|
||||||
CSR_API(SrvSetConsoleScreenBufferSize);
|
CSR_API(SrvSetConsoleScreenBufferSize);
|
||||||
|
|
||||||
/* console.c */
|
/* console.c */
|
||||||
|
CSR_API(SrvOpenConsole);
|
||||||
CSR_API(SrvAllocConsole);
|
CSR_API(SrvAllocConsole);
|
||||||
CSR_API(SrvFreeConsole);
|
CSR_API(SrvFreeConsole);
|
||||||
CSR_API(SrvSetConsoleMode);
|
CSR_API(SrvSetConsoleMode);
|
||||||
|
@ -96,36 +103,34 @@ CSR_API(SrvGetConsoleWindow);
|
||||||
CSR_API(SrvSetConsoleIcon);
|
CSR_API(SrvSetConsoleIcon);
|
||||||
CSR_API(SrvGetConsoleCP);
|
CSR_API(SrvGetConsoleCP);
|
||||||
CSR_API(SrvSetConsoleCP);
|
CSR_API(SrvSetConsoleCP);
|
||||||
CSR_API(CsrGetConsoleOutputCodePage);
|
|
||||||
CSR_API(CsrSetConsoleOutputCodePage);
|
|
||||||
CSR_API(SrvGetConsoleProcessList);
|
CSR_API(SrvGetConsoleProcessList);
|
||||||
CSR_API(SrvGenerateConsoleCtrlEvent);
|
CSR_API(SrvGenerateConsoleCtrlEvent);
|
||||||
CSR_API(SrvGetConsoleSelectionInfo);
|
CSR_API(SrvGetConsoleSelectionInfo);
|
||||||
|
|
||||||
/* handle.c */
|
/* handle.c */
|
||||||
CSR_API(CsrGetHandle);
|
|
||||||
CSR_API(SrvCloseHandle);
|
CSR_API(SrvCloseHandle);
|
||||||
CSR_API(SrvVerifyConsoleIoHandle);
|
CSR_API(SrvVerifyConsoleIoHandle);
|
||||||
CSR_API(SrvDuplicateHandle);
|
CSR_API(SrvDuplicateHandle);
|
||||||
CSR_API(CsrGetInputWaitHandle);
|
CSR_API(CsrGetInputWaitHandle);
|
||||||
|
|
||||||
NTSTATUS FASTCALL Win32CsrInsertObject(PCSR_PROCESS ProcessData,
|
NTSTATUS NTAPI ConsoleNewProcess(PCSR_PROCESS SourceProcess,
|
||||||
|
PCSR_PROCESS TargetProcess);
|
||||||
|
VOID NTAPI Win32CsrReleaseConsole(PCSR_PROCESS Process);
|
||||||
|
|
||||||
|
NTSTATUS FASTCALL Win32CsrInsertObject(PCONSOLE_PROCESS_DATA ProcessData,
|
||||||
PHANDLE Handle,
|
PHANDLE Handle,
|
||||||
Object_t *Object,
|
Object_t *Object,
|
||||||
DWORD Access,
|
DWORD Access,
|
||||||
BOOL Inheritable,
|
BOOL Inheritable,
|
||||||
DWORD ShareMode);
|
DWORD ShareMode);
|
||||||
NTSTATUS FASTCALL Win32CsrLockObject(PCSR_PROCESS ProcessData,
|
NTSTATUS FASTCALL Win32CsrLockObject(PCONSOLE_PROCESS_DATA ProcessData,
|
||||||
HANDLE Handle,
|
HANDLE Handle,
|
||||||
Object_t **Object,
|
Object_t **Object,
|
||||||
DWORD Access,
|
DWORD Access,
|
||||||
long Type);
|
LONG Type);
|
||||||
VOID FASTCALL Win32CsrUnlockObject(Object_t *Object);
|
VOID FASTCALL Win32CsrUnlockObject(Object_t *Object);
|
||||||
NTSTATUS FASTCALL Win32CsrReleaseObject(PCSR_PROCESS ProcessData,
|
NTSTATUS FASTCALL Win32CsrReleaseObject(PCONSOLE_PROCESS_DATA ProcessData,
|
||||||
HANDLE Object);
|
HANDLE Handle);
|
||||||
VOID WINAPI Win32CsrReleaseConsole(PCSR_PROCESS ProcessData);
|
|
||||||
NTSTATUS WINAPI Win32CsrDuplicateHandleTable(PCSR_PROCESS SourceProcessData,
|
|
||||||
PCSR_PROCESS TargetProcessData);
|
|
||||||
|
|
||||||
/* lineinput.c */
|
/* lineinput.c */
|
||||||
CSR_API(SrvGetConsoleCommandHistoryLength);
|
CSR_API(SrvGetConsoleCommandHistoryLength);
|
||||||
|
@ -136,10 +141,12 @@ CSR_API(SrvGetConsoleHistory);
|
||||||
CSR_API(SrvSetConsoleHistory);
|
CSR_API(SrvSetConsoleHistory);
|
||||||
|
|
||||||
/* server.c */
|
/* server.c */
|
||||||
|
#if 0
|
||||||
BOOL FASTCALL Win32CsrValidateBuffer(PCSR_PROCESS ProcessData,
|
BOOL FASTCALL Win32CsrValidateBuffer(PCSR_PROCESS ProcessData,
|
||||||
PVOID Buffer,
|
PVOID Buffer,
|
||||||
SIZE_T NumElements,
|
SIZE_T NumElements,
|
||||||
SIZE_T ElementSize);
|
SIZE_T ElementSize);
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif // __CONSRV_H__
|
#endif // __CONSRV_H__
|
||||||
|
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
#define NDEBUG
|
#define NDEBUG
|
||||||
#include <debug.h>
|
#include <debug.h>
|
||||||
|
|
||||||
HANDLE DllHandle = NULL;
|
HINSTANCE ConSrvDllInstance = NULL;
|
||||||
// HANDLE BaseApiPort = NULL;
|
// HANDLE BaseApiPort = NULL;
|
||||||
|
|
||||||
/* Memory */
|
/* Memory */
|
||||||
|
@ -25,14 +25,14 @@ HANDLE ConSrvHeap = NULL; // Our own heap.
|
||||||
// Some names are also deduced from the subsystems/win32/csrss/csrsrv/server.c ones.
|
// Some names are also deduced from the subsystems/win32/csrss/csrsrv/server.c ones.
|
||||||
PCSR_API_ROUTINE ConsoleServerApiDispatchTable[ConsolepMaxApiNumber] =
|
PCSR_API_ROUTINE ConsoleServerApiDispatchTable[ConsolepMaxApiNumber] =
|
||||||
{
|
{
|
||||||
// SrvOpenConsole,
|
SrvOpenConsole,
|
||||||
SrvGetConsoleInput,
|
SrvGetConsoleInput,
|
||||||
SrvWriteConsoleInput,
|
SrvWriteConsoleInput,
|
||||||
SrvReadConsoleOutput,
|
SrvReadConsoleOutput,
|
||||||
SrvWriteConsoleOutput,
|
SrvWriteConsoleOutput,
|
||||||
// SrvReadConsoleOutputString,
|
SrvReadConsoleOutputString,
|
||||||
// SrvWriteConsoleOutputString,
|
SrvWriteConsoleOutputString,
|
||||||
// SrvFillConsoleOutput,
|
SrvFillConsoleOutput,
|
||||||
SrvGetConsoleMode,
|
SrvGetConsoleMode,
|
||||||
// SrvGetConsoleNumberOfFonts,
|
// SrvGetConsoleNumberOfFonts,
|
||||||
SrvGetConsoleNumberOfInputEvents,
|
SrvGetConsoleNumberOfInputEvents,
|
||||||
|
@ -47,11 +47,11 @@ PCSR_API_ROUTINE ConsoleServerApiDispatchTable[ConsolepMaxApiNumber] =
|
||||||
SrvFlushConsoleInputBuffer,
|
SrvFlushConsoleInputBuffer,
|
||||||
// SrvGetLargestConsoleWindowSize,
|
// SrvGetLargestConsoleWindowSize,
|
||||||
SrvSetConsoleScreenBufferSize,
|
SrvSetConsoleScreenBufferSize,
|
||||||
// SrvSetConsoleCursorPosition,
|
SrvSetConsoleCursorPosition,
|
||||||
SrvSetConsoleCursorInfo,
|
SrvSetConsoleCursorInfo,
|
||||||
// SrvSetConsoleWindowInfo,
|
// SrvSetConsoleWindowInfo,
|
||||||
SrvScrollConsoleScreenBuffer,
|
SrvScrollConsoleScreenBuffer,
|
||||||
// SrvSetConsoleTextAttribute,
|
SrvSetConsoleTextAttribute,
|
||||||
// SrvSetConsoleFont,
|
// SrvSetConsoleFont,
|
||||||
SrvSetConsoleIcon,
|
SrvSetConsoleIcon,
|
||||||
SrvReadConsole,
|
SrvReadConsole,
|
||||||
|
@ -68,7 +68,7 @@ PCSR_API_ROUTINE ConsoleServerApiDispatchTable[ConsolepMaxApiNumber] =
|
||||||
SrvCreateConsoleScreenBuffer,
|
SrvCreateConsoleScreenBuffer,
|
||||||
// SrvInvalidateBitMapRect,
|
// SrvInvalidateBitMapRect,
|
||||||
// SrvVDMConsoleOperation,
|
// SrvVDMConsoleOperation,
|
||||||
SrvSetConsoleCursor,
|
// SrvSetConsoleCursor,
|
||||||
// SrvShowConsoleCursor,
|
// SrvShowConsoleCursor,
|
||||||
// SrvConsoleMenuControl,
|
// SrvConsoleMenuControl,
|
||||||
// SrvSetConsolePalette,
|
// SrvSetConsolePalette,
|
||||||
|
@ -116,14 +116,14 @@ PCSR_API_ROUTINE ConsoleServerApiDispatchTable[ConsolepMaxApiNumber] =
|
||||||
|
|
||||||
BOOLEAN ConsoleServerApiServerValidTable[ConsolepMaxApiNumber] =
|
BOOLEAN ConsoleServerApiServerValidTable[ConsolepMaxApiNumber] =
|
||||||
{
|
{
|
||||||
// FALSE, // SrvOpenConsole,
|
FALSE, // SrvOpenConsole,
|
||||||
FALSE, // SrvGetConsoleInput,
|
FALSE, // SrvGetConsoleInput,
|
||||||
FALSE, // SrvWriteConsoleInput,
|
FALSE, // SrvWriteConsoleInput,
|
||||||
FALSE, // SrvReadConsoleOutput,
|
FALSE, // SrvReadConsoleOutput,
|
||||||
FALSE, // SrvWriteConsoleOutput,
|
FALSE, // SrvWriteConsoleOutput,
|
||||||
// FALSE, // SrvReadConsoleOutputString,
|
FALSE, // SrvReadConsoleOutputString,
|
||||||
// FALSE, // SrvWriteConsoleOutputString,
|
FALSE, // SrvWriteConsoleOutputString,
|
||||||
// FALSE, // SrvFillConsoleOutput,
|
FALSE, // SrvFillConsoleOutput,
|
||||||
FALSE, // SrvGetConsoleMode,
|
FALSE, // SrvGetConsoleMode,
|
||||||
// FALSE, // SrvGetConsoleNumberOfFonts,
|
// FALSE, // SrvGetConsoleNumberOfFonts,
|
||||||
FALSE, // SrvGetConsoleNumberOfInputEvents,
|
FALSE, // SrvGetConsoleNumberOfInputEvents,
|
||||||
|
@ -138,11 +138,11 @@ BOOLEAN ConsoleServerApiServerValidTable[ConsolepMaxApiNumber] =
|
||||||
FALSE, // SrvFlushConsoleInputBuffer,
|
FALSE, // SrvFlushConsoleInputBuffer,
|
||||||
// FALSE, // SrvGetLargestConsoleWindowSize,
|
// FALSE, // SrvGetLargestConsoleWindowSize,
|
||||||
FALSE, // SrvSetConsoleScreenBufferSize,
|
FALSE, // SrvSetConsoleScreenBufferSize,
|
||||||
// FALSE, // SrvSetConsoleCursorPosition,
|
FALSE, // SrvSetConsoleCursorPosition,
|
||||||
FALSE, // SrvSetConsoleCursorInfo,
|
FALSE, // SrvSetConsoleCursorInfo,
|
||||||
// FALSE, // SrvSetConsoleWindowInfo,
|
// FALSE, // SrvSetConsoleWindowInfo,
|
||||||
FALSE, // SrvScrollConsoleScreenBuffer,
|
FALSE, // SrvScrollConsoleScreenBuffer,
|
||||||
// FALSE, // SrvSetConsoleTextAttribute,
|
FALSE, // SrvSetConsoleTextAttribute,
|
||||||
// FALSE, // SrvSetConsoleFont,
|
// FALSE, // SrvSetConsoleFont,
|
||||||
FALSE, // SrvSetConsoleIcon,
|
FALSE, // SrvSetConsoleIcon,
|
||||||
FALSE, // SrvReadConsole,
|
FALSE, // SrvReadConsole,
|
||||||
|
@ -159,7 +159,7 @@ BOOLEAN ConsoleServerApiServerValidTable[ConsolepMaxApiNumber] =
|
||||||
FALSE, // SrvCreateConsoleScreenBuffer,
|
FALSE, // SrvCreateConsoleScreenBuffer,
|
||||||
// FALSE, // SrvInvalidateBitMapRect,
|
// FALSE, // SrvInvalidateBitMapRect,
|
||||||
// FALSE, // SrvVDMConsoleOperation,
|
// FALSE, // SrvVDMConsoleOperation,
|
||||||
FALSE, // SrvSetConsoleCursor,
|
// FALSE, // SrvSetConsoleCursor,
|
||||||
// FALSE, // SrvShowConsoleCursor,
|
// FALSE, // SrvShowConsoleCursor,
|
||||||
// FALSE, // SrvConsoleMenuControl,
|
// FALSE, // SrvConsoleMenuControl,
|
||||||
// FALSE, // SrvSetConsolePalette,
|
// FALSE, // SrvSetConsolePalette,
|
||||||
|
@ -209,14 +209,14 @@ BOOLEAN ConsoleServerApiServerValidTable[ConsolepMaxApiNumber] =
|
||||||
|
|
||||||
PCHAR ConsoleServerApiNameTable[ConsolepMaxApiNumber] =
|
PCHAR ConsoleServerApiNameTable[ConsolepMaxApiNumber] =
|
||||||
{
|
{
|
||||||
// "OpenConsole",
|
"OpenConsole",
|
||||||
"GetConsoleInput",
|
"GetConsoleInput",
|
||||||
"WriteConsoleInput",
|
"WriteConsoleInput",
|
||||||
"ReadConsoleOutput",
|
"ReadConsoleOutput",
|
||||||
"WriteConsoleOutput",
|
"WriteConsoleOutput",
|
||||||
// "ReadConsoleOutputString",
|
"ReadConsoleOutputString",
|
||||||
// "WriteConsoleOutputString",
|
"WriteConsoleOutputString",
|
||||||
// "FillConsoleOutput",
|
"FillConsoleOutput",
|
||||||
"GetConsoleMode",
|
"GetConsoleMode",
|
||||||
// "GetConsoleNumberOfFonts",
|
// "GetConsoleNumberOfFonts",
|
||||||
"GetConsoleNumberOfInputEvents",
|
"GetConsoleNumberOfInputEvents",
|
||||||
|
@ -231,11 +231,11 @@ PCHAR ConsoleServerApiNameTable[ConsolepMaxApiNumber] =
|
||||||
"FlushConsoleInputBuffer",
|
"FlushConsoleInputBuffer",
|
||||||
// "GetLargestConsoleWindowSize",
|
// "GetLargestConsoleWindowSize",
|
||||||
"SetConsoleScreenBufferSize",
|
"SetConsoleScreenBufferSize",
|
||||||
// "SetConsoleCursorPosition",
|
"SetConsoleCursorPosition",
|
||||||
"SetConsoleCursorInfo",
|
"SetConsoleCursorInfo",
|
||||||
// "SetConsoleWindowInfo",
|
// "SetConsoleWindowInfo",
|
||||||
"ScrollConsoleScreenBuffer",
|
"ScrollConsoleScreenBuffer",
|
||||||
// "SetConsoleTextAttribute",
|
"SetConsoleTextAttribute",
|
||||||
// "SetConsoleFont",
|
// "SetConsoleFont",
|
||||||
"SetConsoleIcon",
|
"SetConsoleIcon",
|
||||||
"ReadConsole",
|
"ReadConsole",
|
||||||
|
@ -252,7 +252,7 @@ PCHAR ConsoleServerApiNameTable[ConsolepMaxApiNumber] =
|
||||||
"CreateConsoleScreenBuffer",
|
"CreateConsoleScreenBuffer",
|
||||||
// "InvalidateBitMapRect",
|
// "InvalidateBitMapRect",
|
||||||
// "VDMConsoleOperation",
|
// "VDMConsoleOperation",
|
||||||
"SetConsoleCursor",
|
// "SetConsoleCursor",
|
||||||
// "ShowConsoleCursor",
|
// "ShowConsoleCursor",
|
||||||
// "ConsoleMenuControl",
|
// "ConsoleMenuControl",
|
||||||
// "SetConsolePalette",
|
// "SetConsolePalette",
|
||||||
|
@ -301,6 +301,106 @@ PCHAR ConsoleServerApiNameTable[ConsolepMaxApiNumber] =
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
PCSR_API_ROUTINE Win32CsrApiDefinitions[] =
|
||||||
|
{
|
||||||
|
CsrGetHandle,
|
||||||
|
CsrGetHandle,
|
||||||
|
CsrCloseHandle,
|
||||||
|
CsrVerifyHandle,
|
||||||
|
CsrDuplicateHandle,
|
||||||
|
CsrGetInputWaitHandle,
|
||||||
|
CsrFillOutputChar,
|
||||||
|
CsrReadInputEvent,
|
||||||
|
CsrWriteConsoleOutputChar,
|
||||||
|
CsrWriteConsoleOutputAttrib,
|
||||||
|
CsrFillOutputAttrib,
|
||||||
|
CsrSetTextAttrib,
|
||||||
|
CsrWriteConsoleOutput,
|
||||||
|
CsrFlushInputBuffer,
|
||||||
|
CsrReadConsoleOutputChar,
|
||||||
|
CsrReadConsoleOutputAttrib,
|
||||||
|
CsrExitReactos,
|
||||||
|
CsrHardwareStateProperty,
|
||||||
|
CsrCreateDesktop,
|
||||||
|
CsrShowDesktop,
|
||||||
|
CsrHideDesktop,
|
||||||
|
CsrSetLogonNotifyWindow,
|
||||||
|
CsrRegisterLogonProcess,
|
||||||
|
CsrGenerateCtrlEvent,
|
||||||
|
};
|
||||||
|
|
||||||
|
static CSRSS_API_DEFINITION Win32CsrApiDefinitions[] =
|
||||||
|
{
|
||||||
|
CSRSS_DEFINE_API(GET_INPUT_HANDLE, CsrGetHandle),
|
||||||
|
CSRSS_DEFINE_API(GET_OUTPUT_HANDLE, CsrGetHandle),
|
||||||
|
CSRSS_DEFINE_API(CLOSE_HANDLE, CsrCloseHandle),
|
||||||
|
CSRSS_DEFINE_API(VERIFY_HANDLE, CsrVerifyHandle),
|
||||||
|
CSRSS_DEFINE_API(DUPLICATE_HANDLE, CsrDuplicateHandle),
|
||||||
|
CSRSS_DEFINE_API(GET_INPUT_WAIT_HANDLE, CsrGetInputWaitHandle),
|
||||||
|
CSRSS_DEFINE_API(WRITE_CONSOLE, CsrWriteConsole),
|
||||||
|
CSRSS_DEFINE_API(READ_CONSOLE, CsrReadConsole),
|
||||||
|
CSRSS_DEFINE_API(ALLOC_CONSOLE, CsrAllocConsole),
|
||||||
|
CSRSS_DEFINE_API(FREE_CONSOLE, CsrFreeConsole),
|
||||||
|
CSRSS_DEFINE_API(SCREEN_BUFFER_INFO, CsrGetScreenBufferInfo),
|
||||||
|
CSRSS_DEFINE_API(SET_CURSOR, CsrSetCursor),
|
||||||
|
CSRSS_DEFINE_API(FILL_OUTPUT, CsrFillOutputChar),
|
||||||
|
CSRSS_DEFINE_API(READ_INPUT, CsrReadInputEvent),
|
||||||
|
CSRSS_DEFINE_API(WRITE_CONSOLE_OUTPUT_CHAR, CsrWriteConsoleOutputChar),
|
||||||
|
CSRSS_DEFINE_API(WRITE_CONSOLE_OUTPUT_ATTRIB, CsrWriteConsoleOutputAttrib),
|
||||||
|
CSRSS_DEFINE_API(FILL_OUTPUT_ATTRIB, CsrFillOutputAttrib),
|
||||||
|
CSRSS_DEFINE_API(GET_CURSOR_INFO, CsrGetCursorInfo),
|
||||||
|
CSRSS_DEFINE_API(SET_CURSOR_INFO, CsrSetCursorInfo),
|
||||||
|
CSRSS_DEFINE_API(SET_ATTRIB, CsrSetTextAttrib),
|
||||||
|
CSRSS_DEFINE_API(GET_CONSOLE_MODE, CsrGetConsoleMode),
|
||||||
|
CSRSS_DEFINE_API(SET_CONSOLE_MODE, CsrSetConsoleMode),
|
||||||
|
CSRSS_DEFINE_API(CREATE_SCREEN_BUFFER, CsrCreateScreenBuffer),
|
||||||
|
CSRSS_DEFINE_API(SET_SCREEN_BUFFER, CsrSetScreenBuffer),
|
||||||
|
CSRSS_DEFINE_API(SET_TITLE, CsrSetTitle),
|
||||||
|
CSRSS_DEFINE_API(GET_TITLE, CsrGetTitle),
|
||||||
|
CSRSS_DEFINE_API(WRITE_CONSOLE_OUTPUT, CsrWriteConsoleOutput),
|
||||||
|
CSRSS_DEFINE_API(FLUSH_INPUT_BUFFER, CsrFlushInputBuffer),
|
||||||
|
CSRSS_DEFINE_API(SCROLL_CONSOLE_SCREEN_BUFFER, CsrScrollConsoleScreenBuffer),
|
||||||
|
CSRSS_DEFINE_API(READ_CONSOLE_OUTPUT_CHAR, CsrReadConsoleOutputChar),
|
||||||
|
CSRSS_DEFINE_API(READ_CONSOLE_OUTPUT_ATTRIB, CsrReadConsoleOutputAttrib),
|
||||||
|
CSRSS_DEFINE_API(GET_NUM_INPUT_EVENTS, CsrGetNumberOfConsoleInputEvents),
|
||||||
|
CSRSS_DEFINE_API(EXIT_REACTOS, CsrExitReactos),
|
||||||
|
CSRSS_DEFINE_API(PEEK_CONSOLE_INPUT, CsrPeekConsoleInput),
|
||||||
|
CSRSS_DEFINE_API(READ_CONSOLE_OUTPUT, CsrReadConsoleOutput),
|
||||||
|
CSRSS_DEFINE_API(WRITE_CONSOLE_INPUT, CsrWriteConsoleInput),
|
||||||
|
CSRSS_DEFINE_API(SETGET_CONSOLE_HW_STATE, CsrHardwareStateProperty),
|
||||||
|
CSRSS_DEFINE_API(GET_CONSOLE_WINDOW, CsrGetConsoleWindow),
|
||||||
|
CSRSS_DEFINE_API(CREATE_DESKTOP, CsrCreateDesktop),
|
||||||
|
CSRSS_DEFINE_API(SHOW_DESKTOP, CsrShowDesktop),
|
||||||
|
CSRSS_DEFINE_API(HIDE_DESKTOP, CsrHideDesktop),
|
||||||
|
CSRSS_DEFINE_API(SET_CONSOLE_ICON, CsrSetConsoleIcon),
|
||||||
|
CSRSS_DEFINE_API(SET_LOGON_NOTIFY_WINDOW, CsrSetLogonNotifyWindow),
|
||||||
|
CSRSS_DEFINE_API(REGISTER_LOGON_PROCESS, CsrRegisterLogonProcess),
|
||||||
|
CSRSS_DEFINE_API(GET_CONSOLE_CP, CsrGetConsoleCodePage),
|
||||||
|
CSRSS_DEFINE_API(SET_CONSOLE_CP, CsrSetConsoleCodePage),
|
||||||
|
CSRSS_DEFINE_API(GET_CONSOLE_OUTPUT_CP, CsrGetConsoleOutputCodePage),
|
||||||
|
CSRSS_DEFINE_API(SET_CONSOLE_OUTPUT_CP, CsrSetConsoleOutputCodePage),
|
||||||
|
CSRSS_DEFINE_API(GET_PROCESS_LIST, CsrGetProcessList),
|
||||||
|
CSRSS_DEFINE_API(ADD_CONSOLE_ALIAS, CsrAddConsoleAlias),
|
||||||
|
CSRSS_DEFINE_API(GET_CONSOLE_ALIAS, CsrGetConsoleAlias),
|
||||||
|
CSRSS_DEFINE_API(GET_ALL_CONSOLE_ALIASES, CsrGetAllConsoleAliases),
|
||||||
|
CSRSS_DEFINE_API(GET_ALL_CONSOLE_ALIASES_LENGTH, CsrGetAllConsoleAliasesLength),
|
||||||
|
CSRSS_DEFINE_API(GET_CONSOLE_ALIASES_EXES, CsrGetConsoleAliasesExes),
|
||||||
|
CSRSS_DEFINE_API(GET_CONSOLE_ALIASES_EXES_LENGTH, CsrGetConsoleAliasesExesLength),
|
||||||
|
CSRSS_DEFINE_API(GENERATE_CTRL_EVENT, CsrGenerateCtrlEvent),
|
||||||
|
CSRSS_DEFINE_API(SET_SCREEN_BUFFER_SIZE, CsrSetScreenBufferSize),
|
||||||
|
CSRSS_DEFINE_API(GET_CONSOLE_SELECTION_INFO, CsrGetConsoleSelectionInfo),
|
||||||
|
CSRSS_DEFINE_API(GET_COMMAND_HISTORY_LENGTH, CsrGetCommandHistoryLength),
|
||||||
|
CSRSS_DEFINE_API(GET_COMMAND_HISTORY, CsrGetCommandHistory),
|
||||||
|
CSRSS_DEFINE_API(EXPUNGE_COMMAND_HISTORY, CsrExpungeCommandHistory),
|
||||||
|
CSRSS_DEFINE_API(SET_HISTORY_NUMBER_COMMANDS, CsrSetHistoryNumberCommands),
|
||||||
|
CSRSS_DEFINE_API(GET_HISTORY_INFO, CsrGetHistoryInfo),
|
||||||
|
CSRSS_DEFINE_API(SET_HISTORY_INFO, CsrSetHistoryInfo),
|
||||||
|
{ 0, 0, NULL }
|
||||||
|
};
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
/* FUNCTIONS ******************************************************************/
|
/* FUNCTIONS ******************************************************************/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -362,7 +462,7 @@ CSR_SERVER_DLL_INIT(ConServerDllInitialization)
|
||||||
LoadedServerDll->SizeOfProcessData = 0;
|
LoadedServerDll->SizeOfProcessData = 0;
|
||||||
LoadedServerDll->ConnectCallback = NULL;
|
LoadedServerDll->ConnectCallback = NULL;
|
||||||
LoadedServerDll->DisconnectCallback = Win32CsrReleaseConsole;
|
LoadedServerDll->DisconnectCallback = Win32CsrReleaseConsole;
|
||||||
LoadedServerDll->NewProcessCallback = Win32CsrDuplicateHandleTable;
|
LoadedServerDll->NewProcessCallback = ConsoleNewProcess;
|
||||||
// LoadedServerDll->HardErrorCallback = Win32CsrHardError;
|
// LoadedServerDll->HardErrorCallback = Win32CsrHardError;
|
||||||
|
|
||||||
/* All done */
|
/* All done */
|
||||||
|
@ -371,7 +471,7 @@ CSR_SERVER_DLL_INIT(ConServerDllInitialization)
|
||||||
|
|
||||||
BOOL
|
BOOL
|
||||||
WINAPI
|
WINAPI
|
||||||
DllMain(IN HANDLE hDll,
|
DllMain(IN HINSTANCE hInstanceDll,
|
||||||
IN DWORD dwReason,
|
IN DWORD dwReason,
|
||||||
IN LPVOID lpReserved)
|
IN LPVOID lpReserved)
|
||||||
{
|
{
|
||||||
|
@ -380,7 +480,7 @@ DllMain(IN HANDLE hDll,
|
||||||
|
|
||||||
if (DLL_PROCESS_ATTACH == dwReason)
|
if (DLL_PROCESS_ATTACH == dwReason)
|
||||||
{
|
{
|
||||||
DllHandle = hDll;
|
ConSrvDllInstance = hInstanceDll;
|
||||||
}
|
}
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
#define NDEBUG
|
#define NDEBUG
|
||||||
#include <debug.h>
|
#include <debug.h>
|
||||||
|
|
||||||
|
#if 0
|
||||||
/* Ensure that a captured buffer is safe to access */
|
/* Ensure that a captured buffer is safe to access */
|
||||||
BOOL FASTCALL
|
BOOL FASTCALL
|
||||||
Win32CsrValidateBuffer(PCSR_PROCESS ProcessData, PVOID Buffer,
|
Win32CsrValidateBuffer(PCSR_PROCESS ProcessData, PVOID Buffer,
|
||||||
|
@ -37,5 +37,6 @@ Win32CsrValidateBuffer(PCSR_PROCESS ProcessData, PVOID Buffer,
|
||||||
}
|
}
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
/* EOF */
|
/* EOF */
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue