diff --git a/libssh/server.c b/libssh/server.c index 3cce6470..0327cf5e 100644 --- a/libssh/server.c +++ b/libssh/server.c @@ -246,6 +246,7 @@ int ssh_bind_accept(ssh_bind sshbind, ssh_session session) { if (sshbind->bindaddr == NULL) session->bindaddr = NULL; else { + SAFE_FREE(session->bindaddr); session->bindaddr = strdup(sshbind->bindaddr); if (session->bindaddr == NULL) { privatekey_free(dsa); diff --git a/libssh/session.c b/libssh/session.c index 5a57599f..fc687e69 100644 --- a/libssh/session.c +++ b/libssh/session.c @@ -153,6 +153,7 @@ void ssh_free(ssh_session session) { SAFE_FREE(session->serverbanner); SAFE_FREE(session->clientbanner); + SAFE_FREE(session->bindaddr); SAFE_FREE(session->banner); #ifdef WITH_PCAP if(session->pcap_ctx){