View Issue Details

IDProjectCategoryView StatusLast Update
0003743GNUnetdatastore servicepublic2018-06-06 22:24
Reporteramatus Assigned Toamatus Due Date
PriorityhighSeveritytweakReproducibilityN/A
Status closedResolutionfixed 
Product VersionGit master 
Fixed in Version0.11.0pre66 
Summary0003743: plugin API get_key inconsistancy
DescriptionIn gnunet_datastore_plugin.h the key parameter to the get_key function is documented:

@param key key to match, never NULL

However GNUNET_DATASTORE_get_key allows key to be NULL:

@param key maybe NULL (to match all entries)

Which causes the GetMessage to not include a key which causes gnunet-datastore-service to call get_key with a NULL key.

The mysql, postgres, and sqlite plugins assume key can never be NULL:

GNUNET_assert (key != NULL);

But the heap plugin allows key to be NULL.

The only code which calls GNUNET_DATASTORE_get_key with a NULL key is gnunet-datastore.c which tries to copy the contents of one datastore to another.
TagsNo tags attached.

Activities

Christian Grothoff

2015-03-28 23:27

manager   ~0009057

Well, so the answer is clear: we should allow key=NULL and make it iterate over all values.

amatus

2017-03-19 22:42

developer   ~0011954

Fixed in 2dde0202c5590eeb051c1346f2b66293d83b87ce

Issue History

Date ModifiedUsernameFieldChange
2015-03-28 21:05amatusNew Issue
2015-03-28 23:27Christian GrothoffNote Added: 0009057
2015-03-28 23:28Christian GrothoffPrioritynormal => high
2015-03-28 23:28Christian GrothoffStatusnew => confirmed
2015-05-31 19:47Christian GrothoffSeverityminor => tweak
2017-03-19 21:34amatusAssigned To => amatus
2017-03-19 21:34amatusStatusconfirmed => assigned
2017-03-19 22:42amatusNote Added: 0011954
2017-03-19 22:43amatusStatusassigned => resolved
2017-03-19 22:43amatusResolutionopen => fixed
2017-03-19 22:43amatusFixed in Version => 0.11.0pre66
2018-06-06 22:24Christian GrothoffStatusresolved => closed