+Sun Mar 17 19:26:16 EET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added the deleting of server's own ID cache entry to the
+ silc_server_free function. Free also everything else that
+ has been allocated in silc_server_init. The affected file
+ is silcd/server.c.
+
Sun Mar 17 15:44:56 EET 2002 Pekka Riikonen <priikone@silcnet.org>
* Added functions silc_parse_version_string, silc_version_to_num,
if (server) {
#ifdef SILC_SIM
SilcSim sim;
-#endif
-
- silc_free(server->local_list);
- silc_free(server->global_list);
- if (server->rng)
- silc_rng_free(server->rng);
-
- if (server->pkcs)
- silc_pkcs_free(server->pkcs);
-#ifdef SILC_SIM
while ((sim = silc_dlist_get(server->sim)) != SILC_LIST_END) {
silc_dlist_del(server->sim, sim);
silc_sim_free(sim);
silc_dlist_uninit(server->sim);
#endif
+ if (server->rng)
+ silc_rng_free(server->rng);
+ if (server->pkcs)
+ silc_pkcs_free(server->pkcs);
if (server->pending_commands)
silc_dlist_uninit(server->pending_commands);
+ if (server->id_entry)
+ silc_idlist_del_server(server->local_list, server->id_entry);
+
+ silc_idcache_free(server->local_list->clients);
+ silc_idcache_free(server->local_list->servers);
+ silc_idcache_free(server->local_list->channels);
+ silc_idcache_free(server->global_list->clients);
+ silc_idcache_free(server->global_list->servers);
+ silc_idcache_free(server->global_list->channels);
+ silc_free(server->sockets);
silc_free(server);
}
}
For now, NULL is sent as router. This allocates new entry to
the ID list. */
id_entry =
- silc_idlist_add_server(server->local_list,
- server->config->server_info->server_name,
+ silc_idlist_add_server(server->local_list, strdup(server->server_name),
server->server_type, server->id, NULL, NULL);
if (!id_entry) {
SILC_LOG_ERROR(("Could not add ourselves to cache"));
.in 6
protocol version = <major>.<minor>
-software version = <major>[.<minor>[.<build>]]
+software version = <major>[.<minor>[.<build or vendor string>]]
.in 3
Protocol version MAY provide both major and minor version. Currently
software version MAY be freely set and accepted.
-Thus, the version string could be, for example:
+Thus, the version strings could be, for example:
.in 6
SILC-1.0-1.2
+SILC-1.1-2.0.2
+SILC-1.0-1.0.VendorXYZ
.in 3