* lib/fmifs

* lib/fslib/fvatlib
  Convert Win32 types to native
  InitializeFmIfs() is the DLL entry point

svn path=/trunk/; revision=8329
This commit is contained in:
Eric Kohl 2004-02-23 11:55:12 +00:00
parent 2beb8b39ac
commit 2b197a92e6
12 changed files with 109 additions and 135 deletions

View file

@ -1,4 +1,4 @@
/* $Id: chkdsk.c,v 1.1 1999/05/11 21:19:41 ea Exp $
/* $Id: chkdsk.c,v 1.2 2004/02/23 11:55:12 ekohl Exp $
*
* COPYING: See the top level directory
* PROJECT: ReactOS
@ -16,37 +16,30 @@
/* FMIFS.1 */
VOID
__stdcall
Chkdsk(
PWCHAR DriveRoot,
VOID STDCALL
Chkdsk (PWCHAR DriveRoot,
PWCHAR Format,
BOOL CorrectErrors,
BOOL Verbose,
BOOL CheckOnlyIfDirty,
BOOL ScanDrive,
PVOID Unused2,
BOOLEAN CorrectErrors,
BOOLEAN Verbose,
BOOLEAN CheckOnlyIfDirty,
BOOLEAN ScanDrive,
PVOID Unused2,
PVOID Unused3,
PFMIFSCALLBACK Callback
)
PFMIFSCALLBACK Callback)
{
BOOL Argument = FALSE;
BOOLEAN Argument = FALSE;
/* FAIL immediately */
Callback(
DONE, /* Command */
0, /* DWORD Modifier */
& Argument /* Argument */
);
/* FAIL immediately */
Callback (DONE, /* Command */
0, /* DWORD Modifier */
&Argument); /* Argument */
}
/* FMIFS.2 (SP4 only?) */
VOID
__stdcall
ChkdskEx(VOID)
VOID STDCALL
ChkdskEx (VOID)
{
}
/* EOF */

View file

@ -1,4 +1,4 @@
/* $Id: compress.c,v 1.1 1999/05/11 21:19:41 ea Exp $
/* $Id: compress.c,v 1.2 2004/02/23 11:55:12 ekohl Exp $
*
* COPYING: See the top level directory
* PROJECT: ReactOS
@ -16,15 +16,11 @@
/* FMIFS.4 */
BOOL
__stdcall
EnableVolumeCompression(
PWCHAR DriveRoot,
BOOL Enable
)
BOOLEAN STDCALL
EnableVolumeCompression (PWCHAR DriveRoot,
BOOLEAN Enable)
{
return FALSE;
return FALSE;
}
/* EOF */

View file

@ -1,4 +1,4 @@
/* $Id: diskcopy.c,v 1.1 1999/05/11 21:19:41 ea Exp $
/* $Id: diskcopy.c,v 1.2 2004/02/23 11:55:12 ekohl Exp $
*
* COPYING: See the top level directory
* PROJECT: ReactOS
@ -15,9 +15,8 @@
#include <fmifs.h>
/* FMIFS.3 */
VOID
__stdcall
DiskCopy(VOID)
VOID STDCALL
DiskCopy (VOID)
{
}

View file

@ -1,27 +0,0 @@
/* $Id: dllmain.c,v 1.2 2000/04/25 23:22:53 ea Exp $
*
* ReactOS FMIFS.DLL
*/
#include <windows.h>
BOOLEAN
__stdcall
DllMain(
PVOID hinstDll,
ULONG dwReason,
PVOID reserved
)
{
switch (dwReason)
{
case DLL_PROCESS_ATTACH:
break;
case DLL_THREAD_ATTACH:
break;
case DLL_THREAD_DETACH:
break;
case DLL_PROCESS_DETACH:
break;
}
return (TRUE);
}
/* EOF */

View file

@ -1,4 +1,4 @@
/* $Id: extend.c,v 1.1 1999/05/11 21:19:41 ea Exp $
/* $Id: extend.c,v 1.2 2004/02/23 11:55:12 ekohl Exp $
*
* COPYING: See the top level directory
* PROJECT: ReactOS
@ -15,9 +15,8 @@
#include <fmifs.h>
/* FMIFS.5 */
VOID
__stdcall
Extend(VOID)
VOID STDCALL
Extend (VOID)
{
}

View file

@ -1,4 +1,4 @@
; $Id: fmifs.def,v 1.5 2003/09/08 09:56:56 weiden Exp $
; $Id: fmifs.def,v 1.6 2004/02/23 11:55:12 ekohl Exp $
;
; fmifs.def
;
@ -21,7 +21,7 @@ Extend@0
Format@0
FormatEx@28
;FormatEx2
InitializeFmIfs@0
InitializeFmIfs@12
;QueryAvailableFileSystemFormat
;QueryDeviceInformation
;QueryDeviceInformationByHandle

View file

@ -1,4 +1,4 @@
; $Id: fmifs.edf,v 1.3 2003/09/08 09:56:56 weiden Exp $
; $Id: fmifs.edf,v 1.4 2004/02/23 11:55:12 ekohl Exp $
;
; fmifs.def
;
@ -21,7 +21,7 @@ Extend=Extend@0
Format=Format@0
FormatEx=FormatEx@28
;FormatEx2
InitializeFmIfs=InitializeFmIfs@0
InitializeFmIfs=InitializeFmIfs@12
;QueryAvailableFileSystemFormat
;QueryDeviceInformation
;QueryDeviceInformationByHandle

View file

