Leaked source code of windows server 2003
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.
 
 
 
 
 
 

89 lines
1.6 KiB

/*++
Copyright (c) 1998-1999 Microsoft Corporation
Module Name:
context.h
Abstract:
This module contains the context handling routines
Author:
Neal Christiansen (nealch) 08-Jan-2001
Revision History:
--*/
#ifndef _CONTEXT_H_
#define _CONTEXT_H_
VOID
SrInitContextCtrl (
IN PSR_DEVICE_EXTENSION pExtension
);
VOID
SrCleanupContextCtrl(
IN PSR_DEVICE_EXTENSION pExtension
);
VOID
SrDeleteAllContexts(
IN PSR_DEVICE_EXTENSION pExtension
);
VOID
SrDeleteContext(
IN PSR_DEVICE_EXTENSION pExtension,
IN PSR_STREAM_CONTEXT pFileContext
);
VOID
SrLinkContext(
IN PSR_DEVICE_EXTENSION pExtension,
IN PFILE_OBJECT pFileObject,
IN OUT PSR_STREAM_CONTEXT *ppFileContext
);
NTSTATUS
SrCreateContext (
IN PSR_DEVICE_EXTENSION pExtension,
IN PFILE_OBJECT pFileObject,
IN SR_EVENT_TYPE EventType,
IN USHORT FileAttributes,
OUT PSR_STREAM_CONTEXT *pRetContext
);
#define SrFreeContext( pCtx ) \
(ASSERT((pCtx)->UseCount == 0), \
ExFreePool( (pCtx) ))
NTSTATUS
SrGetContext(
IN PSR_DEVICE_EXTENSION pExtension,
IN PFILE_OBJECT pFileObject,
IN SR_EVENT_TYPE EventType,
OUT PSR_STREAM_CONTEXT *pRetContext
);
PSR_STREAM_CONTEXT
SrFindExistingContext(
IN PSR_DEVICE_EXTENSION pExtension,
IN PFILE_OBJECT pFileObject
);
VOID
SrMakeContextUninteresting (
IN PSR_STREAM_CONTEXT pFileContext
);
VOID
SrReleaseContext(
IN PSR_STREAM_CONTEXT pFileContext
);
#endif