tor/src/or/dirvote.c

49 lines
939 B
C
Raw Normal View History

/* Copyright 2001-2004 Roger Dingledine.
* Copyright 2004-2007 Roger Dingledine, Nick Mathewson. */
/* See LICENSE for licensing information */
/* $Id$ */
const char dirvote_c_id[] =
"$Id$";
#include "or.h"
/**
* \file dirvote.c
**/
/** DOCDOC */
void
networkstatus_vote_free(networkstatus_vote_t *ns)
{
int i;
if (!ns)
return;
tor_free(ns->client_versions);
tor_free(ns->server_versions);
if (ns->known_flags) {
for (i=0; ns->known_flags[i]; ++i)
tor_free(ns->known_flags[i]);
tor_free(ns->known_flags);
}
tor_free(ns->nickname);
tor_free(ns->address);
tor_free(ns->contact);
if (ns->cert)
authority_cert_free(ns->cert);
if (ns->routerstatus_list) {
SMARTLIST_FOREACH(ns->routerstatus_list, vote_routerstatus_t *, rs,
{
tor_free(rs->version);
tor_free(rs);
});
smartlist_free(ns->routerstatus_list);
}
memset(ns, 11, sizeof(*ns));
tor_free(ns);
}