mirror of https://github.com/PurpleI2P/i2pd.git
I2P: End-to-End encrypted and anonymous Internet
https://i2pd.website/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
38 lines
597 B
38 lines
597 B
|
|
|
|
#include <stdint.h> |
|
#include <stddef.h> |
|
|
|
#include <LeaseSet.h> |
|
|
|
#include "fuzzing.h" |
|
|
|
|
|
bool |
|
fuzzing_testinput(const uint8_t * data, size_t size) |
|
{ |
|
uint8_t storeType; |
|
i2p::data::LeaseSet2 * ls; |
|
|
|
|
|
if(size < 1) |
|
return true; |
|
|
|
storeType = data[0]; |
|
|
|
// Same check as in NetDb::HandleDatabaseStoreMsg() |
|
if(storeType == i2p::data::NETDB_STORE_TYPE_LEASESET) |
|
return true; |
|
|
|
data++; |
|
size--; |
|
|
|
// Same check as in NetDb::HandleDatabaseStoreMsg() |
|
if(size > i2p::data::MAX_LS_BUFFER_SIZE) |
|
return true; |
|
|
|
ls = new i2p::data::LeaseSet2(storeType, data, size, false); |
|
delete ls; |
|
|
|
return true; |
|
}
|
|
|