diff options
-rw-r--r-- | lib/conn.c | 10 | ||||
-rw-r--r-- | lib/radsec.c | 2 |
2 files changed, 3 insertions, 9 deletions
@@ -123,7 +123,6 @@ rs_conn_disconnect (struct rs_connection *conn) int rs_conn_destroy (struct rs_connection *conn) { - struct rs_peer *p; int err = 0; assert (conn); @@ -136,14 +135,7 @@ rs_conn_destroy (struct rs_connection *conn) } /* NOTE: conn->realm is owned by context. */ - - for (p = conn->peers; p; p = p->next) - { - if (p->addr) - evutil_freeaddrinfo (p->addr); - if (p->secret) - rs_free (conn->ctx, p->secret); - } + /* NOTE: conn->peers is owned by context. */ if (conn->tev) event_free (conn->tev); diff --git a/lib/radsec.c b/lib/radsec.c index b9c9e35..3772158 100644 --- a/lib/radsec.c +++ b/lib/radsec.c @@ -120,6 +120,8 @@ _rs_peer_destroy (struct rs_peer *p) evutil_freeaddrinfo (p->addr); p->addr = NULL; } + if (p->secret) + rs_free (p->conn->ctx, p->secret); rs_free (p->conn->ctx, p); } |