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/vtk-dicom-0.8.12/DicomCli/mainmacro.cxx
Examining data/vtk-dicom-0.8.12/DicomCli/mainmacro.h
Examining data/vtk-dicom-0.8.12/DicomCli/progress.cxx
Examining data/vtk-dicom-0.8.12/DicomCli/progress.h
Examining data/vtk-dicom-0.8.12/DicomCli/readquery.cxx
Examining data/vtk-dicom-0.8.12/DicomCli/readquery.h
Examining data/vtk-dicom-0.8.12/DicomCli/vtkConsoleOutputWindow.cxx
Examining data/vtk-dicom-0.8.12/DicomCli/vtkConsoleOutputWindow.h
Examining data/vtk-dicom-0.8.12/Examples/TestDICOMCompiler.cxx
Examining data/vtk-dicom-0.8.12/Examples/TestDICOMDirectory.cxx
Examining data/vtk-dicom-0.8.12/Examples/TestDICOMDisplay.cxx
Examining data/vtk-dicom-0.8.12/Examples/TestDICOMFileSorter.cxx
Examining data/vtk-dicom-0.8.12/Examples/TestDICOMOverlay.cxx
Examining data/vtk-dicom-0.8.12/Examples/TestDICOMParser.cxx
Examining data/vtk-dicom-0.8.12/Examples/TestDICOMReader.cxx
Examining data/vtk-dicom-0.8.12/Examples/TestDICOMRealWorldValue.cxx
Examining data/vtk-dicom-0.8.12/Examples/TestDICOMWriter.cxx
Examining data/vtk-dicom-0.8.12/Examples/TestNIFTIDisplay.cxx
Examining data/vtk-dicom-0.8.12/Examples/TestScancoCTDisplay.cxx
Examining data/vtk-dicom-0.8.12/Programs/dicomdump.cxx
Examining data/vtk-dicom-0.8.12/Programs/dicomfind.cxx
Examining data/vtk-dicom-0.8.12/Programs/dicompull.cxx
Examining data/vtk-dicom-0.8.12/Programs/dicomtocsv.cxx
Examining data/vtk-dicom-0.8.12/Programs/dicomtodicom.cxx
Examining data/vtk-dicom-0.8.12/Programs/dicomtonifti.cxx
Examining data/vtk-dicom-0.8.12/Programs/nifticenter.cxx
Examining data/vtk-dicom-0.8.12/Programs/niftidump.cxx
Examining data/vtk-dicom-0.8.12/Programs/niftitodicom.cxx
Examining data/vtk-dicom-0.8.12/Programs/scancodump.cxx
Examining data/vtk-dicom-0.8.12/Programs/scancotodicom.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMAlgorithm.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMAlgorithm.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMApplyPalette.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMApplyPalette.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMApplyRescale.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMApplyRescale.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMCTGenerator.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMCTGenerator.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMCTRectifier.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMCTRectifier.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMCharacterSet.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMCharacterSet.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMCharacterSetTables.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMCharacterSetTables.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMCompiler.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMCompiler.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMDataElement.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMDataElement.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMDictEntry.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMDictEntry.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMDictHash.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMDictHash.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMDictPrivate.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMDictPrivate.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMDictionary.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMDictionary.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMDirectory.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMDirectory.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMFile.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMFile.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMFileDirectory.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMFileDirectory.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMFilePath.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMFilePath.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMFileSorter.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMFileSorter.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMGenerator.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMGenerator.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMImageCodec.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMImageCodec.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMItem.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMItem.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMLookupTable.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMLookupTable.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMMRGenerator.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMMRGenerator.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMMetaData.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMMetaData.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMMetaDataAdapter.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMMetaDataAdapter.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMParser.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMParser.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMReader.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMReader.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMReferenceCount.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMReferenceCount.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMSCGenerator.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMSCGenerator.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMSequence.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMSequence.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMSliceSorter.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMSliceSorter.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMSorter.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMSorter.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMTag.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMTag.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMTagPath.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMTagPath.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMToRAS.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMToRAS.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMUtilities.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMUtilities.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMUtilitiesUIDTable.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMUtilitiesUIDTable.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMVM.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMVM.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMVR.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMVR.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMValue.h
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMWriter.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkDICOMWriter.h
Examining data/vtk-dicom-0.8.12/Source/vtkNIFTIHeader.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkNIFTIHeader.h
Examining data/vtk-dicom-0.8.12/Source/vtkNIFTIPrivate.h
Examining data/vtk-dicom-0.8.12/Source/vtkNIFTIReader.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkNIFTIReader.h
Examining data/vtk-dicom-0.8.12/Source/vtkNIFTIWriter.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkNIFTIWriter.h
Examining data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.cxx
Examining data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.h
Examining data/vtk-dicom-0.8.12/Testing/TestDICOMCharacterSet.cxx
Examining data/vtk-dicom-0.8.12/Testing/TestDICOMDictionary.cxx
Examining data/vtk-dicom-0.8.12/Testing/TestDICOMFilePath.cxx
Examining data/vtk-dicom-0.8.12/Testing/TestDICOMItem.cxx
Examining data/vtk-dicom-0.8.12/Testing/TestDICOMMetaData.cxx
Examining data/vtk-dicom-0.8.12/Testing/TestDICOMSequence.cxx
Examining data/vtk-dicom-0.8.12/Testing/TestDICOMTagPath.cxx
Examining data/vtk-dicom-0.8.12/Testing/TestDICOMUtilities.cxx
Examining data/vtk-dicom-0.8.12/Testing/TestDICOMVM.cxx
Examining data/vtk-dicom-0.8.12/Testing/TestDICOMVR.cxx
Examining data/vtk-dicom-0.8.12/Testing/TestDICOMValue.cxx

FINAL RESULTS:

data/vtk-dicom-0.8.12/Examples/TestDICOMCompiler.cxx:183:9:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
        sprintf(outpath, outfile, fileBasename(fname.c_str()));
data/vtk-dicom-0.8.12/Programs/dicomfind.cxx:183:12:  [4] (shell) execvp:
  This causes a new program to execute and is difficult to use safely
  (CWE-78). try using a library call that implements the same functionality
  if available.
  else if (execvp(command, argv) == -1)
data/vtk-dicom-0.8.12/Source/vtkDICOMCompiler.cxx:888:3:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
  strcpy(this->ImplementationClassUID, impuid);
data/vtk-dicom-0.8.12/Source/vtkDICOMCompiler.cxx:894:3:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
  strcpy(this->ImplementationVersionName, impname);
data/vtk-dicom-0.8.12/Source/vtkDICOMCompiler.cxx:899:3:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
  strcpy(this->TransferSyntaxUID, tsyntax);
data/vtk-dicom-0.8.12/Source/vtkDICOMCompiler.cxx:1485:7:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
      strcpy(vtkDICOMCompiler::StudyUID, uid.c_str());
data/vtk-dicom-0.8.12/Source/vtkDICOMDirectory.cxx:460:5:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
    strcpy(cp, name);
data/vtk-dicom-0.8.12/Source/vtkDICOMDirectory.cxx:481:5:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
    strcpy(cp, name);
data/vtk-dicom-0.8.12/Source/vtkDICOMDirectory.cxx:2218:5:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
    strcpy(this->FileSetID, fileSetID.c_str());
