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.0 KiB
153 lines
3.0 KiB
//+-------------------------------------------------------------------------
|
|
//
|
|
// Microsoft Windows
|
|
//
|
|
// Copyright (C) Microsoft Corporation, 1994 - 1999
|
|
//
|
|
// File: np.h
|
|
//
|
|
//--------------------------------------------------------------------------
|
|
|
|
/////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Filename: np.h
|
|
//
|
|
// Description: This file contains definitions for Named Pipe routines
|
|
// for use with IPC raw network performance tests.
|
|
//
|
|
// Authors: Scott Holden (Translator from NT API to win32 API)
|
|
// Mahesh Keni (Mahesh wrote this application using mostly
|
|
// NT native API calls)
|
|
//
|
|
/////////////////////////////////////////////////////////////////////////
|
|
|
|
#define PERF_PIPE "\\\\.\\pipe\\perftest"
|
|
#define RM_PERF_PIPE_PRFX "\\\\."
|
|
#define RM_PERF_PIPE_SUFX "\\pipe\\perftest"
|
|
#define PERF_EVENT "\\prfEvent"
|
|
#define PIPE_LEN 2048
|
|
|
|
|
|
|
|
/************************************************************************/
|
|
// Local function prototypes
|
|
/************************************************************************/
|
|
NTSTATUS
|
|
CreateNamedPipeInstance(
|
|
IN USHORT Nindex
|
|
);
|
|
/*
|
|
NTSTATUS
|
|
NamedPipe_FsControl(
|
|
IN HANDLE lhandle,
|
|
IN ULONG FsControlCode,
|
|
IN PVOID pInBuffer,
|
|
IN ULONG InBufLen,
|
|
OUT PVOID pOutBuffer,
|
|
IN ULONG OutBufLen
|
|
);
|
|
*/
|
|
NTSTATUS
|
|
ReadNamedPipe(
|
|
IN HANDLE rhandle,
|
|
IN ULONG rlength,
|
|
IN OUT PVOID rpbuffer,
|
|
IN OUT PULONG rpdatalen
|
|
);
|
|
|
|
NTSTATUS
|
|
WriteNamedPipe(
|
|
IN HANDLE whandle,
|
|
IN ULONG wlength,
|
|
IN OUT PVOID wpbuffer,
|
|
IN OUT PULONG wpdatalen
|
|
);
|
|
|
|
NTSTATUS
|
|
NMP_Initialize(
|
|
IN USHORT NClients,
|
|
IN PCHAR ServerName,
|
|
IN USHORT SrvCli
|
|
);
|
|
|
|
NTSTATUS
|
|
NMP_PerClientInit(
|
|
IN USHORT CIndex,
|
|
IN USHORT SrvCli
|
|
);
|
|
|
|
NTSTATUS
|
|
NMP_Allocate_Memory(
|
|
IN USHORT CIndex
|
|
);
|
|
|
|
NTSTATUS
|
|
NMP_Deallocate_Memory(
|
|
IN USHORT CIndex
|
|
);
|
|
|
|
|
|
NTSTATUS
|
|
NMP_DoHandshake(
|
|
IN USHORT CIndex,
|
|
IN USHORT SrvCli
|
|
);
|
|
|
|
|
|
NTSTATUS
|
|
NMP_Cleanup(
|
|
VOID
|
|
);
|
|
|
|
NTSTATUS
|
|
NMP_Wait_For_Client(
|
|
IN USHORT CIndex
|
|
);
|
|
|
|
NTSTATUS
|
|
NMP_Disconnect_Client(
|
|
IN USHORT CIndex
|
|
);
|
|
|
|
|
|
NTSTATUS
|
|
NMP_ReadFromIPC(
|
|
IN USHORT CIndex,
|
|
IN OUT PULONG pReadDone,
|
|
IN USHORT SrvCli
|
|
);
|
|
|
|
NTSTATUS
|
|
NMP_WriteToIPC(
|
|
IN USHORT CIndex,
|
|
IN OUT PULONG pWriteDone,
|
|
IN USHORT SrvCli
|
|
);
|
|
|
|
NTSTATUS
|
|
NMP_XactIO(
|
|
IN USHORT CIndex,
|
|
IN OUT PULONG pReadDone,
|
|
IN OUT PULONG pWriteDone,
|
|
IN USHORT SrvCli,
|
|
IN BOOLEAN FirstIter
|
|
);
|
|
|
|
NTSTATUS
|
|
NMP_ThreadCleanUp(
|
|
IN USHORT CIndex
|
|
);
|
|
|
|
|
|
/************************************************************************/
|
|
// External function prototypes
|
|
/************************************************************************/
|
|
extern LPCSTR pipeName;
|
|
extern ULONG Quotas;
|
|
extern ULONG PipeType;
|
|
extern ULONG PipeMode;
|
|
extern ULONG BlockorNot;
|
|
|
|
extern struct client Clients[MAXCLIENTS]; // all the client data
|
|
extern USHORT NClients;
|
|
|