Commit e7ff23be authored by John Brooks's avatar John Brooks Committed by John Brooks
Browse files

Make rend_authorized_client_free public

This is needed by control.c.

Also, check whether client_name is set before doing memwipe.
parent 896271d5
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -183,13 +183,14 @@ num_rend_services(void)
}

/** Helper: free storage held by a single service authorized client entry. */
static void
void
rend_authorized_client_free(rend_authorized_client_t *client)
{
  if (!client)
    return;
  if (client->client_key)
    crypto_pk_free(client->client_key);
  if (client->client_name)
    memwipe(client->client_name, 0, strlen(client->client_name));
  tor_free(client->client_name);
  memwipe(client->descriptor_cookie, 0, sizeof(client->descriptor_cookie));
+2 −0
Original line number Diff line number Diff line
@@ -106,6 +106,8 @@ rend_service_port_config_t *rend_service_parse_port_config(const char *string,
                                                           char **err_msg_out);
void rend_service_port_config_free(rend_service_port_config_t *p);

void rend_authorized_client_free(rend_authorized_client_t *client);

/** Return value from rend_service_add_ephemeral. */
typedef enum {
  RSAE_BADVIRTPORT = -4, /**< Invalid VIRTPORT/TARGET(s) */