mirror of
https://github.com/reactos/reactos.git
synced 2025-02-24 09:25:10 +00:00
W32API conversion update
This shouldn't directly affect anything for normal (non-W32API) builds. A more detailed change log will be sent to the ros-kernel mailing list shortly. svn path=/trunk/; revision=5461
This commit is contained in:
parent
12d87df6e0
commit
59a33415c2
29 changed files with 350 additions and 94 deletions
|
@ -1,4 +1,4 @@
|
|||
/* $Id: lpcsrv.c,v 1.11 2002/09/08 10:21:58 chorns Exp $
|
||||
/* $Id: lpcsrv.c,v 1.12 2003/08/07 11:47:32 silverblade Exp $
|
||||
*
|
||||
* DESCRIPTION: Simple LPC Server
|
||||
* PROGRAMMER: David Welch
|
||||
|
@ -74,7 +74,7 @@ int main(int argc, char* argv[])
|
|||
printf("%s: Received connection request 0x%08x on port 0x%x.\n", MyName,
|
||||
ConnectMsg.Header.MessageId, NamedPortHandle);
|
||||
printf("%s: Request from: PID=%x, TID=%x.\n", MyName,
|
||||
ConnectMsg.Header.Cid.UniqueProcess, ConnectMsg.Header.Cid.UniqueThread);
|
||||
ConnectMsg.Header.ClientId.UniqueProcess, ConnectMsg.Header.ClientId.UniqueThread);
|
||||
|
||||
printf("%s: Accepting connection request 0x%08x...\n", MyName,
|
||||
ConnectMsg.Header.MessageId);
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*/
|
||||
/* $Id: dirctl.c,v 1.12 2003/02/13 22:24:15 hbirr Exp $
|
||||
/* $Id: dirctl.c,v 1.13 2003/08/07 11:47:32 silverblade Exp $
|
||||
*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS kernel
|
||||
|
@ -544,14 +544,14 @@ CdfsQueryDirectory(PDEVICE_OBJECT DeviceObject,
|
|||
PCCB Ccb;
|
||||
FCB TempFcb;
|
||||
BOOLEAN First = FALSE;
|
||||
PIO_STACK_LOCATION Stack;
|
||||
PEXTENDED_IO_STACK_LOCATION Stack;
|
||||
PFILE_OBJECT FileObject;
|
||||
NTSTATUS Status = STATUS_SUCCESS;
|
||||
|
||||
DPRINT("CdfsQueryDirectory() called\n");
|
||||
|
||||
DeviceExtension = DeviceObject->DeviceExtension;
|
||||
Stack = IoGetCurrentIrpStackLocation(Irp);
|
||||
Stack = (PEXTENDED_IO_STACK_LOCATION) IoGetCurrentIrpStackLocation(Irp);
|
||||
FileObject = Stack->FileObject;
|
||||
|
||||
Ccb = (PCCB)FileObject->FsContext2;
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*/
|
||||
/* $Id: fcb.c,v 1.14 2003/07/21 21:53:47 royce Exp $
|
||||
/* $Id: fcb.c,v 1.15 2003/08/07 11:47:32 silverblade Exp $
|
||||
*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS kernel
|
||||
|
@ -29,6 +29,7 @@
|
|||
/* INCLUDES *****************************************************************/
|
||||
|
||||
#include <ddk/ntddk.h>
|
||||
#include <ntos.h>
|
||||
|
||||
#define NDEBUG
|
||||
#include <debug.h>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: fsctrl.c,v 1.3 2002/09/08 10:22:10 chorns Exp $
|
||||
/* $Id: fsctrl.c,v 1.4 2003/08/07 11:47:32 silverblade Exp $
|
||||
*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS kernel
|
||||
|
@ -22,7 +22,7 @@ NTSTATUS STDCALL
|
|||
MsfsFileSystemControl(PDEVICE_OBJECT DeviceObject,
|
||||
PIRP Irp)
|
||||
{
|
||||
PIO_STACK_LOCATION IoStack;
|
||||
PEXTENDED_IO_STACK_LOCATION IoStack;
|
||||
PFILE_OBJECT FileObject;
|
||||
PMSFS_MAILSLOT Mailslot;
|
||||
PMSFS_FCB Fcb;
|
||||
|
@ -30,14 +30,14 @@ MsfsFileSystemControl(PDEVICE_OBJECT DeviceObject,
|
|||
|
||||
DPRINT1("MsfsFileSystemControl(DeviceObject %p Irp %p)\n", DeviceObject, Irp);
|
||||
|
||||
IoStack = IoGetCurrentIrpStackLocation(Irp);
|
||||
IoStack = (PEXTENDED_IO_STACK_LOCATION) IoGetCurrentIrpStackLocation(Irp);
|
||||
FileObject = IoStack->FileObject;
|
||||
Fcb = FileObject->FsContext;
|
||||
Mailslot = Fcb->Mailslot;
|
||||
|
||||
DPRINT1("Mailslot name: %wZ\n", &Mailslot->Name);
|
||||
|
||||
switch (IoStack->Parameters.FileSystemControl.IoControlCode)
|
||||
switch (IoStack->Parameters.FileSystemControl.FsControlCode)
|
||||
{
|
||||
#if 0
|
||||
case FSCTL_WAIT_PIPE:
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: fsctrl.c,v 1.10 2002/09/08 10:22:11 chorns Exp $
|
||||
/* $Id: fsctrl.c,v 1.11 2003/08/07 11:47:32 silverblade Exp $
|
||||
*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS kernel
|
||||
|
@ -395,7 +395,7 @@ NTSTATUS STDCALL
|
|||
NpfsFileSystemControl(PDEVICE_OBJECT DeviceObject,
|
||||
PIRP Irp)
|
||||
{
|
||||
PIO_STACK_LOCATION IoStack;
|
||||
PEXTENDED_IO_STACK_LOCATION IoStack;
|
||||
PFILE_OBJECT FileObject;
|
||||
NTSTATUS Status;
|
||||
PNPFS_DEVICE_EXTENSION DeviceExt;
|
||||
|
@ -405,7 +405,7 @@ NpfsFileSystemControl(PDEVICE_OBJECT DeviceObject,
|
|||
DPRINT("NpfsFileSystemContol(DeviceObject %p Irp %p)\n", DeviceObject, Irp);
|
||||
|
||||
DeviceExt = (PNPFS_DEVICE_EXTENSION)DeviceObject->DeviceExtension;
|
||||
IoStack = IoGetCurrentIrpStackLocation(Irp);
|
||||
IoStack = (PEXTENDED_IO_STACK_LOCATION) IoGetCurrentIrpStackLocation(Irp);
|
||||
DPRINT("IoStack: %p\n", IoStack);
|
||||
FileObject = IoStack->FileObject;
|
||||
DPRINT("FileObject: %p\n", FileObject);
|
||||
|
@ -415,7 +415,7 @@ NpfsFileSystemControl(PDEVICE_OBJECT DeviceObject,
|
|||
DPRINT("Pipe: %p\n", Pipe);
|
||||
DPRINT("PipeName: %wZ\n", &Pipe->PipeName);
|
||||
|
||||
switch (IoStack->Parameters.FileSystemControl.IoControlCode)
|
||||
switch (IoStack->Parameters.FileSystemControl.FsControlCode)
|
||||
{
|
||||
case FSCTL_PIPE_ASSIGN_EVENT:
|
||||
DPRINT("Assign event\n");
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*/
|
||||
/* $Id: attrib.c,v 1.4 2003/07/21 21:53:47 royce Exp $
|
||||
/* $Id: attrib.c,v 1.5 2003/08/07 11:47:32 silverblade Exp $
|
||||
*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS kernel
|
||||
|
@ -29,6 +29,8 @@
|
|||
|
||||
#include <ddk/ntddk.h>
|
||||
|
||||
#include <ntos.h>
|
||||
|
||||
//#define NDEBUG
|
||||
#include <debug.h>
|
||||
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*/
|
||||
/* $Id: dirctl.c,v 1.5 2003/02/13 22:24:16 hbirr Exp $
|
||||
/* $Id: dirctl.c,v 1.6 2003/08/07 11:47:32 silverblade Exp $
|
||||
*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS kernel
|
||||
|
@ -494,14 +494,14 @@ NtfsQueryDirectory(PDEVICE_OBJECT DeviceObject,
|
|||
PCCB Ccb;
|
||||
FCB TempFcb;
|
||||
BOOLEAN First = FALSE;
|
||||
PIO_STACK_LOCATION Stack;
|
||||
PEXTENDED_IO_STACK_LOCATION Stack;
|
||||
PFILE_OBJECT FileObject;
|
||||
NTSTATUS Status = STATUS_SUCCESS;
|
||||
|
||||
DPRINT1("NtfsQueryDirectory() called\n");
|
||||
|
||||
DeviceExtension = DeviceObject->DeviceExtension;
|
||||
Stack = IoGetCurrentIrpStackLocation(Irp);
|
||||
Stack = (PEXTENDED_IO_STACK_LOCATION) IoGetCurrentIrpStackLocation(Irp);
|
||||
FileObject = Stack->FileObject;
|
||||
|
||||
Ccb = (PCCB)FileObject->FsContext2;
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*/
|
||||
/* $Id: fcb.c,v 1.8 2003/07/21 21:53:47 royce Exp $
|
||||
/* $Id: fcb.c,v 1.9 2003/08/07 11:47:32 silverblade Exp $
|
||||
*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS kernel
|
||||
|
@ -32,6 +32,8 @@
|
|||
//#define NDEBUG
|
||||
#include <debug.h>
|
||||
|
||||
#include <ntos.h>
|
||||
|
||||
#include "ntfs.h"
|
||||
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* $Id: dir.c,v 1.30 2003/07/24 20:52:58 chorns Exp $
|
||||
* $Id: dir.c,v 1.31 2003/08/07 11:47:32 silverblade Exp $
|
||||
*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS kernel
|
||||
|
@ -207,6 +207,8 @@ NTSTATUS DoQuery (PVFAT_IRP_CONTEXT IrpContext)
|
|||
VFATFCB tmpFcb;
|
||||
PVFATCCB pCcb;
|
||||
BOOLEAN First = FALSE;
|
||||
|
||||
PEXTENDED_IO_STACK_LOCATION Stack = (PEXTENDED_IO_STACK_LOCATION) IrpContext->Stack;
|
||||
|
||||
pCcb = (PVFATCCB) IrpContext->FileObject->FsContext2;
|
||||
pFcb = (PVFATFCB) IrpContext->FileObject->FsContext;
|
||||
|
@ -218,11 +220,11 @@ NTSTATUS DoQuery (PVFAT_IRP_CONTEXT IrpContext)
|
|||
}
|
||||
|
||||
// Obtain the callers parameters
|
||||
BufferLength = IrpContext->Stack->Parameters.QueryDirectory.Length;
|
||||
pSearchPattern = IrpContext->Stack->Parameters.QueryDirectory.FileName;
|
||||
BufferLength = Stack->Parameters.QueryDirectory.Length;
|
||||
pSearchPattern = Stack->Parameters.QueryDirectory.FileName;
|
||||
FileInformationClass =
|
||||
IrpContext->Stack->Parameters.QueryDirectory.FileInformationClass;
|
||||
FileIndex = IrpContext->Stack->Parameters.QueryDirectory.FileIndex;
|
||||
Stack->Parameters.QueryDirectory.FileInformationClass;
|
||||
FileIndex = Stack->Parameters.QueryDirectory.FileIndex;
|
||||
if (pSearchPattern)
|
||||
{
|
||||
if (!pCcb->DirectorySearchPattern)
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: fcb.c,v 1.32 2003/07/24 20:52:58 chorns Exp $
|
||||
/* $Id: fcb.c,v 1.33 2003/08/07 11:47:32 silverblade Exp $
|
||||
*
|
||||
*
|
||||
* FILE: fcb.c
|
||||
|
@ -14,6 +14,7 @@
|
|||
#include <ddk/ntddk.h>
|
||||
#include <wchar.h>
|
||||
#include <limits.h>
|
||||
#include <ntos.h>
|
||||
|
||||
#define NDEBUG
|
||||
#include <debug.h>
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*/
|
||||
/* $Id: fsctl.c,v 1.20 2003/07/24 20:52:58 chorns Exp $
|
||||
/* $Id: fsctl.c,v 1.21 2003/08/07 11:47:32 silverblade Exp $
|
||||
*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS kernel
|
||||
|
@ -29,6 +29,8 @@
|
|||
#include <ddk/ntddk.h>
|
||||
#include <wchar.h>
|
||||
|
||||
#include <ntos.h>
|
||||
|
||||
#define NDEBUG
|
||||
#include <debug.h>
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
/* $Id: rw.c,v 1.59 2003/07/24 20:52:58 chorns Exp $
|
||||
/* $Id: rw.c,v 1.60 2003/08/07 11:47:32 silverblade Exp $
|
||||
*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS kernel
|
||||
|
@ -15,6 +15,8 @@
|
|||
#include <wchar.h>
|
||||
#include <ntos/minmax.h>
|
||||
|
||||
#include <ntos.h>
|
||||
|
||||
#define NDEBUG
|
||||
#include <debug.h>
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: volume.c,v 1.22 2003/07/24 20:52:58 chorns Exp $
|
||||
/* $Id: volume.c,v 1.23 2003/08/07 11:47:32 silverblade Exp $
|
||||
*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS kernel
|
||||
|
@ -248,6 +248,7 @@ NTSTATUS VfatSetVolumeInformation(PVFAT_IRP_CONTEXT IrpContext)
|
|||
NTSTATUS Status = STATUS_SUCCESS;
|
||||
PVOID SystemBuffer;
|
||||
ULONG BufferLength;
|
||||
PEXTENDED_IO_STACK_LOCATION Stack = (PEXTENDED_IO_STACK_LOCATION) IrpContext->Stack;
|
||||
|
||||
/* PRECONDITION */
|
||||
assert(IrpContext);
|
||||
|
@ -260,8 +261,8 @@ NTSTATUS VfatSetVolumeInformation(PVFAT_IRP_CONTEXT IrpContext)
|
|||
return VfatQueueRequest (IrpContext);
|
||||
}
|
||||
|
||||
FsInformationClass = IrpContext->Stack->Parameters.SetVolume.FsInformationClass;
|
||||
BufferLength = IrpContext->Stack->Parameters.SetVolume.Length;
|
||||
FsInformationClass = Stack->Parameters.SetVolume.FsInformationClass;
|
||||
BufferLength = Stack->Parameters.SetVolume.Length;
|
||||
SystemBuffer = IrpContext->Irp->AssociatedIrp.SystemBuffer;
|
||||
|
||||
DPRINT1("FsInformationClass %d\n", FsInformationClass);
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#ifndef __INCLUDE_DDK_FSTYPES_H
|
||||
#define __INCLUDE_DDK_FSTYPES_H
|
||||
/* $Id: fstypes.h,v 1.11 2003/06/07 10:14:39 chorns Exp $ */
|
||||
/* $Id: fstypes.h,v 1.12 2003/08/07 11:47:32 silverblade Exp $ */
|
||||
|
||||
#define FSRTL_TAG TAG('F','S','r','t')
|
||||
|
||||
|
@ -10,6 +10,9 @@ typedef LBN *PLBN;
|
|||
typedef ULONG VBN;
|
||||
typedef VBN *PVBN;
|
||||
|
||||
|
||||
#ifndef __USE_W32API
|
||||
|
||||
typedef struct _FILE_LOCK_INFO {
|
||||
LARGE_INTEGER StartingByte;
|
||||
LARGE_INTEGER Length;
|
||||
|
@ -20,11 +23,6 @@ typedef struct _FILE_LOCK_INFO {
|
|||
LARGE_INTEGER EndingByte;
|
||||
} FILE_LOCK_INFO, *PFILE_LOCK_INFO;
|
||||
|
||||
typedef struct _FILE_LOCK_GRANTED {
|
||||
LIST_ENTRY ListEntry;
|
||||
FILE_LOCK_INFO Lock;
|
||||
} FILE_LOCK_GRANTED, *PFILE_LOCK_GRANTED;
|
||||
|
||||
typedef NTSTATUS (*PCOMPLETE_LOCK_IRP_ROUTINE) (
|
||||
IN PVOID Context,
|
||||
IN PIRP Irp
|
||||
|
@ -92,4 +90,12 @@ typedef VOID
|
|||
|
||||
typedef PVOID OPLOCK, *POPLOCK;
|
||||
|
||||
#endif /* __USE_W32API */
|
||||
|
||||
typedef struct _FILE_LOCK_GRANTED {
|
||||
LIST_ENTRY ListEntry;
|
||||
FILE_LOCK_INFO Lock;
|
||||
} FILE_LOCK_GRANTED, *PFILE_LOCK_GRANTED;
|
||||
|
||||
|
||||
#endif /* __INCLUDE_DDK_FSFUNCS_H */
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#ifndef _INCLUDE_DDK_IOFUNCS_H
|
||||
#define _INCLUDE_DDK_IOFUNCS_H
|
||||
/* $Id: iofuncs.h,v 1.38 2003/06/07 10:14:39 chorns Exp $ */
|
||||
/* $Id: iofuncs.h,v 1.39 2003/08/07 11:47:32 silverblade Exp $ */
|
||||
|
||||
/* --- EXPORTED BY NTOSKRNL --- */
|
||||
|
||||
|
@ -939,13 +939,17 @@ IoReportResourceUsage (
|
|||
((PDRIVER_CANCEL)InterlockedExchangePointer(&(Irp)->CancelRoutine, \
|
||||
NewCancelRoutine))
|
||||
|
||||
#define IoSetCompletionRoutine(Irp,Routine,Context,Success,Error,Cancel) \
|
||||
// AG: Context is now NewContext, otherwise we end up with this:
|
||||
// param->LocalLength=(LocalLength)
|
||||
// ...which isn't possible.
|
||||
|
||||
#define IoSetCompletionRoutine(Irp,Routine,NewContext,Success,Error,Cancel) \
|
||||
{ \
|
||||
PIO_STACK_LOCATION param; \
|
||||
assert((Success)||(Error)||(Cancel)?(Routine)!=NULL:TRUE); \
|
||||
param = IoGetNextIrpStackLocation((Irp)); \
|
||||
param->CompletionRoutine=(Routine); \
|
||||
param->CompletionContext=(Context); \
|
||||
param->Context=(NewContext); \
|
||||
param->Control = 0; \
|
||||
if ((Success)) \
|
||||
param->Control = SL_INVOKE_ON_SUCCESS; \
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: iotypes.h,v 1.50 2003/07/17 16:57:38 silverblade Exp $
|
||||
/* $Id: iotypes.h,v 1.51 2003/08/07 11:47:32 silverblade Exp $
|
||||
*
|
||||
*/
|
||||
|
||||
|
@ -23,6 +23,11 @@ extern POBJECT_TYPE IMPORTED IoDriverObjectType;
|
|||
extern POBJECT_TYPE IMPORTED IoFileObjectType;
|
||||
#endif
|
||||
|
||||
|
||||
// from winddk.h
|
||||
#define POINTER_ALIGNMENT
|
||||
|
||||
|
||||
/*
|
||||
* These are referenced before they can be fully defined
|
||||
*/
|
||||
|
@ -294,6 +299,8 @@ typedef struct
|
|||
/*
|
||||
* PURPOSE: IRP stack location
|
||||
*/
|
||||
|
||||
/*
|
||||
typedef struct __attribute__((packed)) _IO_STACK_LOCATION
|
||||
{
|
||||
UCHAR MajorFunction;
|
||||
|
@ -462,9 +469,9 @@ typedef struct __attribute__((packed)) _IO_STACK_LOCATION
|
|||
PCM_RESOURCE_LIST AllocatedResources;
|
||||
PCM_RESOURCE_LIST AllocatedResourcesTranslated;
|
||||
} StartDevice;
|
||||
|
||||
*/
|
||||
/* Parameters for IRP_MN_SCSI_CLASS */
|
||||
struct
|
||||
/* struct
|
||||
{
|
||||
struct _SCSI_REQUEST_BLOCK *Srb;
|
||||
} Scsi;
|
||||
|
@ -476,9 +483,9 @@ typedef struct __attribute__((packed)) _IO_STACK_LOCATION
|
|||
ULONG Key;
|
||||
LARGE_INTEGER ByteOffset;
|
||||
} LockControl;
|
||||
|
||||
*/
|
||||
/* Paramters for other calls */
|
||||
struct
|
||||
/* struct
|
||||
{
|
||||
PVOID Argument1;
|
||||
PVOID Argument2;
|
||||
|
@ -493,7 +500,240 @@ typedef struct __attribute__((packed)) _IO_STACK_LOCATION
|
|||
PIO_COMPLETION_ROUTINE CompletionRoutine;
|
||||
PVOID CompletionContext;
|
||||
|
||||
} __attribute__((packed)) IO_STACK_LOCATION, *PIO_STACK_LOCATION;
|
||||
} __attribute__((packed)) IO_STACK_LOCATION, *PIO_STACK_LOCATION;*/
|
||||
|
||||
typedef struct _IO_STACK_LOCATION {
|
||||
UCHAR MajorFunction;
|
||||
UCHAR MinorFunction;
|
||||
UCHAR Flags;
|
||||
UCHAR Control;
|
||||
union {
|
||||
struct {
|
||||
PIO_SECURITY_CONTEXT SecurityContext;
|
||||
ULONG Options;
|
||||
USHORT POINTER_ALIGNMENT FileAttributes;
|
||||
USHORT ShareAccess;
|
||||
ULONG POINTER_ALIGNMENT EaLength;
|
||||
} Create;
|
||||
struct {
|
||||
ULONG Length;
|
||||
ULONG POINTER_ALIGNMENT Key;
|
||||
LARGE_INTEGER ByteOffset;
|
||||
} Read;
|
||||
struct {
|
||||
ULONG Length;
|
||||
ULONG POINTER_ALIGNMENT Key;
|
||||
LARGE_INTEGER ByteOffset;
|
||||
} Write;
|
||||
struct {
|
||||
ULONG Length;
|
||||
FILE_INFORMATION_CLASS POINTER_ALIGNMENT FileInformationClass;
|
||||
} QueryFile;
|
||||
struct {
|
||||
ULONG Length;
|
||||
FILE_INFORMATION_CLASS POINTER_ALIGNMENT FileInformationClass;
|
||||
struct _FILE_OBJECT* FileObject;
|
||||
union {
|
||||
struct {
|
||||
BOOLEAN ReplaceIfExists;
|
||||
BOOLEAN AdvanceOnly;
|
||||
};
|
||||
ULONG ClusterCount;
|
||||
HANDLE DeleteHandle;
|
||||
};
|
||||
} SetFile;
|
||||
struct {
|
||||
ULONG Length;
|
||||
FS_INFORMATION_CLASS POINTER_ALIGNMENT FsInformationClass;
|
||||
} QueryVolume;
|
||||
struct {
|
||||
ULONG OutputBufferLength;
|
||||
ULONG POINTER_ALIGNMENT InputBufferLength;
|
||||
ULONG POINTER_ALIGNMENT IoControlCode;
|
||||
PVOID Type3InputBuffer;
|
||||
} DeviceIoControl;
|
||||
struct {
|
||||
SECURITY_INFORMATION SecurityInformation;
|
||||
ULONG POINTER_ALIGNMENT Length;
|
||||
} QuerySecurity;
|
||||
struct {
|
||||
SECURITY_INFORMATION SecurityInformation;
|
||||
PSECURITY_DESCRIPTOR SecurityDescriptor;
|
||||
} SetSecurity;
|
||||
struct {
|
||||
struct _VPB* Vpb;
|
||||
struct _DEVICE_OBJECT* DeviceObject;
|
||||
} MountVolume;
|
||||
struct {
|
||||
struct _VPB* Vpb;
|
||||
struct _DEVICE_OBJECT* DeviceObject;
|
||||
} VerifyVolume;
|
||||
struct {
|
||||
struct _SCSI_REQUEST_BLOCK *Srb;
|
||||
} Scsi;
|
||||
struct {
|
||||
DEVICE_RELATION_TYPE Type;
|
||||
} QueryDeviceRelations;
|
||||
struct {
|
||||
CONST GUID *InterfaceType;
|
||||
USHORT Size;
|
||||
USHORT Version;
|
||||
PINTERFACE Interface;
|
||||
PVOID InterfaceSpecificData;
|
||||
} QueryInterface;
|
||||
struct {
|
||||
PDEVICE_CAPABILITIES Capabilities;
|
||||
} DeviceCapabilities;
|
||||
struct {
|
||||
PIO_RESOURCE_REQUIREMENTS_LIST IoResourceRequirementList;
|
||||
} FilterResourceRequirements;
|
||||
struct {
|
||||
ULONG WhichSpace;
|
||||
PVOID Buffer;
|
||||
ULONG Offset;
|
||||
ULONG POINTER_ALIGNMENT Length;
|
||||
} ReadWriteConfig;
|
||||
struct {
|
||||
BOOLEAN Lock;
|
||||
} SetLock;
|
||||
struct {
|
||||
BUS_QUERY_ID_TYPE IdType;
|
||||
} QueryId;
|
||||
struct {
|
||||
DEVICE_TEXT_TYPE DeviceTextType;
|
||||
LCID POINTER_ALIGNMENT LocaleId;
|
||||
} QueryDeviceText;
|
||||
struct {
|
||||
BOOLEAN InPath;
|
||||
BOOLEAN Reserved[3];
|
||||
DEVICE_USAGE_NOTIFICATION_TYPE POINTER_ALIGNMENT Type;
|
||||
} UsageNotification;
|
||||
struct {
|
||||
SYSTEM_POWER_STATE PowerState;
|
||||
} WaitWake;
|
||||
struct {
|
||||
PPOWER_SEQUENCE PowerSequence;
|
||||
} PowerSequence;
|
||||
struct {
|
||||
ULONG SystemContext;
|
||||
POWER_STATE_TYPE POINTER_ALIGNMENT Type;
|
||||
POWER_STATE POINTER_ALIGNMENT State;
|
||||
POWER_ACTION POINTER_ALIGNMENT ShutdownType;
|
||||
} Power;
|
||||
struct {
|
||||
PCM_RESOURCE_LIST AllocatedResources;
|
||||
PCM_RESOURCE_LIST AllocatedResourcesTranslated;
|
||||
} StartDevice;
|
||||
struct {
|
||||
ULONG_PTR ProviderId;
|
||||
PVOID DataPath;
|
||||
ULONG BufferSize;
|
||||
PVOID Buffer;
|
||||
} WMI;
|
||||
struct {
|
||||
PVOID Argument1;
|
||||
PVOID Argument2;
|
||||
PVOID Argument3;
|
||||
PVOID Argument4;
|
||||
} Others;
|
||||
} Parameters;
|
||||
struct _DEVICE_OBJECT* DeviceObject;
|
||||
struct _FILE_OBJECT* FileObject;
|
||||
PIO_COMPLETION_ROUTINE CompletionRoutine;
|
||||
PVOID Context;
|
||||
} IO_STACK_LOCATION, *PIO_STACK_LOCATION;
|
||||
|
||||
|
||||
// AG: The commented lines in this structure are due to PMAILSLOT_CREATE_PARAMETERS
|
||||
// and PNAMED_PIPE_CREATE_PARAMETERS and PFILE_GET_QUOTA_INFORMATION not being
|
||||
// defined.
|
||||
|
||||
typedef struct _EXTENDED_IO_STACK_LOCATION {
|
||||
|
||||
/* Included for padding */
|
||||
UCHAR MajorFunction;
|
||||
UCHAR MinorFunction;
|
||||
UCHAR Flags;
|
||||
UCHAR Control;
|
||||
|
||||
union {
|
||||
|
||||
// struct {
|
||||
// PIO_SECURITY_CONTEXT SecurityContext;
|
||||
// ULONG Options;
|
||||
// USHORT Reserved;
|
||||
// USHORT ShareAccess;
|
||||
// PMAILSLOT_CREATE_PARAMETERS Parameters;
|
||||
// } CreateMailslot;
|
||||
|
||||
// struct {
|
||||
// PIO_SECURITY_CONTEXT SecurityContext;
|
||||
// ULONG Options;
|
||||
// USHORT Reserved;
|
||||
// USHORT ShareAccess;
|
||||
// PNAMED_PIPE_CREATE_PARAMETERS Parameters;
|
||||
// } CreatePipe;
|
||||
|
||||
struct {
|
||||
ULONG OutputBufferLength;
|
||||
ULONG InputBufferLength;
|
||||
ULONG FsControlCode;
|
||||
PVOID Type3InputBuffer;
|
||||
} FileSystemControl;
|
||||
|
||||
struct {
|
||||
PLARGE_INTEGER Length;
|
||||
ULONG Key;
|
||||
LARGE_INTEGER ByteOffset;
|
||||
} LockControl;
|
||||
|
||||
struct {
|
||||
ULONG Length;
|
||||
ULONG CompletionFilter;
|
||||
} NotifyDirectory;
|
||||
|
||||
struct {
|
||||
ULONG Length;
|
||||
PUNICODE_STRING FileName;
|
||||
FILE_INFORMATION_CLASS FileInformationClass;
|
||||
ULONG FileIndex;
|
||||
} QueryDirectory;
|
||||
|
||||
struct {
|
||||
ULONG Length;
|
||||
PVOID EaList;
|
||||
ULONG EaListLength;
|
||||
ULONG EaIndex;
|
||||
} QueryEa;
|
||||
|
||||
// struct {
|
||||
// ULONG Length;
|
||||
// PSID StartSid;
|
||||
// PFILE_GET_QUOTA_INFORMATION SidList;
|
||||
// ULONG SidListLength;
|
||||
// } QueryQuota;
|
||||
|
||||
struct {
|
||||
ULONG Length;
|
||||
} SetEa;
|
||||
|
||||
struct {
|
||||
ULONG Length;
|
||||
} SetQuota;
|
||||
|
||||
struct {
|
||||
ULONG Length;
|
||||
FS_INFORMATION_CLASS FsInformationClass;
|
||||
} SetVolume;
|
||||
|
||||
} Parameters;
|
||||
struct _DEVICE_OBJECT* DeviceObject;
|
||||
struct _FILE_OBJECT* FileObject;
|
||||
PIO_COMPLETION_ROUTINE CompletionRoutine;
|
||||
PVOID Context;
|
||||
|
||||
} EXTENDED_IO_STACK_LOCATION, *PEXTENDED_IO_STACK_LOCATION;
|
||||
|
||||
|
||||
|
||||
typedef struct _IO_STATUS_BLOCK
|
||||
|
|
|
@ -27,19 +27,8 @@ VOID STDCALL KeAcquireSpinLock (PKSPIN_LOCK SpinLock,
|
|||
|
||||
VOID STDCALL KeAcquireSpinLockAtDpcLevel (IN PKSPIN_LOCK SpinLock);
|
||||
|
||||
//NTOSAPI
|
||||
//DDKFASTAPI
|
||||
|
||||
//STDCALL
|
||||
//VOID
|
||||
//KefAcquireSpinLockAtDpcLevel(
|
||||
// IN PKSPIN_LOCK SpinLock);
|
||||
|
||||
#define KefAcquireSpinLockAtDpcLevel KeAcquireSpinLockAtDpcLevel
|
||||
|
||||
//NTOSAPI
|
||||
//DDKFASTAPI
|
||||
|
||||
VOID
|
||||
STDCALL
|
||||
KeReleaseSpinLockFromDpcLevel(
|
||||
|
@ -58,7 +47,6 @@ KeReleaseSpinLockFromDpcLevel(
|
|||
* knows what file/line number where the bug check occured
|
||||
*/
|
||||
VOID STDCALL KeBugCheck (ULONG BugCheckCode);
|
||||
#define KEBUGCHECK(a) DbgPrint("KeBugCheck at %s:%i\n",__FILE__,__LINE__), KeBugCheck(a)
|
||||
|
||||
/*
|
||||
* FUNCTION: Brings the system down in a controlled manner when an
|
||||
|
@ -76,7 +64,6 @@ VOID STDCALL KeBugCheckEx (ULONG BugCheckCode,
|
|||
ULONG BugCheckParameter2,
|
||||
ULONG BugCheckParameter3,
|
||||
ULONG BugCheckParameter4);
|
||||
#define KEBUGCHECKEX(a,b,c,d,e) DbgPrint("KeBugCheckEx at %s:%i\n",__FILE__,__LINE__), KeBugCheckEx(a,b,c,d,e)
|
||||
|
||||
BOOLEAN STDCALL KeCancelTimer (PKTIMER Timer);
|
||||
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
|
||||
#ifdef __USE_W32API
|
||||
#include <ddk/ntapi.h>
|
||||
#include <napi/types.h>
|
||||
#endif /* !__USE_W32API */
|
||||
|
||||
#include <ntos/security.h>
|
||||
|
@ -52,9 +53,9 @@ typedef struct _LPC_MESSAGE
|
|||
USHORT MessageSize;
|
||||
USHORT MessageType;
|
||||
USHORT VirtualRangesOffset;
|
||||
CLIENT_ID Cid;
|
||||
CLIENT_ID ClientId;
|
||||
ULONG MessageId;
|
||||
ULONG SharedSectionSize; // CallbackID
|
||||
ULONG SectionSize; // CallbackID
|
||||
} LPC_MESSAGE, *PLPC_MESSAGE;
|
||||
|
||||
#endif /* !__USE_W32API */
|
||||
|
|
|
@ -3,12 +3,16 @@
|
|||
|
||||
#define UNIMPLEMENTED DbgPrint("%s in %s:%d is unimplemented\n",__FUNCTION__,__FILE__,__LINE__);
|
||||
|
||||
#ifndef __USE_W32API
|
||||
|
||||
#ifndef NASSERT
|
||||
#define assert(x) if (!(x)) {DbgPrint("Assertion "#x" failed at %s:%d\n", __FILE__,__LINE__); for(;;);}
|
||||
#else
|
||||
#define assert(x)
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
#ifdef NDEBUG
|
||||
#define DPRINT(args...)
|
||||
#define CHECKPOINT
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#ifndef _NTOS_H
|
||||
#define _NTOS_H
|
||||
/* $Id: ntos.h,v 1.12 2003/06/07 16:16:38 chorns Exp $ */
|
||||
/* $Id: ntos.h,v 1.13 2003/08/07 11:47:33 silverblade Exp $ */
|
||||
|
||||
#if defined(NTOS_MODE_USER)
|
||||
// include windows.h before ntddk.h to get user mode prototype for InterlockedXxx functions
|
||||
|
@ -87,6 +87,7 @@
|
|||
#include "ntos/haltypes.h"
|
||||
#include "ntos/halfuncs.h"
|
||||
#include "ntos/kdfuncs.h"
|
||||
#include "ntos/kefuncs.h" // AG
|
||||
#include "ntos/obtypes.h"
|
||||
#include "ntos/tss.h"
|
||||
#include "rosrtl/thread.h"
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: filelock.c,v 1.9 2003/07/11 01:23:14 royce Exp $
|
||||
/* $Id: filelock.c,v 1.10 2003/08/07 11:47:33 silverblade Exp $
|
||||
*
|
||||
* reactos/ntoskrnl/fs/filelock.c
|
||||
*
|
||||
|
@ -540,14 +540,14 @@ FsRtlpCompletePendingLocks(
|
|||
//walk pending list, FIFO order, try 2 complete locks
|
||||
PLIST_ENTRY EnumEntry;
|
||||
PIRP Irp;
|
||||
PIO_STACK_LOCATION Stack;
|
||||
PEXTENDED_IO_STACK_LOCATION Stack;
|
||||
|
||||
EnumEntry = LockToc->PendingListHead.Blink;
|
||||
while (EnumEntry != &LockToc->PendingListHead)
|
||||
{
|
||||
Irp = CONTAINING_RECORD(EnumEntry,IRP, Tail.Overlay.ListEntry);
|
||||
|
||||
Stack = IoGetCurrentIrpStackLocation(Irp);
|
||||
Stack = (PEXTENDED_IO_STACK_LOCATION) IoGetCurrentIrpStackLocation(Irp);
|
||||
if (FsRtlpAddLock(LockToc,
|
||||
Stack->FileObject,
|
||||
&Stack->Parameters.LockControl.ByteOffset,
|
||||
|
@ -734,7 +734,7 @@ FsRtlpDumpFileLocks(
|
|||
PFILE_LOCK_GRANTED Granted;
|
||||
PIRP Irp;
|
||||
PLIST_ENTRY EnumEntry;
|
||||
PIO_STACK_LOCATION Stack;
|
||||
PEXTENDED_IO_STACK_LOCATION Stack;
|
||||
|
||||
assert(FileLock);
|
||||
LockToc = FileLock->LockInformation;
|
||||
|
@ -774,7 +774,7 @@ FsRtlpDumpFileLocks(
|
|||
{
|
||||
Irp = CONTAINING_RECORD(EnumEntry, IRP , Tail.Overlay.ListEntry );
|
||||
|
||||
Stack = IoGetCurrentIrpStackLocation(Irp);
|
||||
Stack = (PEXTENDED_IO_STACK_LOCATION) IoGetCurrentIrpStackLocation(Irp);
|
||||
|
||||
DPRINT1("%s, start: %i, len: %i, end: %i, key: %i, proc: 0x%X, fob: 0x%X\n",
|
||||
(Stack->Flags & SL_EXCLUSIVE_LOCK) ? "EXCL" : "SHRD",
|
||||
|
@ -1083,12 +1083,12 @@ FsRtlProcessFileLock (
|
|||
IN PVOID Context OPTIONAL
|
||||
)
|
||||
{
|
||||
PIO_STACK_LOCATION Stack;
|
||||
PEXTENDED_IO_STACK_LOCATION Stack;
|
||||
NTSTATUS Status;
|
||||
IO_STATUS_BLOCK LocalIoStatus;
|
||||
|
||||
assert(FileLock);
|
||||
Stack = IoGetCurrentIrpStackLocation(Irp);
|
||||
Stack = (PEXTENDED_IO_STACK_LOCATION) IoGetCurrentIrpStackLocation(Irp);
|
||||
Irp->IoStatus.Information = 0;
|
||||
|
||||
switch(Stack->MinorFunction)
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: dir.c,v 1.18 2003/07/11 01:23:14 royce Exp $
|
||||
/* $Id: dir.c,v 1.19 2003/08/07 11:47:33 silverblade Exp $
|
||||
*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS kernel
|
||||
|
@ -91,7 +91,7 @@ NtQueryDirectoryFile(
|
|||
PDEVICE_OBJECT DeviceObject;
|
||||
PFILE_OBJECT FileObject;
|
||||
NTSTATUS Status;
|
||||
PIO_STACK_LOCATION IoStack;
|
||||
PEXTENDED_IO_STACK_LOCATION IoStack;
|
||||
IO_STATUS_BLOCK IoSB;
|
||||
|
||||
DPRINT("NtQueryDirectoryFile()\n");
|
||||
|
@ -125,7 +125,7 @@ NtQueryDirectoryFile(
|
|||
KeResetEvent( &FileObject->Event );
|
||||
Irp->UserBuffer=FileInformation;
|
||||
|
||||
IoStack = IoGetNextIrpStackLocation(Irp);
|
||||
IoStack = (PEXTENDED_IO_STACK_LOCATION) IoGetNextIrpStackLocation(Irp);
|
||||
|
||||
IoStack->MajorFunction = IRP_MJ_DIRECTORY_CONTROL;
|
||||
IoStack->MinorFunction = IRP_MN_QUERY_DIRECTORY;
|
||||
|
@ -146,7 +146,7 @@ NtQueryDirectoryFile(
|
|||
{
|
||||
IoStack->Flags = IoStack->Flags | SL_INDEX_SPECIFIED;
|
||||
}
|
||||
|
||||
|
||||
IoStack->Parameters.QueryDirectory.FileInformationClass =
|
||||
FileInformationClass;
|
||||
IoStack->Parameters.QueryDirectory.FileName = FileName;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: fs.c,v 1.35 2003/07/10 15:47:00 royce Exp $
|
||||
/* $Id: fs.c,v 1.36 2003/08/07 11:47:33 silverblade Exp $
|
||||
*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS kernel
|
||||
|
@ -75,7 +75,7 @@ NtFsControlFile (
|
|||
PFILE_OBJECT FileObject;
|
||||
PDEVICE_OBJECT DeviceObject;
|
||||
PIRP Irp;
|
||||
PIO_STACK_LOCATION StackPtr;
|
||||
PEXTENDED_IO_STACK_LOCATION StackPtr;
|
||||
PKEVENT ptrEvent;
|
||||
IO_STATUS_BLOCK IoSB;
|
||||
|
||||
|
@ -138,7 +138,7 @@ NtFsControlFile (
|
|||
Irp->Overlay.AsynchronousParameters.UserApcRoutine = ApcRoutine;
|
||||
Irp->Overlay.AsynchronousParameters.UserApcContext = ApcContext;
|
||||
|
||||
StackPtr = IoGetNextIrpStackLocation(Irp);
|
||||
StackPtr = (PEXTENDED_IO_STACK_LOCATION) IoGetNextIrpStackLocation(Irp);
|
||||
StackPtr->FileObject = FileObject;
|
||||
StackPtr->DeviceObject = DeviceObject;
|
||||
StackPtr->Parameters.FileSystemControl.InputBufferLength = InputBufferSize;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: irp.c,v 1.52 2003/07/10 15:47:00 royce Exp $
|
||||
/* $Id: irp.c,v 1.53 2003/08/07 11:47:33 silverblade Exp $
|
||||
*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS kernel
|
||||
|
@ -267,7 +267,7 @@ IofCompleteRequest(PIRP Irp,
|
|||
{
|
||||
Status = Irp->Stack[i].CompletionRoutine(DeviceObject,
|
||||
Irp,
|
||||
Irp->Stack[i].CompletionContext);
|
||||
Irp->Stack[i].Context);
|
||||
|
||||
if (Status == STATUS_MORE_PROCESSING_REQUIRED)
|
||||
{
|
||||
|
|
|
@ -57,7 +57,7 @@ NtLockFile (
|
|||
PLARGE_INTEGER LocalLength = NULL;
|
||||
PKEVENT Event = NULL;
|
||||
PIRP Irp = NULL;
|
||||
PIO_STACK_LOCATION StackPtr;
|
||||
PEXTENDED_IO_STACK_LOCATION StackPtr;
|
||||
IO_STATUS_BLOCK LocalIoStatusBlock;
|
||||
PIO_STATUS_BLOCK IoStatusBlock;
|
||||
PDEVICE_OBJECT DeviceObject;
|
||||
|
@ -127,7 +127,7 @@ NtLockFile (
|
|||
Irp->UserIosb = IoStatusBlock;
|
||||
Irp->Tail.Overlay.Thread = PsGetCurrentThread();
|
||||
|
||||
StackPtr = IoGetNextIrpStackLocation(Irp);
|
||||
StackPtr = (PEXTENDED_IO_STACK_LOCATION) IoGetNextIrpStackLocation(Irp);
|
||||
StackPtr->MajorFunction = IRP_MJ_LOCK_CONTROL;
|
||||
StackPtr->MinorFunction = IRP_MN_LOCK;
|
||||
StackPtr->FileObject = FileObject;
|
||||
|
@ -150,7 +150,7 @@ NtLockFile (
|
|||
StackPtr->Parameters.LockControl.Length = LocalLength;
|
||||
StackPtr->Parameters.LockControl.ByteOffset = *ByteOffset;
|
||||
StackPtr->Parameters.LockControl.Key = Key ? *Key : 0;
|
||||
|
||||
|
||||
IoSetCompletionRoutine(
|
||||
Irp,
|
||||
NtLockFileCompletionRoutine,
|
||||
|
@ -221,7 +221,7 @@ NtUnlockFile (
|
|||
PFILE_OBJECT FileObject = NULL;
|
||||
PLARGE_INTEGER LocalLength = NULL;
|
||||
PIRP Irp = NULL;
|
||||
PIO_STACK_LOCATION StackPtr;
|
||||
PEXTENDED_IO_STACK_LOCATION StackPtr;
|
||||
IO_STATUS_BLOCK LocalIoStatusBlock;
|
||||
PDEVICE_OBJECT DeviceObject;
|
||||
|
||||
|
@ -265,7 +265,7 @@ NtUnlockFile (
|
|||
Irp->UserIosb = &LocalIoStatusBlock;
|
||||
Irp->Tail.Overlay.Thread = PsGetCurrentThread();
|
||||
|
||||
StackPtr = IoGetNextIrpStackLocation(Irp);
|
||||
StackPtr = (PEXTENDED_IO_STACK_LOCATION) IoGetNextIrpStackLocation(Irp);
|
||||
StackPtr->MajorFunction = IRP_MJ_LOCK_CONTROL;
|
||||
StackPtr->MinorFunction = IRP_MN_UNLOCK_SINGLE;
|
||||
StackPtr->DeviceObject = DeviceObject;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: vpb.c,v 1.21 2003/07/10 15:47:00 royce Exp $
|
||||
/* $Id: vpb.c,v 1.22 2003/08/07 11:47:33 silverblade Exp $
|
||||
*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS kernel
|
||||
|
@ -287,7 +287,7 @@ NtSetVolumeInformationFile(IN HANDLE FileHandle,
|
|||
PDEVICE_OBJECT DeviceObject;
|
||||
PIRP Irp;
|
||||
NTSTATUS Status;
|
||||
PIO_STACK_LOCATION StackPtr;
|
||||
PEXTENDED_IO_STACK_LOCATION StackPtr;
|
||||
PVOID SystemBuffer;
|
||||
IO_STATUS_BLOCK IoSB;
|
||||
|
||||
|
@ -334,7 +334,7 @@ NtSetVolumeInformationFile(IN HANDLE FileHandle,
|
|||
Irp->UserIosb = &IoSB;
|
||||
Irp->Tail.Overlay.Thread = PsGetCurrentThread();
|
||||
|
||||
StackPtr = IoGetNextIrpStackLocation(Irp);
|
||||
StackPtr = (PEXTENDED_IO_STACK_LOCATION) IoGetNextIrpStackLocation(Irp);
|
||||
StackPtr->MajorFunction = IRP_MJ_SET_VOLUME_INFORMATION;
|
||||
StackPtr->MinorFunction = 0;
|
||||
StackPtr->Flags = 0;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: connect.c,v 1.18 2003/07/11 01:23:15 royce Exp $
|
||||
/* $Id: connect.c,v 1.19 2003/08/07 11:47:33 silverblade Exp $
|
||||
*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS kernel
|
||||
|
@ -96,7 +96,7 @@ EiConnectPort(IN PEPORT* ConnectedPort,
|
|||
sizeof(EPORT_CONNECT_REQUEST_MESSAGE) + RequestConnectDataLength;
|
||||
DPRINT("RequestMessageSize %d\n",
|
||||
RequestMessage->MessageHeader.MessageSize);
|
||||
RequestMessage->MessageHeader.SharedSectionSize = 0;
|
||||
RequestMessage->MessageHeader.SectionSize = 0;
|
||||
RequestMessage->ConnectingProcess = PsGetCurrentProcess();
|
||||
ObReferenceObjectByPointer(RequestMessage->ConnectingProcess,
|
||||
PROCESS_VM_OPERATION,
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: reply.c,v 1.18 2003/07/21 21:53:52 royce Exp $
|
||||
/* $Id: reply.c,v 1.19 2003/08/07 11:47:33 silverblade Exp $
|
||||
*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS kernel
|
||||
|
@ -61,8 +61,8 @@ EiReplyOrRequestPort (IN PEPORT Port,
|
|||
memcpy(&MessageReply->Message, LpcReply, LpcReply->MessageSize);
|
||||
}
|
||||
|
||||
MessageReply->Message.Cid.UniqueProcess = PsGetCurrentProcessId();
|
||||
MessageReply->Message.Cid.UniqueThread = PsGetCurrentThreadId();
|
||||
MessageReply->Message.ClientId.UniqueProcess = PsGetCurrentProcessId();
|
||||
MessageReply->Message.ClientId.UniqueThread = PsGetCurrentThreadId();
|
||||
MessageReply->Message.MessageType = MessageType;
|
||||
MessageReply->Message.MessageId = InterlockedIncrement((LONG *)&EiNextLpcMessageId);
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: wapi.c,v 1.29 2003/07/29 23:03:01 jimtabor Exp $
|
||||
/* $Id: wapi.c,v 1.30 2003/08/07 11:47:33 silverblade Exp $
|
||||
*
|
||||
* reactos/subsys/csrss/api/wapi.c
|
||||
*
|
||||
|
@ -96,7 +96,7 @@ static void Thread_Api2(HANDLE ServerPort)
|
|||
if ( LpcRequest.Header.MessageType == LPC_PORT_CLOSED )
|
||||
|
||||
{
|
||||
CsrFreeProcessData( (ULONG)LpcRequest.Header.Cid.UniqueProcess );
|
||||
CsrFreeProcessData( (ULONG)LpcRequest.Header.ClientId.UniqueProcess );
|
||||
NtClose(ServerPort);
|
||||
NtTerminateThread(NtCurrentThread(), STATUS_SUCCESS);
|
||||
continue;
|
||||
|
@ -106,7 +106,7 @@ static void Thread_Api2(HANDLE ServerPort)
|
|||
Reply = (PCSRSS_API_REPLY)&LpcReply;
|
||||
|
||||
ProcessData = CsrGetProcessData(
|
||||
(ULONG)LpcRequest.Header.Cid.UniqueProcess);
|
||||
(ULONG)LpcRequest.Header.ClientId.UniqueProcess);
|
||||
|
||||
// DisplayString(L"CSR: Received request\n");
|
||||
if( Request->Type >= (sizeof( CsrFuncs ) / sizeof( CsrFunc )) - 1 )
|
||||
|
@ -156,7 +156,7 @@ void Thread_Api(PVOID PortHandle)
|
|||
NtTerminateThread(NtCurrentThread(), Status);
|
||||
}
|
||||
|
||||
ProcessData = CsrGetProcessData((ULONG)Request.Header.Cid.UniqueProcess);
|
||||
ProcessData = CsrGetProcessData((ULONG)Request.Header.ClientId.UniqueProcess);
|
||||
ProcessData->CsrSectionViewBase = LpcRead.ViewBase;
|
||||
ProcessData->CsrSectionViewSize = LpcRead.ViewSize;
|
||||
|
||||
|
|
Loading…
Reference in a new issue