mirror of
https://github.com/reactos/reactos.git
synced 2025-08-05 05:32:55 +00:00
- Fix incorrect PFILE_MAILSLOT_SET_INFORMATION definition
- Fix MSFS to build with MSDDK. - Fix iotypes.h to be MSDDK compatible. svn path=/trunk/; revision=17648
This commit is contained in:
parent
f069c69225
commit
851e0f3f36
8 changed files with 44 additions and 29 deletions
|
@ -17,7 +17,7 @@
|
||||||
|
|
||||||
/* FUNCTIONS *****************************************************************/
|
/* FUNCTIONS *****************************************************************/
|
||||||
|
|
||||||
NTSTATUS STDCALL
|
NTSTATUS DEFAULTAPI
|
||||||
MsfsCreate(PDEVICE_OBJECT DeviceObject,
|
MsfsCreate(PDEVICE_OBJECT DeviceObject,
|
||||||
PIRP Irp)
|
PIRP Irp)
|
||||||
{
|
{
|
||||||
|
@ -101,7 +101,7 @@ MsfsCreate(PDEVICE_OBJECT DeviceObject,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
NTSTATUS STDCALL
|
NTSTATUS DEFAULTAPI
|
||||||
MsfsCreateMailslot(PDEVICE_OBJECT DeviceObject,
|
MsfsCreateMailslot(PDEVICE_OBJECT DeviceObject,
|
||||||
PIRP Irp)
|
PIRP Irp)
|
||||||
{
|
{
|
||||||
|
@ -229,7 +229,7 @@ MsfsCreateMailslot(PDEVICE_OBJECT DeviceObject,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
NTSTATUS STDCALL
|
NTSTATUS DEFAULTAPI
|
||||||
MsfsClose(PDEVICE_OBJECT DeviceObject,
|
MsfsClose(PDEVICE_OBJECT DeviceObject,
|
||||||
PIRP Irp)
|
PIRP Irp)
|
||||||
{
|
{
|
||||||
|
|
|
@ -60,13 +60,13 @@ MsfsSetMailslotInformation(PMSFS_FCB Fcb,
|
||||||
if (*BufferLength < sizeof(FILE_MAILSLOT_SET_INFORMATION))
|
if (*BufferLength < sizeof(FILE_MAILSLOT_SET_INFORMATION))
|
||||||
return(STATUS_BUFFER_OVERFLOW);
|
return(STATUS_BUFFER_OVERFLOW);
|
||||||
|
|
||||||
Fcb->Mailslot->TimeOut = Buffer->ReadTimeout;
|
Fcb->Mailslot->TimeOut = *Buffer->ReadTimeout;
|
||||||
|
|
||||||
return(STATUS_SUCCESS);
|
return(STATUS_SUCCESS);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
NTSTATUS STDCALL
|
NTSTATUS DEFAULTAPI
|
||||||
MsfsQueryInformation(PDEVICE_OBJECT DeviceObject,
|
MsfsQueryInformation(PDEVICE_OBJECT DeviceObject,
|
||||||
PIRP Irp)
|
PIRP Irp)
|
||||||
{
|
{
|
||||||
|
@ -132,7 +132,7 @@ MsfsQueryInformation(PDEVICE_OBJECT DeviceObject,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
NTSTATUS STDCALL
|
NTSTATUS DEFAULTAPI
|
||||||
MsfsSetInformation(PDEVICE_OBJECT DeviceObject,
|
MsfsSetInformation(PDEVICE_OBJECT DeviceObject,
|
||||||
PIRP Irp)
|
PIRP Irp)
|
||||||
{
|
{
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
|
|
||||||
/* FUNCTIONS *****************************************************************/
|
/* FUNCTIONS *****************************************************************/
|
||||||
|
|
||||||
NTSTATUS STDCALL
|
NTSTATUS DEFAULTAPI
|
||||||
MsfsFileSystemControl(PDEVICE_OBJECT DeviceObject,
|
MsfsFileSystemControl(PDEVICE_OBJECT DeviceObject,
|
||||||
PIRP Irp)
|
PIRP Irp)
|
||||||
{
|
{
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
|
|
||||||
/* FUNCTIONS *****************************************************************/
|
/* FUNCTIONS *****************************************************************/
|
||||||
|
|
||||||
NTSTATUS STDCALL
|
NTSTATUS NTAPI
|
||||||
DriverEntry(PDRIVER_OBJECT DriverObject,
|
DriverEntry(PDRIVER_OBJECT DriverObject,
|
||||||
PUNICODE_STRING RegistryPath)
|
PUNICODE_STRING RegistryPath)
|
||||||
{
|
{
|
||||||
|
|
|
@ -4,6 +4,22 @@
|
||||||
#include <ntifs.h>
|
#include <ntifs.h>
|
||||||
#include <ndk/iotypes.h>
|
#include <ndk/iotypes.h>
|
||||||
|
|
||||||
|
/*
|
||||||
|
* FIXME: GCC doesn't have a working option for defaulting to a calling
|
||||||
|
* convention. It will always default to cdecl. The MS DDK was designed
|
||||||
|
* for compilers which support this option, and thus some of their headers
|
||||||
|
* do not specify STDCALL or NTAPI everywhere. As such, callbacks will be
|
||||||
|
* interpreted as cdecl on gcc, while they should be stdcall. Defining
|
||||||
|
* NTAPI manually won't work either, since msvc will realize that the
|
||||||
|
* two definitions are different. So we have to use something to close
|
||||||
|
* the compatibility gap, until someone fixes gcc.
|
||||||
|
*/
|
||||||
|
#ifdef _MSC_VER
|
||||||
|
#define DEFAULTAPI
|
||||||
|
#else
|
||||||
|
#define DEFAULTAPI __stdcall
|
||||||
|
#endif
|
||||||
|
|
||||||
typedef struct _MSFS_DEVICE_EXTENSION
|
typedef struct _MSFS_DEVICE_EXTENSION
|
||||||
{
|
{
|
||||||
LIST_ENTRY MailslotListHead;
|
LIST_ENTRY MailslotListHead;
|
||||||
|
@ -48,16 +64,16 @@ typedef struct _MSFS_MESSAGE
|
||||||
|
|
||||||
#define KeUnlockMutex(x) KeReleaseMutex(x, FALSE);
|
#define KeUnlockMutex(x) KeReleaseMutex(x, FALSE);
|
||||||
|
|
||||||
NTSTATUS STDCALL MsfsCreate(PDEVICE_OBJECT DeviceObject, PIRP Irp);
|
NTSTATUS DEFAULTAPI MsfsCreate(PDEVICE_OBJECT DeviceObject, PIRP Irp);
|
||||||
NTSTATUS STDCALL MsfsCreateMailslot(PDEVICE_OBJECT DeviceObject, PIRP Irp);
|
NTSTATUS DEFAULTAPI MsfsCreateMailslot(PDEVICE_OBJECT DeviceObject, PIRP Irp);
|
||||||
NTSTATUS STDCALL MsfsClose(PDEVICE_OBJECT DeviceObject, PIRP Irp);
|
NTSTATUS DEFAULTAPI MsfsClose(PDEVICE_OBJECT DeviceObject, PIRP Irp);
|
||||||
|
|
||||||
NTSTATUS STDCALL MsfsQueryInformation(PDEVICE_OBJECT DeviceObject, PIRP Irp);
|
NTSTATUS DEFAULTAPI MsfsQueryInformation(PDEVICE_OBJECT DeviceObject, PIRP Irp);
|
||||||
NTSTATUS STDCALL MsfsSetInformation(PDEVICE_OBJECT DeviceObject, PIRP Irp);
|
NTSTATUS DEFAULTAPI MsfsSetInformation(PDEVICE_OBJECT DeviceObject, PIRP Irp);
|
||||||
|
|
||||||
NTSTATUS STDCALL MsfsRead(PDEVICE_OBJECT DeviceObject, PIRP Irp);
|
NTSTATUS DEFAULTAPI MsfsRead(PDEVICE_OBJECT DeviceObject, PIRP Irp);
|
||||||
NTSTATUS STDCALL MsfsWrite(PDEVICE_OBJECT DeviceObject, PIRP Irp);
|
NTSTATUS DEFAULTAPI MsfsWrite(PDEVICE_OBJECT DeviceObject, PIRP Irp);
|
||||||
|
|
||||||
NTSTATUS STDCALL MsfsFileSystemControl(PDEVICE_OBJECT DeviceObject, PIRP Irp);
|
NTSTATUS DEFAULTAPI MsfsFileSystemControl(PDEVICE_OBJECT DeviceObject, PIRP Irp);
|
||||||
|
|
||||||
#endif /* __SERVICES_FS_NP_NPFS_H */
|
#endif /* __SERVICES_FS_NP_NPFS_H */
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
|
|
||||||
/* FUNCTIONS *****************************************************************/
|
/* FUNCTIONS *****************************************************************/
|
||||||
|
|
||||||
NTSTATUS STDCALL
|
NTSTATUS DEFAULTAPI
|
||||||
MsfsRead(PDEVICE_OBJECT DeviceObject,
|
MsfsRead(PDEVICE_OBJECT DeviceObject,
|
||||||
PIRP Irp)
|
PIRP Irp)
|
||||||
{
|
{
|
||||||
|
@ -93,7 +93,7 @@ MsfsRead(PDEVICE_OBJECT DeviceObject,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
NTSTATUS STDCALL
|
NTSTATUS DEFAULTAPI
|
||||||
MsfsWrite(PDEVICE_OBJECT DeviceObject,
|
MsfsWrite(PDEVICE_OBJECT DeviceObject,
|
||||||
PIRP Irp)
|
PIRP Irp)
|
||||||
{
|
{
|
||||||
|
|
|
@ -14,11 +14,10 @@
|
||||||
|
|
||||||
/* EXPORTED DATA *************************************************************/
|
/* EXPORTED DATA *************************************************************/
|
||||||
#ifndef NTOS_MODE_USER
|
#ifndef NTOS_MODE_USER
|
||||||
extern POBJECT_TYPE NTOSAPI IoAdapterObjectType;
|
extern POBJECT_TYPE NTSYSAPI IoAdapterObjectType;
|
||||||
extern POBJECT_TYPE NTOSAPI IoDeviceHandlerObjectType;
|
extern POBJECT_TYPE NTSYSAPI IoDeviceHandlerObjectType;
|
||||||
extern POBJECT_TYPE NTOSAPI IoDeviceObjectType;
|
extern POBJECT_TYPE NTSYSAPI IoDeviceObjectType;
|
||||||
extern POBJECT_TYPE NTOSAPI IoDriverObjectType;
|
extern POBJECT_TYPE NTSYSAPI IoDriverObjectType;
|
||||||
extern POBJECT_TYPE NTOSAPI IoFileObjectType;
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* CONSTANTS *****************************************************************/
|
/* CONSTANTS *****************************************************************/
|
||||||
|
@ -369,7 +368,7 @@ typedef struct _FILE_MAILSLOT_QUERY_INFORMATION
|
||||||
|
|
||||||
typedef struct _FILE_MAILSLOT_SET_INFORMATION
|
typedef struct _FILE_MAILSLOT_SET_INFORMATION
|
||||||
{
|
{
|
||||||
LARGE_INTEGER ReadTimeout;
|
PLARGE_INTEGER ReadTimeout;
|
||||||
} FILE_MAILSLOT_SET_INFORMATION, *PFILE_MAILSLOT_SET_INFORMATION;
|
} FILE_MAILSLOT_SET_INFORMATION, *PFILE_MAILSLOT_SET_INFORMATION;
|
||||||
|
|
||||||
typedef struct _FILE_BOTH_DIR_INFORMATION
|
typedef struct _FILE_BOTH_DIR_INFORMATION
|
||||||
|
@ -554,12 +553,12 @@ typedef struct _DEVICE_NODE
|
||||||
struct _DEVICE_NODE *PrevSibling;
|
struct _DEVICE_NODE *PrevSibling;
|
||||||
struct _DEVICE_NODE *NextSibling;
|
struct _DEVICE_NODE *NextSibling;
|
||||||
struct _DEVICE_NODE *Child;
|
struct _DEVICE_NODE *Child;
|
||||||
UINT Level;
|
ULONG Level;
|
||||||
struct _PO_DEVICE_NOTIFY *Notify;
|
struct _PO_DEVICE_NOTIFY *Notify;
|
||||||
PNP_DEVNODE_STATE State;
|
PNP_DEVNODE_STATE State;
|
||||||
PNP_DEVNODE_STATE PreviousState;
|
PNP_DEVNODE_STATE PreviousState;
|
||||||
PNP_DEVNODE_STATE StateHistory[20];
|
PNP_DEVNODE_STATE StateHistory[20];
|
||||||
UINT StateHistoryEntry;
|
ULONG StateHistoryEntry;
|
||||||
INT CompletionStatus;
|
INT CompletionStatus;
|
||||||
PIRP PendingIrp;
|
PIRP PendingIrp;
|
||||||
ULONG Flags;
|
ULONG Flags;
|
||||||
|
@ -625,7 +624,7 @@ typedef struct _PI_RESOURCE_ARBITER_ENTRY
|
||||||
UCHAR ResourcesChanged;
|
UCHAR ResourcesChanged;
|
||||||
} PI_RESOURCE_ARBITER_ENTRY, *PPI_RESOURCE_ARBITER_ENTRY;
|
} PI_RESOURCE_ARBITER_ENTRY, *PPI_RESOURCE_ARBITER_ENTRY;
|
||||||
|
|
||||||
typedef struct _DEVOBJ_EXTENSION
|
typedef struct _EXTENDED_DEVOBJ_EXTENSION
|
||||||
{
|
{
|
||||||
CSHORT Type;
|
CSHORT Type;
|
||||||
USHORT Size;
|
USHORT Size;
|
||||||
|
@ -639,7 +638,7 @@ typedef struct _DEVOBJ_EXTENSION
|
||||||
LONG StartIoKey;
|
LONG StartIoKey;
|
||||||
ULONG StartIoFlags;
|
ULONG StartIoFlags;
|
||||||
struct _VPB *Vpb;
|
struct _VPB *Vpb;
|
||||||
} DEVOBJ_EXTENSION, *PDEVOBJ_EXTENSION;
|
} EXTENDED_DEVOBJ_EXTENSION, *PEXTENDED_DEVOBJ_EXTENSION;
|
||||||
|
|
||||||
typedef struct _PRIVATE_DRIVER_EXTENSIONS
|
typedef struct _PRIVATE_DRIVER_EXTENSIONS
|
||||||
{
|
{
|
||||||
|
|
|
@ -899,7 +899,7 @@ typedef struct _FILE_MAILSLOT_QUERY_INFORMATION {
|
||||||
} FILE_MAILSLOT_QUERY_INFORMATION, *PFILE_MAILSLOT_QUERY_INFORMATION;
|
} FILE_MAILSLOT_QUERY_INFORMATION, *PFILE_MAILSLOT_QUERY_INFORMATION;
|
||||||
|
|
||||||
typedef struct _FILE_MAILSLOT_SET_INFORMATION {
|
typedef struct _FILE_MAILSLOT_SET_INFORMATION {
|
||||||
LARGE_INTEGER ReadTimeout;
|
PLARGE_INTEGER ReadTimeout;
|
||||||
} FILE_MAILSLOT_SET_INFORMATION, *PFILE_MAILSLOT_SET_INFORMATION;
|
} FILE_MAILSLOT_SET_INFORMATION, *PFILE_MAILSLOT_SET_INFORMATION;
|
||||||
|
|
||||||
typedef struct _FILE_MODE_INFORMATION {
|
typedef struct _FILE_MODE_INFORMATION {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue