diff --git a/src/or/router.c b/src/or/router.c
index aa9134b33b01305dae8f53067ce8a5016d094c3c..dc917971010ef1218573f2eb3996cdfc020944a4 100644
--- a/src/or/router.c
+++ b/src/or/router.c
@@ -433,6 +433,8 @@ int router_rebuild_descriptor(void) {
     log_fn(LOG_WARN, "Couldn't dump router to string.");
     return -1;
   }
+  if (ri->dir_port)
+    ri->is_trusted_dir = 1;
   return 0;
 }