Commit d688a40a authored by Robert Ransom's avatar Robert Ransom
Browse files

Don't crash on startup of a dormant relay

If a relay is dormant at startup, it will call init_keys before
crypto_set_tls_dh_prime.  This is bad.  Let's make it not so bad, because
someday it *will* happen again.
parent e4cebb76
Loading
Loading
Loading
Loading

changes/bug4702

0 → 100644
+6 −0
Original line number Diff line number Diff line
  o Minor bugfixes:

    - Fix an assertion failure when a relay with accounting enabled
      starts up while dormant.  Fixes bug 4702; bugfix on
      0.2.3.9-alpha.
+5 −2
Original line number Diff line number Diff line
@@ -2089,8 +2089,11 @@ init_dh_param(void)
  dh_param_p = circuit_dh_prime;
  dh_param_g = generator;

  /* Should be already set by config.c. */
  tor_assert(dh_param_p_tls);
  /* Ensure that we have TLS DH parameters set up, too, even if we're
     going to change them soon. */
  if (!dh_param_p_tls) {
    crypto_set_tls_dh_prime(NULL);
  }
}

/** Number of bits to use when choosing the x or y value in a Diffie-Hellman