[tor-commits] [tor/master] Tweak error handling for #25852

nickm at torproject.org nickm at torproject.org
Mon May 14 18:14:26 UTC 2018


commit 036df13a03f6345913fbe5e7806fd00312d41c4d
Author: rl1987 <rl1987 at sdf.lonestar.org>
Date:   Thu May 10 16:45:57 2018 +0300

    Tweak error handling for #25852
---
 src/or/router.c        | 13 +++++++------
 src/or/router.h        |  2 +-
 src/test/test_policy.c |  4 ++--
 3 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/src/or/router.c b/src/or/router.c
index f88ba3746..91def4b75 100644
--- a/src/or/router.c
+++ b/src/or/router.c
@@ -131,11 +131,12 @@ routerinfo_err_to_string(int err)
       return "Key digest failed";
     case TOR_ROUTERINFO_ERROR_CANNOT_GENERATE:
       return "Cannot generate descriptor";
-    case TOR_ROUTERINFO_ERROR_NOT_SO_FAST:
-      return "Too soon; not ready yet";
+    case TOR_ROUTERINFO_ERROR_DESC_REBUILDING:
+      return "Descriptor still rebuilding - not ready yet";
   }
 
-  log_warn(LD_BUG, "unknown errno %d", err);
+  log_warn(LD_BUG, "unknown routerinfo error %d - shouldn't happen", err);
+  tor_assert_unreached();
 
   return "Unknown error";
 }
@@ -157,7 +158,7 @@ routerinfo_err_is_transient(int err)
       return 0; // XXX: bug?
     case TOR_ROUTERINFO_ERROR_CANNOT_GENERATE:
       return 1;
-    case TOR_ROUTERINFO_ERROR_NOT_SO_FAST:
+    case TOR_ROUTERINFO_ERROR_DESC_REBUILDING:
       return 1;
   }
 
@@ -2099,7 +2100,7 @@ router_get_my_routerinfo_with_err,(int *err))
 
   if (!desc_routerinfo) {
     if (err)
-      *err = TOR_ROUTERINFO_ERROR_NOT_SO_FAST;
+      *err = TOR_ROUTERINFO_ERROR_DESC_REBUILDING;
 
     return NULL;
   }
@@ -2530,7 +2531,7 @@ router_rebuild_descriptor(int force)
      * learn that it's time to try again when ip_address_changed()
      * marks it dirty. */
     desc_clean_since = time(NULL);
-    return TOR_ROUTERINFO_ERROR_NOT_SO_FAST;
+    return TOR_ROUTERINFO_ERROR_DESC_REBUILDING;
   }
 
   log_info(LD_OR, "Rebuilding relay descriptor%s", force ? " (forced)" : "");
diff --git a/src/or/router.h b/src/or/router.h
index 9befffae5..b34f75e22 100644
--- a/src/or/router.h
+++ b/src/or/router.h
@@ -19,7 +19,7 @@
 #define TOR_ROUTERINFO_ERROR_NOT_A_SERVER    (-3)
 #define TOR_ROUTERINFO_ERROR_DIGEST_FAILED   (-4)
 #define TOR_ROUTERINFO_ERROR_CANNOT_GENERATE (-5)
-#define TOR_ROUTERINFO_ERROR_NOT_SO_FAST     (-6)
+#define TOR_ROUTERINFO_ERROR_DESC_REBUILDING (-6)
 
 crypto_pk_t *get_onion_key(void);
 time_t get_onion_key_set_at(void);
diff --git a/src/test/test_policy.c b/src/test/test_policy.c
index 6ae57be8c..e89d49aaf 100644
--- a/src/test/test_policy.c
+++ b/src/test/test_policy.c
@@ -1712,13 +1712,13 @@ test_policies_getinfo_helper_policies(void *arg)
   tt_ptr_op(errmsg, OP_NE, NULL);
   tt_str_op(errmsg, OP_EQ, "Cannot generate descriptor");
 
-  routerinfo_err = TOR_ROUTERINFO_ERROR_NOT_SO_FAST;
+  routerinfo_err = TOR_ROUTERINFO_ERROR_DESC_REBUILDING;
   rv = getinfo_helper_policies(NULL, "exit-policy/full", &answer,
                                &errmsg);
   tt_int_op(rv, OP_EQ, -1);
   tt_ptr_op(answer, OP_EQ, NULL);
   tt_ptr_op(errmsg, OP_NE, NULL);
-  tt_str_op(errmsg, OP_EQ, "Too soon; not ready yet");
+  tt_str_op(errmsg, OP_EQ, "Descriptor still rebuilding - not ready yet");
 
  done:
   tor_free(answer);





More information about the tor-commits mailing list