plugin_block_dht.c | plugin_block_dht.c | |||
---|---|---|---|---|
skipping to change at line 67 | skipping to change at line 67 | |||
size_t reply_block_size) | size_t reply_block_size) | |||
{ | { | |||
GNUNET_HashCode mhash; | GNUNET_HashCode mhash; | |||
const struct GNUNET_HELLO_Message *hello; | const struct GNUNET_HELLO_Message *hello; | |||
struct GNUNET_PeerIdentity pid; | struct GNUNET_PeerIdentity pid; | |||
const struct GNUNET_MessageHeader *msg; | const struct GNUNET_MessageHeader *msg; | |||
if (type != GNUNET_BLOCK_TYPE_DHT_HELLO) | if (type != GNUNET_BLOCK_TYPE_DHT_HELLO) | |||
return GNUNET_BLOCK_EVALUATION_TYPE_NOT_SUPPORTED; | return GNUNET_BLOCK_EVALUATION_TYPE_NOT_SUPPORTED; | |||
if (xquery_size != 0) | if (xquery_size != 0) | |||
{ | ||||
GNUNET_break_op (0); | ||||
return GNUNET_BLOCK_EVALUATION_REQUEST_INVALID; | return GNUNET_BLOCK_EVALUATION_REQUEST_INVALID; | |||
if (reply_block_size == 0) | } | |||
if (NULL == reply_block) | ||||
return GNUNET_BLOCK_EVALUATION_REQUEST_VALID; | return GNUNET_BLOCK_EVALUATION_REQUEST_VALID; | |||
if (reply_block_size < sizeof (struct GNUNET_MessageHeader)) | if (reply_block_size < sizeof (struct GNUNET_MessageHeader)) | |||
{ | ||||
GNUNET_break_op (0); | ||||
return GNUNET_BLOCK_EVALUATION_RESULT_INVALID; | return GNUNET_BLOCK_EVALUATION_RESULT_INVALID; | |||
} | ||||
msg = reply_block; | msg = reply_block; | |||
if (reply_block_size != ntohs (msg->size)) | if (reply_block_size != ntohs (msg->size)) | |||
{ | ||||
GNUNET_break_op (0); | ||||
return GNUNET_BLOCK_EVALUATION_RESULT_INVALID; | return GNUNET_BLOCK_EVALUATION_RESULT_INVALID; | |||
} | ||||
hello = reply_block; | hello = reply_block; | |||
if (GNUNET_OK != GNUNET_HELLO_get_id (hello, &pid)) | if (GNUNET_OK != GNUNET_HELLO_get_id (hello, &pid)) | |||
{ | ||||
GNUNET_break_op (0); | ||||
return GNUNET_BLOCK_EVALUATION_RESULT_INVALID; | return GNUNET_BLOCK_EVALUATION_RESULT_INVALID; | |||
} | ||||
if (NULL != bf) | if (NULL != bf) | |||
{ | { | |||
GNUNET_BLOCK_mingle_hash (&pid.hashPubKey, bf_mutator, &mhash); | GNUNET_BLOCK_mingle_hash (&pid.hashPubKey, bf_mutator, &mhash); | |||
if (NULL != *bf) | if (NULL != *bf) | |||
{ | { | |||
if (GNUNET_YES == GNUNET_CONTAINER_bloomfilter_test (*bf, &mhash)) | if (GNUNET_YES == GNUNET_CONTAINER_bloomfilter_test (*bf, &mhash)) | |||
return GNUNET_BLOCK_EVALUATION_OK_DUPLICATE; | return GNUNET_BLOCK_EVALUATION_OK_DUPLICATE; | |||
} | } | |||
else | else | |||
{ | { | |||
End of changes. 8 change blocks. | ||||
1 lines changed or deleted | 13 lines changed or added | |||
This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |