소스 검색

ARP packet lengths are 28 bytes. This condition required the packet to be 29 or more bytes.

Grant Limberg 9 년 전
부모
커밋
ac09c3569a
1개의 변경된 파일1개의 추가작업 그리고 1개의 파일을 삭제
  1. 1 1
      osdep/Arp.cpp

+ 1 - 1
osdep/Arp.cpp

@@ -65,7 +65,7 @@ uint32_t Arp::processIncomingArp(const void *arp,unsigned int len,void *response
 	responseLen = 0;
 	responseDest.zero();
 
-	if (len > 28) {
+	if (len >= 28) {
 		if (!memcmp(arp,ARP_REQUEST_HEADER,8)) {
 			// Respond to ARP requests for locally-known IPs
 			_ArpEntry *targetEntry = _cache.get(reinterpret_cast<const uint32_t *>(arp)[6]);