Commit 8f573c06 authored by Roger Dingledine's avatar Roger Dingledine
Browse files

start to track the 'unexpected relay cell' warning


svn:r928
parent 1a2813ba
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -6,6 +6,7 @@
#include "tree.h"

extern or_options_t options; /* command-line and config-file options */
extern char *conn_state_to_string[][_CONN_TYPE_MAX+1];

static int connection_ap_handshake_process_socks(connection_t *conn);
static int connection_ap_handshake_attach_circuit(connection_t *conn);
@@ -194,7 +195,8 @@ int connection_edge_process_relay_cell(cell_t *cell, circuit_t *circ, connection
      conn->has_sent_end = 1;
      return 0;
    } else {
      log_fn(LOG_WARN,"Got an unexpected relay cell, not in 'open' state. Closing.");
      log_fn(LOG_WARN,"Got an unexpected relay command %d, in state %d (%s). Closing.",
             relay_command, conn->state, conn_state_to_string[conn->type][conn->state]);
      connection_edge_end(conn, END_STREAM_REASON_MISC, conn->cpath_layer);
      return -1;
    }
@@ -304,7 +306,7 @@ int connection_edge_process_relay_cell(cell_t *cell, circuit_t *circ, connection
        return -1;
      }
      if (circuit_send_next_onion_skin(circ)<0) {
        log_fn(LOG_WARN,"circuit_send_next_onion_skin() failed.");
        log_fn(LOG_INFO,"circuit_send_next_onion_skin() failed.");
        return -1;
      }
      return 0;
+1 −0
Original line number Diff line number Diff line
@@ -477,6 +477,7 @@ int onion_extend_cpath(crypt_path_t **head_ptr, cpath_build_state_t *state, rout
    /* try the nodes in EntryNodes first */
    sl = smartlist_create(MAX_ROUTERS_IN_DIR);
    add_nickname_list_to_smartlist(sl,options.EntryNodes);
    /* XXX one day, consider picking chosen_exit knowing what's in EntryNodes */
    remove_twins_from_smartlist(sl,router_get_by_nickname(state->chosen_exit));
    smartlist_subtract(sl,excludednodes);
    choice = smartlist_choose(sl);