Added support for encrypted private key files. The passphrase
[silc.git] / apps / silcd / server.c
index d79911578966156f0ebd8ce825dd9314a5a5e1d3..42b5e78b039db4278ec1c94d75002d2945f82427 100644 (file)
@@ -988,8 +988,12 @@ SILC_TASK_CALLBACK(silc_server_connect_router)
                             silc_server_connect_to_router_retry,
                             context, 0, 1, SILC_TASK_TIMEOUT,
                             SILC_TASK_PRI_NORMAL);
-    else
+    else {
       silc_server_config_unref(&sconn->conn);
+      silc_free(sconn->remote_host);
+      silc_free(sconn->backup_replace_ip);
+      silc_free(sconn);
+    }
     return;
   }
 
@@ -1968,7 +1972,7 @@ SILC_TASK_CALLBACK(silc_server_accept_new_connection_final)
        }
        if (sconn) {
          if (sconn->param) {
-           param = rconn->param;
+           param = sconn->param;
 
            if (!param->keepalive_secs)
              param->keepalive_secs = server->config->param.keepalive_secs;
@@ -4410,6 +4414,9 @@ void silc_server_announce_get_channels(SilcServer server,
          silc_server_announce_get_channel_topic(server, channel,
                                                 &(*channel_topics)[i]);
          (*channel_users_modes_c)++;
+
+         silc_free(cid);
+
          i++;
        }