Add a HS_DESC CREATED control event

The HS_DESC CREATED event should be emmited when a new service descriptor
is generated for a local rendevous service. This event is documented
in the control spec.

This commit resolves ticket #16291.
This commit is contained in:
Donncha O'Cearbhaill 2015-07-21 17:03:23 +02:00
parent 1a75e6da00
commit af3be650e3
2 changed files with 23 additions and 0 deletions

View File

@ -6233,6 +6233,27 @@ get_desc_id_from_query(const rend_data_t *rend_data, const char *hsdir_fp)
return desc_id; return desc_id;
} }
/** send HS_DESC CREATED event when a local service generates a descriptor.
*
* <b>service_id</b> is the descriptor onion address.
* <b>desc_id_base32</b> is the descriptor ID.
*/
void
control_event_hs_descriptor_created(const char *service_id,
const char *desc_id_base32)
{
if (!service_id || !desc_id_base32) {
log_warn(LD_BUG, "Called with service_digest==%p, "
"desc_id_base32==%p", service_id, desc_id_base32);
return;
}
send_control_event(EVENT_HS_DESC,
"650 HS_DESC CREATED %s UNKNOWN UNKNOWN %s\r\n",
service_id,
desc_id_base32);
}
/** send HS_DESC upload event. /** send HS_DESC upload event.
* *
* <b>service_id</b> is the descriptor onion address. * <b>service_id</b> is the descriptor onion address.

View File

@ -117,6 +117,8 @@ MOCK_DECL(const char *, node_describe_longname_by_id,(const char *id_digest));
void control_event_hs_descriptor_requested(const rend_data_t *rend_query, void control_event_hs_descriptor_requested(const rend_data_t *rend_query,
const char *desc_id_base32, const char *desc_id_base32,
const char *hs_dir); const char *hs_dir);
void control_event_hs_descriptor_created(const char *service_id,
const char *desc_id_base32);
void control_event_hs_descriptor_upload(const char *service_id, void control_event_hs_descriptor_upload(const char *service_id,
const char *desc_id_base32, const char *desc_id_base32,
const char *hs_dir); const char *hs_dir);