commit 6d8a2ff24f18cc008d3c180a191f5040c7b2e2ba Author: teor teor2345@gmail.com Date: Wed Jun 3 03:58:28 2015 +1000
Check for NULL values in getinfo_helper_onions
Fix on 915c7438a77e in Tor 0.2.7.1-alpha. --- changes/bug16115-NULL-getinfo-onions | 4 ++++ src/or/control.c | 10 +++++++--- 2 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/changes/bug16115-NULL-getinfo-onions b/changes/bug16115-NULL-getinfo-onions new file mode 100644 index 0000000..ec1661e --- /dev/null +++ b/changes/bug16115-NULL-getinfo-onions @@ -0,0 +1,4 @@ + o Minor fixes (threads, comments): + - Check for NULL values in getinfo_helper_onions + Patch by "teor". + Fix on 915c7438a77e in Tor 0.2.7.1-alpha. diff --git a/src/or/control.c b/src/or/control.c index 2eaad4e..7a113f2 100644 --- a/src/or/control.c +++ b/src/or/control.c @@ -2193,7 +2193,7 @@ getinfo_helper_onions(control_connection_t *control_conn, { smartlist_t *onion_list = NULL;
- if (!strcmp(question, "onions/current")) { + if (control_conn && !strcmp(question, "onions/current")) { onion_list = control_conn->ephemeral_onion_services; } else if (!strcmp(question, "onions/detached")) { onion_list = detached_onion_services; @@ -2201,10 +2201,14 @@ getinfo_helper_onions(control_connection_t *control_conn, return 0; } if (!onion_list || smartlist_len(onion_list) == 0) { - *errmsg = "No onion services of the specified type."; + if (errmsg) { + *errmsg = "No onion services of the specified type."; + } return -1; } - *answer = smartlist_join_strings(onion_list, "\r\n", 0, NULL); + if (answer) { + *answer = smartlist_join_strings(onion_list, "\r\n", 0, NULL); + }
return 0; }
tor-commits@lists.torproject.org