mirror of
https://github.com/reactos/reactos.git
synced 2025-08-01 19:43:33 +00:00
OS/2: more changes to make it conform to rbuild.
svn path=/trunk/; revision=17353
This commit is contained in:
parent
ebfff39168
commit
88a218b3f6
26 changed files with 209 additions and 251 deletions
|
@ -1,3 +0,0 @@
|
||||||
*.exe
|
|
||||||
*.o
|
|
||||||
*.sym
|
|
0
os2/apps/bepslep/bepslep.xml
Normal file
0
os2/apps/bepslep/bepslep.xml
Normal file
5
os2/apps/directory.xml
Normal file
5
os2/apps/directory.xml
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
<group>
|
||||||
|
<directory name="bepslep">
|
||||||
|
<xi:include href="bepslep/bepslep.xml" />
|
||||||
|
</directory>
|
||||||
|
</group>
|
5
os2/lib/directory.xml
Normal file
5
os2/lib/directory.xml
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
<group>
|
||||||
|
<directory name="doscalls">
|
||||||
|
<xi:include href="doscalls/doscalls.xml" />
|
||||||
|
</directory>
|
||||||
|
</group>
|
|
@ -1,5 +0,0 @@
|
||||||
*.exe
|
|
||||||
*.o
|
|
||||||
*.sym
|
|
||||||
*.dll
|
|
||||||
*.coff
|
|
|
@ -1 +0,0 @@
|
||||||
*.o
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: devices.cpp,v 1.5 2004/01/31 01:29:11 robertk Exp $
|
/* $Id$
|
||||||
*/
|
*/
|
||||||
/*
|
/*
|
||||||
*
|
*
|
||||||
|
|
|
@ -1,38 +1,4 @@
|
||||||
#include <defines.h>
|
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS-OS/2 subsystem base services\0"
|
||||||
#include <reactos/resource.h>
|
#define REACTOS_STR_INTERNAL_NAME "doscalls\0"
|
||||||
|
#define REACTOS_STR_ORIGINAL_FILENAME "doscalls.dll\0"
|
||||||
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
#include <reactos/version.rc>
|
||||||
|
|
||||||
VS_VERSION_INFO VERSIONINFO
|
|
||||||
FILEVERSION RES_UINT_FV_MAJOR,RES_UINT_FV_MINOR,RES_UINT_FV_REVISION,RES_UINT_FV_BUILD
|
|
||||||
PRODUCTVERSION RES_UINT_PV_MAJOR,RES_UINT_PV_MINOR,RES_UINT_PV_REVISION,RES_UINT_PV_BUILD
|
|
||||||
FILEFLAGSMASK 0x3fL
|
|
||||||
#ifdef _DEBUG
|
|
||||||
FILEFLAGS 0x1L
|
|
||||||
#else
|
|
||||||
FILEFLAGS 0x0L
|
|
||||||
#endif
|
|
||||||
FILEOS 0x40004L
|
|
||||||
FILETYPE 0x2L
|
|
||||||
FILESUBTYPE 0x0L
|
|
||||||
BEGIN
|
|
||||||
BLOCK "StringFileInfo"
|
|
||||||
BEGIN
|
|
||||||
BLOCK "040904b0"
|
|
||||||
BEGIN
|
|
||||||
VALUE "CompanyName", RES_STR_COMPANY_NAME
|
|
||||||
VALUE "FileDescription", "OS2 subsystem base services\0"
|
|
||||||
VALUE "FileVersion", RES_STR_FILE_VERSION
|
|
||||||
VALUE "InternalName", "doscalls\0"
|
|
||||||
VALUE "LegalCopyright", RES_STR_LEGAL_COPYRIGHT
|
|
||||||
VALUE "OriginalFilename", "doscalls.dll\0"
|
|
||||||
VALUE "ProductName", RES_STR_PRODUCT_NAME
|
|
||||||
VALUE "ProductVersion", RES_STR_PRODUCT_VERSION
|
|
||||||
END
|
|
||||||
END
|
|
||||||
BLOCK "VarFileInfo"
|
|
||||||
BEGIN
|
|
||||||
VALUE "Translation", 0x409, 1200
|
|
||||||
END
|
|
||||||
END
|
|
||||||
|
|
||||||
|
|
23
os2/lib/doscalls/doscalls.xml
Normal file
23
os2/lib/doscalls/doscalls.xml
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
<module name="doscalls" type="nativedll">
|
||||||
|
<importlibrary definition="doscalls.def" />
|
||||||
|
<include base="doscalls">../../include</include>
|
||||||
|
<linkerflag>-lgcc</linkerflag>
|
||||||
|
<directory name="devices">
|
||||||
|
<file>devices.cpp</file>
|
||||||
|
<file>ioctl_async.cpp</file>
|
||||||
|
</directory>
|
||||||
|
<directory name="file">
|
||||||
|
<file>directory.cpp</file>
|
||||||
|
<file>openclose.cpp</file>
|
||||||
|
</directory>
|
||||||
|
<directory name="memory">
|
||||||
|
<file>memory.cpp</file>
|
||||||
|
</directory>
|
||||||
|
<directory name="misc">
|
||||||
|
<file>doscalls.cpp</file>
|
||||||
|
<file>error.cpp</file>
|
||||||
|
</directory>
|
||||||
|
<directory name="run">
|
||||||
|
<file>process.cpp</file>
|
||||||
|
</directory>
|
||||||
|
</module>
|
|
@ -1 +0,0 @@
|
||||||
*.o
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: directory.cpp,v 1.1 2002/09/04 22:19:47 robertk Exp $
|
/* $Id$
|
||||||
*/
|
*/
|
||||||
/*
|
/*
|
||||||
*
|
*
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: openclose.cpp,v 1.5 2004/01/31 01:29:11 robertk Exp $
|
/* $Id$
|
||||||
*/
|
*/
|
||||||
/*
|
/*
|
||||||
*
|
*
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
*.o
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: doscalls.cpp,v 1.1 2002/07/26 00:23:13 robertk Exp $
|
/* $Id$
|
||||||
*/
|
*/
|
||||||
/*
|
/*
|
||||||
*
|
*
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: error.cpp,v 1.3 2003/01/07 16:23:11 robd Exp $
|
/* $Id$
|
||||||
*/
|
*/
|
||||||
/*
|
/*
|
||||||
*
|
*
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
*.o
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: process.cpp,v 1.6 2003/01/07 16:23:11 robd Exp $
|
/* $Id$
|
||||||
*/
|
*/
|
||||||
/*
|
/*
|
||||||
*
|
*
|
||||||
|
@ -31,7 +31,7 @@ APIRET STDCALL DosSleep(ULONG msec)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* $Id: process.cpp,v 1.6 2003/01/07 16:23:11 robd Exp $ */
|
/* $Id$ */
|
||||||
/* Terminates the current thread or the current Process.
|
/* Terminates the current thread or the current Process.
|
||||||
Decission is made by action
|
Decission is made by action
|
||||||
FIXME: move this code to OS2.EXE */
|
FIXME: move this code to OS2.EXE */
|
||||||
|
|
|
@ -1,3 +0,0 @@
|
||||||
*.exe
|
|
||||||
*.o
|
|
||||||
*.sym
|
|
50
os2/server/dllmain.c
Normal file
50
os2/server/dllmain.c
Normal file
|
@ -0,0 +1,50 @@
|
||||||
|
/* $Id$
|
||||||
|
*
|
||||||
|
* dllmain.c - OS/2 Enviroment Subsystem Server
|
||||||
|
*
|
||||||
|
* ReactOS Operating System
|
||||||
|
*
|
||||||
|
* --------------------------------------------------------------------
|
||||||
|
*
|
||||||
|
* This software is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU General Public License as
|
||||||
|
* published by the Free Software Foundation; either version 2 of the
|
||||||
|
* License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This software is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
* General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this software; see the file COPYING.LIB. If not, write
|
||||||
|
* to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge,
|
||||||
|
* MA 02139, USA.
|
||||||
|
*
|
||||||
|
* --------------------------------------------------------------------
|
||||||
|
*/
|
||||||
|
#include "os2srv.h"
|
||||||
|
|
||||||
|
#define NDEBUG
|
||||||
|
#include <debug.h>
|
||||||
|
|
||||||
|
/* DLL entry point */
|
||||||
|
|
||||||
|
HANDLE Os2SrvDllHandle = 0;
|
||||||
|
|
||||||
|
/* FUNCTIONS *****************************************************************/
|
||||||
|
|
||||||
|
BOOL STDCALL
|
||||||
|
DllMain(HANDLE hDll,
|
||||||
|
DWORD dwReason,
|
||||||
|
LPVOID lpReserved)
|
||||||
|
{
|
||||||
|
if (DLL_PROCESS_ATTACH == dwReason)
|
||||||
|
{
|
||||||
|
Os2SrvDllHandle = hDll;
|
||||||
|
}
|
||||||
|
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* EOF */
|
|
@ -1,34 +0,0 @@
|
||||||
# $Id: makefile,v 1.3 2003/01/12 02:03:06 robd Exp $
|
|
||||||
|
|
||||||
PATH_TO_TOP = ../../reactos
|
|
||||||
|
|
||||||
TARGET_TYPE = program
|
|
||||||
|
|
||||||
TARGET_NORC = yes
|
|
||||||
|
|
||||||
TARGET_APPTYPE = native
|
|
||||||
|
|
||||||
TARGET_NAME = os2ss
|
|
||||||
|
|
||||||
TARGET_INSTALLDIR = system32
|
|
||||||
|
|
||||||
TARGET_CFLAGS = -D__NTAPP__
|
|
||||||
|
|
||||||
TARGET_SDKLIBS = ntdll.a kernel32.a csrss.a
|
|
||||||
|
|
||||||
TARGET_GCCLIBS = stdc++
|
|
||||||
|
|
||||||
OBJECTS_API =
|
|
||||||
|
|
||||||
OBJECTS_MISC = \
|
|
||||||
$(TARGET_NAME).o
|
|
||||||
|
|
||||||
TARGET_OBJECTS = \
|
|
||||||
$(OBJECTS_API) \
|
|
||||||
$(OBJECTS_MISC)
|
|
||||||
|
|
||||||
include $(PATH_TO_TOP)/rules.mak
|
|
||||||
|
|
||||||
include $(TOOLS_PATH)/helper.mk
|
|
||||||
|
|
||||||
# EOF
|
|
3
os2/server/os2srv.def
Normal file
3
os2/server/os2srv.def
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
LIBRARY os2srv.dll
|
||||||
|
EXPORTS
|
||||||
|
ServerDllInitialization@8
|
13
os2/server/os2srv.h
Normal file
13
os2/server/os2srv.h
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
#ifndef _OS2SS_H_INCLUDED_
|
||||||
|
#define _OS2SS_H_INCLUDED_
|
||||||
|
|
||||||
|
/* PSDK/NDK Headers */
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <windows.h>
|
||||||
|
|
||||||
|
#define NTOS_MODE_USER
|
||||||
|
#include <ndk/ntndk.h>
|
||||||
|
|
||||||
|
#include <csr/server.h>
|
||||||
|
|
||||||
|
#endif /* ndef _OS2SS_H_INCLUDED_ */
|
4
os2/server/os2srv.rc
Normal file
4
os2/server/os2srv.rc
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS-OS/2 Environment Subsystem Server\0"
|
||||||
|
#define REACTOS_STR_INTERNAL_NAME "os2srv\0"
|
||||||
|
#define REACTOS_STR_ORIGINAL_FILENAME "os2srv.dll\0"
|
||||||
|
#include <reactos/version.rc>
|
11
os2/server/os2srv.xml
Normal file
11
os2/server/os2srv.xml
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
<module name="os2srv" type="nativedll">
|
||||||
|
<importlibrary definition="os2srv.def" />
|
||||||
|
<include base="os2srv">.</include>
|
||||||
|
<define name="__USE_W32API" />
|
||||||
|
<define name="_DISABLE_TIDENTS" />
|
||||||
|
<library>ntdll</library>
|
||||||
|
<library>csrsrv</library>
|
||||||
|
<file>dllmain.c</file>
|
||||||
|
<file>server.c</file>
|
||||||
|
<file>os2srv.rc</file>
|
||||||
|
</module>
|
|
@ -1,157 +0,0 @@
|
||||||
/* $Id: os2ss.cpp,v 1.2 2003/01/07 16:23:12 robd Exp $
|
|
||||||
*
|
|
||||||
* reactos/subsys/csrss/api/process.c
|
|
||||||
*
|
|
||||||
* "\windows\ApiPort" port process management functions
|
|
||||||
*
|
|
||||||
* ReactOS Operating System
|
|
||||||
*/
|
|
||||||
// TODO: Rewrite the whole file. This is just a copy
|
|
||||||
|
|
||||||
#include <ddk/ntddk.h>
|
|
||||||
#include <ntdll/rtl.h>
|
|
||||||
#include <ntos/synch.h>
|
|
||||||
|
|
||||||
extern "C" {
|
|
||||||
BOOL CsrServerInitialization(ULONG ArgumentCount, PWSTR *ArgumentArray);
|
|
||||||
VOID DisplayString(LPCWSTR lpwString);
|
|
||||||
//BOOL STDCALL CsrServerInitialization (ULONG ArgumentCount, PWSTR *ArgumentArray);
|
|
||||||
//VOID STDCALL DisplayString(LPCWSTR lpwString);
|
|
||||||
//VOID STDCALL PrintString (char* fmt, ...);
|
|
||||||
//NTSTATUS STDCALL NtDisplayString(IN PUNICODE_STRING DisplayString);
|
|
||||||
|
|
||||||
void
|
|
||||||
DisplayString(LPCWSTR lpwString)
|
|
||||||
{
|
|
||||||
UNICODE_STRING us;
|
|
||||||
|
|
||||||
RtlInitUnicodeString(&us, lpwString);
|
|
||||||
NtDisplayString(&us);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
void
|
|
||||||
PrintString(char* fmt,...)
|
|
||||||
{
|
|
||||||
char buffer[512];
|
|
||||||
va_list ap;
|
|
||||||
UNICODE_STRING UnicodeString;
|
|
||||||
ANSI_STRING AnsiString;
|
|
||||||
|
|
||||||
va_start(ap, fmt);
|
|
||||||
vsprintf(buffer, fmt, ap);
|
|
||||||
va_end(ap);
|
|
||||||
|
|
||||||
RtlInitAnsiString(&AnsiString, buffer);
|
|
||||||
RtlAnsiStringToUnicodeString(&UnicodeString,
|
|
||||||
&AnsiString,
|
|
||||||
TRUE);
|
|
||||||
NtDisplayString(&UnicodeString);
|
|
||||||
RtlFreeUnicodeString(&UnicodeString);
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/* server variables */
|
|
||||||
|
|
||||||
int NumProcesses;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* Native image's entry point */
|
|
||||||
|
|
||||||
void NtProcessStartup (PPEB Peb)
|
|
||||||
{
|
|
||||||
PRTL_USER_PROCESS_PARAMETERS ProcParams;
|
|
||||||
PWSTR ArgBuffer;
|
|
||||||
PWSTR *argv;
|
|
||||||
ULONG argc = 0;
|
|
||||||
int i = 0;
|
|
||||||
int afterlastspace = 0;
|
|
||||||
OBJECT_ATTRIBUTES ObjectAttributes;
|
|
||||||
HANDLE CsrssInitEvent;
|
|
||||||
UNICODE_STRING UnicodeString;
|
|
||||||
NTSTATUS Status;
|
|
||||||
|
|
||||||
ProcParams = RtlNormalizeProcessParams (Peb->ProcessParameters);
|
|
||||||
|
|
||||||
argv = (PWSTR *)RtlAllocateHeap (Peb->ProcessHeap,
|
|
||||||
0, 512 * sizeof(PWSTR));
|
|
||||||
ArgBuffer = (PWSTR)RtlAllocateHeap (Peb->ProcessHeap,
|
|
||||||
0,
|
|
||||||
ProcParams->CommandLine.Length + sizeof(WCHAR));
|
|
||||||
memcpy (ArgBuffer,
|
|
||||||
ProcParams->CommandLine.Buffer,
|
|
||||||
ProcParams->CommandLine.Length + sizeof(WCHAR));
|
|
||||||
|
|
||||||
while (ArgBuffer[i])
|
|
||||||
{
|
|
||||||
if (ArgBuffer[i] == L' ')
|
|
||||||
{
|
|
||||||
argc++;
|
|
||||||
ArgBuffer[i] = L'\0';
|
|
||||||
argv[argc-1] = &(ArgBuffer[afterlastspace]);
|
|
||||||
i++;
|
|
||||||
while (ArgBuffer[i] == L' ')
|
|
||||||
i++;
|
|
||||||
afterlastspace = i;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
i++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (ArgBuffer[afterlastspace] != L'\0')
|
|
||||||
{
|
|
||||||
argc++;
|
|
||||||
ArgBuffer[i] = L'\0';
|
|
||||||
argv[argc-1] = &(ArgBuffer[afterlastspace]);
|
|
||||||
}
|
|
||||||
|
|
||||||
RtlInitUnicodeString(&UnicodeString,
|
|
||||||
L"\\CsrssInitDone");
|
|
||||||
InitializeObjectAttributes(&ObjectAttributes,
|
|
||||||
&UnicodeString,
|
|
||||||
EVENT_ALL_ACCESS,
|
|
||||||
0,
|
|
||||||
NULL);
|
|
||||||
Status = NtOpenEvent(&CsrssInitEvent,
|
|
||||||
EVENT_ALL_ACCESS,
|
|
||||||
&ObjectAttributes);
|
|
||||||
if (!NT_SUCCESS(Status))
|
|
||||||
{
|
|
||||||
DbgPrint("CSR: Failed to open csrss notification event\n");
|
|
||||||
}
|
|
||||||
if (CsrServerInitialization (argc, argv) == TRUE)
|
|
||||||
{
|
|
||||||
|
|
||||||
NtSetEvent(CsrssInitEvent,
|
|
||||||
NULL);
|
|
||||||
|
|
||||||
RtlFreeHeap (Peb->ProcessHeap,
|
|
||||||
0, argv);
|
|
||||||
RtlFreeHeap (Peb->ProcessHeap,
|
|
||||||
0,
|
|
||||||
ArgBuffer);
|
|
||||||
|
|
||||||
/* terminate the current thread only */
|
|
||||||
NtTerminateThread( NtCurrentThread(), 0 );
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
DisplayString( L"CSR: Subsystem initialization failed.\n" );
|
|
||||||
|
|
||||||
RtlFreeHeap (Peb->ProcessHeap,
|
|
||||||
0, argv);
|
|
||||||
RtlFreeHeap (Peb->ProcessHeap,
|
|
||||||
0,
|
|
||||||
ArgBuffer);
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Tell SM we failed.
|
|
||||||
*/
|
|
||||||
NtTerminateProcess( NtCurrentProcess(), 0 );
|
|
||||||
}
|
|
||||||
}
|
|
84
os2/server/server.c
Normal file
84
os2/server/server.c
Normal file
|
@ -0,0 +1,84 @@
|
||||||
|
/* $Id$
|
||||||
|
*
|
||||||
|
* server.c - OS/2 Enviroment Subsystem Server - Initialization
|
||||||
|
*
|
||||||
|
* ReactOS Operating System
|
||||||
|
*
|
||||||
|
* --------------------------------------------------------------------
|
||||||
|
*
|
||||||
|
* This software is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU General Public License as
|
||||||
|
* published by the Free Software Foundation; either version 2 of the
|
||||||
|
* License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This software is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
* General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this software; see the file COPYING.LIB. If not, write
|
||||||
|
* to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge,
|
||||||
|
* MA 02139, USA.
|
||||||
|
*
|
||||||
|
* --------------------------------------------------------------------
|
||||||
|
*/
|
||||||
|
#include "os2srv.h"
|
||||||
|
|
||||||
|
//#define NDEBUG
|
||||||
|
#include <debug.h>
|
||||||
|
|
||||||
|
HANDLE Os2ApiPort = NULL;
|
||||||
|
|
||||||
|
/**********************************************************************
|
||||||
|
* NAME PRIVATE
|
||||||
|
* Os2StaticServerThread/1
|
||||||
|
*/
|
||||||
|
VOID STDCALL Os2StaticServerThread (PVOID x)
|
||||||
|
{
|
||||||
|
NTSTATUS Status = STATUS_SUCCESS;
|
||||||
|
PPORT_MESSAGE Request = (PPORT_MESSAGE) x;
|
||||||
|
PPORT_MESSAGE Reply = NULL;
|
||||||
|
ULONG MessageType = 0;
|
||||||
|
|
||||||
|
DPRINT("VMSSRV: %s called\n", __FUNCTION__);
|
||||||
|
|
||||||
|
MessageType = Request->u2.s2.Type;
|
||||||
|
DPRINT("VMSSRV: %s received a message (Type=%d)\n",
|
||||||
|
__FUNCTION__, MessageType);
|
||||||
|
switch (MessageType)
|
||||||
|
{
|
||||||
|
default:
|
||||||
|
Reply = Request;
|
||||||
|
Status = NtReplyPort (Os2ApiPort, Reply);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*=====================================================================
|
||||||
|
* PUBLIC API
|
||||||
|
*===================================================================*/
|
||||||
|
|
||||||
|
NTSTATUS STDCALL ServerDllInitialization (ULONG ArgumentCount,
|
||||||
|
LPWSTR *Argument)
|
||||||
|
{
|
||||||
|
NTSTATUS Status = STATUS_SUCCESS;
|
||||||
|
|
||||||
|
DPRINT("VMSSRV: %s called\n", __FUNCTION__);
|
||||||
|
|
||||||
|
// Get the listening port from csrsrv.dll
|
||||||
|
Os2ApiPort = CsrQueryApiPort ();
|
||||||
|
if (NULL == Os2ApiPort)
|
||||||
|
{
|
||||||
|
return STATUS_UNSUCCESSFUL;
|
||||||
|
}
|
||||||
|
// Register our message dispatcher
|
||||||
|
Status = CsrAddStaticServerThread (Os2StaticServerThread);
|
||||||
|
if (NT_SUCCESS(Status))
|
||||||
|
{
|
||||||
|
//TODO: perform the real OS/2 server internal initialization here
|
||||||
|
}
|
||||||
|
return Status;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* EOF */
|
Loading…
Add table
Add a link
Reference in a new issue