Skip to content

In getProtocolVersion(), PayloadCfg out of bounds #217

Closed
@xuyaozhong

Description

@xuyaozhong

Default sizeof payloadCfg is 256.
Array 'payloadCfg[256]' accessed at index 270, which is out of bounds.
Please fix this issue.
Thank you

`diff --git a/src/SparkFun_u-blox_GNSS_Arduino_Library.cpp b/src/SparkFun_u-blox_GNSS_Arduino_Library.cpp
index 6d68956..f2e51fc 100644
--- a/src/SparkFun_u-blox_GNSS_Arduino_Library.cpp
+++ b/src/SparkFun_u-blox_GNSS_Arduino_Library.cpp
@@ -7725,7 +7725,7 @@ bool SFE_UBLOX_GNSS::getProtocolVersion(uint16_t maxWait)
// }

// We will step through the payload looking at each extension field of 30 bytes

  • for (uint8_t extensionNumber = 0; extensionNumber < 10; extensionNumber++)
  • for (uint8_t extensionNumber = 0; extensionNumber < (packetCfgPayloadSize / 30); extensionNumber++)
    {
    // Now we need to find "PROTVER=18.00" in the incoming byte stream
    if ((payloadCfg[(30 * extensionNumber) + 0] == 'P') && (payloadCfg[(30 * extensionNumber) + 6] == 'R'))
    `

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions