int main(int argc, char *argv[])
{
int i = 0;
bool bOnce = true;
char szPath[RH_MAX_PATH];
char szAbsPath[RH_MAX_PATH];
char szOrgPath[RH_MAX_PATH];
char szTemp[RH_MAX_BUFFER];
int iErrorCode = 0;
CHashManager hashmgr;
getcwd(szOrgPath, RH_MAX_PATH);
//No arguments?
if(argc == 1)
{
printInfo();
return(RH_NO_ARGS);
}
memset(szPath, 0, RH_MAX_PATH);
bOnce = true;
hashmgr.SelectAllAlgorithms(true);
for(i = 1; i = RH_MAX_BUFFER) continue; // Non-parsable option argument, ignore
fmtArgument(argv[i], szTemp); // Format the argument, i.e. remove all special chars
if(strcmp(szTemp, "help" ) == 0) printInfo();
if(strcmp(szTemp, "h" ) == 0) printInfo();
if(strcmp(szTemp, "?" ) == 0) printInfo();
if(strcmp(szTemp, "version" ) == 0) printInfo();
if(strcmp(szTemp, "v" ) == 0) printInfo();
if(strcmp(szTemp, "fullpath") == 0) hashmgr.SetOption(OPT_FULLPATH, true);
if(strcmp(szTemp, "f" ) == 0) hashmgr.SetOption(OPT_FULLPATH, true);
if(strcmp(szTemp, "nopath" ) == 0) hashmgr.SetOption(OPT_FULLPATH, false);
if(strcmp(szTemp, "rcrsv" ) == 0) hashmgr.SetOption(OPT_RECURSIVE, true);
if(strcmp(szTemp, "norcrsv" ) == 0) hashmgr.SetOption(OPT_RECURSIVE, false);
if(strcmp(szTemp, "recur" ) == 0) hashmgr.SetOption(OPT_RECURSIVE, true);
if(strcmp(szTemp, "norecur" ) == 0) hashmgr.SetOption(OPT_RECURSIVE, false);
if(strcmp(szTemp, "r" ) == 0) hashmgr.SetOption(OPT_RECURSIVE, true);
if(strcmp(szTemp, "all" ) == 0) hashmgr.SelectAllAlgorithms(true);
if(strcmp(szTemp, "a" ) == 0) hashmgr.SelectAllAlgorithms(true);
if(strcmp(szTemp, "none" ) == 0) hashmgr.SelectAllAlgorithms(false);
if(strcmp(s
1