Explorar o código

* Packet::readFrom() payload_len guard

Scott Powell hai 1 ano
pai
achega
c942aa06f9
Modificáronse 1 ficheiros con 1 adicións e 0 borrados
  1. 1 0
      src/Packet.cpp

+ 1 - 0
src/Packet.cpp

@@ -52,6 +52,7 @@ bool Packet::readFrom(const uint8_t src[], uint8_t len) {
   memcpy(path, &src[i], path_len); i += path_len;
   if (i >= len) return false;   // bad encoding
   payload_len = len - i;
+  if (payload_len > sizeof(payload)) return false;  // bad encoding
   memcpy(payload, &src[i], payload_len); //i += payload_len;
   return true;   // success
 }