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/libstaroffice-0.0.7/src/conv/sd2raw/sd2raw.cpp
Examining data/libstaroffice-0.0.7/src/conv/sd2svg/sd2svg.cpp
Examining data/libstaroffice-0.0.7/src/conv/sd2text/sd2text.cpp
Examining data/libstaroffice-0.0.7/src/conv/sdc2csv/sdc2csv.cpp
Examining data/libstaroffice-0.0.7/src/conv/sdw2html/sdw2html.cpp
Examining data/libstaroffice-0.0.7/src/fuzz/sdafuzzer.cpp
Examining data/libstaroffice-0.0.7/src/fuzz/sdcfuzzer.cpp
Examining data/libstaroffice-0.0.7/src/fuzz/sddfuzzer.cpp
Examining data/libstaroffice-0.0.7/src/fuzz/sdwfuzzer.cpp
Examining data/libstaroffice-0.0.7/src/lib/SDAParser.cxx
Examining data/libstaroffice-0.0.7/src/lib/SDCParser.cxx
Examining data/libstaroffice-0.0.7/src/lib/SDGParser.cxx
Examining data/libstaroffice-0.0.7/src/lib/SDWParser.cxx
Examining data/libstaroffice-0.0.7/src/lib/SDXParser.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFCell.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFCellStyle.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFChart.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFDebug.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFDocument.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFEntry.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFFont.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFFrameStyle.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFGraphicDecoder.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFGraphicEncoder.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFGraphicListener.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFGraphicShape.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFGraphicStyle.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFHeader.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFInputStream.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFList.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFListener.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFOLEParser.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFPageSpan.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFParagraph.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFParser.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFPosition.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFPropertyHandler.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFSection.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFSpreadsheetDecoder.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFSpreadsheetEncoder.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFSpreadsheetListener.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFStarMathToMMLConverter.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFStringStream.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFSubDocument.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFTable.cxx
Examining data/libstaroffice-0.0.7/src/lib/STOFFTextListener.cxx
Examining data/libstaroffice-0.0.7/src/lib/SWFieldManager.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarAttribute.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarBitmap.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarCellAttribute.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarCellFormula.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarCharAttribute.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarEncoding.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarEncodingChinese.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarEncodingJapanese.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarEncodingKorean.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarEncodingOtherKorean.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarEncodingTradChinese.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarEncryption.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarFileManager.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarFormatManager.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarGraphicStruct.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarItem.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarItemPool.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarLanguage.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarLayout.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarObject.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarObjectChart.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarObjectDraw.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarObjectMath.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarObjectModel.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarObjectNumericRuler.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarObjectPageStyle.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarObjectSmallGraphic.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarObjectSmallText.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarObjectSpreadsheet.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarObjectText.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarPageAttribute.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarParagraphAttribute.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarState.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarTable.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarWriterStruct.cxx
Examining data/libstaroffice-0.0.7/src/lib/StarZone.cxx
Examining data/libstaroffice-0.0.7/src/lib/libstaroffice_internal.cxx

FINAL RESULTS:

data/libstaroffice-0.0.7/src/lib/SWFieldManager.cxx:1004:12:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
      date.sprintf("%d/%d/%d", int((m_date/100)%100), int(m_date%100), int(m_date/10000));
data/libstaroffice-0.0.7/src/lib/StarEncryption.cxx:104:8:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
  data.sprintf("%08x%08x", date, time);
data/libstaroffice-0.0.7/src/lib/StarEncryption.cxx:122:8:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
  data.sprintf("%08x%08x", date, time);
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:422:11:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
    delay.sprintf("PT%fS", double(m_value));
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:893:12:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
      clip.sprintf("rect(%fpt,%ftt,%fpt,%fpt)", state.convertInPoint(m_leftTop[1]), state.convertInPoint(m_rightBottom[0]),
data/libstaroffice-0.0.7/src/lib/StarGraphicStruct.cxx:381:16:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
      sElement.sprintf("H%i", int(getInchValue(path[i]["svg:x"])*2540));
data/libstaroffice-0.0.7/src/lib/StarGraphicStruct.cxx:385:16:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
      sElement.sprintf("V%i", int(getInchValue(path[i]["svg:y"])*2540));
data/libstaroffice-0.0.7/src/lib/StarGraphicStruct.cxx:389:16:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
      sElement.sprintf("%c%i %i", action[0], int(getInchValue(path[i]["svg:x"])*2540),
data/libstaroffice-0.0.7/src/lib/StarGraphicStruct.cxx:394:16:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
      sElement.sprintf("%c%i %i %i %i", action[0], int(getInchValue(path[i]["svg:x1"])*2540),
data/libstaroffice-0.0.7/src/lib/StarGraphicStruct.cxx:400:16:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
      sElement.sprintf("C%i %i %i %i %i %i", int(getInchValue(path[i]["svg:x1"])*2540),
data/libstaroffice-0.0.7/src/lib/StarGraphicStruct.cxx:407:16:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
      sElement.sprintf("A%i %i %i %i %i %i %i", int((getInchValue(path[i]["svg:rx"]))*2540),
data/libstaroffice-0.0.7/src/lib/StarObject.cxx:138:7:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
  res.sprintf("Info%d", i);
data/libstaroffice-0.0.7/src/lib/StarObjectModel.cxx:389:18:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
      masterName.sprintf("Master%d", id);
data/libstaroffice-0.0.7/src/lib/StarObjectModel.cxx:457:16:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
    masterName.sprintf("Master%d", id);
data/libstaroffice-0.0.7/src/lib/StarObjectSmallGraphic.cxx:550:19:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
        transform.sprintf("rotate(%f)", m_textDrehWink/100.*M_PI/180.);
data/libstaroffice-0.0.7/src/lib/StarObjectSmallGraphic.cxx:553:19:  [4] (format) sprintf:
  Potential format string problem (CWE-134). Make format string constant.
        transform.sprintf("translate(%fpt %fpt) rotate(%f) translate(%fpt %fpt)",
data/libstaroffice-0.0.7/src/lib/libstaroffice_internal.cxx:541:8:  [4] (format) vfprintf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
  std::vfprintf(stderr, format, args);
data/libstaroffice-0.0.7/src/conv/sd2raw/sd2raw.cpp:86:16:  [3] (buffer) getopt:
  Some older implementations do not protect against internal buffer overflows
  (CWE-120, CWE-20). Check implementation on installation, or limit the size
  of all string inputs.
  while ((ch = getopt(argc, argv, "chvp:")) != -1) {
data/libstaroffice-0.0.7/src/conv/sd2svg/sd2svg.cpp:94:16:  [3] (buffer) getopt:
  Some older implementations do not protect against internal buffer overflows
  (CWE-120, CWE-20). Check implementation on installation, or limit the size
  of all string inputs.
  while ((ch = getopt(argc, argv, "ho:n:vN")) != -1) {
data/libstaroffice-0.0.7/src/conv/sd2text/sd2text.cpp:87:16:  [3] (buffer) getopt:
  Some older implementations do not protect against internal buffer overflows
  (CWE-120, CWE-20). Check implementation on installation, or limit the size
  of all string inputs.
  while ((ch = getopt(argc, argv, "hio:p:v")) != -1) {
data/libstaroffice-0.0.7/src/conv/sdc2csv/sdc2csv.cpp:105:16:  [3] (buffer) getopt:
  Some older implementations do not protect against internal buffer overflows
  (CWE-120, CWE-20). Check implementation on installation, or limit the size
  of all string inputs.
  while ((ch = getopt(argc, argv, "hvo:d:f:t:D:FNn:T:")) != -1) {
data/libstaroffice-0.0.7/src/conv/sdw2html/sdw2html.cpp:82:16:  [3] (buffer) getopt:
  Some older implementations do not protect against internal buffer overflows
  (CWE-120, CWE-20). Check implementation on installation, or limit the size
  of all string inputs.
  while ((ch = getopt(argc, argv, "hvp:")) != -1) {
data/libstaroffice-0.0.7/src/conv/sd2svg/sd2svg.cpp:103:26:  [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).
      pageToConvert=std::atoi(optarg);
data/libstaroffice-0.0.7/src/conv/sd2text/sd2text.cpp:203: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).
    FILE *out=fopen(output, "wb");
data/libstaroffice-0.0.7/src/conv/sdc2csv/sdc2csv.cpp:129: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).
      sheetToConvert=std::atoi(optarg);
data/libstaroffice-0.0.7/src/lib/SDGParser.cxx:206:11:  [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).
  ascFile.open("main-1");
data/libstaroffice-0.0.7/src/lib/SDXParser.cxx:200:17:  [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).
      asciiFile.open(name);
data/libstaroffice-0.0.7/src/lib/STOFFDebug.cxx:46:17:  [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).
bool DebugFile::open(std::string const &filename)
data/libstaroffice-0.0.7/src/lib/STOFFDebug.cxx:118:10:  [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).
  m_file.open(name.c_str());
data/libstaroffice-0.0.7/src/lib/STOFFDebug.cxx:204:16:  [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).
  FILE *file = fopen(fName.c_str(), "wb");
data/libstaroffice-0.0.7/src/lib/STOFFInputStream.cxx:228: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 col[3];
data/libstaroffice-0.0.7/src/lib/STOFFOLEParser.cxx:332:17:  [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).
      asciiFile.open(oleName);
data/libstaroffice-0.0.7/src/lib/STOFFOLEParser.cxx:565:11:  [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).
    ascii.open("CompObj");
data/libstaroffice-0.0.7/src/lib/STOFFOLEParser.cxx:567:11:  [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).
    ascii.open(directory.m_dir+"/CompObj");
data/libstaroffice-0.0.7/src/lib/STOFFOLEParser.cxx:737:9:  [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).
  ascii.open(content.getOleName());
data/libstaroffice-0.0.7/src/lib/STOFFOLEParser.cxx:864:9:  [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).
  ascii.open(content.getOleName());
data/libstaroffice-0.0.7/src/lib/STOFFOLEParser.cxx:910:9:  [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).
  ascii.open(content.getOleName());
data/libstaroffice-0.0.7/src/lib/STOFFOLEParser.cxx:1019:9:  [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).
  ascii.open(content.getOleName());
data/libstaroffice-0.0.7/src/lib/STOFFOLEParser.cxx:1064: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 dataType[5];
data/libstaroffice-0.0.7/src/lib/STOFFStringStream.cxx:52:8:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  std::memcpy(&m_buffer[0], data, dataSize);
data/libstaroffice-0.0.7/src/lib/STOFFStringStream.cxx:64:8:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  std::memcpy(&m_buffer[actualSize], data, dataSize);
data/libstaroffice-0.0.7/src/lib/StarBitmap.cxx:382: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 col[4]= {0,0,0,255};
data/libstaroffice-0.0.7/src/lib/StarBitmap.cxx:702: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 col[4]= {0,0,0,255};
data/libstaroffice-0.0.7/src/lib/StarFileManager.cxx:87:8:  [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).
  bool open()
data/libstaroffice-0.0.7/src/lib/StarFileManager.cxx:407:17:  [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).
      asciiFile.open(name);
data/libstaroffice-0.0.7/src/lib/StarFileManager.cxx:509:17:  [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).
      asciiFile.open(name);
data/libstaroffice-0.0.7/src/lib/StarFileManager.cxx:532:9:  [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).
  ascii.open(fileName);
data/libstaroffice-0.0.7/src/lib/StarFileManager.cxx:580:9:  [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).
  ascii.open(fileName);
data/libstaroffice-0.0.7/src/lib/StarFileManager.cxx:728:9:  [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).
  ascii.open(fileName);
data/libstaroffice-0.0.7/src/lib/StarFileManager.cxx:1020: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 col[3];
data/libstaroffice-0.0.7/src/lib/StarItemPool.cxx:94:8:  [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).
  bool open(StarZone &zone)
data/libstaroffice-0.0.7/src/lib/StarItemPool.cxx:1306:16:  [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).
  if (!mRecord.open(zone) || mRecord.getHeaderTag()!=0x20) {
data/libstaroffice-0.0.7/src/lib/StarItemPool.cxx:1354:18:  [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).
    if (!mRecord.open(zone)) {
data/libstaroffice-0.0.7/src/lib/StarItemPool.cxx:1402:23:  [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).
        if (!mRecord1.open(zone)) {
data/libstaroffice-0.0.7/src/lib/StarItemPool.cxx:1868:18:  [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).
    if (!mRecord.open(zone)) {
data/libstaroffice-0.0.7/src/lib/StarLanguage.cxx: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 m_language[3];
data/libstaroffice-0.0.7/src/lib/StarObject.cxx:195: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).
      zone.ascii().open(name);
data/libstaroffice-0.0.7/src/lib/StarObject.cxx:216:15:  [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).
    asciiFile.open(name);
data/libstaroffice-0.0.7/src/lib/StarObject.cxx:291:9:  [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).
  ascii.open(name);
data/libstaroffice-0.0.7/src/lib/StarObject.cxx:492:9:  [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).
  ascii.open(name);
data/libstaroffice-0.0.7/src/lib/StarObject.cxx:643:11:  [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).
  ascFile.open(name);
data/libstaroffice-0.0.7/src/lib/StarObject.cxx:804:9:  [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).
  ascii.open(name);
data/libstaroffice-0.0.7/src/lib/StarObjectChart.cxx:193:15:  [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).
    asciiFile.open(name);
data/libstaroffice-0.0.7/src/lib/StarObjectChart.cxx:209:11:  [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).
  ascFile.open(name);
data/libstaroffice-0.0.7/src/lib/StarObjectChart.cxx:301:11:  [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).
  ascFile.open(name);
data/libstaroffice-0.0.7/src/lib/StarObjectDraw.cxx:169:15:  [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).
    asciiFile.open(name);
data/libstaroffice-0.0.7/src/lib/StarObjectDraw.cxx:193:11:  [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).
  ascFile.open(name);
data/libstaroffice-0.0.7/src/lib/StarObjectDraw.cxx:433:11:  [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).
  ascFile.open(name);
data/libstaroffice-0.0.7/src/lib/StarObjectMath.cxx:126:15:  [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).
    asciiFile.open(name);
data/libstaroffice-0.0.7/src/lib/StarObjectMath.cxx:143:9:  [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).
  ascii.open(fileName);
data/libstaroffice-0.0.7/src/lib/StarObjectSpreadsheet.cxx:97:8:  [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).
  bool open()
data/libstaroffice-0.0.7/src/lib/StarObjectSpreadsheet.cxx:795:15:  [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).
    asciiFile.open(name);
data/libstaroffice-0.0.7/src/lib/StarObjectSpreadsheet.cxx:818:11:  [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).
  ascFile.open(name);
data/libstaroffice-0.0.7/src/lib/StarObjectSpreadsheet.cxx:869:19:  [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).
      ok=scRecord.open();
data/libstaroffice-0.0.7/src/lib/StarObjectSpreadsheet.cxx:957:19:  [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).
      ok=scRecord.open();
data/libstaroffice-0.0.7/src/lib/StarObjectSpreadsheet.cxx:1687:11:  [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).
  ascFile.open(name);
data/libstaroffice-0.0.7/src/lib/StarObjectSpreadsheet.cxx:1811:21:  [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).
      if (!scRecord.open()) {
data/libstaroffice-0.0.7/src/lib/StarObjectSpreadsheet.cxx:2202:17:  [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).
  if (!scRecord.open()) {
data/libstaroffice-0.0.7/src/lib/StarObjectSpreadsheet.cxx:2453:19:  [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).
    if (!scRecord.open()) {
data/libstaroffice-0.0.7/src/lib/StarObjectSpreadsheet.cxx:2542:24:  [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).
        if (!scRecord2.open()) {
data/libstaroffice-0.0.7/src/lib/StarObjectSpreadsheet.cxx:2570:17:  [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).
  if (!scRecord.open()) {
data/libstaroffice-0.0.7/src/lib/StarObjectSpreadsheet.cxx:2998:17:  [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).
  if (!scRecord.open()) {
data/libstaroffice-0.0.7/src/lib/StarObjectText.cxx:886:15:  [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).
    asciiFile.open(name);
data/libstaroffice-0.0.7/src/lib/StarObjectText.cxx:907:11:  [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).
  ascFile.open(name);
data/libstaroffice-0.0.7/src/lib/StarObjectText.cxx:1620:11:  [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).
  ascFile.open(name);
data/libstaroffice-0.0.7/src/lib/StarZone.cxx:95:8:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
  std::memcpy(&buffer[0], data, size_t(sSz));
data/libstaroffice-0.0.7/src/lib/StarZone.cxx:192:11:  [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).
  m_ascii.open(m_asciiName);
data/libstaroffice-0.0.7/src/lib/libstaroffice_internal.cxx:110: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 outbuf[7];
data/libstaroffice-0.0.7/src/lib/STOFFGraphicDecoder.cxx:50: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).
  int len=psName ? int(strlen(psName)) : 0;
data/libstaroffice-0.0.7/src/lib/STOFFGraphicDecoder.cxx:135: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).
  int len=psName ? int(strlen(psName)) : 0;
data/libstaroffice-0.0.7/src/lib/STOFFInputStream.cxx:104:34:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
const uint8_t *STOFFInputStream::read(size_t numBytes, unsigned long &numBytesRead)
data/libstaroffice-0.0.7/src/lib/STOFFInputStream.cxx:108:20:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  return m_stream->read(numBytes,numBytesRead);
data/libstaroffice-0.0.7/src/lib/STOFFInputStream.cxx:161:32:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    uint8_t const *p = stream->read(static_cast<unsigned long>(num), numBytesRead);
data/libstaroffice-0.0.7/src/lib/STOFFInputStream.cxx:206:30:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  uint8_t const *p = stream->read(sizeof(uint8_t), numBytesRead);
data/libstaroffice-0.0.7/src/lib/STOFFInputStream.cxx:281:32:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  uint8_t const *p = m_stream->read(sizeof(uint8_t), numBytesRead);
data/libstaroffice-0.0.7/src/lib/STOFFInputStream.cxx:291:19:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    p = m_stream->read(sizeof(uint8_t), numBytesRead);
data/libstaroffice-0.0.7/src/lib/STOFFInputStream.cxx:299:19:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    p = m_stream->read(2*sizeof(uint8_t), numBytesRead);
data/libstaroffice-0.0.7/src/lib/STOFFInputStream.cxx:308:19:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    p = m_stream->read(3*sizeof(uint8_t), numBytesRead);
data/libstaroffice-0.0.7/src/lib/STOFFInputStream.cxx:328:32:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  uint8_t const *p = m_stream->read(sizeof(uint8_t), numBytesRead);
data/libstaroffice-0.0.7/src/lib/STOFFInputStream.cxx:338:19:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    p = m_stream->read(sizeof(uint8_t), numBytesRead);
data/libstaroffice-0.0.7/src/lib/STOFFInputStream.cxx:347:19:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    p = m_stream->read(3*sizeof(uint8_t), numBytesRead);
data/libstaroffice-0.0.7/src/lib/STOFFInputStream.cxx:584:27:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  if ((readData=m_stream->read(static_cast<unsigned long>(sz), sizeRead)) == nullptr || long(sizeRead)!=sz)
data/libstaroffice-0.0.7/src/lib/STOFFPropertyHandler.cxx:161:18:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
        c = inp->read(1,numRead);
data/libstaroffice-0.0.7/src/lib/STOFFPropertyHandler.cxx:275:17:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      c = input.read(1,numRead);
data/libstaroffice-0.0.7/src/lib/STOFFPropertyHandler.cxx:324:37:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    const unsigned char *dt = input.read(static_cast<unsigned long>(numC), numRead);
data/libstaroffice-0.0.7/src/lib/STOFFPropertyHandler.cxx:337:28:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    auto const *dt = input.read(4, numRead);
data/libstaroffice-0.0.7/src/lib/STOFFStringStream.cxx:82:41:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
const unsigned char *STOFFStringStream::read(unsigned long numBytes, unsigned long &numBytesRead)
data/libstaroffice-0.0.7/src/lib/StarAttribute.cxx:420:25:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarAttributeBool::read(StarZone &zone, int /*vers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarAttribute.cxx:433:26:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarAttributeColor::read(StarZone &zone, int /*vers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarAttribute.cxx:454:27:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarAttributeDouble::read(StarZone &zone, int /*vers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarAttribute.cxx:471:24:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarAttributeInt::read(StarZone &zone, int /*vers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarAttribute.cxx:484:26:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarAttributeVec2i::read(StarZone &zone, int /*vers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarAttribute.cxx:501:28:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarAttributeItemSet::read(StarZone &zone, int /*vers*/, long endPos, StarObject &object)
data/libstaroffice-0.0.7/src/lib/StarAttribute.cxx:515:25:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarAttributeUInt::read(StarZone &zone, int /*vers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarAttribute.cxx:528:25:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarAttributeVoid::read(StarZone &zone, int /*vers*/, long /*endPos*/, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarAttribute.cxx:594:29:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if (!attrib || !attrib->read(zone, nVers, lastPos, object)) {
data/libstaroffice-0.0.7/src/lib/StarBitmap.cxx:281:32:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    uint8_t const *data=input->read(size_t(codeSize),readBytes);
data/libstaroffice-0.0.7/src/lib/StarCellAttribute.cxx:311:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarCellAttribute.cxx:345:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarCellAttribute.cxx:381:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int /*vers*/, long endPos, StarObject &object) final
data/libstaroffice-0.0.7/src/lib/StarCellAttribute.cxx:450:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarCellAttribute.cxx:516:29:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarCAttributeMargins::read(StarZone &zone, int /*vers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarCellAttribute.cxx:532:27:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarCAttributeMerge::read(StarZone &zone, int /*vers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarCellAttribute.cxx:550:32:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarCAttributeProtection::read(StarZone &zone, int /*vers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarCharAttribute.cxx:447:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarCharAttribute.cxx:482:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarCharAttribute.cxx:566:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarCharAttribute.cxx:621:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarCharAttribute.cxx:647:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarCharAttribute.cxx:682:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarCharAttribute.cxx:710:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarCharAttribute.cxx:745:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarCharAttribute.cxx:791:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarCharAttribute.cxx:828:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarCharAttribute.cxx:881:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarCharAttribute.cxx:1038:32:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarCAttributeEscapement::read(StarZone &zone, int /*vers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarCharAttribute.cxx:1053:26:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarCAttributeFont::read(StarZone &zone, int /*vers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarCharAttribute.cxx:1116:30:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarCAttributeFontSize::read(StarZone &zone, int nVers, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarCharAttribute.cxx:1132:32:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarCAttributeCharFormat::read(StarZone &zone, int /*nVers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarCharAttribute.cxx:1151:29:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarCAttributeContent::read(StarZone &zone, int /*nVers*/, long endPos, StarObject &object)
data/libstaroffice-0.0.7/src/lib/StarCharAttribute.cxx:1172:27:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarCAttributeField::read(StarZone &zone, int /*nVers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarCharAttribute.cxx:1198:28:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarCAttributeFlyCnt::read(StarZone &zone, int /*vers*/, long endPos, StarObject &object)
data/libstaroffice-0.0.7/src/lib/StarCharAttribute.cxx:1215:30:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarCAttributeFootnote::read(StarZone &zone, int nVers, long endPos, StarObject &object)
data/libstaroffice-0.0.7/src/lib/StarCharAttribute.cxx:1255:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarCAttributeHardBlank::read(StarZone &zone, int nVers, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarCharAttribute.cxx:1270:29:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarCAttributeINetFmt::read(StarZone &zone, int nVers, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarCharAttribute.cxx:1349:29:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarCAttributeRefMark::read(StarZone &zone, int /*nVers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarEncoding.cxx:66:10:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if (!read(src, pos, encoding, dest) && actPos>=pos)
data/libstaroffice-0.0.7/src/lib/StarEncoding.cxx:172:20:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarEncoding::read
data/libstaroffice-0.0.7/src/lib/StarEncryption.cxx:200:30:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  const uint8_t *data=input->read(size_t(dataSize), numRead);
data/libstaroffice-0.0.7/src/lib/StarFileManager.cxx:681:25:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if (nat5 && graphic.read(zone,input->size())) {
data/libstaroffice-0.0.7/src/lib/StarFormatManager.cxx:762:16:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if (!brush.read(zone, 1, lastPos, doc)) {
data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx:127:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final
data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx:142:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    return StarAttributeUInt::read(zone, vers, endPos, object);
data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx:250:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx:288:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx:343:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx:378:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx:426:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx:466:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx:516:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx:567:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx:617:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx:659:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx:1083:28:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarFAttributeAnchor::read(StarZone &zone, int nVers, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx:1119:28:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarFAttributeBorder::read(StarZone &zone, int nVers, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx:1159:27:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarFAttributeBrush::read(StarZone &zone, int nVers, long endPos, StarObject &object)
data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx:1168:19:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool ok=m_brush.read(zone, nVers, endPos, object);
data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx:1179:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarFAttributeFrameSize::read(StarZone &zone, int nVers, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx:1201:35:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarFAttributeLineNumbering::read(StarZone &zone, int /*vers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx:1218:29:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarFAttributeLRSpace::read(StarZone &zone, int vers, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx:1262:33:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarFAttributeOrientation::read(StarZone &zone, int vers, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx:1283:28:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarFAttributeShadow::read(StarZone &zone, int /*vers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx:1312:30:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarFAttributeSurround::read(StarZone &zone, int vers, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarFrameAttribute.cxx:1334:29:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarFAttributeULSpace::read(StarZone &zone, int vers, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:120:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:138:30:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarGAttributeFraction::read(StarZone &zone, int /*vers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:535:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:579:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:606:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) override;
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:643:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:676:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:710:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:746:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:800:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:859:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:994:29:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarGAttributeBoxInfo::read(StarZone &zone, int /*nVers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:1026:26:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarGAttributeCrop::read(StarZone &zone, int vers, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:1045:27:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarGAttributeNamed::read(StarZone &zone, int /*nVers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:1058:32:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarGAttributeNamedArrow::read(StarZone &zone, int nVers, long endPos, StarObject &object)
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:1065:29:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  if (!StarGAttributeNamed::read(zone, nVers, endPos, object)) {
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:1098:33:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarGAttributeNamedBitmap::read(StarZone &zone, int nVers, long endPos, StarObject &object)
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:1105:29:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  if (!StarGAttributeNamed::read(zone, nVers, endPos, object)) {
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:1179:32:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarGAttributeNamedColor::read(StarZone &zone, int nVers, long endPos, StarObject &object)
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:1186:29:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  if (!StarGAttributeNamed::read(zone, nVers, endPos, object)) {
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:1207:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarGAttributeNamedDash::read(StarZone &zone, int nVers, long endPos, StarObject &object)
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:1214:29:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  if (!StarGAttributeNamed::read(zone, nVers, endPos, object)) {
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:1235:35:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarGAttributeNamedGradient::read(StarZone &zone, int nVers, long endPos, StarObject &object)
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:1242:29:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  if (!StarGAttributeNamed::read(zone, nVers, endPos, object)) {
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:1268:32:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarGAttributeNamedHatch::read(StarZone &zone, int nVers, long endPos, StarObject &object)
data/libstaroffice-0.0.7/src/lib/StarGraphicAttribute.cxx:1275:29:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  if (!StarGAttributeNamed::read(zone, nVers, endPos, object)) {
data/libstaroffice-0.0.7/src/lib/StarGraphicStruct.cxx:498:17:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarBrush::read(StarZone &zone, int nVers, long /*endPos*/, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarGraphicStruct.cxx:549:38:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarGraphicStruct::StarGraphic::read(StarZone &zone, long endPos)
data/libstaroffice-0.0.7/src/lib/StarItemPool.cxx:992:20:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarItemPool::read(StarZone &zone)
data/libstaroffice-0.0.7/src/lib/StarLayout.cxx:81:18:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarLayout::read(StarZone &zone, StarObject &object)
data/libstaroffice-0.0.7/src/lib/StarObject.cxx:197:54:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      getNewItemPool(StarItemPool::T_VCControlPool)->read(zone);
data/libstaroffice-0.0.7/src/lib/StarObject.cxx:661:23:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if (pool && pool->read(zone)) {
data/libstaroffice-0.0.7/src/lib/StarObjectChart.cxx:235:23:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  if (!pool || !pool->read(zone))
data/libstaroffice-0.0.7/src/lib/StarObjectChart.cxx:252:15:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  if (!model->read(zone)) {
data/libstaroffice-0.0.7/src/lib/StarObjectChart.cxx:324:23:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if (pool && pool->read(zone)) {
data/libstaroffice-0.0.7/src/lib/StarObjectDraw.cxx:210:15:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  if (!model->read(zone)) {
data/libstaroffice-0.0.7/src/lib/StarObjectDraw.cxx:454:23:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if (pool && pool->read(zone)) {
data/libstaroffice-0.0.7/src/lib/StarObjectModel.cxx:494:23:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarObjectModel::read(StarZone &zone)
data/libstaroffice-0.0.7/src/lib/StarObjectModel.cxx:965:27:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      if (!pool || !pool->read(zone))
data/libstaroffice-0.0.7/src/lib/StarObjectNumericRuler.cxx:110:30:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarObjectNumericRuler::read(StarZone &zone)
data/libstaroffice-0.0.7/src/lib/StarObjectPageStyle.cxx:76:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone);
data/libstaroffice-0.0.7/src/lib/StarObjectPageStyle.cxx:89:16:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool NoteDesc::read(StarZone &zone)
data/libstaroffice-0.0.7/src/lib/StarObjectPageStyle.cxx:167:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, StarObject &object);
data/libstaroffice-0.0.7/src/lib/StarObjectPageStyle.cxx:213:16:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool PageDesc::read(StarZone &zone, StarObject &object)
data/libstaroffice-0.0.7/src/lib/StarObjectPageStyle.cxx:271:18:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      done=desc->read(zone);
data/libstaroffice-0.0.7/src/lib/StarObjectPageStyle.cxx:454:27:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarObjectPageStyle::read(StarZone &zone)
data/libstaroffice-0.0.7/src/lib/StarObjectPageStyle.cxx:492:19:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
        if (!desc.read(zone, *this))
data/libstaroffice-0.0.7/src/lib/StarObjectSmallGraphic.cxx:2418:24:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if (!smallGraphic->read(zone) || input->tell()>lastPos) {
data/libstaroffice-0.0.7/src/lib/StarObjectSmallGraphic.cxx:2480:28:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
        if (!smallGraphic->read(zone, zone.getRecordLastPosition()) || input->tell()>zone.getRecordLastPosition()) {
data/libstaroffice-0.0.7/src/lib/StarObjectSmallGraphic.cxx:2707:26:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      if (!smallGraphic->read(zone, lastPos) || input->tell()>lastPos || smallGraphic->m_object.isEmpty()) {
data/libstaroffice-0.0.7/src/lib/StarObjectSmallGraphic.cxx:3085:23:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      if (!smallText->read(zone, lastPos) || input->tell()>lastPos) {
data/libstaroffice-0.0.7/src/lib/StarObjectSmallGraphic.cxx:3157:21:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if (!smallText->read(zone, lastPos) || N>(lastPos-input->tell())/2 || input->tell()+N*2>lastPos) {
data/libstaroffice-0.0.7/src/lib/StarObjectSmallText.cxx:252:27:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarObjectSmallText::read(StarZone &zone, long lastPos)
data/libstaroffice-0.0.7/src/lib/StarObjectSmallText.cxx:295:25:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  if (ownPool && !pool->read(zone)) {
data/libstaroffice-0.0.7/src/lib/StarObjectSpreadsheet.cxx:1376:22:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
          if (!pool->read(zone))
data/libstaroffice-0.0.7/src/lib/StarObjectSpreadsheet.cxx:1383:22:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
          if (model->read(zone)) {
data/libstaroffice-0.0.7/src/lib/StarObjectSpreadsheet.cxx:1723:25:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      if (pool && pool->read(zone)) {
data/libstaroffice-0.0.7/src/lib/StarObjectSpreadsheet.cxx:2371:22:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      if (!textZone->read(zone, lastPos) || input->tell()>lastPos) {
data/libstaroffice-0.0.7/src/lib/StarObjectText.cxx:850:27:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
        if (numericRuler->read(zone))
data/libstaroffice-0.0.7/src/lib/StarObjectText.cxx:861:24:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
        if (pageStyle->read(zone))
data/libstaroffice-0.0.7/src/lib/StarObjectText.cxx:927:23:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if (pool && pool->read(zone)) {
data/libstaroffice-0.0.7/src/lib/StarObjectText.cxx:1007:19:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      done=table->read(zone, *this);
data/libstaroffice-0.0.7/src/lib/StarObjectText.cxx:1056:20:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      done=redline.read(zone);
data/libstaroffice-0.0.7/src/lib/StarObjectText.cxx:1502:19:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      done=attrib.read(zone, *this);
data/libstaroffice-0.0.7/src/lib/StarObjectText.cxx:1509:17:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      done=mark.read(zone);
data/libstaroffice-0.0.7/src/lib/StarObjectText.cxx:1539:20:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      done=redline.read(zone);
data/libstaroffice-0.0.7/src/lib/StarObjectText.cxx:1636:23:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if (pool && pool->read(zone)) {
data/libstaroffice-0.0.7/src/lib/StarObjectText.cxx:1649:15:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  if (!model->read(zone)) {
data/libstaroffice-0.0.7/src/lib/StarObjectText.cxx:1736:17:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      done=info.read(zone);
data/libstaroffice-0.0.7/src/lib/StarObjectText.cxx:1741:17:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      done=info.read(zone);
data/libstaroffice-0.0.7/src/lib/StarObjectText.cxx:1746:17:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      done=info.read(zone);
data/libstaroffice-0.0.7/src/lib/StarObjectText.cxx:1751:18:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      done=dbase.read(zone);
data/libstaroffice-0.0.7/src/lib/StarObjectText.cxx:1770:19:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      done=layout.read(zone, *this);
data/libstaroffice-0.0.7/src/lib/StarObjectText.cxx:1788:18:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      done=stats.read(zone);
data/libstaroffice-0.0.7/src/lib/StarObjectText.cxx:1793:17:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
      done=dico.read(zone);
data/libstaroffice-0.0.7/src/lib/StarPageAttribute.cxx:471:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarPageAttribute.cxx:540:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarPageAttribute.cxx:585:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarPageAttribute.cxx:640:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarPageAttribute.cxx:679:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarPageAttribute.cxx:709:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarPageAttribute.cxx:742:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarPageAttribute.cxx:784:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final
data/libstaroffice-0.0.7/src/lib/StarPageAttribute.cxx:790:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    return StarAttributeUInt::read(zone, vers, endPos, object);
data/libstaroffice-0.0.7/src/lib/StarPageAttribute.cxx:902:26:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarPAttributePage::read(StarZone &zone, int /*vers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarPageAttribute.cxx:929:29:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarPAttributeColumns::read(StarZone &zone, int /*vers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarPageAttribute.cxx:968:29:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarPAttributeFrameHF::read(StarZone &zone, int /*vers*/, long endPos, StarObject &object)
data/libstaroffice-0.0.7/src/lib/StarPageAttribute.cxx:989:30:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarPAttributePageDesc::read(StarZone &zone, int nVers, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarPageAttribute.cxx:1024:28:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarPAttributePageHF::read(StarZone &zone, int /*vers*/, long endPos, StarObject &object)
data/libstaroffice-0.0.7/src/lib/StarPageAttribute.cxx:1035:21:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if (!smallText->read(zone, endPos) || input->tell()>endPos) {
data/libstaroffice-0.0.7/src/lib/StarPageAttribute.cxx:1048:27:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarPAttributePrint::read(StarZone &zone, int /*vers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarPageAttribute.cxx:1071:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarPAttributeRangeItem::read(StarZone &zone, int vers, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarParagraphAttribute.cxx:148:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final
data/libstaroffice-0.0.7/src/lib/StarParagraphAttribute.cxx:164:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    return StarAttributeUInt::read(zone, vers, endPos, object);
data/libstaroffice-0.0.7/src/lib/StarParagraphAttribute.cxx:286:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarParagraphAttribute.cxx:326:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarParagraphAttribute.cxx:369:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarParagraphAttribute.cxx:406:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarParagraphAttribute.cxx:461:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarParagraphAttribute.cxx:510:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarParagraphAttribute.cxx:556:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarParagraphAttribute.cxx:625:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, int vers, long endPos, StarObject &object) final;
data/libstaroffice-0.0.7/src/lib/StarParagraphAttribute.cxx:796:28:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarPAttributeAdjust::read(StarZone &zone, int vers, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarParagraphAttribute.cxx:811:35:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarPAttributeBulletNumeric::read(StarZone &zone, int /*vers*/, long endPos, StarObject &object)
data/libstaroffice-0.0.7/src/lib/StarParagraphAttribute.cxx:848:34:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarPAttributeBulletSimple::read(StarZone &zone, int vers, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarParagraphAttribute.cxx:854:26:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarPAttributeDrop::read(StarZone &zone, int vers, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarParagraphAttribute.cxx:877:28:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarPAttributeHyphen::read(StarZone &zone, int /*vers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarParagraphAttribute.cxx:895:33:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarPAttributeLineSpacing::read(StarZone &zone, int /*vers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarParagraphAttribute.cxx:914:34:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarPAttributeNumericRuler::read(StarZone &zone, int vers, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarParagraphAttribute.cxx:940:29:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarPAttributeTabStop::read(StarZone &zone, int /*vers*/, long endPos, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarTable.cxx:76:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(Table &table, StarZone &zone, StarObjectText &object, STOFFBox2i &cPos);
data/libstaroffice-0.0.7/src/lib/StarTable.cxx:111:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(Table &table, StarZone &zone, StarObjectText &object, STOFFBox2i &cPos);
data/libstaroffice-0.0.7/src/lib/StarTable.cxx:149:8:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  bool read(StarZone &zone, StarObjectText &object);
data/libstaroffice-0.0.7/src/lib/StarTable.cxx:235:16:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool TableBox::read(Table &table, StarZone &zone, StarObjectText &object, STOFFBox2i &cPos)
data/libstaroffice-0.0.7/src/lib/StarTable.cxx:295:15:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if (line->read(table, zone, object, boxCPos) && input->tell()<=lastPos) {
data/libstaroffice-0.0.7/src/lib/StarTable.cxx:367:17:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool TableLine::read(Table &table, StarZone &zone, StarObjectText &object, STOFFBox2i &cPos)
data/libstaroffice-0.0.7/src/lib/StarTable.cxx:422:14:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if (box->read(table, zone, object, boxCPos) && input->tell()<=lastPos) {
data/libstaroffice-0.0.7/src/lib/StarTable.cxx:507:13:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool Table::read(StarZone &zone, StarObjectText &object)
data/libstaroffice-0.0.7/src/lib/StarTable.cxx:550:17:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if (redline.read(zone))
data/libstaroffice-0.0.7/src/lib/StarTable.cxx:566:15:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if (line->read(*this, zone, object, cPos)) {
data/libstaroffice-0.0.7/src/lib/StarTable.cxx:670:17:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool StarTable::read(StarZone &zone, StarObjectText &object)
data/libstaroffice-0.0.7/src/lib/StarTable.cxx:672:19:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  return m_table->read(zone, object);
data/libstaroffice-0.0.7/src/lib/StarWriterStruct.cxx:57:17:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool Attribute::read(StarZone &zone, StarObject &object)
data/libstaroffice-0.0.7/src/lib/StarWriterStruct.cxx:126:17:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if (!attrib.read(zone, object)) {
data/libstaroffice-0.0.7/src/lib/StarWriterStruct.cxx:153:16:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool Bookmark::read(StarZone &zone)
data/libstaroffice-0.0.7/src/lib/StarWriterStruct.cxx:227:19:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if (!bookmark.read(zone)) {
data/libstaroffice-0.0.7/src/lib/StarWriterStruct.cxx:255:20:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool DatabaseName::read(StarZone &zone)
data/libstaroffice-0.0.7/src/lib/StarWriterStruct.cxx:363:18:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool Dictionary::read(StarZone &zone)
data/libstaroffice-0.0.7/src/lib/StarWriterStruct.cxx:415:16:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool DocStats::read(StarZone &zone)
data/libstaroffice-0.0.7/src/lib/StarWriterStruct.cxx:460:13:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool Macro::read(StarZone &zone)
data/libstaroffice-0.0.7/src/lib/StarWriterStruct.cxx:515:16:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if (!macro.read(zone)) {
data/libstaroffice-0.0.7/src/lib/StarWriterStruct.cxx:540:12:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool Mark::read(StarZone &zone)
data/libstaroffice-0.0.7/src/lib/StarWriterStruct.cxx:575:19:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool NodeRedline::read(StarZone &zone)
data/libstaroffice-0.0.7/src/lib/StarWriterStruct.cxx:612:16:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool NoteInfo::read(StarZone &zone)
data/libstaroffice-0.0.7/src/lib/StarWriterStruct.cxx:719:17:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool PrintData::read(StarZone &zone)
data/libstaroffice-0.0.7/src/lib/StarWriterStruct.cxx:760:15:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool Redline::read(StarZone &zone)
data/libstaroffice-0.0.7/src/lib/StarWriterStruct.cxx:818:18:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if (!redline.read(zone)) {
data/libstaroffice-0.0.7/src/lib/StarWriterStruct.cxx:878:11:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool TOX::read(StarZone &zone, StarObject &object)
data/libstaroffice-0.0.7/src/lib/StarWriterStruct.cxx:1028:14:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if (!tox.read(zone, object)) {
data/libstaroffice-0.0.7/src/lib/StarWriterStruct.cxx:1083:13:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool TOX51::read(StarZone &zone, StarObject &/*object*/)
data/libstaroffice-0.0.7/src/lib/StarWriterStruct.cxx:1180:14:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
    if (!tox.read(zone, object)) {
data/libstaroffice-0.0.7/src/lib/StarZone.cxx:88:32:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  uint8_t const *data=m_input->read(size_t(sSz), numRead);
data/libstaroffice-0.0.7/src/lib/libstaroffice_internal.cxx:55:29:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
  uint8_t const *p = input->read(sizeof(uint8_t), numBytesRead);

ANALYSIS SUMMARY:

Hits = 317
Lines analyzed = 76709 in approximately 2.89 seconds (26505 lines/second)
Physical Source Lines of Code (SLOC) = 67187
Hits@level = [0] 118 [1] 229 [2]  66 [3]   5 [4]  17 [5]   0
Hits@level+ = [0+] 435 [1+] 317 [2+]  88 [3+]  22 [4+]  17 [5+]   0
Hits/KSLOC@level+ = [0+] 6.47447 [1+] 4.71817 [2+] 1.30978 [3+] 0.327444 [4+] 0.253025 [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.