[tor-commits] [tor/master] scan-build: bulletproof last-chance errormsg generation in rendservice.c

nickm at torproject.org nickm at torproject.org
Fri Apr 25 05:30:23 UTC 2014


commit d4ad254917ffa0dfba371624f72bc9e163645b8e
Author: Nick Mathewson <nickm at torproject.org>
Date:   Fri Apr 18 21:24:16 2014 -0400

    scan-build: bulletproof last-chance errormsg generation in rendservice.c
    
    If 'intro' is NULL in these functions, I'm pretty sure that the
    error message must be set before we hit the end.  But scan-build
    doesn't notice that, and is worried that we'll do a null-pointer
    dereference in the last-chance errormsg generation.
---
 src/or/rendservice.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/or/rendservice.c b/src/or/rendservice.c
index abd78da..5a81d07 100644
--- a/src/or/rendservice.c
+++ b/src/or/rendservice.c
@@ -2041,7 +2041,7 @@ rend_service_decrypt_intro(
   if (err_msg_out && !err_msg) {
     tor_asprintf(&err_msg,
                  "unknown INTRODUCE%d error decrypting encrypted part",
-                 (int)(intro->type));
+                 intro ? (int)(intro->type) : -1);
   }
   if (status >= 0) status = -1;
 
@@ -2147,7 +2147,7 @@ rend_service_parse_intro_plaintext(
   if (err_msg_out && !err_msg) {
     tor_asprintf(&err_msg,
                  "unknown INTRODUCE%d error parsing encrypted part",
-                 (int)(intro->type));
+                 intro ? (int)(intro->type) : -1);
   }
   if (status >= 0) status = -1;
 





More information about the tor-commits mailing list