View Issue Details

IDProjectCategoryView StatusLast Update
0002303GNUnetnamestore servicepublic2012-11-05 17:34
Reporterschanzen Assigned ToChristian Grothoff Due Date
PriorityhighSeverityfeatureReproducibilityhave not tried
Status closedResolutionfixed 
Product VersionGit master 
Target Version0.9.4Fixed in Version0.9.4 
Summary0002303: RecordFlags, RecordData and the DHT signature problem
DescriptionThe RecordFlags field in a RecordData struct is only relevant locally. In fact putting records into the DHT that are private or pending (or not authoritative) should never happen.

So the flags field should always be empty when iterating a zone etc.
This is important, however, for signature verification! (assert flags=0?)

The issue is that the authority flag is always set at the moment (obviously).
But when another peer learns of the RecordData it is no longer authoritative! Removing the flag will break the signature.
However this flag is redundant information. Authoritative RecordData will have a corresponding private key in the usual location.

Suggested API Change:
1. Remove GNUNET_NAMESTORE_RF_AUTHORITY from record flags
2. Change zone iteration API to:
GNUNET_NAMESTORE_zone_iteration_start (struct GNUNET_NAMESTORE_Handle *h,
             const struct GNUNET_CRYPTO_ShortHashCode *zone,
             enum GNUNET_NAMESTORE_RecordFlags must_have_flags,
             enum GNUNET_NAMESTORE_RecordFlags must_not_have_flags,
             int authoritative, //We might want to iterate over non-auth zones as well
             GNUNET_NAMESTORE_RecordProcessor proc,
             void *proc_cls);
TagsNo tags attached.

Activities

There are no notes attached to this issue.

Issue History

Date ModifiedUsernameFieldChange
2012-05-04 12:30schanzenNew Issue
2012-05-04 12:30schanzenStatusnew => assigned
2012-05-04 12:30schanzenAssigned To => Matthias Wachs
2012-05-06 19:26Christian GrothoffSeverityminor => feature
2012-05-06 19:26Christian GrothoffProduct Version => Git master
2012-05-06 19:26Christian GrothoffTarget Version => 0.9.4
2012-06-26 21:28Christian GrothoffPrioritynormal => high
2012-06-26 21:42Christian GrothoffAssigned ToMatthias Wachs => Christian Grothoff
2012-06-29 16:16Christian GrothoffStatusassigned => resolved
2012-06-29 16:16Christian GrothoffFixed in Version => 0.9.4
2012-06-29 16:16Christian GrothoffResolutionopen => fixed
2012-11-05 17:34Christian GrothoffStatusresolved => closed
2013-10-02 11:56Christian GrothoffCategorynamestore => namestore service