Flawfinder version 2.0.10, (C) 2001-2019 David A. Wheeler. Number of rules (primarily dangerous function names) in C/C++ ruleset: 223 Examining data/isospec-2.1.2+dfsg1/Examples/C++/radiolabelling.cpp Examining data/isospec-2.1.2+dfsg1/Examples/C++/water.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpec++/allocator.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpec++/allocator.h Examining data/isospec-2.1.2+dfsg1/IsoSpec++/btrd.h Examining data/isospec-2.1.2+dfsg1/IsoSpec++/conf.h Examining data/isospec-2.1.2+dfsg1/IsoSpec++/cwrapper.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpec++/cwrapper.h Examining data/isospec-2.1.2+dfsg1/IsoSpec++/dirtyAllocator.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpec++/dirtyAllocator.h Examining data/isospec-2.1.2+dfsg1/IsoSpec++/element_tables.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpec++/element_tables.h Examining data/isospec-2.1.2+dfsg1/IsoSpec++/fasta.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpec++/fasta.h Examining data/isospec-2.1.2+dfsg1/IsoSpec++/fixedEnvelopes.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpec++/fixedEnvelopes.h Examining data/isospec-2.1.2+dfsg1/IsoSpec++/isoMath.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpec++/isoMath.h Examining data/isospec-2.1.2+dfsg1/IsoSpec++/isoSpec++.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpec++/isoSpec++.h Examining data/isospec-2.1.2+dfsg1/IsoSpec++/marginalTrek++.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpec++/marginalTrek++.h Examining data/isospec-2.1.2+dfsg1/IsoSpec++/misc.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpec++/misc.h Examining data/isospec-2.1.2+dfsg1/IsoSpec++/mman.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpec++/mman.h Examining data/isospec-2.1.2+dfsg1/IsoSpec++/operators.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpec++/operators.h Examining data/isospec-2.1.2+dfsg1/IsoSpec++/platform.h Examining data/isospec-2.1.2+dfsg1/IsoSpec++/pod_vector.h Examining data/isospec-2.1.2+dfsg1/IsoSpec++/summator.h Examining data/isospec-2.1.2+dfsg1/IsoSpec++/unity-build.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/IsoSpecR_init.c Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/RcppExports.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/Rinterface.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/allocator.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/allocator.h Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/btrd.h Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/conf.h Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/cwrapper.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/cwrapper.h Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/dirtyAllocator.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/dirtyAllocator.h Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/element_tables.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/element_tables.h Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/fasta.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/fasta.h Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/fixedEnvelopes.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/fixedEnvelopes.h Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/isoMath.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/isoMath.h Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/isoSpec++.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/isoSpec++.h Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/marginalTrek++.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/marginalTrek++.h Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/misc.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/misc.h Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/mman.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/mman.h Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/operators.cpp Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/operators.h Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/platform.h Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/pod_vector.h Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/summator.h Examining data/isospec-2.1.2+dfsg1/IsoSpecR/src/unity-build.cpp Examining data/isospec-2.1.2+dfsg1/experiments/log_vs_natural.cpp Examining data/isospec-2.1.2+dfsg1/experiments/threshold-search/exp1.cpp Examining data/isospec-2.1.2+dfsg1/tests/C++/IsoThresholdGenerator.cpp Examining data/isospec-2.1.2+dfsg1/tests/C++/element_zero.cpp Examining data/isospec-2.1.2+dfsg1/tests/C++/empty_iso.cpp Examining data/isospec-2.1.2+dfsg1/tests/C++/from_formula_layered.cpp Examining data/isospec-2.1.2+dfsg1/tests/C++/from_formula_layered_generator.cpp Examining data/isospec-2.1.2+dfsg1/tests/C++/from_formula_ordered.cpp Examining data/isospec-2.1.2+dfsg1/tests/C++/from_formula_threshold.cpp Examining data/isospec-2.1.2+dfsg1/tests/C++/from_formula_threshold_profile.cpp Examining data/isospec-2.1.2+dfsg1/tests/C++/from_formula_threshold_simple.cpp Examining data/isospec-2.1.2+dfsg1/tests/C++/layered-test.cpp Examining data/isospec-2.1.2+dfsg1/tests/C++/main_test.cpp Examining data/isospec-2.1.2+dfsg1/tests/C++/marginal-test.cpp Examining data/isospec-2.1.2+dfsg1/tests/C++/mass_range.cpp Examining data/isospec-2.1.2+dfsg1/tests/C++/nr_conf.cpp Examining data/isospec-2.1.2+dfsg1/tests/C++/tabulator_test.cpp Examining data/isospec-2.1.2+dfsg1/tests/C++/titin-test.cpp Examining data/isospec-2.1.2+dfsg1/tests/C/test_IsoOrderedGenerator.c Examining data/isospec-2.1.2+dfsg1/tests/C/test_IsoThresholdGenerator.c Examining data/isospec-2.1.2+dfsg1/tests/C/test_arrays.c FINAL RESULTS: data/isospec-2.1.2+dfsg1/IsoSpec++/allocator.h:30:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(destination, source, dim*sizeof(T)); data/isospec-2.1.2+dfsg1/IsoSpec++/fixedEnvelopes.cpp:75:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(nprobs, _probs, sizeof(double) * _confs_no); data/isospec-2.1.2+dfsg1/IsoSpec++/fixedEnvelopes.cpp:76:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(nmasses, _masses, sizeof(double) * _confs_no); data/isospec-2.1.2+dfsg1/IsoSpec++/fixedEnvelopes.cpp:78:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(nprobs+_confs_no, other._probs, sizeof(double) * other._confs_no); data/isospec-2.1.2+dfsg1/IsoSpec++/fixedEnvelopes.cpp:79:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(nmasses+_confs_no, other._masses, sizeof(double) * other._confs_no); data/isospec-2.1.2+dfsg1/IsoSpec++/fixedEnvelopes.cpp:139:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(order_c, order, sizeof(size_t)*size); data/isospec-2.1.2+dfsg1/IsoSpec++/fixedEnvelopes.cpp:178:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(swapspace, &_confs[ii*allDim], allDimSizeofInt); data/isospec-2.1.2+dfsg1/IsoSpec++/fixedEnvelopes.cpp:179:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(&_confs[ii*allDim], &_confs[inverse[ii]*allDim], allDimSizeofInt); data/isospec-2.1.2+dfsg1/IsoSpec++/fixedEnvelopes.cpp:180:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(&_confs[inverse[ii]*allDim], swapspace, allDimSizeofInt); data/isospec-2.1.2+dfsg1/IsoSpec++/fixedEnvelopes.cpp:243:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(newmasses + cntr, spectra[ii]->_masses, sizeof(double) * spectra[ii]->_confs_no); data/isospec-2.1.2+dfsg1/IsoSpec++/fixedEnvelopes.h:148:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(conf_swapspace, c1, this->allDimSizeofInt); data/isospec-2.1.2+dfsg1/IsoSpec++/fixedEnvelopes.h:149:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(c1, c2, this->allDimSizeofInt); data/isospec-2.1.2+dfsg1/IsoSpec++/fixedEnvelopes.h:150:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(c2, conf_swapspace, this->allDimSizeofInt); data/isospec-2.1.2+dfsg1/IsoSpec++/isoSpec++.cpp:899:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(acceptedCandidateIsoCounts, topConfIsoCounts, confSize); data/isospec-2.1.2+dfsg1/IsoSpec++/isoSpec++.h:271:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(space, marginalResults[ii]->confs()[c[ii]], isotopeNumbers[ii]*sizeof(int)); data/isospec-2.1.2+dfsg1/IsoSpec++/isoSpec++.h:323:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(space, marginalResultsUnsorted[ii]->get_conf(counter[jj]), isotopeNumbers[ii]*sizeof(int)); data/isospec-2.1.2+dfsg1/IsoSpec++/isoSpec++.h:331:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(space, marginalResultsUnsorted[ii]->get_conf(counter[ii]), isotopeNumbers[ii]*sizeof(int)); data/isospec-2.1.2+dfsg1/IsoSpec++/isoSpec++.h:469:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(space, marginalResultsUnsorted[ii]->get_conf(counter[jj]), isotopeNumbers[ii]*sizeof(int)); data/isospec-2.1.2+dfsg1/IsoSpec++/isoSpec++.h:477:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(space, marginalResultsUnsorted[ii]->get_conf(counter[ii]), isotopeNumbers[ii]*sizeof(int)); data/isospec-2.1.2+dfsg1/IsoSpec++/misc.h:122:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(ret, A, size*sizeof(T)); data/isospec-2.1.2+dfsg1/IsoSpec++/misc.h:145:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(newT, *array, old_array_size*sizeof(T)); data/isospec-2.1.2+dfsg1/IsoSpec++/pod_vector.h:219:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(this, *other, sizeof(*this)); data/isospec-2.1.2+dfsg1/IsoSpecR/src/allocator.h:30:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(destination, source, dim*sizeof(T)); data/isospec-2.1.2+dfsg1/IsoSpecR/src/fixedEnvelopes.cpp:75:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(nprobs, _probs, sizeof(double) * _confs_no); data/isospec-2.1.2+dfsg1/IsoSpecR/src/fixedEnvelopes.cpp:76:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(nmasses, _masses, sizeof(double) * _confs_no); data/isospec-2.1.2+dfsg1/IsoSpecR/src/fixedEnvelopes.cpp:78:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(nprobs+_confs_no, other._probs, sizeof(double) * other._confs_no); data/isospec-2.1.2+dfsg1/IsoSpecR/src/fixedEnvelopes.cpp:79:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(nmasses+_confs_no, other._masses, sizeof(double) * other._confs_no); data/isospec-2.1.2+dfsg1/IsoSpecR/src/fixedEnvelopes.cpp:139:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(order_c, order, sizeof(size_t)*size); data/isospec-2.1.2+dfsg1/IsoSpecR/src/fixedEnvelopes.cpp:178:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(swapspace, &_confs[ii*allDim], allDimSizeofInt); data/isospec-2.1.2+dfsg1/IsoSpecR/src/fixedEnvelopes.cpp:179:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(&_confs[ii*allDim], &_confs[inverse[ii]*allDim], allDimSizeofInt); data/isospec-2.1.2+dfsg1/IsoSpecR/src/fixedEnvelopes.cpp:180:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(&_confs[inverse[ii]*allDim], swapspace, allDimSizeofInt); data/isospec-2.1.2+dfsg1/IsoSpecR/src/fixedEnvelopes.cpp:243:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(newmasses + cntr, spectra[ii]->_masses, sizeof(double) * spectra[ii]->_confs_no); data/isospec-2.1.2+dfsg1/IsoSpecR/src/fixedEnvelopes.h:148:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(conf_swapspace, c1, this->allDimSizeofInt); data/isospec-2.1.2+dfsg1/IsoSpecR/src/fixedEnvelopes.h:149:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(c1, c2, this->allDimSizeofInt); data/isospec-2.1.2+dfsg1/IsoSpecR/src/fixedEnvelopes.h:150:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(c2, conf_swapspace, this->allDimSizeofInt); data/isospec-2.1.2+dfsg1/IsoSpecR/src/isoSpec++.cpp:899:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(acceptedCandidateIsoCounts, topConfIsoCounts, confSize); data/isospec-2.1.2+dfsg1/IsoSpecR/src/isoSpec++.h:271:13: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(space, marginalResults[ii]->confs()[c[ii]], isotopeNumbers[ii]*sizeof(int)); data/isospec-2.1.2+dfsg1/IsoSpecR/src/isoSpec++.h:323:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(space, marginalResultsUnsorted[ii]->get_conf(counter[jj]), isotopeNumbers[ii]*sizeof(int)); data/isospec-2.1.2+dfsg1/IsoSpecR/src/isoSpec++.h:331:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(space, marginalResultsUnsorted[ii]->get_conf(counter[ii]), isotopeNumbers[ii]*sizeof(int)); data/isospec-2.1.2+dfsg1/IsoSpecR/src/isoSpec++.h:469:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(space, marginalResultsUnsorted[ii]->get_conf(counter[jj]), isotopeNumbers[ii]*sizeof(int)); data/isospec-2.1.2+dfsg1/IsoSpecR/src/isoSpec++.h:477:17: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(space, marginalResultsUnsorted[ii]->get_conf(counter[ii]), isotopeNumbers[ii]*sizeof(int)); data/isospec-2.1.2+dfsg1/IsoSpecR/src/misc.h:122:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(ret, A, size*sizeof(T)); data/isospec-2.1.2+dfsg1/IsoSpecR/src/misc.h:145:5: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(newT, *array, old_array_size*sizeof(T)); data/isospec-2.1.2+dfsg1/IsoSpecR/src/pod_vector.h:219:9: [2] (buffer) memcpy: Does not check for buffer overflows when copying to destination (CWE-120). Make sure destination can always hold the source data. memcpy(this, *other, sizeof(*this)); data/isospec-2.1.2+dfsg1/IsoSpec++/isoSpec++.cpp:358:19: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). size_t slen = strlen(formula); data/isospec-2.1.2+dfsg1/IsoSpec++/isoSpec++.cpp:397:18: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if ((strlen(elem_table_symbol[j]) == elements[i].second) && (strncmp(elements[i].first, elem_table_symbol[j], elements[i].second) == 0)) data/isospec-2.1.2+dfsg1/IsoSpec++/misc.h:87:9: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if (strlen(prefix) > 0) data/isospec-2.1.2+dfsg1/IsoSpec++/misc.h:101:9: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if (strlen(prefix) > 0) data/isospec-2.1.2+dfsg1/IsoSpecR/src/isoSpec++.cpp:358:19: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). size_t slen = strlen(formula); data/isospec-2.1.2+dfsg1/IsoSpecR/src/isoSpec++.cpp:397:18: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if ((strlen(elem_table_symbol[j]) == elements[i].second) && (strncmp(elements[i].first, elem_table_symbol[j], elements[i].second) == 0)) data/isospec-2.1.2+dfsg1/IsoSpecR/src/misc.h:87:9: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if (strlen(prefix) > 0) data/isospec-2.1.2+dfsg1/IsoSpecR/src/misc.h:101:9: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). if (strlen(prefix) > 0) data/isospec-2.1.2+dfsg1/tests/C++/main_test.cpp:40:18: [1] (buffer) strlen: Does not handle strings that are not \0-terminated; if given one it may perform an over-read (it could cause a crash if unprotected) (CWE-126). size_t tf_len = strlen(test_formulas); ANALYSIS SUMMARY: Hits = 53 Lines analyzed = 20587 in approximately 0.56 seconds (37088 lines/second) Physical Source Lines of Code (SLOC) = 15979 Hits@level = [0] 0 [1] 9 [2] 44 [3] 0 [4] 0 [5] 0 Hits@level+ = [0+] 53 [1+] 53 [2+] 44 [3+] 0 [4+] 0 [5+] 0 Hits/KSLOC@level+ = [0+] 3.31685 [1+] 3.31685 [2+] 2.75361 [3+] 0 [4+] 0 [5+] 0 Dot directories skipped = 1 (--followdotdir overrides) Minimum risk level = 1 Not every hit is necessarily a security vulnerability. There may be other security vulnerabilities; review your code! See 'Secure Programming HOWTO' (https://dwheeler.com/secure-programs) for more information.