From d303228ecae1d4c5d9a242b12a4546366544a170 Mon Sep 17 00:00:00 2001 From: George Kadianakis Date: Wed, 5 Dec 2012 18:19:44 +0200 Subject: Create the Extended ORPort authentication cookie file. --- src/or/transports.c | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) (limited to 'src/or/transports.c') diff --git a/src/or/transports.c b/src/or/transports.c index 15faa98d4..877dc0c33 100644 --- a/src/or/transports.c +++ b/src/or/transports.c @@ -96,6 +96,7 @@ #include "router.h" #include "statefile.h" #include "entrynodes.h" +#include "connection_or.h" static process_environment_t * create_managed_proxy_environment(const managed_proxy_t *mp); @@ -1194,6 +1195,8 @@ get_bindaddr_for_server_proxy(const managed_proxy_t *mp) static process_environment_t * create_managed_proxy_environment(const managed_proxy_t *mp) { + const or_options_t *options = get_options(); + /* Environment variables to be added to or set in mp's environment. */ smartlist_t *envs = smartlist_new(); /* XXXX The next time someone touches this code, shorten the name of @@ -1257,7 +1260,22 @@ create_managed_proxy_environment(const managed_proxy_t *mp) * (If we remove this line entirely, some joker will stick this * variable in Tor's environment and crash PTs that try to parse * it even when not run in server mode.) */ - smartlist_add(envs, tor_strdup("TOR_PT_EXTENDED_SERVER_PORT=")); + + if (options->ExtORPort) { + char *ext_or_addrport_tmp = + get_first_listener_addrport_string(CONN_TYPE_EXT_OR_LISTENER); + char *cookie_file_loc = get_ext_or_auth_cookie_file(); + + smartlist_add_asprintf(envs, "TOR_PT_EXTENDED_SERVER_PORT=%s", + ext_or_addrport_tmp); + smartlist_add_asprintf(envs, "TOR_PT_AUTH_COOKIE_FILE=%s", cookie_file_loc); + + tor_free(ext_or_addrport_tmp); + tor_free(cookie_file_loc); + + } else { + smartlist_add_asprintf(envs, "TOR_PT_EXTENDED_SERVER_PORT="); + } } SMARTLIST_FOREACH_BEGIN(envs, const char *, env_var) { -- cgit v1.2.3 From e2e0d09dab0490724555d5c67c2a1d27fd5199c4 Mon Sep 17 00:00:00 2001 From: George Kadianakis Date: Wed, 5 Dec 2012 19:15:28 +0200 Subject: Various Extended ORPort code improvements. * Add documentation. * Free ext_or_auth_correct_client_hash. * Use VPORT(ExtORPort) instead of V(ExtORPOrt). See dfe03d36c8749eb07e9bb2ea47e88ff05e9e3127 for details. --- src/or/transports.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/or/transports.c') diff --git a/src/or/transports.c b/src/or/transports.c index 877dc0c33..474a9db9b 100644 --- a/src/or/transports.c +++ b/src/or/transports.c @@ -1261,7 +1261,7 @@ create_managed_proxy_environment(const managed_proxy_t *mp) * variable in Tor's environment and crash PTs that try to parse * it even when not run in server mode.) */ - if (options->ExtORPort) { + if (options->ExtORPort_lines) { char *ext_or_addrport_tmp = get_first_listener_addrport_string(CONN_TYPE_EXT_OR_LISTENER); char *cookie_file_loc = get_ext_or_auth_cookie_file(); -- cgit v1.2.3 From 2207525a69702a13ad0b3c0346b8c3fdb90824c0 Mon Sep 17 00:00:00 2001 From: George Kadianakis Date: Wed, 5 Dec 2012 19:16:04 +0200 Subject: Satisfy check-spaces. --- src/or/transports.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/or/transports.c') diff --git a/src/or/transports.c b/src/or/transports.c index 474a9db9b..8beb9a5c7 100644 --- a/src/or/transports.c +++ b/src/or/transports.c @@ -1268,7 +1268,8 @@ create_managed_proxy_environment(const managed_proxy_t *mp) smartlist_add_asprintf(envs, "TOR_PT_EXTENDED_SERVER_PORT=%s", ext_or_addrport_tmp); - smartlist_add_asprintf(envs, "TOR_PT_AUTH_COOKIE_FILE=%s", cookie_file_loc); + smartlist_add_asprintf(envs, "TOR_PT_AUTH_COOKIE_FILE=%s", + cookie_file_loc); tor_free(ext_or_addrport_tmp); tor_free(cookie_file_loc); -- cgit v1.2.3 From d8f74cc439ad025cc52aea8495705096d6538029 Mon Sep 17 00:00:00 2001 From: George Kadianakis Date: Wed, 5 Dec 2012 19:18:18 +0200 Subject: Move Extended ORPort code to its own module. Move the code from the connection_or module to ext_orport. This commit only moves code: it shouldn't modify anything. --- src/or/transports.c | 1 + 1 file changed, 1 insertion(+) (limited to 'src/or/transports.c') diff --git a/src/or/transports.c b/src/or/transports.c index 8beb9a5c7..196e18bba 100644 --- a/src/or/transports.c +++ b/src/or/transports.c @@ -97,6 +97,7 @@ #include "statefile.h" #include "entrynodes.h" #include "connection_or.h" +#include "ext_orport.h" static process_environment_t * create_managed_proxy_environment(const managed_proxy_t *mp); -- cgit v1.2.3 From e4a241af11dce61d8722b74ad41d6ea0bec44ef1 Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Tue, 16 Jul 2013 13:42:25 -0400 Subject: Add guards to ext_orport.h, rename get_file to get_file_name --- src/or/transports.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/or/transports.c') diff --git a/src/or/transports.c b/src/or/transports.c index 196e18bba..01a490f44 100644 --- a/src/or/transports.c +++ b/src/or/transports.c @@ -1265,7 +1265,7 @@ create_managed_proxy_environment(const managed_proxy_t *mp) if (options->ExtORPort_lines) { char *ext_or_addrport_tmp = get_first_listener_addrport_string(CONN_TYPE_EXT_OR_LISTENER); - char *cookie_file_loc = get_ext_or_auth_cookie_file(); + char *cookie_file_loc = get_ext_or_auth_cookie_file_name(); smartlist_add_asprintf(envs, "TOR_PT_EXTENDED_SERVER_PORT=%s", ext_or_addrport_tmp); -- cgit v1.2.3