@ -1,4 +1,4 @@
/* $Id: format.c,v 1.3 2003/09/12 17:51:46 vizzini Exp $
/* $Id: format.c,v 1.4 2004/02/23 11:55:12 ekohl Exp $
*
* COPYING: See the top level directory
* PROJECT: ReactOS
@ -21,51 +21,49 @@
/* FMIFS.6 */
VOID
__stdcall
Format(VOID)
VOID STDCALL
Format (VOID)
{
}
/* FMIFS.7 */
VOID
__stdcall
FormatEx(
PWCHAR DriveRoot,
DWORD MediaFlag,
PWCHAR Format,
PWCHAR Label,
BOOL QuickFormat,
DWORD ClusterSize,
PFMIFSCALLBACK Callback
)
VOID STDCALL
FormatEx (PWCHAR DriveRoot,
ULONG MediaFlag,
PWCHAR Format,
PWCHAR Label,
BOOLEAN QuickFormat,
ULONG ClusterSize,
PFMIFSCALLBACK Callback)
{
UNICODE_STRING usDriveRoot;
UNICODE_STRING usLabel;
BOOL Argument = FALSE;
UNICODE_STRING usDriveRoot;
UNICODE_STRING usLabel;
BOOLEAN Argument = FALSE;
RtlInitUnicodeString(&usDriveRoot, DriveRoot);
RtlInitUnicodeString(&usLabel, Label);
RtlInitUnicodeString(&usDriveRoot, DriveRoot);
RtlInitUnicodeString(&usLabel, Label);
if (_wcsnicmp(Format, L"FAT", 3) == 0)
{
DPRINT1("FormatEx - FAT\n");
VfatInitialize();
if (_wcsnicmp(Format, L"FAT", 3) == 0)
{
DPRINT1("FormatEx - FAT\n");
VfatFormat(&usDriveRoot, MediaFlag, &usLabel, QuickFormat, ClusterSize, Callback);
VfatCleanup();
}
else
{
/* Unknown file system */
Callback(DONE, /* Command */
0, /* DWORD Modifier */
&Argument /* Argument */
);
}
VfatInitialize ();
VfatFormat (&usDriveRoot,
MediaFlag,
&usLabel,
QuickFormat,
ClusterSize,
Callback);
VfatCleanup ();
}
else
{
/* Unknown file system */
Callback (DONE, /* Command */
0, /* DWORD Modifier */
&Argument); /* Argument */
}
}
/* EOF */

View file

@ -1,4 +1,4 @@
/* $Id: init.c,v 1.2 2002/03/07 00:24:24 ea Exp $
/* $Id: init.c,v 1.3 2004/02/23 11:55:12 ekohl Exp $
*
* COPYING: See the top level directory
* PROJECT: ReactOS
@ -14,7 +14,6 @@
#include <windows.h>
#include <fmifs.h>
/* FMIFS.8 */
static BOOL FmIfsInitialized = FALSE;
static BOOL STDCALL
@ -25,18 +24,38 @@ InitializeFmIfsOnce (VOID)
return TRUE;
}
/* FMIFS.8 */
BOOL STDCALL
InitializeFmIfs(VOID)
InitializeFmIfs (PVOID hinstDll,
DWORD dwReason,
PVOID reserved)
{
if (FALSE == FmIfsInitialized)
switch (dwReason)
{
case DLL_PROCESS_ATTACH:
if (FALSE == FmIfsInitialized)
{
if (FALSE == InitializeFmIfsOnce())
{
if (FALSE == InitializeFmIfsOnce())
{
return FALSE;
}
FmIfsInitialized = TRUE;
return FALSE;
}
return TRUE;
FmIfsInitialized = TRUE;
}
break;
case DLL_THREAD_ATTACH:
break;
case DLL_THREAD_DETACH:
break;
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}
/* EOF */

View file

@ -1,4 +1,4 @@
/* $Id: label.c,v 1.1 1999/05/11 21:19:41 ea Exp $
/* $Id: label.c,v 1.2 2004/02/23 11:55:12 ekohl Exp $
*
* COPYING: See the top level directory
* PROJECT: ReactOS
@ -16,11 +16,9 @@
/* FMIFS.10 */
VOID
__stdcall
SetLabel(VOID)
VOID STDCALL
SetLabel (VOID)
{
}
/* EOF */

View file

@ -1,4 +1,4 @@
# $Id: makefile,v 1.20 2003/09/12 17:51:46 vizzini Exp $
# $Id: makefile,v 1.21 2004/02/23 11:55:12 ekohl Exp $
PATH_TO_TOP = ../..
@ -8,21 +8,22 @@ TARGET_NAME = fmifs
TARGET_BASE = 0x76df0000
TARGET_ENTRY = _InitializeFmIfs@12
TARGET_CFLAGS = -fno-builtin -Werror -Wall
# require os code to explicitly request A/W version of structs/functions
TARGET_CFLAGS += -D_DISABLE_TIDENTS
TARGET_LFLAGS = -nostdlib -nostartfiles
TARGET_LFLAGS = -nostartfiles
TARGET_SDKLIBS = vfatlib.a ntdll.a kernel32.a
TARGET_OBJECTS = \
chkdsk.o \
compress.o \
diskcopy.o \
dllmain.o \
extend.o \
chkdsk.o \
compress.o \
diskcopy.o \
extend.o \
format.o \
init.o \
label.o \

View file

@ -1,4 +1,4 @@
/* $Id: media.c,v 1.1 1999/05/11 21:19:41 ea Exp $
/* $Id: media.c,v 1.2 2004/02/23 11:55:12 ekohl Exp $
*
* COPYING: See the top level directory
* PROJECT: ReactOS
@ -16,11 +16,9 @@
/* FMIFS.9 */
VOID
__stdcall
QuerySupportedMedia(VOID)
VOID STDCALL
QuerySupportedMedia (VOID)
{
}
/* EOF */