浏览代码

if the controller asks to extendcircuit to circid 0, we need to
init the circuit before we can add hops to its cpath.


svn:r4586

Roger Dingledine 20 年之前
父节点
当前提交
5643532bd9
共有 1 个文件被更改,包括 5 次插入0 次删除
  1. 5 0
      src/or/control.c

+ 5 - 0
src/or/control.c

@@ -1426,6 +1426,11 @@ handle_control_extendcircuit(connection_t *conn, uint32_t len,
     goto done;
   }
 
+  if (!zero_circ) {
+    /* start a new circuit */
+    circ = circuit_init(CIRCUIT_PURPOSE_C_GENERAL, 0, 0, 0);
+  }
+
   /* now circ refers to something that is ready to be extended */
   SMARTLIST_FOREACH(routers, routerinfo_t *, r,
   {