Procházet zdrojové kódy

ok, i know this one was a bug. we were expiring open general
circuits after they had been around for 30 seconds.


svn:r5496

Roger Dingledine před 20 roky
rodič
revize
ef000fd82e
1 změnil soubory, kde provedl 2 přidání a 8 odebrání
  1. 2 8
      src/or/circuituse.c

+ 2 - 8
src/or/circuituse.c

@@ -223,19 +223,13 @@ circuit_expire_building(time_t now)
      * intro or rend, then mark it for close */
     if (victim->state == CIRCUIT_STATE_OPEN) {
       switch (victim->purpose) {
-        case CIRCUIT_PURPOSE_OR:
-        case CIRCUIT_PURPOSE_INTRO_POINT:
-        case CIRCUIT_PURPOSE_REND_POINT_WAITING:
-        case CIRCUIT_PURPOSE_REND_ESTABLISHED:
-          /* OR-side. We can't actually reach this point because of the
-           * IS_ORIGIN test above. */
+        default: /* most open circuits can be left alone. */
           continue; /* yes, continue inside a switch refers to the nearest
                      * enclosing loop. C is smart. */
-
         case CIRCUIT_PURPOSE_C_ESTABLISH_REND:
         case CIRCUIT_PURPOSE_C_INTRODUCING:
         case CIRCUIT_PURPOSE_S_ESTABLISH_INTRO:
-          break;
+          break; /* too old, need to die */
         case CIRCUIT_PURPOSE_C_REND_READY:
           /* it's a rend_ready circ -- has it already picked a query? */
           /* c_rend_ready circs measure age since timestamp_dirty,