Commit 9c404602 authored by Nick Mathewson's avatar Nick Mathewson 🤹
Browse files

Add a stack trace to the warning at issue with 23105.

With luck, this will help us diagnose 23105 and fix it.

I also added a stack trace to the warning right before it, since why
not.
parent fd0a894d
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
  o Minor features (diagnostic):
    - Add a stack trace to the bug warnings that can be logged when
      trying to send an outgoing relay cell with n_chan == 0.
      Diagnostic attempt for bug 23105.
+3 −0
Original line number Diff line number Diff line
@@ -48,6 +48,7 @@
#define RELAY_PRIVATE
#include "or.h"
#include "addressmap.h"
#include "backtrace.h"
#include "buffers.h"
#include "channel.h"
#include "circpathbias.h"
@@ -511,11 +512,13 @@ circuit_package_relay_cell(cell_t *cell, circuit_t *circ,
    if (!chan) {
      log_warn(LD_BUG,"outgoing relay cell sent from %s:%d has n_chan==NULL."
               " Dropping.", filename, lineno);
      log_backtrace(LOG_WARN,LD_BUG,"");
      return 0; /* just drop it */
    }
    if (!CIRCUIT_IS_ORIGIN(circ)) {
      log_warn(LD_BUG,"outgoing relay cell sent from %s:%d on non-origin "
               "circ. Dropping.", filename, lineno);
      log_backtrace(LOG_WARN,LD_BUG,"");
      return 0; /* just drop it */
    }