소스 검색

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,
   {