data/vtk-dicom-0.8.12/Source/vtkDICOMFile.cxx:432:7:  [4] (race) access:
  This usually indicates a security flaw. If an attacker can change anything
  along the path between the call to access() and the file's actual use
  (e.g., by moving files), the attacker can exploit the race condition
  (CWE-362/CWE-367!). Set up the correct permissions (e.g., using setuid())
  and try to open the file directly.
      access(filename, (mode == In ? R_OK : W_OK)) != 0)
data/vtk-dicom-0.8.12/Source/vtkDICOMFileDirectory.cxx:472:7:  [4] (race) access:
  This usually indicates a security flaw. If an attacker can change anything
  along the path between the call to access() and the file's actual use
  (e.g., by moving files), the attacker can exploit the race condition
  (CWE-362/CWE-367!). Set up the correct permissions (e.g., using setuid())
  and try to open the file directly.
      access(dirname, (mode == In ? R_OK : W_OK)) != 0)
data/vtk-dicom-0.8.12/Source/vtkDICOMFileSorter.cxx:152:5:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
    strcpy(cp, name);
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:207:3:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
  strcpy(uid, cp);
data/vtk-dicom-0.8.12/Source/vtkDICOMUtilities.cxx:269:3:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
  sprintf(dt, "%04d%02d%02d%02d%02d%02d.%06d%s",
data/vtk-dicom-0.8.12/Source/vtkDICOMWriter.cxx:267:5:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
    sprintf(this->InternalFileName, "%s", this->FileName);
data/vtk-dicom-0.8.12/Source/vtkDICOMWriter.cxx:271:5:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
    sprintf(this->InternalFileName,
data/vtk-dicom-0.8.12/Source/vtkDICOMWriter.cxx:276:5:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
    sprintf(this->InternalFileName, this->FilePattern, slice);
data/vtk-dicom-0.8.12/Source/vtkNIFTIReader.cxx:200:5:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
    strcpy(newname, filename);
data/vtk-dicom-0.8.12/Source/vtkNIFTIReader.cxx:406:9:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
        strcpy(hdrname, filename);
data/vtk-dicom-0.8.12/Source/vtkNIFTIReader.cxx:1070:9:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
        strcpy(imgname, filename);
data/vtk-dicom-0.8.12/Source/vtkNIFTIWriter.cxx:187:3:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
  strcpy(newname, filename);
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.cxx:501:3:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
  sprintf(this->CreationDate, "%d-%s-%d %02d:%02d:%02d.%03d",
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.cxx:504:3:  [4] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf.
  sprintf(this->ModificationDate, "%d-%s-%d %02d:%02d:%02d.%03d",
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.cxx:637:5:  [4] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused).
    strcpy(this->Version, h);
data/vtk-dicom-0.8.12/Testing/TestDICOMMetaData.cxx:209:7:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
      sprintf(instanceUID, instanceUIDFormat, 255+j);
data/vtk-dicom-0.8.12/Testing/TestDICOMMetaData.cxx:262:5:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
    sprintf(instanceUID, instanceUIDFormat, 255+j);
data/vtk-dicom-0.8.12/Testing/TestDICOMSequence.cxx:78:7:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
      sprintf(instanceUID, instanceUIDFormat, 255+j);
data/vtk-dicom-0.8.12/Testing/TestDICOMSequence.cxx:140:9:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
        sprintf(instanceUID, instanceUIDFormat, 255+j);
data/vtk-dicom-0.8.12/Programs/dicomtonifti.cxx:1216:25:  [3] (buffer) realpath:
  This function does not protect against buffer overflows, and some
  implementations can overflow internally (CWE-120/CWE-785!). Ensure that the
  destination buffer is at least of size MAXPATHLEN, andto protect against
  implementation problems, the input argument should also be checked to
  ensure it is no larger than MAXPATHLEN.
    if (pastdirs->count(realpath)) { continue; }
data/vtk-dicom-0.8.12/Programs/dicomtonifti.cxx:1217:39:  [3] (buffer) realpath:
  This function does not protect against buffer overflows, and some
  implementations can overflow internally (CWE-120/CWE-785!). Ensure that the
  destination buffer is at least of size MAXPATHLEN, andto protect against
  implementation problems, the input argument should also be checked to
  ensure it is no larger than MAXPATHLEN.
    pastdirs->insert(pastdirs->end(), realpath);
data/vtk-dicom-0.8.12/Source/vtkDICOMFilePath.cxx:537:16:  [3] (buffer) realpath:
  This function does not protect against buffer overflows, and some
  implementations can overflow internally (CWE-120/CWE-785!). Ensure that the
  destination buffer is at least of size MAXPATHLEN, andto protect against
  implementation problems, the input argument should also be checked to
  ensure it is no larger than MAXPATHLEN.
  char *path = realpath(this->Path.c_str(), storage);
data/vtk-dicom-0.8.12/DicomCli/mainmacro.cxx:165:3:  [2] (buffer) wchar_t:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  wchar_t val_lower[MAX_PATH];
data/vtk-dicom-0.8.12/DicomCli/mainmacro.cxx:166:3:  [2] (buffer) wchar_t:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  wchar_t spec_lower[MAX_PATH];
data/vtk-dicom-0.8.12/Examples/TestDICOMCompiler.cxx:182:9:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
        char outpath[128];
data/vtk-dicom-0.8.12/Examples/TestDICOMCompiler.cxx:236:20:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
          unsigned char hashbuf[8192];
data/vtk-dicom-0.8.12/Examples/TestDICOMDirectory.cxx:49:30:  [2] (integer) atol:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
    depth = static_cast<int>(atol(argv[2]));
data/vtk-dicom-0.8.12/Programs/dicomdump.cxx:146:16:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  static const char spaces[MAX_INDENT+1] = "                        ";
data/vtk-dicom-0.8.12/Programs/dicomfind.cxx:234:25:  [2] (buffer) wchar_t:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  wchar_t **wargv = new wchar_t *[m + 1];
data/vtk-dicom-0.8.12/Programs/dicomfind.cxx:238:13:  [2] (buffer) MultiByteToWideChar:
  Requires maximum length in CHARACTERS, not bytes (CWE-120).
    int n = MultiByteToWideChar(CP_UTF8, 0, argv[i], -1, NULL, 0);
data/vtk-dicom-0.8.12/Programs/dicomfind.cxx:240:5:  [2] (buffer) MultiByteToWideChar:
  Requires maximum length in CHARACTERS, not bytes (CWE-120).
    MultiByteToWideChar(CP_UTF8, 0, argv[i], -1, wargv[i], n);
data/vtk-dicom-0.8.12/Programs/dicomfind.cxx:290:11:  [2] (buffer) MultiByteToWideChar:
  Requires maximum length in CHARACTERS, not bytes (CWE-120).
  int n = MultiByteToWideChar(CP_UTF8, 0, dirname, -1, NULL, 0);
data/vtk-dicom-0.8.12/Programs/dicomfind.cxx:292:3:  [2] (buffer) MultiByteToWideChar:
  Requires maximum length in CHARACTERS, not bytes (CWE-120).
  MultiByteToWideChar(CP_UTF8, 0, dirname, -1, wp, n);
data/vtk-dicom-0.8.12/Programs/dicomfind.cxx:302:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char buffer[2048];
data/vtk-dicom-0.8.12/Programs/dicomfind.cxx:308:3:  [2] (buffer) wchar_t:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  wchar_t wbuffer[2048];
data/vtk-dicom-0.8.12/Programs/dicomfind.cxx:369:33:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
          char **sub_argv = new char *[sub_argc+1];
data/vtk-dicom-0.8.12/Programs/dicomfind.cxx:437:31:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
        char **sub_argv = new char *[sub_argc+1];
data/vtk-dicom-0.8.12/Programs/dicomfind.cxx:666:36:  [2] (integer) atol:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
      scandepth = static_cast<int>(atol(argv[argi]));
data/vtk-dicom-0.8.12/Programs/dicompull.cxx:416:36:  [2] (integer) atol:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
      scandepth = static_cast<int>(atol(argv[argi]));
data/vtk-dicom-0.8.12/Programs/dicompull.cxx:616:11:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
          char fname[32];
data/vtk-dicom-0.8.12/Programs/dicompull.cxx:617:11:  [2] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source has a constant maximum length.
          sprintf(fname, "IM-%04d-%04d.dcm", si, static_cast<int>(i+1));
data/vtk-dicom-0.8.12/Programs/dicomtocsv.cxx:1007:11:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
    fp1 = fopen(ofile, "wb");
data/vtk-dicom-0.8.12/Programs/dicomtocsv.cxx:1010:13:  [2] (buffer) MultiByteToWideChar:
  Requires maximum length in CHARACTERS, not bytes (CWE-120).
    int n = MultiByteToWideChar(CP_UTF8, 0, ofile, -1, NULL, 0);
data/vtk-dicom-0.8.12/Programs/dicomtocsv.cxx:1012:5:  [2] (buffer) MultiByteToWideChar:
  Requires maximum length in CHARACTERS, not bytes (CWE-120).
    MultiByteToWideChar(CP_UTF8, 0, ofile, -1, wofile, n);
data/vtk-dicom-0.8.12/Programs/dicomtonifti.cxx:287:9:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  const char *unit_list[6] = {
data/vtk-dicom-0.8.12/Programs/dicomtonifti.cxx:470:27:  [2] (integer) atoi:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
        options->volume = atoi(arg);
data/vtk-dicom-0.8.12/Programs/dicomtonifti.cxx:919:11:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
    const char *months[13] = { "/   /", "/Jan/", "/Feb/", "/Mar/", "/Apr/",
data/vtk-dicom-0.8.12/Programs/niftidump.cxx:63:7:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
const char *stringSanitize(
data/vtk-dicom-0.8.12/Programs/niftidump.cxx:64:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char op[SANITIZE_BUFSIZE], const char *cp, size_t l)
data/vtk-dicom-0.8.12/Programs/niftidump.cxx:187:16:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  static const char *intentCodes[25] = {
data/vtk-dicom-0.8.12/Programs/niftidump.cxx:278:9:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  const char *xformCode[2] = { "unknown", "unknown" };
data/vtk-dicom-0.8.12/Programs/niftidump.cxx:302:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char buf[SANITIZE_BUFSIZE];
data/vtk-dicom-0.8.12/Programs/scancotodicom.cxx:199:33:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
void scancotodicom_convert_date(char date[32])
data/vtk-dicom-0.8.12/Programs/scancotodicom.cxx:205:9:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  const char *months[12] = {
data/vtk-dicom-0.8.12/Programs/scancotodicom.cxx:247:3:  [2] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source has a constant maximum length.
  sprintf(date, "%04d%02d%02d%02d%02d%02d.%06d",
data/vtk-dicom-0.8.12/Programs/scancotodicom.cxx:536:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char date[32];
data/vtk-dicom-0.8.12/Source/vtkDICOMApplyPalette.cxx:80:35:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  vtkImageData *outData, unsigned char *outPtr0, int extent[6],
data/vtk-dicom-0.8.12/Source/vtkDICOMCharacterSet.cxx:1605:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char text[4];
data/vtk-dicom-0.8.12/Source/vtkDICOMCharacterSet.cxx:2661:31:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
        static const unsigned char tableL[19] = {
data/vtk-dicom-0.8.12/Source/vtkDICOMCharacterSet.cxx:2666:31:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
        static const unsigned char tableT[28] = {
data/vtk-dicom-0.8.12/Source/vtkDICOMCharacterSet.cxx:2741:33:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
          static const unsigned char tableL[52] = {
data/vtk-dicom-0.8.12/Source/vtkDICOMCharacterSet.cxx:2748:33:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
          static const unsigned char tableT[52] = {
data/vtk-dicom-0.8.12/Source/vtkDICOMCompiler.cxx:1233:11:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  union { char c[2]; short s; } endiancheck;
data/vtk-dicom-0.8.12/Source/vtkDICOMCompiler.cxx:1247:38:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
      this->FrameData = new unsigned char *[numFrames];
data/vtk-dicom-0.8.12/Source/vtkDICOMCompiler.cxx:1350:12:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  unsigned char metaver[2] = { 0, 1 }; // meta header version
data/vtk-dicom-0.8.12/Source/vtkDICOMCompiler.h:267:10:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  static char StudyUID[64];
data/vtk-dicom-0.8.12/Source/vtkDICOMDictionary.cxx:65:9:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  const char *input, char output[64])
data/vtk-dicom-0.8.12/Source/vtkDICOMDictionary.cxx:65:22:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  const char *input, char output[64])
data/vtk-dicom-0.8.12/Source/vtkDICOMDictionary.cxx:100:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char stripname[64];
data/vtk-dicom-0.8.12/Source/vtkDICOMDictionary.cxx:172:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char stripkey[64];
data/vtk-dicom-0.8.12/Source/vtkDICOMDictionary.cxx:232:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char stripname[64];
data/vtk-dicom-0.8.12/Source/vtkDICOMDictionary.cxx:284:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char stripname[64];
data/vtk-dicom-0.8.12/Source/vtkDICOMDictionary.h:96:44:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  static unsigned int HashLongString(const char *lo, char stripped[64]);
data/vtk-dicom-0.8.12/Source/vtkDICOMDictionary.h:96:54:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  static unsigned int HashLongString(const char *lo, char stripped[64]);
data/vtk-dicom-0.8.12/Source/vtkDICOMDirectory.cxx:1646:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char uid[64];
data/vtk-dicom-0.8.12/Source/vtkDICOMDirectory.cxx:1717:7:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
      char enc[4];
data/vtk-dicom-0.8.12/Source/vtkDICOMDirectory.cxx:1718:7:  [2] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source has a constant maximum length.
      sprintf(enc, "%%%2.2x", static_cast<unsigned char>(c));
data/vtk-dicom-0.8.12/Source/vtkDICOMDirectory.cxx:2134:31:  [2] (integer) atol:
  Unless checked, the resulting number can exceed the expected range
  (CWE-190). If source untrusted, check both minimum and maximum, even if the
  input had no minus sign (large numbers can roll over into negative number;
  consider saving to an unsigned value if that is intended).
          vtkTypeInt64 fnum = atol(fpath.c_str());
data/vtk-dicom-0.8.12/Source/vtkDICOMFile.cxx:50:20:  [2] (misc) open:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
    this->Handle = open(filename, O_RDONLY);
data/vtk-dicom-0.8.12/Source/vtkDICOMFile.cxx:54:20:  [2] (misc) open:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
    this->Handle = open(filename, O_WRONLY | O_CREAT | O_TRUNC, 000666);
data/vtk-dicom-0.8.12/Source/vtkDICOMFile.cxx:151:20:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
    this->Handle = fopen(filename, "rb");
data/vtk-dicom-0.8.12/Source/vtkDICOMFile.cxx:155:20:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
    this->Handle = fopen(filename, "wb");
data/vtk-dicom-0.8.12/Source/vtkDICOMFileDirectory.cxx:81:7:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
      char name[MAX_PATH*3];
data/vtk-dicom-0.8.12/Source/vtkDICOMFilePath.cxx:449:3:  [2] (buffer) wchar_t:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  wchar_t buffer[512];
data/vtk-dicom-0.8.12/Source/vtkDICOMFilePath.cxx:471:3:  [2] (buffer) wchar_t:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  wchar_t buffer[512];
data/vtk-dicom-0.8.12/Source/vtkDICOMFilePath.cxx:815:11:  [2] (buffer) MultiByteToWideChar:
  Requires maximum length in CHARACTERS, not bytes (CWE-120).
  int n = MultiByteToWideChar(
data/vtk-dicom-0.8.12/Source/vtkDICOMFilePath.cxx:820:9:  [2] (buffer) MultiByteToWideChar:
  Requires maximum length in CHARACTERS, not bytes (CWE-120).
    n = MultiByteToWideChar(
data/vtk-dicom-0.8.12/Source/vtkDICOMImageCodec.cxx:117:11:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  union { char c[2]; short s; } endiancheck;
data/vtk-dicom-0.8.12/Source/vtkDICOMImageCodec.cxx:262:11:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  union { char c[2]; short s; } endiancheck;
data/vtk-dicom-0.8.12/Source/vtkDICOMImageCodec.cxx:347:11:  [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(newdest, dest, size);
data/vtk-dicom-0.8.12/Source/vtkDICOMImageCodec.h:145:16:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  static const char *UIDs[21];
data/vtk-dicom-0.8.12/Source/vtkDICOMLookupTable.cxx:390:18:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  const unsigned char *cpp[4] = { 0, 0, 0, 0 };
data/vtk-dicom-0.8.12/Source/vtkDICOMReader.cxx:1655:11:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  union { char c[2]; short s; } endianCheck = { { 0, 1 } };
data/vtk-dicom-0.8.12/Source/vtkDICOMReader.cxx:1828: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(buffer, pixelData, bufferSize);
data/vtk-dicom-0.8.12/Source/vtkDICOMReader.cxx:2176: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(rowBuffer, row1, fileRowSize);
data/vtk-dicom-0.8.12/Source/vtkDICOMReader.cxx:2177: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(row1, row2, fileRowSize);
data/vtk-dicom-0.8.12/Source/vtkDICOMReader.cxx:2178: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(row2, rowBuffer, fileRowSize);
data/vtk-dicom-0.8.12/Source/vtkDICOMReader.cxx:2205:11:  [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(slicePtr, planePtr, filePlaneSize);
data/vtk-dicom-0.8.12/Source/vtkDICOMReader.h:487:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char DesiredStackID[20];
data/vtk-dicom-0.8.12/Source/vtkDICOMSliceSorter.h:209:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char DesiredStackID[20];
data/vtk-dicom-0.8.12/Source/vtkDICOMTag.cxx:22:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char text[12];
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:180:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char x[uuidlen + 4];
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:181:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char y[uidlen + 4];
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:212:43:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
inline void vtkGenerateHexDigits(unsigned char y, char cp[2])
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:212:51:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
inline void vtkGenerateHexDigits(unsigned char y, char cp[2])
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:240:44:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
void vtkConvertRandomToUUID(const unsigned char bytes[16], char *uuid)
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:243:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char r[16];
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:275:3:  [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(uid, "2.25.", 5);
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:397:18:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  const unsigned char *r, vtkIdType m, const char *prefix, char d,
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:397:46:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  const unsigned char *r, vtkIdType m, const char *prefix, char d,
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:397:60:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  const unsigned char *r, vtkIdType m, const char *prefix, char d,
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:398:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char uid[64])
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:410:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char hexs[36];
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:412:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char decs[40];
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:450:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char uid[64];
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:457:14:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
    unsigned char r[16];
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:461:5:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
    char uuid[40];
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:470:14:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
    unsigned char r[16];
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:505:5:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
    char uid[64];
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:509:7:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
      char uuid[40];
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.h:102:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char UIDPrefixStore[64];
data/vtk-dicom-0.8.12/Source/vtkDICOMUtilities.cxx:200:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char tzs[6] = { '+', '0', '0', '0', '0', '\0' };
data/vtk-dicom-0.8.12/Source/vtkDICOMUtilities.cxx:224:5:  [2] (buffer) sprintf:
  Does not check for buffer overflows (CWE-120). Use sprintf_s, snprintf, or
  vsnprintf. Risk is low because the source has a constant maximum length.
    sprintf(&tzs[1], "%02d%02d",
data/vtk-dicom-0.8.12/Source/vtkDICOMUtilities.cxx:268:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char dt[84];
data/vtk-dicom-0.8.12/Source/vtkDICOMUtilities.cxx:280:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char normalized[27];
data/vtk-dicom-0.8.12/Source/vtkDICOMUtilities.cxx:362:12:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  unsigned char buffer[256];
data/vtk-dicom-0.8.12/Source/vtkDICOMUtilities.h:205:10:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  static char UIDPrefix[64];
data/vtk-dicom-0.8.12/Source/vtkDICOMUtilities.h:206:10:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  static char ImplementationClassUID[65];
data/vtk-dicom-0.8.12/Source/vtkDICOMUtilities.h:207:10:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  static char ImplementationVersionName[17];
data/vtk-dicom-0.8.12/Source/vtkDICOMVR.cxx:27:16:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
const unsigned char AXT[256] = { // AE AS AT
data/vtk-dicom-0.8.12/Source/vtkDICOMVR.cxx:39:16:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
const unsigned char CXT[256] = { // CS
data/vtk-dicom-0.8.12/Source/vtkDICOMVR.cxx:51:16:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
const unsigned char DXT[256] = { // DA DS DT
data/vtk-dicom-0.8.12/Source/vtkDICOMVR.cxx:63:16:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
const unsigned char FXT[256] = { // FD FL
data/vtk-dicom-0.8.12/Source/vtkDICOMVR.cxx:75:16:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
const unsigned char IXT[256] = { // IS
data/vtk-dicom-0.8.12/Source/vtkDICOMVR.cxx:87:16:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
const unsigned char LXT[256] = { // LO LT
data/vtk-dicom-0.8.12/Source/vtkDICOMVR.cxx:99:16:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
const unsigned char OXT[256] = { // OB OF OL OV OW
data/vtk-dicom-0.8.12/Source/vtkDICOMVR.cxx:111:16:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
const unsigned char PXT[256] = { // PN
data/vtk-dicom-0.8.12/Source/vtkDICOMVR.cxx:123:16:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
const unsigned char SXT[256] = { // SH SL SQ SS ST SV
data/vtk-dicom-0.8.12/Source/vtkDICOMVR.cxx:135:16:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
const unsigned char TXT[256] = { // TM
data/vtk-dicom-0.8.12/Source/vtkDICOMVR.cxx:147:16:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
const unsigned char UXT[256] = { // UI UL UN US UT UV
data/vtk-dicom-0.8.12/Source/vtkDICOMVR.cxx:159:16:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
const unsigned char XXT[256] = { // Invalid VR
data/vtk-dicom-0.8.12/Source/vtkDICOMVR.h:81:29:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  vtkDICOMVR(const unsigned char vr[2]) : Key(VRTable[vr[0]][vr[1]]) {}
data/vtk-dicom-0.8.12/Source/vtkDICOMVR.h:138:25:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  static const unsigned char *VRTable[256];
data/vtk-dicom-0.8.12/Source/vtkDICOMVR.h:139:25:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  static const unsigned char TypeTable[37];
data/vtk-dicom-0.8.12/Source/vtkDICOMVR.h:140:16:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  static const char TextTable[37][4];
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:482:16:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  if (n > 0) { memcpy(ptr, cptr, n); }
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:629: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(ptr, data, m);
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:638:7:  [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(ptr, data, n*2);
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:643:7:  [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(ptr, data, n*sizeof(T));
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:651:7:  [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(ptr, data, n*4);
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:656:7:  [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(ptr, data, n*sizeof(T));
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:664:7:  [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(ptr, data, n*4);
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:670:7:  [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(ptr, data, n*sizeof(T));
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:676: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(ptr, data, n*sizeof(T));
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:681: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(ptr, data, n*sizeof(T));
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:766: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(ptr, data, m);
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:775: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(ptr, data, m);
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:780: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(ptr, data, m);
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:785: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(ptr, data, m);
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:790: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(ptr, data, m);
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:795: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(ptr, data, m);
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:801: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(ptr, data, m);
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:823: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(cp, data, m);
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:2177:7:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
      char text[32];
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:2274:5:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
    char text[20];
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:2303:5:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
    char text[12];
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:2538:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char normalizedPattern[256];
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:2539:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char normalizedName[256];
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:2574:9:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  const char *input, char output[256], bool isquery)
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:2574:22:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  const char *input, char output[256], bool isquery)
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:2660:9:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  const char *input, char output[22], vtkDICOMVR vr)
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:2660:22:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  const char *input, char output[22], vtkDICOMVR vr)
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:2667:16:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  static const char epoch[22] = "19700101000000.000000";
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:2793:7:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
      char r1[22], r2[22], d[22];
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.h:504:11:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
    const char *input, char output[22], vtkDICOMVR vr);
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.h:504:24:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
    const char *input, char output[22], vtkDICOMVR vr);
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.h:523:11:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
    const char *input, char output[256], bool isquery=false);
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.h:523:24:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
    const char *input, char output[256], bool isquery=false);
data/vtk-dicom-0.8.12/Source/vtkDICOMWriter.cxx:70:3:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
  strcpy(this->ImageType, "DERIVED/SECONDARY/OTHER");
data/vtk-dicom-0.8.12/Source/vtkDICOMWriter.cxx:387:5:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
    char sd[65];
data/vtk-dicom-0.8.12/Source/vtkDICOMWriter.cxx:403:5:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
    char sd[256];
data/vtk-dicom-0.8.12/Source/vtkDICOMWriter.cxx:816:11:  [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(framePtr, slicePtr, fileFrameSize);
data/vtk-dicom-0.8.12/Source/vtkDICOMWriter.cxx:828: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(rowBuffer, row1, fileRowSize);
data/vtk-dicom-0.8.12/Source/vtkDICOMWriter.cxx:829: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(row1, row2, fileRowSize);
data/vtk-dicom-0.8.12/Source/vtkDICOMWriter.cxx:830: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(row2, rowBuffer, fileRowSize);
data/vtk-dicom-0.8.12/Source/vtkNIFTIHeader.cxx:115: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(this->Magic, hdr->magic, sizeof(hdr->magic));
data/vtk-dicom-0.8.12/Source/vtkNIFTIHeader.cxx:229:3:  [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->Magic, hdr->magic, sizeof(hdr->magic));
data/vtk-dicom-0.8.12/Source/vtkNIFTIHeader.h:374:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char Magic[12];
data/vtk-dicom-0.8.12/Source/vtkNIFTIHeader.h:381:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char IntentName[18];
data/vtk-dicom-0.8.12/Source/vtkNIFTIHeader.h:396:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char Descrip[82];
data/vtk-dicom-0.8.12/Source/vtkNIFTIHeader.h:397:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char AuxFile[26];
data/vtk-dicom-0.8.12/Source/vtkNIFTIPrivate.h:40:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char  data_type[10]; /*!< ++UNUSED++            */  /*   4 */
data/vtk-dicom-0.8.12/Source/vtkNIFTIPrivate.h:41:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char  db_name[18];   /*!< ++UNUSED++            */  /*  14 */
data/vtk-dicom-0.8.12/Source/vtkNIFTIPrivate.h:67:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char  descrip[80];   /*!< any text you like.    */  /* 148 */
data/vtk-dicom-0.8.12/Source/vtkNIFTIPrivate.h:68:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char  aux_file[24];  /*!< auxiliary filename.   */  /* 228 */
data/vtk-dicom-0.8.12/Source/vtkNIFTIPrivate.h:80:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char intent_name[16];/*!< 'name' or meaning of data.  */  /* 328 */
data/vtk-dicom-0.8.12/Source/vtkNIFTIPrivate.h:81:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char magic[4];       /*!< MUST be "ni1\0" or "n+1\0". */  /* 344 */
data/vtk-dicom-0.8.12/Source/vtkNIFTIPrivate.h:230:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char  magic[8];       /*!< MUST be valid signature. */ /*   4 */
data/vtk-dicom-0.8.12/Source/vtkNIFTIPrivate.h:247:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char descrip[80];     /*!< any text you like.    */   /* 240 */
data/vtk-dicom-0.8.12/Source/vtkNIFTIPrivate.h:248:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char aux_file[24];    /*!< auxiliary filename.   */   /* 320 */
data/vtk-dicom-0.8.12/Source/vtkNIFTIPrivate.h:263:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char intent_name[16]; /*!< 'name' or meaning of data. */  /* 508 */
data/vtk-dicom-0.8.12/Source/vtkNIFTIPrivate.h:265:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char unused_str[15];  /*!< unused, filled with \0 */  /* 525 */
data/vtk-dicom-0.8.12/Source/vtkNIFTIReader.cxx:486:7:  [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(hdr2, hdr1, hsize);
data/vtk-dicom-0.8.12/Source/vtkNIFTIWriter.cxx:59:9:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
#define fopen _wfopen
data/vtk-dicom-0.8.12/Source/vtkNIFTIWriter.cxx:516: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(&hdr.magic[4], "\r\n\032\n", 4);
data/vtk-dicom-0.8.12/Source/vtkNIFTIWriter.cxx:751:15:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
      ufile = fopen(uhdrname, NIFTI_FILE_MODE);
data/vtk-dicom-0.8.12/Source/vtkNIFTIWriter.cxx:816:15:  [2] (misc) fopen:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
      ufile = fopen(uimgname, NIFTI_FILE_MODE);
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.cxx:151:43:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
int vtkScancoCTReader::CheckVersion(const char header[16])
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.cxx:185:5:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
    char buffer[512];
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.cxx:557: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(h, this->RawHeader, bytesRead);
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.cxx:645:5:  [2] (buffer) strcpy:
  Does not check for buffer overflows when copying to destination [MS-banned]
  (CWE-120). Consider using snprintf, strcpy_s, or strlcpy (warning: strncpy
  easily misused). Risk is low because the source is a constant string.
    strcpy(this->Version, "AIMDATA_V020   ");
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.cxx:660: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(h, this->RawHeader, bytesRead);
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.cxx:1163:5:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
    char head[8];
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.h:198:33:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  static int CheckVersion(const char header[16]);
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.h:227:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char Version[18];
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.h:228:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char PatientName[42];
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.h:231:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char CreationDate[32];
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.h:232:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char ModificationDate[32];
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.h:254:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char RescaleUnits[18];
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.h:255:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char CalibrationData[66];
data/vtk-dicom-0.8.12/Testing/TestDICOMMetaData.cxx:188:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char instanceUID[54];
data/vtk-dicom-0.8.12/Testing/TestDICOMSequence.cxx:57:3:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  char instanceUID[54];
data/vtk-dicom-0.8.12/Testing/TestDICOMUtilities.cxx:94:9:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  const char *times[4] = {
data/vtk-dicom-0.8.12/Testing/TestDICOMUtilities.cxx:109:25:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  static const unsigned char t[4] = { 166, 95, 230, 93 };
data/vtk-dicom-0.8.12/Testing/TestDICOMUtilities.cxx:110:12:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  unsigned char u[4];
data/vtk-dicom-0.8.12/Testing/TestDICOMValue.cxx:104:25:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
  static const unsigned char uci[6] = { 1, 255, 12, 8, 9, 12 };
data/vtk-dicom-0.8.12/DicomCli/readquery.cxx:208:14:  [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 n = strlen(cp);
data/vtk-dicom-0.8.12/DicomCli/vtkConsoleOutputWindow.cxx:43:21:  [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).
    fwrite(text, 1, strlen(text), stderr);
data/vtk-dicom-0.8.12/Examples/TestDICOMCompiler.cxx:38:31:  [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).
  const char *cp = filename + strlen(filename);
data/vtk-dicom-0.8.12/Examples/TestDICOMDirectory.cxx:31:30:  [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).
  const char *cp = exename + strlen(exename);
data/vtk-dicom-0.8.12/Examples/TestDICOMFileSorter.cxx:28:30:  [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).
  const char *cp = exename + strlen(exename);
data/vtk-dicom-0.8.12/Examples/TestDICOMParser.cxx:26:30:  [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).
  const char *cp = exename + strlen(exename);
data/vtk-dicom-0.8.12/Examples/TestDICOMReader.cxx:64:30:  [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).
  const char *cp = exename + strlen(exename);
data/vtk-dicom-0.8.12/Examples/TestDICOMRealWorldValue.cxx:33:30:  [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).
  const char *cp = exename + strlen(exename);
data/vtk-dicom-0.8.12/Examples/TestDICOMWriter.cxx:35:30:  [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).
  const char *cp = exename + strlen(exename);
data/vtk-dicom-0.8.12/Programs/dicomdump.cxx:82:31:  [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).
  const char *cp = filename + strlen(filename);
data/vtk-dicom-0.8.12/Programs/dicomfind.cxx:124:31:  [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).
  const char *cp = filename + strlen(filename);
data/vtk-dicom-0.8.12/Programs/dicomfind.cxx:132:31:  [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).
  const char *cp = filename + strlen(filename);
data/vtk-dicom-0.8.12/Programs/dicomfind.cxx:392:49:  [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).
                pos = temp_arg.find("{}", pos + strlen(sub));
data/vtk-dicom-0.8.12/Programs/dicomfind.cxx:515:51:  [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).
                  pos = temp_arg.find("{}", pos + strlen(sub));
data/vtk-dicom-0.8.12/Programs/dicompull.cxx:111:31:  [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).
  const char *cp = filename + strlen(filename);
data/vtk-dicom-0.8.12/Programs/dicompull.cxx:119:31:  [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).
  const char *cp = filename + strlen(filename);
data/vtk-dicom-0.8.12/Programs/dicomtocsv.cxx:126:31:  [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).
  const char *cp = filename + strlen(filename);
data/vtk-dicom-0.8.12/Programs/dicomtocsv.cxx:987:16:  [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).
      else if (strlen(arg) > 4 &&
data/vtk-dicom-0.8.12/Programs/dicomtocsv.cxx:988:28:  [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).
               strcmp(&arg[strlen(arg) - 4], ".csv") == 0)
data/vtk-dicom-0.8.12/Programs/dicomtodicom.cxx:89:35:  [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).
  const char *cp = command_name + strlen(command_name);
data/vtk-dicom-0.8.12/Programs/dicomtodicom.cxx:112:35:  [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).
  const char *cp = command_name + strlen(command_name);
data/vtk-dicom-0.8.12/Programs/dicomtonifti.cxx:90:35:  [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).
  const char *cp = command_name + strlen(command_name);
data/vtk-dicom-0.8.12/Programs/dicomtonifti.cxx:112:35:  [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).
  const char *cp = command_name + strlen(command_name);
data/vtk-dicom-0.8.12/Programs/dicomtonifti.cxx:1089: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 os = strlen(outpath);
data/vtk-dicom-0.8.12/Programs/dicomtonifti.cxx:1272:14:  [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 l = strlen(outpath);
data/vtk-dicom-0.8.12/Programs/nifticenter.cxx:34:31:  [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).
  const char *cp = filename + strlen(filename);
data/vtk-dicom-0.8.12/Programs/niftidump.cxx:92:31:  [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).
  const char *cp = filename + strlen(filename);
data/vtk-dicom-0.8.12/Programs/niftitodicom.cxx:88:35:  [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).
  const char *cp = command_name + strlen(command_name);
data/vtk-dicom-0.8.12/Programs/niftitodicom.cxx:111:35:  [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).
  const char *cp = command_name + strlen(command_name);
data/vtk-dicom-0.8.12/Programs/niftitodicom.cxx:244:14:  [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 n = strlen(f);
data/vtk-dicom-0.8.12/Programs/niftitodicom.cxx:247:16:  [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 m = strlen(*s);
data/vtk-dicom-0.8.12/Programs/scancodump.cxx:58:31:  [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).
  const char *cp = filename + strlen(filename);
data/vtk-dicom-0.8.12/Programs/scancotodicom.cxx:73:35:  [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).
  const char *cp = command_name + strlen(command_name);
data/vtk-dicom-0.8.12/Programs/scancotodicom.cxx:96:35:  [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).
  const char *cp = command_name + strlen(command_name);
data/vtk-dicom-0.8.12/Programs/scancotodicom.cxx:260:14:  [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 n = strlen(f);
data/vtk-dicom-0.8.12/Programs/scancotodicom.cxx:263:16:  [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 m = strlen(*s);
data/vtk-dicom-0.8.12/Programs/scancotodicom.cxx:539:5:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
    strncpy(date, reader->GetCreationDate(), 32);
data/vtk-dicom-0.8.12/Programs/scancotodicom.cxx:550:5:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
    strncpy(date, reader->GetModificationDate(), 32);
data/vtk-dicom-0.8.12/Source/vtkDICOMCharacterSet.cxx:2882: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 (l == strlen(Charsets[i].DefinedTerm) &&
data/vtk-dicom-0.8.12/Source/vtkDICOMCharacterSet.cxx:2887:23:  [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).
        else if (l == strlen(Charsets[i].DefinedTermExt) &&
data/vtk-dicom-0.8.12/Source/vtkDICOMCharacterSet.cxx:3311:23:  [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 le = strlen(escapeTry);
data/vtk-dicom-0.8.12/Source/vtkDICOMCharacterSet.cxx:3346:23:  [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 le = strlen(escapeTry);
data/vtk-dicom-0.8.12/Source/vtkDICOMCompiler.cxx:887:43:  [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).
  this->ImplementationClassUID = new char[strlen(impuid) + 1];
data/vtk-dicom-0.8.12/Source/vtkDICOMCompiler.cxx:893:46:  [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).
  this->ImplementationVersionName = new char[strlen(impname) + 1];
data/vtk-dicom-0.8.12/Source/vtkDICOMCompiler.cxx:898:38:  [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).
  this->TransferSyntaxUID = new char[strlen(tsyntax) + 1];
data/vtk-dicom-0.8.12/Source/vtkDICOMDirectory.cxx:459:25:  [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).
    char *cp = new char[strlen(name) + 1];
data/vtk-dicom-0.8.12/Source/vtkDICOMDirectory.cxx:480:25:  [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).
    char *cp = new char[strlen(name) + 1];
data/vtk-dicom-0.8.12/Source/vtkDICOMDirectory.cxx:1764:28:  [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).
  int l = static_cast<int>(strlen(query));
data/vtk-dicom-0.8.12/Source/vtkDICOMDirectory.cxx:2711:16:  [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 n = strlen(name) + 1;
data/vtk-dicom-0.8.12/Source/vtkDICOMDirectory.cxx:2761: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).
        for (l = strlen(cp); l > 0; --l)
data/vtk-dicom-0.8.12/Source/vtkDICOMFile.cxx:203:15:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  while ((n = read(this->Handle, data, len)) == -1)
data/vtk-dicom-0.8.12/Source/vtkDICOMFilePath.cxx:507: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 l = strlen(path);
data/vtk-dicom-0.8.12/Source/vtkDICOMFileSorter.cxx:151:25:  [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).
    char *cp = new char[strlen(name) + 1];
data/vtk-dicom-0.8.12/Source/vtkDICOMFileSorter.cxx:591:16:  [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 n = strlen(name) + 1;
data/vtk-dicom-0.8.12/Source/vtkDICOMGenerator.cxx:514:29:  [1] (buffer) mismatch:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  for (int i = 0; i < n && !mismatch; i++)
data/vtk-dicom-0.8.12/Source/vtkDICOMGenerator.cxx:572:7:  [1] (buffer) mismatch:
  Function does not check the second iterator for over-read conditions
  (CWE-126). This function is often discouraged by most C++ coding standards
  in favor of its safer alternatives provided since C++14. Consider using a
  form of this function that checks the second iterator before potentially
  overflowing it.
  if (mismatch)
data/vtk-dicom-0.8.12/Source/vtkDICOMReader.cxx:276:5:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
    strncpy(this->DesiredStackID, stackId, 16);
data/vtk-dicom-0.8.12/Source/vtkDICOMSliceSorter.cxx:137:5:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
    strncpy(this->DesiredStackID, stackId, 16);
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:99:5:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
    strncpy(this->UIDPrefix, uid, 63);
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:188:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
  strncpy(x, uuid, uuidlen);
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:376:14:  [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 n = strlen(prefix);
data/vtk-dicom-0.8.12/Source/vtkDICOMUIDGenerator.cxx:426:21:  [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).
    for (size_t l = strlen(decs); l < n && i < 63; l++)
data/vtk-dicom-0.8.12/Source/vtkDICOMUtilities.cxx:456:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
  strncpy(vtkDICOMUtilities::UIDPrefix, uid, 63);
data/vtk-dicom-0.8.12/Source/vtkDICOMUtilities.cxx:472:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
  strncpy(vtkDICOMUtilities::ImplementationClassUID, uid, 64);
data/vtk-dicom-0.8.12/Source/vtkDICOMUtilities.cxx:494:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
  strncpy(vtkDICOMUtilities::ImplementationVersionName, name, 16);
data/vtk-dicom-0.8.12/Source/vtkDICOMUtilities.cxx:598:14:  [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).
    pattern, strlen(pattern), val, strlen(val));
data/vtk-dicom-0.8.12/Source/vtkDICOMUtilities.cxx:598:36:  [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).
    pattern, strlen(pattern), val, strlen(val));
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:86:24:  [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).
    InputString sb(cp, strlen(cp));
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:2554:28:  [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).
        normalizedPattern, strlen(normalizedPattern),
data/vtk-dicom-0.8.12/Source/vtkDICOMValue.cxx:2555:25:  [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).
        normalizedName, strlen(normalizedName));
data/vtk-dicom-0.8.12/Source/vtkDICOMWriter.cxx:247: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).
    n = strlen(this->FileName) + 1;
data/vtk-dicom-0.8.12/Source/vtkDICOMWriter.cxx:251: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).
    n = strlen(this->FilePrefix) + strlen(this->FilePattern) + 10;
data/vtk-dicom-0.8.12/Source/vtkDICOMWriter.cxx:251:36:  [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).
    n = strlen(this->FilePrefix) + strlen(this->FilePattern) + 10;
data/vtk-dicom-0.8.12/Source/vtkDICOMWriter.cxx:255: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).
    n = strlen(this->FilePattern) + 10;
data/vtk-dicom-0.8.12/Source/vtkDICOMWriter.cxx:259:7:  [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).
      strlen(this->InternalFileName) + 10 < n)
data/vtk-dicom-0.8.12/Source/vtkDICOMWriter.cxx:388:5:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
    strncpy(sd, this->SeriesDescription, 64);
data/vtk-dicom-0.8.12/Source/vtkDICOMWriter.cxx:404:5:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
    strncpy(sd, this->ImageType, 255);
data/vtk-dicom-0.8.12/Source/vtkDICOMWriter.cxx:429: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 sl = strlen(*allowed);
data/vtk-dicom-0.8.12/Source/vtkNIFTIHeader.cxx:128:5:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
    strncpy(this->IntentName, hdr->intent_name, sizeof(this->IntentName));
data/vtk-dicom-0.8.12/Source/vtkNIFTIHeader.cxx:147:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
  strncpy(this->Descrip, hdr->descrip, sizeof(this->Descrip));
data/vtk-dicom-0.8.12/Source/vtkNIFTIHeader.cxx:148:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
  strncpy(this->AuxFile, hdr->aux_file, sizeof(this->AuxFile));
data/vtk-dicom-0.8.12/Source/vtkNIFTIHeader.cxx:192:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
  strncpy(hdr->intent_name, this->IntentName, sizeof(hdr->intent_name) - 1);
data/vtk-dicom-0.8.12/Source/vtkNIFTIHeader.cxx:205:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
  strncpy(hdr->descrip, this->Descrip, sizeof(hdr->descrip) - 1);
data/vtk-dicom-0.8.12/Source/vtkNIFTIHeader.cxx:207:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
  strncpy(hdr->aux_file, this->AuxFile, sizeof(hdr->aux_file) - 1);
data/vtk-dicom-0.8.12/Source/vtkNIFTIHeader.cxx:239:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
  strncpy(this->IntentName, hdr->intent_name, sizeof(this->IntentName));
data/vtk-dicom-0.8.12/Source/vtkNIFTIHeader.cxx:254:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
  strncpy(this->Descrip, hdr->descrip, sizeof(this->Descrip));
data/vtk-dicom-0.8.12/Source/vtkNIFTIHeader.cxx:255:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
  strncpy(this->AuxFile, hdr->aux_file, sizeof(this->AuxFile));
data/vtk-dicom-0.8.12/Source/vtkNIFTIHeader.cxx:296:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
  strncpy(hdr->descrip, this->Descrip, sizeof(hdr->descrip) - 1);
data/vtk-dicom-0.8.12/Source/vtkNIFTIHeader.cxx:298:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
  strncpy(hdr->aux_file, this->AuxFile, sizeof(hdr->aux_file) - 1);
data/vtk-dicom-0.8.12/Source/vtkNIFTIHeader.cxx:317:3:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
  strncpy(hdr->intent_name, this->IntentName, sizeof(hdr->intent_name) - 1);
data/vtk-dicom-0.8.12/Source/vtkNIFTIHeader.cxx:519:5:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
    strncpy(x, y, n);
data/vtk-dicom-0.8.12/Source/vtkNIFTIReader.cxx:168:7:  [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(ext) == 4 && ext[0] == '.')
data/vtk-dicom-0.8.12/Source/vtkNIFTIReader.cxx:170:16:  [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 n = strlen(filename);
data/vtk-dicom-0.8.12/Source/vtkNIFTIReader.cxx:194:7:  [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(ext1) == 4 && ext1[0] == '.' &&
data/vtk-dicom-0.8.12/Source/vtkNIFTIReader.cxx:195:7:  [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).
      strlen(ext2) == 4 && ext2[0] == '.')
data/vtk-dicom-0.8.12/Source/vtkNIFTIReader.cxx:197:16:  [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 n = strlen(filename);
data/vtk-dicom-0.8.12/Source/vtkNIFTIReader.cxx:405:28:  [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).
        hdrname = new char[strlen(filename) + 1];
data/vtk-dicom-0.8.12/Source/vtkNIFTIReader.cxx:1069:28:  [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).
        imgname = new char[strlen(filename) + 1];
data/vtk-dicom-0.8.12/Source/vtkNIFTIWriter.cxx:184:14:  [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 n = strlen(filename);
data/vtk-dicom-0.8.12/Source/vtkNIFTIWriter.cxx:505:5:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
    strncpy(hdr.magic, (version == 2 ? "ni2" : "ni1"), 4);
data/vtk-dicom-0.8.12/Source/vtkNIFTIWriter.cxx:510:5:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
    strncpy(hdr.magic, (version == 2 ? "n+2" : "n+1"), 4);
data/vtk-dicom-0.8.12/Source/vtkNIFTIWriter.cxx:522:5:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
    strncpy(hdr.descrip, this->Description, sizeof(hdr.descrip) - 1);
data/vtk-dicom-0.8.12/Source/vtkNIFTIWriter.cxx:652:14:  [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 n = strlen(filename);
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.cxx:186:12:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    infile.read(buffer, 512);
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.cxx:560:11:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    file->read(h + bytesRead, headerSize - bytesRead);
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.cxx:664:11:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    file->read(h + bytesRead, headerSize - bytesRead);
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.cxx:816:9:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
        strncpy(this->ModificationDate, value, valuelen);
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.cxx:822:9:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
        strncpy(this->CreationDate, value, valuelen);
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.cxx:844:9:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
        strncpy(this->PatientName, value, valuelen);
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.cxx:924:9:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
        strncpy(this->CalibrationData, value, valuelen);
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.cxx:930:9:  [1] (buffer) strncpy:
  Easily used incorrectly; doesn't always \0-terminate or check for invalid
  pointers [MS-banned] (CWE-120).
        strncpy(this->RescaleUnits, value, valuelen);
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.cxx:1001:10:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  infile.read(this->RawHeader, 512);
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.cxx:1157:12:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    infile.read(input, size);
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.cxx:1164:12:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    infile.read(head, intSize);
data/vtk-dicom-0.8.12/Source/vtkScancoCTReader.cxx:1174:12:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    infile.read(input, size);
data/vtk-dicom-0.8.12/Testing/TestDICOMCharacterSet.cxx:123:30:  [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).
  const char *cp = exename + strlen(exename);
data/vtk-dicom-0.8.12/Testing/TestDICOMDictionary.cxx:29:30:  [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).
  const char *cp = exename + strlen(exename);
data/vtk-dicom-0.8.12/Testing/TestDICOMFilePath.cxx:28:30:  [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).
  const char *cp = exename + strlen(exename);
data/vtk-dicom-0.8.12/Testing/TestDICOMItem.cxx:32:30:  [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).
  const char *cp = exename + strlen(exename);
data/vtk-dicom-0.8.12/Testing/TestDICOMMetaData.cxx:33:30:  [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).
  const char *cp = exename + strlen(exename);
data/vtk-dicom-0.8.12/Testing/TestDICOMSequence.cxx:49:30:  [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).
  const char *cp = exename + strlen(exename);
data/vtk-dicom-0.8.12/Testing/TestDICOMTagPath.cxx:28:30:  [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).
  const char *cp = exename + strlen(exename);
data/vtk-dicom-0.8.12/Testing/TestDICOMUtilities.cxx:34:30:  [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).
  const char *cp = exename + strlen(exename);
data/vtk-dicom-0.8.12/Testing/TestDICOMVM.cxx:29:30:  [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).
  const char *cp = exename + strlen(exename);
data/vtk-dicom-0.8.12/Testing/TestDICOMVR.cxx:29:30:  [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).
  const char *cp = exename + strlen(exename);
data/vtk-dicom-0.8.12/Testing/TestDICOMValue.cxx:30:30:  [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).
  const char *cp = exename + strlen(exename);
data/vtk-dicom-0.8.12/Testing/TestDICOMValue.cxx:38:41:  [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).
  v = vtkDICOMValue(vtkDICOMVR::SH, sp, strlen(sp));
data/vtk-dicom-0.8.12/Testing/TestDICOMValue.cxx:46:55:  [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).
  vtkDICOMValue v = vtkDICOMValue(vtkDICOMVR::CS, sp, strlen(sp));
data/vtk-dicom-0.8.12/Testing/TestDICOMValue.cxx:55:41:  [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).
  v = vtkDICOMValue(vtkDICOMVR::CS, sp, strlen(sp));
data/vtk-dicom-0.8.12/Testing/TestDICOMValue.cxx:72:43:  [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).
  v = vtkDICOMValue(vtkDICOMVR::FL, flts, strlen(flts));
data/vtk-dicom-0.8.12/Testing/TestDICOMValue.cxx:78:48:  [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).
  v = vtkDICOMValue(vtkDICOMVR::AT, tagstring, strlen(tagstring));
data/vtk-dicom-0.8.12/Testing/TestDICOMValue.cxx:90:15:  [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 sl = strlen(hp);

ANALYSIS SUMMARY:

Hits = 367
Lines analyzed = 131107 in approximately 4.99 seconds (26299 lines/second)
Physical Source Lines of Code (SLOC) = 109865
Hits@level = [0] 362 [1] 132 [2] 204 [3]   3 [4]  28 [5]   0
Hits@level+ = [0+] 729 [1+] 367 [2+] 235 [3+]  31 [4+]  28 [5+]   0
Hits/KSLOC@level+ = [0+] 6.63542 [1+] 3.34046 [2+] 2.13899 [3+] 0.282164 [4+] 0.254858 [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.