diff options
author | Neel Chauhan <neel@neelc.org> | 2020-08-06 22:32:30 -0700 |
---|---|---|
committer | George Kadianakis <desnacked@riseup.net> | 2020-08-20 14:34:21 +0300 |
commit | 6e37086f85aa3e421ebc6f4d64de1cd82bcdeaa6 (patch) | |
tree | b25c1eac5189bedcf695c649e31d1f17a3cb2085 /src/feature/control/control_hs.c | |
parent | b1b007967599ccac2de91aa36d3a11a9bcb4ffdb (diff) | |
download | tor-6e37086f85aa3e421ebc6f4d64de1cd82bcdeaa6.tar.gz tor-6e37086f85aa3e421ebc6f4d64de1cd82bcdeaa6.zip |
v3 control: Persist ONION_CLIENT_AUTH_ADD client name
Diffstat (limited to 'src/feature/control/control_hs.c')
-rw-r--r-- | src/feature/control/control_hs.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/feature/control/control_hs.c b/src/feature/control/control_hs.c index c8de03b318..54b767cd0d 100644 --- a/src/feature/control/control_hs.c +++ b/src/feature/control/control_hs.c @@ -134,6 +134,13 @@ handle_control_onion_client_auth_add(control_connection_t *conn, } } SMARTLIST_FOREACH_END(flag); } + if (!strcasecmp(line->key, "ClientName")) { + if (strlen(line->value) > REND_CLIENTNAME_MAX_LEN) { + control_printf_endreply(conn, 512, "ClientName longer than %d chars", + REND_CLIENTNAME_MAX_LEN); + } + creds->client_name = tor_strdup(line->value); + } } hs_client_register_auth_status_t register_status; @@ -255,6 +262,10 @@ encode_client_auth_cred_for_control_port( } } + if (cred->client_name) { + smartlist_add_asprintf(control_line, " ClientName=%s", cred->client_name); + } + /* Join all the components into a single string */ msg_str = smartlist_join_strings(control_line, "", 0, NULL); |