tor-hsservice: Publish the IptPublishSet we called note_publication_attempt on
Previously, it was possible for the IptPublishSet
used to generate the
descriptor and the IptPublishSet
note_publication_attempt
to
differ. Now, the publisher generates the descriptor using the same
IptPublishSet
it calls note_publication_attempt
on.
Note that as a consequence, the publisher generates a new descriptor just before each HsDir upload. This means each HsDir could, in theory, receive a different descriptor (not just in terms of revision-counters, but also with a different set of IPTs). It may seem like this could lead to some HsDirs being left with an outdated descriptor, but that's not the case: after the upload completes, the publisher will be notified by the ipt_watcher of the IPT change event (if there was one to begin with), which will trigger another upload job.
Previously, the publisher would only generate a single descriptor for each time period (all HsDirs in a given time period would receive the same descriptor).
Closes #1097 (closed)