mirror of https://github.com/tongzx/nt5src
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
153 lines
3.2 KiB
153 lines
3.2 KiB
/*++
|
|
|
|
Copyright (c) 1995 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
net\routing\ipx\sap\lpcmgr.h
|
|
|
|
Abstract:
|
|
|
|
Header for SAP LPC manager
|
|
|
|
Author:
|
|
|
|
Vadim Eydelman 05-15-1995
|
|
|
|
Revision History:
|
|
|
|
--*/
|
|
|
|
#ifndef _SAP_LPCMGR_
|
|
#define _SAP_LPCMGR_
|
|
|
|
#include "nwsap.h"
|
|
#include "saplpc.h"
|
|
|
|
|
|
// LPC parameters associated with LPC request
|
|
typedef struct _LPC_PARAM_BLOCK {
|
|
HANDLE client; // Client context
|
|
PNWSAP_REQUEST_MESSAGE request;// Request block
|
|
} LPC_PARAM_BLOCK, *PLPC_PARAM_BLOCK;
|
|
|
|
|
|
/*++
|
|
*******************************************************************
|
|
I n i t i a l i z e L P C S t u f f
|
|
|
|
Routine Description:
|
|
Allocates resources neccessary to implement LPC interface
|
|
Arguments:
|
|
None
|
|
Return Value:
|
|
NO_ERROR - port was created OK
|
|
other - operation failed (windows error code)
|
|
*******************************************************************
|
|
--*/
|
|
DWORD
|
|
InitializeLPCStuff (
|
|
void
|
|
);
|
|
|
|
/*++
|
|
*******************************************************************
|
|
S t a r t L P C
|
|
|
|
Routine Description:
|
|
Start SAP LPC interface
|
|
Arguments:
|
|
None
|
|
Return Value:
|
|
NO_ERROR - LPC interface was started OK
|
|
other - operation failed (windows error code)
|
|
*******************************************************************
|
|
--*/
|
|
DWORD
|
|
StartLPC (
|
|
void
|
|
);
|
|
|
|
/*++
|
|
*******************************************************************
|
|
S h u t d o w n L P C
|
|
|
|
Routine Description:
|
|
Shuts SAP LPC interface down, closes all active sessions
|
|
Arguments:
|
|
None
|
|
Return Value:
|
|
NO_ERROR - LPC interface was shutdown OK
|
|
other - operation failed (windows error code)
|
|
*******************************************************************
|
|
--*/
|
|
DWORD
|
|
ShutdownLPC (
|
|
void
|
|
);
|
|
|
|
/*++
|
|
*******************************************************************
|
|
D e l e t e L P C S t u f f
|
|
|
|
Routine Description:
|
|
Disposes of resources allocated for LPC interface
|
|
Arguments:
|
|
None
|
|
Return Value:
|
|
None
|
|
*******************************************************************
|
|
--*/
|
|
VOID
|
|
DeleteLPCStuff (
|
|
void
|
|
);
|
|
|
|
|
|
|
|
/*++
|
|
*******************************************************************
|
|
P r o c e s s L P C R e q u e s t s
|
|
|
|
Routine Description:
|
|
Waits for requests on LPC port and processes them
|
|
Client requests that require additional processing by other SAP
|
|
components are enqued into completion queue.
|
|
This routine returns only when it encounters a request that requires
|
|
additional processing or when error occurs
|
|
Arguments:
|
|
lreq - LPC parameter block to be filled and posted to completions queue
|
|
Return Value:
|
|
NO_ERROR - LPC request was received and posted to completio queue
|
|
other - operation failed (LPC supplied error code)
|
|
*******************************************************************
|
|
--*/
|
|
DWORD
|
|
ProcessLPCRequests (
|
|
PLPC_PARAM_BLOCK item
|
|
);
|
|
|
|
|
|
/*++
|
|
*******************************************************************
|
|
S e n d L P C R e p l y
|
|
|
|
Routine Description:
|
|
Send reply for LPC request
|
|
Arguments:
|
|
client - context associated with client to reply to
|
|
request - request to which to reply
|
|
reply - reply to send
|
|
Return Value:
|
|
NO_ERROR - LPC reply was sent OK
|
|
other - operation failed (LPC supplied error code)
|
|
*******************************************************************
|
|
--*/
|
|
DWORD
|
|
SendLPCReply (
|
|
HANDLE client,
|
|
PNWSAP_REQUEST_MESSAGE request,
|
|
PNWSAP_REPLY_MESSAGE reply
|
|
);
|
|
|
|
#endif
|