Преглед изворни кода

Avoid a possible crash in tls_log_errors.

We were checking for msg==NULL, but not lib or proc.  This case can
only occur if we have an error whose string we somehow haven't loaded,
but it's worth coding defensively here.

Spotted by rieo on IRC.
Nick Mathewson пре 14 година
родитељ
комит
4ad5094c90
1 измењених фајлова са 2 додато и 0 уклоњено
  1. 2 0
      src/common/tortls.c

+ 2 - 0
src/common/tortls.c

@@ -180,6 +180,8 @@ tls_log_errors(tor_tls_t *tls, int severity, const char *doing)
     lib = (const char*)ERR_lib_error_string(err);
     func = (const char*)ERR_func_error_string(err);
     if (!msg) msg = "(null)";
+    if (!lib) lib = "(null)";
+    if (!func) func = "(null)";
     if (doing) {
       log(severity, LD_NET, "TLS error while %s%s%s: %s (in %s:%s)",
           doing, addr?" with ":"", addr?addr:"",