Author: hpoussin
Date: Mon Sep 4 20:46:13 2006
New Revision: 23913
URL:
http://svn.reactos.org/svn/reactos?rev=23913&view=rev
Log:
Add prototypes for some fmifs.dll functions.
These have been found with trial and error on a MS Windows XP SP2 system with MS Visual
Studio 2003
Modified:
trunk/reactos/dll/win32/fmifs/chkdsk.c
trunk/reactos/dll/win32/fmifs/compress.c
trunk/reactos/include/reactos/libs/fmifs/fmifs.h
Modified: trunk/reactos/dll/win32/fmifs/chkdsk.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/fmifs/chkdsk.c?r…
==============================================================================
--- trunk/reactos/dll/win32/fmifs/chkdsk.c (original)
+++ trunk/reactos/dll/win32/fmifs/chkdsk.c Mon Sep 4 20:46:13 2006
@@ -31,11 +31,4 @@
&Argument); /* Argument */
}
-
-/* FMIFS.2 (SP4 only?) */
-VOID STDCALL
-ChkdskEx (VOID)
-{
-}
-
/* EOF */
Modified: trunk/reactos/dll/win32/fmifs/compress.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/fmifs/compress.c…
==============================================================================
--- trunk/reactos/dll/win32/fmifs/compress.c (original)
+++ trunk/reactos/dll/win32/fmifs/compress.c Mon Sep 4 20:46:13 2006
@@ -14,7 +14,7 @@
/*
* @implemented
*/
-BOOL STDCALL
+BOOLEAN STDCALL
EnableVolumeCompression (PWCHAR DriveRoot,
USHORT Compression)
{
Modified: trunk/reactos/include/reactos/libs/fmifs/fmifs.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/libs/fmifs…
==============================================================================
--- trunk/reactos/include/reactos/libs/fmifs/fmifs.h (original)
+++ trunk/reactos/include/reactos/libs/fmifs/fmifs.h Mon Sep 4 20:46:13 2006
@@ -1,7 +1,6 @@
#ifndef _FMIFS_H
#define _FMIFS_H
-/* $Id$
- *
+/*
* fmifs.h
*
* Copyright (c) 1998 Mark Russinovich
@@ -16,21 +15,51 @@
* 1999-02-18 (Emanuele Aliberti)
* Normalized function names.
*
+ * ---
+ *
+ * 2006-09-04 (Hervé Poussineau)
+ * Add some prototypes
+ *
*/
/* Output command */
-typedef
-struct
+typedef struct
{
ULONG Lines;
PCHAR Output;
-
} TEXTOUTPUT, *PTEXTOUTPUT;
+/* media flags */
+typedef enum
+{
+ FMIFS_UNKNOWN0,
+ FMIFS_UNKNOWN1,
+ FMIFS_UNKNOWN2,
+ FMIFS_UNKNOWN3,
+ FMIFS_UNKNOWN4,
+ FMIFS_UNKNOWN5,
+ FMIFS_UNKNOWN6,
+ FMIFS_UNKNOWN7,
+ FMIFS_FLOPPY,
+ FMIFS_UNKNOWN9,
+ FMIFS_UNKNOWN10,
+ FMIFS_UNKNOWN11,
+ FMIFS_HARDDISK,
+ FMIFS_UNKNOWN13,
+ FMIFS_UNKNOWN14,
+ FMIFS_UNKNOWN15,
+ FMIFS_UNKNOWN16,
+ FMIFS_UNKNOWN17,
+ FMIFS_UNKNOWN18,
+ FMIFS_UNKNOWN19,
+ FMIFS_UNKNOWN20,
+ FMIFS_UNKNOWN21,
+ FMIFS_UNKNOWN22,
+ FMIFS_UNKNOWN23,
+} FMIFS_MEDIA_FLAG;
/* Callback command types */
-typedef
-enum
+typedef enum
{
PROGRESS,
DONEWITHSTRUCTURE,
@@ -48,79 +77,91 @@
UNKNOWND,
OUTPUT,
STRUCTUREPROGRESS
-
} CALLBACKCOMMAND;
-
/* FMIFS callback definition */
-typedef
-BOOLEAN
-(NTAPI * PFMIFSCALLBACK) (
- CALLBACKCOMMAND Command,
- ULONG SubAction,
- PVOID ActionInfo
- );
+typedef BOOLEAN
+(NTAPI* PFMIFSCALLBACK)(
+ IN CALLBACKCOMMAND Command,
+ IN ULONG SubAction,
+ IN PVOID ActionInfo);
/* Chkdsk command in FMIFS */
-VOID
-NTAPI
+VOID NTAPI
Chkdsk(
- PWCHAR DriveRoot,
- PWCHAR Format,
- BOOLEAN CorrectErrors,
- BOOLEAN Verbose,
- BOOLEAN CheckOnlyIfDirty,
- BOOLEAN ScanDrive,
- PVOID Unused2,
- PVOID Unused3,
- PFMIFSCALLBACK Callback
- );
+ IN PWCHAR DriveRoot,
+ IN PWCHAR Format,
+ IN BOOLEAN CorrectErrors,
+ IN BOOLEAN Verbose,
+ IN BOOLEAN CheckOnlyIfDirty,
+ IN BOOLEAN ScanDrive,
+ IN PVOID Unused2,
+ IN PVOID Unused3,
+ IN PFMIFSCALLBACK Callback);
/* ChkdskEx command in FMIFS (not in the original) */
-VOID
-NTAPI
-ChkDskEx(
- PWCHAR DriveRoot,
- PWCHAR Format,
- BOOLEAN CorrectErrors,
- BOOLEAN Verbose,
- BOOLEAN CheckOnlyIfDirty,
- BOOLEAN ScanDrive,
- PVOID Unused2,
- PVOID Unused3,
- PFMIFSCALLBACK Callback
- );
+VOID NTAPI
+ChkdskEx(
+ IN PWCHAR DriveRoot,
+ IN PWCHAR Format,
+ IN BOOLEAN CorrectErrors,
+ IN BOOLEAN Verbose,
+ IN BOOLEAN CheckOnlyIfDirty,
+ IN BOOLEAN ScanDrive,
+ IN PVOID Unused2,
+ IN PVOID Unused3,
+ IN PFMIFSCALLBACK Callback);
+
+FMIFS_MEDIA_FLAG NTAPI
+ComputeFmMediaType(
+ IN ULONG MediaType);
/* DiskCopy command in FMIFS */
-
-VOID
-NTAPI
+VOID NTAPI
DiskCopy(VOID);
/* Enable/Disable volume compression */
-BOOL
-NTAPI
+BOOLEAN NTAPI
EnableVolumeCompression(
- PWCHAR DriveRoot,
- USHORT Compression
- );
+ IN PWCHAR DriveRoot,
+ IN USHORT Compression);
/* Format command in FMIFS */
+VOID NTAPI
+FormatEx(
+ IN PWCHAR DriveRoot,
+ IN ULONG MediaFlag,
+ IN PWCHAR Format,
+ IN PWCHAR Label,
+ IN BOOLEAN QuickFormat,
+ IN ULONG ClusterSize,
+ IN PFMIFSCALLBACK Callback);
-/* media flags */
-#define FMIFS_HARDDISK 0xC
-#define FMIFS_FLOPPY 0x8
+BOOLEAN NTAPI
+QueryAvailableFileSystemFormat(
+ IN DWORD Index,
+ IN OUT PWCHAR FileSystem OPTIONAL, /* FIXME: Probably one minimal size is mandatory, but
which one? */
+ OUT UCHAR* Major OPTIONAL,
+ OUT UCHAR* Minor OPTIONAL,
+ OUT BOOLEAN* LastestVersion OPTIONAL);
-VOID
-NTAPI
-FormatEx(
- PWCHAR DriveRoot,
- ULONG MediaFlag,
- PWCHAR Format,
- PWCHAR Label,
- BOOLEAN QuickFormat,
- ULONG ClusterSize,
- PFMIFSCALLBACK Callback
- );
+BOOL NTAPI
+QueryDeviceInformation(
+ IN PWCHAR DriveRoot,
+ OUT ULONG* Buffer, /* That is probably some 4-bytes structure */
+ IN ULONG BufferSize); /* 4 */
+
+BOOLEAN NTAPI
+QueryLatestFileSystemVersion(
+ IN PWCHAR FileSystem,
+ OUT UCHAR* Major OPTIONAL,
+ OUT UCHAR* Minor OPTIONAL);
+
+/*ULONG NTAPI
+QuerySupportedMedia(
+ PVOID Unknown1,
+ ULONG Unknown2,
+ ULONG Unknown3,
+ ULONG Unknown4);*/
#endif /* ndef _FMIFS_H */