150 lines
1.8 KiB
C
150 lines
1.8 KiB
C
|
/*
|
||
|
* Copyright (c) Microsoft Corporation
|
||
|
*
|
||
|
* Module Name :
|
||
|
* proto.h
|
||
|
*
|
||
|
* Contains the prototypes of all the functions used by the service.
|
||
|
*
|
||
|
*
|
||
|
* Sadagopan Rajaram -- Oct 18, 1999
|
||
|
*
|
||
|
*/
|
||
|
|
||
|
|
||
|
VOID
|
||
|
ServiceEntry(
|
||
|
DWORD NumArgs,
|
||
|
LPTSTR *ArgsArray
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
ProcessRequests(
|
||
|
SOCKET socket
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
InitializeComPortConnection(
|
||
|
SOCKET cli_sock
|
||
|
);
|
||
|
|
||
|
NTSTATUS Initialize(
|
||
|
);
|
||
|
|
||
|
NTSTATUS
|
||
|
InitializeComPort(
|
||
|
PCOM_PORT_INFO pComPortInfo
|
||
|
);
|
||
|
|
||
|
SOCKET
|
||
|
ServerSocket(
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
Shutdown(
|
||
|
NTSTATUS Status
|
||
|
);
|
||
|
|
||
|
DWORD
|
||
|
bridge(
|
||
|
PCOM_PORT_INFO pComPortInfo
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
CALLBACK
|
||
|
updateComPort(
|
||
|
IN DWORD dwError,
|
||
|
IN DWORD cbTransferred,
|
||
|
IN LPWSAOVERLAPPED lpOverlapped,
|
||
|
IN DWORD dwFlags
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
updateClients(
|
||
|
PCOM_PORT_INFO pComPortInfo
|
||
|
);
|
||
|
|
||
|
|
||
|
VOID CleanupSocket(
|
||
|
PCONNECTION_INFO pConn
|
||
|
);
|
||
|
|
||
|
|
||
|
PCOM_PORT_INFO
|
||
|
FindDevice(
|
||
|
LPTSTR device,
|
||
|
int *pIndex
|
||
|
);
|
||
|
|
||
|
NTSTATUS
|
||
|
AddComPort(
|
||
|
PCOM_PORT_INFO pComPortInfo
|
||
|
);
|
||
|
|
||
|
NTSTATUS
|
||
|
DeleteComPort(
|
||
|
LPTSTR device
|
||
|
);
|
||
|
|
||
|
LONG
|
||
|
GetNextParameter(
|
||
|
HKEY hKey,
|
||
|
DWORD dwIndex,
|
||
|
PHKEY pChild,
|
||
|
LPTSTR *Name
|
||
|
);
|
||
|
|
||
|
LONG
|
||
|
GetNameOfDeviceFromRegistry(
|
||
|
HKEY hKey,
|
||
|
LPTSTR *device
|
||
|
);
|
||
|
|
||
|
PCOM_PORT_INFO
|
||
|
GetComPortParameters(
|
||
|
HKEY hKey
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
FreeComPortInfo(
|
||
|
PCOM_PORT_INFO pTemp
|
||
|
);
|
||
|
|
||
|
VOID UpdateChanges(
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
ServiceControlHandler(
|
||
|
IN DWORD Opcode
|
||
|
);
|
||
|
|
||
|
NTSTATUS
|
||
|
InitializeThread(
|
||
|
PCOM_PORT_INFO pComPortInfo
|
||
|
);
|
||
|
|
||
|
int GetBufferInfo(
|
||
|
PCONNECTION_INFO pConnection,
|
||
|
PCOM_PORT_INFO pComPortInfo
|
||
|
);
|
||
|
|
||
|
VOID Enqueue(
|
||
|
PCOM_PORT_INFO pComPortInfo
|
||
|
);
|
||
|
|
||
|
int
|
||
|
ComPortInfoCompare(
|
||
|
PCOM_PORT_INFO com1,
|
||
|
PCOM_PORT_INFO com2
|
||
|
);
|
||
|
|
||
|
LONG
|
||
|
TCLock(
|
||
|
PHANDLE lock
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
TCUnlock(
|
||
|
HANDLE lock
|
||
|
);
|