]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
Add replica number to HS_DESC CREATED event
authorDonncha O'Cearbhaill <donncha@donncha.is>
Tue, 4 Aug 2015 12:47:51 +0000 (14:47 +0200)
committerDonncha O'Cearbhaill <donncha@donncha.is>
Tue, 8 Sep 2015 10:34:05 +0000 (12:34 +0200)
Including the replica number in the HS_DESC CREATED event provides
more context to a control port client. The replica allows clients
to more easily identify each replicated descriptor from the
independantly output control events.

src/or/control.c
src/or/control.h
src/or/rendcommon.c

index c2240bf38c93d9b1f5426ae3c9754e332e9af827..2408793bd7d04a76a3d902efaca937a77c2a619d 100644 (file)
@@ -6255,10 +6255,12 @@ get_desc_id_from_query(const rend_data_t *rend_data, const char *hsdir_fp)
  *
  * <b>service_id</b> is the descriptor onion address.
  * <b>desc_id_base32</b> is the descriptor ID.
+ * <b>replica</b> is the the descriptor replica number.
  */
 void
 control_event_hs_descriptor_created(const char *service_id,
-                                    const char *desc_id_base32)
+                                    const char *desc_id_base32,
+                                    int replica)
 {
   if (!service_id || !desc_id_base32) {
     log_warn(LD_BUG, "Called with service_digest==%p, "
@@ -6267,9 +6269,11 @@ control_event_hs_descriptor_created(const char *service_id,
   }
 
   send_control_event(EVENT_HS_DESC,
-                     "650 HS_DESC CREATED %s UNKNOWN UNKNOWN %s\r\n",
+                     "650 HS_DESC CREATED %s UNKNOWN UNKNOWN %s "
+                     "REPLICA=%d\r\n",
                      service_id,
-                     desc_id_base32);
+                     desc_id_base32,
+                     replica);
 }
 
 /** send HS_DESC upload event.
index 26f7f50b881bb0dd8ff528d21b9eea628e2024ae..1f8e2bcdc655a4caabcc26917d0e602e1c09d2a5 100644 (file)
@@ -118,7 +118,8 @@ void control_event_hs_descriptor_requested(const rend_data_t *rend_query,
                                            const char *desc_id_base32,
                                            const char *hs_dir);
 void control_event_hs_descriptor_created(const char *service_id,
-                                         const char *desc_id_base32);
+                                         const char *desc_id_base32,
+                                         int replica);
 void control_event_hs_descriptor_upload(const char *service_id,
                                         const char *desc_id_base32,
                                         const char *hs_dir);
index 1e040847cf62d39ef6048494162d8a348f1b97de..f9d47d13f5386fcd6baf9bf576314a798d1034d7 100644 (file)
@@ -661,7 +661,7 @@ rend_encode_v2_descriptors(smartlist_t *descs_out,
     rend_cache_store_v2_desc_as_service(enc->desc_str);
     base32_encode(service_id_base32, sizeof(service_id_base32),
           service_id, REND_SERVICE_ID_LEN);
-    control_event_hs_descriptor_created(service_id_base32, desc_id_base32);
+    control_event_hs_descriptor_created(service_id_base32, desc_id_base32, k);
   }
 
   log_info(LD_REND, "Successfully encoded a v2 descriptor and "