line |
true |
false |
branch |
133
|
0 |
0 |
if (requiredMem > MAX_MEM) requiredMem = MAX_MEM; |
135
|
0 |
0 |
while (!testmem) { |
136
|
0 |
0 |
if (requiredMem > step) requiredMem -= step; |
143
|
0 |
0 |
if (requiredMem > step) requiredMem -= step; |
155
|
0 |
0 |
assert(s1 != NULL); |
156
|
0 |
0 |
assert(s2 != NULL); |
160
|
0 |
0 |
if (buf != NULL) { |
298
|
0 |
0 |
for (iterationNb = 1; iterationNb <= nbIterations; iterationNb++) { |
307
|
0 |
0 |
while (clock() == cStart); /* starts clock() at its exact beginning */ |
311
|
0 |
0 |
for (u=0; u
|
314
|
0 |
0 |
if (r==0) XSUM_logVerbose(3,".\r"); /* do something with r to defeat compiler "optimizing" hash away */ |
336
|
0 |
0 |
if (nbTicks < TIMELOOP_MIN) { |
338
|
0 |
0 |
if (nbTicks == 0) { /* faster than resolution timer */ |
346
|
0 |
0 |
if (nbh_perSecond > (double)(4000U<<20)) nbh_perSecond = (double)(4000U<<20); /* avoid overflow */ |
350
|
0 |
0 |
if (g_nbIterations>0) { |
355
|
0 |
0 |
if (ticksPerHash < fastestH) fastestH = ticksPerHash; |
356
|
0 |
0 |
if (fastestH>0.) { /* avoid div by zero */ |
365
|
0 |
0 |
if (nbh_perSecond > (double)(4000U<<20)) nbh_perSecond = (double)(4000U<<20); /* avoid overflow */ |
375
|
0 |
0 |
if (XSUM_logLevel<1) |
388
|
0 |
0 |
assert((((size_t)buffer) & 15) == 0); /* ensure alignment */ |
391
|
0 |
0 |
for (i = 1; i < NB_TESTFUNC; i++) { |
393
|
0 |
0 |
assert(g_hashesToBench[hashFuncID].name != NULL); |
394
|
0 |
0 |
if (g_testIDs[i] == 0) continue; |
396
|
0 |
0 |
if ((i % 2) == 1) { |
400
|
0 |
0 |
if ((i % 2) == 0) { |
403
|
0 |
0 |
assert(hashNameBuf != NULL); |
414
|
0 |
0 |
if ((XSUM_U64)benchedSize > inFileSize) benchedSize = (size_t)inFileSize; |
415
|
0 |
0 |
if (benchedSize < inFileSize) { |
425
|
0 |
0 |
for (fileIdx=0; fileIdx
|
427
|
0 |
0 |
assert(inFileName != NULL); |
435
|
0 |
0 |
if (inFile==NULL){ |
440
|
0 |
0 |
if(!buffer) { |
449
|
0 |
0 |
if(readSize != benchedSize) { |
467
|
0 |
0 |
if (buffer == NULL) { |
476
|
0 |
0 |
if (keySize > 10 KB) { |
498
|
0 |
0 |
for (idx=length-1; idx
|
506
|
0 |
0 |
for (idx=0; idx
|
537
|
0 |
0 |
while ((readSize = fread(buffer, 1, blockSize, inFile)) > 0) { |
553
|
0 |
0 |
if (ferror(inFile)) { |
591
|
0 |
0 |
assert(0 <= hashType && hashType <= XSUM_TABLE_ELT_SIZE(XSUM_algoName)); |
613
|
0 |
0 |
assert(0 <= hashType && hashType <= XSUM_TABLE_ELT_SIZE(XSUM_algoName)); |
651
|
0 |
0 |
assert(displayEndianess==big_endian || displayEndianess==little_endian); |
652
|
0 |
0 |
assert(convention==display_gnu || convention==display_bsd); |
655
|
0 |
0 |
if (fileName == stdinName) { |
660
|
0 |
0 |
if (XSUM_isDirectory(fileName)) { |
665
|
0 |
0 |
if (inFile==NULL) { |
672
|
0 |
0 |
if (buffer == NULL) { |
726
|
0 |
0 |
if (fnTotal==0) |
729
|
0 |
0 |
for (fnNb=0; fnNb
|
807
|
0 |
0 |
if ((*lineBuf == NULL) || (*lineMax<1)) { |
|
0 |
0 |
if ((*lineBuf == NULL) || (*lineMax<1)) { |
811
|
0 |
0 |
if(*lineBuf == NULL) return GetLine_outOfMemory; |
817
|
0 |
0 |
if (c == EOF) { |
822
|
0 |
0 |
if (len == 0) result = GetLine_eof; |
827
|
0 |
0 |
if (len+1 >= (size_t)*lineMax) { |
832
|
0 |
0 |
if (newBufSize > MAX_LINE_LENGTH) newBufSize = MAX_LINE_LENGTH; |
833
|
0 |
0 |
if (len+1 >= newBufSize) return GetLine_exceedMaxLineLength; |
836
|
0 |
0 |
if (newLineBuf == NULL) return GetLine_outOfMemory; |
842
|
0 |
0 |
if (c == '\n') break; |
858
|
0 |
0 |
if (c >= '0' && c <= '9') { |
|
0 |
0 |
if (c >= '0' && c <= '9') { |
860
|
0 |
0 |
} else if (c >= 'A' && c <= 'F') { |
|
0 |
0 |
} else if (c >= 'A' && c <= 'F') { |
862
|
0 |
0 |
} else if (c >= 'a' && c <= 'f') { |
|
0 |
0 |
} else if (c >= 'a' && c <= 'f') { |
882
|
0 |
0 |
for (i = 0; i < dstSize; ++i) { |
884
|
0 |
0 |
size_t j = reverseBytes ? dstSize - i - 1 : i; |
887
|
0 |
0 |
if (h0 < 0) return CanonicalFromString_invalidFormat; |
890
|
0 |
0 |
if (h1 < 0) return CanonicalFromString_invalidFormat; |
926
|
0 |
0 |
if (firstSpace == NULL || !firstSpace[1]) return ParseLine_invalidFormat; |
|
0 |
0 |
if (firstSpace == NULL || !firstSpace[1]) return ParseLine_invalidFormat; |
928
|
0 |
0 |
if (firstSpace[1] == '(') { |
930
|
0 |
0 |
if (lastSpace - firstSpace < 5) return ParseLine_invalidFormat; |
931
|
0 |
0 |
if (lastSpace[-1] != '=' || lastSpace[-2] != ' ' || lastSpace[-3] != ')') return ParseLine_invalidFormat; |
|
0 |
0 |
if (lastSpace[-1] != '=' || lastSpace[-2] != ' ' || lastSpace[-3] != ')') return ParseLine_invalidFormat; |
|
0 |
0 |
if (lastSpace[-1] != '=' || lastSpace[-2] != ' ' || lastSpace[-3] != ')') return ParseLine_invalidFormat; |
949
|
0 |
0 |
if (XSUM_canonicalFromString(xxh32c->digest, sizeof(xxh32c->digest), hash_ptr, rev) |
959
|
0 |
0 |
if (XSUM_canonicalFromString(xxh64c->digest, sizeof(xxh64c->digest), hash_ptr, rev) |
969
|
0 |
0 |
if (XSUM_canonicalFromString(xxh128c->digest, sizeof(xxh128c->digest), hash_ptr, rev) |
1000
|
0 |
0 |
while (!report->quit) { |
1006
|
0 |
0 |
if (lineNumber == 0) { |
1016
|
0 |
0 |
if (XSUM_getLineResult != GetLine_ok) { |
1017
|
0 |
0 |
if (XSUM_getLineResult == GetLine_eof) break; |
1044
|
0 |
0 |
if (XSUM_parseLine(&parsedLine, XSUM_parseFileArg->lineBuf, rev) != ParseLine_ok) { |
1046
|
0 |
0 |
if (XSUM_parseFileArg->warn) { |
1057
|
0 |
0 |
if (fp == NULL) { |
1066
|
0 |
0 |
if (xxh.xxh32 == XXH32_hashFromCanonical(&parsedLine.canonical.xxh32)) { |
1073
|
0 |
0 |
if (xxh.xxh64 == XXH64_hashFromCanonical(&parsedLine.canonical.xxh64)) { |
1080
|
0 |
0 |
if (XXH128_isEqual(xxh.xxh128, XXH128_hashFromCanonical(&parsedLine.canonical.xxh128))) { |
1100
|
0 |
0 |
if (!XSUM_parseFileArg->statusOnly) { |
1109
|
0 |
0 |
if (lineStatus == LineStatus_hashOk) { |
1111
|
0 |
0 |
if (XSUM_parseFileArg->quiet) b = 0; |
1116
|
0 |
0 |
if (b && !XSUM_parseFileArg->statusOnly) { |
|
0 |
0 |
if (b && !XSUM_parseFileArg->statusOnly) { |
1117
|
0 |
0 |
XSUM_output("%s: %s\n", parsedLine.filename |
1155
|
0 |
0 |
if (inFileName == stdinName) { |
1166
|
0 |
0 |
if (inFile == NULL) { |
1182
|
0 |
0 |
if ( (XSUM_parseFileArg->lineBuf == NULL) |
1183
|
0 |
0 |
|| (XSUM_parseFileArg->blockBuf == NULL) ) { |
1192
|
0 |
0 |
if (inFile != stdin) fclose(inFile); |
1196
|
0 |
0 |
if (report->nProperlyFormattedLines == 0) { |
1198
|
0 |
0 |
} else if (!statusOnly) { |
1199
|
0 |
0 |
if (report->nImproperlyFormattedLines) { |
1200
|
0 |
0 |
XSUM_output("%lu %s improperly formatted\n" |
1204
|
0 |
0 |
if (report->nOpenOrReadFailures) { |
1205
|
0 |
0 |
XSUM_output("%lu listed %s could not be read\n" |
1209
|
0 |
0 |
if (report->nMismatchedChecksums) { |
1210
|
0 |
0 |
XSUM_output("%lu computed %s did NOT match\n" |
1218
|
0 |
0 |
&& report->nMismatchedChecksums == 0 |
1219
|
0 |
0 |
&& report->nOpenOrReadFailures == 0 |
1220
|
0 |
0 |
&& (!strictMode || report->nImproperlyFormattedLines == 0) |
|
0 |
0 |
&& (!strictMode || report->nImproperlyFormattedLines == 0) |
1221
|
0 |
0 |
&& report->quit == 0; |
|
0 |
0 |
&& report->quit == 0; |
1237
|
0 |
0 |
if (fnTotal==0) { |
1241
|
0 |
0 |
for (fnNb=0; fnNb
|
1302
|
0 |
0 |
if (strrchr(name, '/')) name = strrchr(name, '/') + 1; |
1303
|
0 |
0 |
if (strrchr(name, '\\')) name = strrchr(name, '\\') + 1; /* windows */ |
1318
|
0 |
0 |
while ((**stringPtr >='0') && (**stringPtr <='9')) { |
1319
|
0 |
0 |
if (result > max) return 1; /* overflow error */ |
1324
|
0 |
0 |
if ((**stringPtr=='K') || (**stringPtr=='M')) { |
1326
|
0 |
0 |
if (result > maxK) return 1; /* overflow error */ |
1328
|
0 |
0 |
if (**stringPtr=='M') { |
1329
|
0 |
0 |
if (result > maxK) return 1; /* overflow error */ |
1333
|
0 |
0 |
if (**stringPtr=='i') (*stringPtr)++; |
1334
|
0 |
0 |
if (**stringPtr=='B') (*stringPtr)++; |
1349
|
0 |
0 |
if (XSUM_readU32FromCharChecked(stringPtr, &result)) { |
1374
|
0 |
0 |
if (strstr(exename, "xxh32sum") != NULL) algo = g_defaultAlgo = algo_xxh32; |
1375
|
0 |
0 |
if (strstr(exename, "xxh64sum") != NULL) algo = g_defaultAlgo = algo_xxh64; |
1376
|
0 |
0 |
if (strstr(exename, "xxh128sum") != NULL) algo = g_defaultAlgo = algo_xxh128; |
1378
|
0 |
0 |
for (i=1; i
|
1380
|
0 |
0 |
assert(argument != NULL); |
1382
|
0 |
0 |
if (!strcmp(argument, "--check")) { fileCheckMode = 1; continue; } |
1383
|
0 |
0 |
if (!strcmp(argument, "--benchmark-all")) { benchmarkMode = 1; selectBenchIDs = kBenchAll; continue; } |
1384
|
0 |
0 |
if (!strcmp(argument, "--bench-all")) { benchmarkMode = 1; selectBenchIDs = kBenchAll; continue; } |
1385
|
0 |
0 |
if (!strcmp(argument, "--quiet")) { XSUM_logLevel--; continue; } |
1386
|
0 |
0 |
if (!strcmp(argument, "--little-endian")) { displayEndianess = little_endian; continue; } |
1387
|
0 |
0 |
if (!strcmp(argument, "--strict")) { strictMode = 1; continue; } |
1388
|
0 |
0 |
if (!strcmp(argument, "--status")) { statusOnly = 1; continue; } |
1389
|
0 |
0 |
if (!strcmp(argument, "--warn")) { warn = 1; continue; } |
1390
|
0 |
0 |
if (!strcmp(argument, "--help")) { return XSUM_usage_advanced(exename); } |
1391
|
0 |
0 |
if (!strcmp(argument, "--version")) { XSUM_log(FULL_WELCOME_MESSAGE(exename)); XSUM_sanityCheck(); return 0; } |
1392
|
0 |
0 |
if (!strcmp(argument, "--tag")) { convention = display_bsd; continue; } |
1394
|
0 |
0 |
if (!strcmp(argument, "--")) { |
|
0 |
0 |
if (!strcmp(argument, "--")) { |
|
0 |
0 |
if (!strcmp(argument, "--")) { |
1395
|
0 |
0 |
if (filenamesStart==0 && i!=argc-1) filenamesStart=i+1; /* only supports a continuous list of filenames */ |
1398
|
0 |
0 |
if (*argument != '-') { |
1405
|
0 |
0 |
if (*argument == 0) explicitStdin = 1; |
1407
|
0 |
0 |
while (*argument != 0) { |
1449
|
0 |
0 |
if (*argument == ',') argument++; |
1451
|
0 |
0 |
if (selectBenchIDs < NB_TESTFUNC) { |
1455
|
0 |
0 |
} while (*argument == ','); |
1483
|
0 |
0 |
if (benchmarkMode) { |
1486
|
0 |
0 |
if (selectBenchIDs == 0) memcpy(g_testIDs, k_testIDs_default, sizeof(g_testIDs)); |
1487
|
0 |
0 |
if (selectBenchIDs == kBenchAll) memset(g_testIDs, 1, sizeof(g_testIDs)); |
1488
|
0 |
0 |
if (filenamesStart==0) return XSUM_benchInternal(keySize); |
1493
|
0 |
0 |
if ( (filenamesStart==0) && XSUM_isConsole(stdin) && !explicitStdin) |
|
0 |
0 |
if ( (filenamesStart==0) && XSUM_isConsole(stdin) && !explicitStdin) |
|
0 |
0 |
if ( (filenamesStart==0) && XSUM_isConsole(stdin) && !explicitStdin) |
1496
|
0 |
0 |
if (filenamesStart==0) filenamesStart = argc; |
1497
|
0 |
0 |
if (fileCheckMode) { |