1 /*
2  * COPYRIGHT:       See COPYING in the top level directory
3  * PROJECT:         ReactOS FS utility tool
4  * FILE:            base/applications/cmdutils/fsutil.c
5  * PURPOSE:         FSutil main
6  * PROGRAMMERS:     Pierre Schweitzer <pierre@reactos.org>
7  */
8 
9 #include "fsutil.h"
10 
11 /* Add handlers here for commands */
12 HandlerProc DirtyMain;
13 HandlerProc FsInfoMain;
14 HandlerProc HardLinkMain;
15 HandlerProc VolumeMain;
16 static HandlerItem HandlersList[] =
17 {
18     /* Proc, name, help */
19     { DirtyMain, _T("dirty"), _T("Manipulates the dirty bit") },
20     { FsInfoMain, _T("fsinfo"), _T("Gathers informations about file systems") },
21     { HardLinkMain, _T("hardlink"), _T("Handles hard links") },
22     { VolumeMain, _T("volume"), _T("Manages volumes") },
23 };
24 
25 static void
PrintUsage(const TCHAR * Command)26 PrintUsage(const TCHAR * Command)
27 {
28     PrintDefaultUsage(_T(" "), Command, (HandlerItem *)&HandlersList,
29                       (sizeof(HandlersList) / sizeof(HandlersList[0])));
30 }
31 
32 int
33 __cdecl
_tmain(int argc,const TCHAR * argv[])34 _tmain(int argc, const TCHAR *argv[])
35 {
36     return FindHandler(argc, argv, (HandlerItem *)&HandlersList,
37                        (sizeof(HandlersList) / sizeof(HandlersList[0])),
38                        PrintUsage);
39 }
40