SilcServerEntry
silc_idlist_find_server_by_id(SilcIDList id_list, SilcServerID *id,
- SilcIDCacheEntry *ret_entry)
+ bool registered, SilcIDCacheEntry *ret_entry)
{
SilcIDCacheEntry id_cache = NULL;
SilcServerEntry server;
if (ret_entry)
*ret_entry = id_cache;
+ if (server && registered && !server->data.registered)
+ return NULL;
+
SILC_LOG_DEBUG(("Found"));
return server;
SilcServerEntry
silc_idlist_find_server_by_name(SilcIDList id_list, char *name,
- SilcIDCacheEntry *ret_entry)
+ bool registered, SilcIDCacheEntry *ret_entry)
{
SilcIDCacheEntry id_cache = NULL;
SilcServerEntry server;
if (ret_entry)
*ret_entry = id_cache;
+ if (server && registered && !server->data.registered)
+ return NULL;
+
SILC_LOG_DEBUG(("Found"));
return server;
SilcServerEntry
silc_idlist_find_server_by_conn(SilcIDList id_list, char *hostname,
- int port, SilcIDCacheEntry *ret_entry)
+ int port, bool registered,
+ SilcIDCacheEntry *ret_entry)
{
SilcIDCacheList list = NULL;
SilcIDCacheEntry id_cache = NULL;
if (ret_entry)
*ret_entry = id_cache;
+ if (server && registered && !server->data.registered)
+ return NULL;
+
SILC_LOG_DEBUG(("Found"));
return server;
SilcClientEntry
silc_idlist_find_client_by_id(SilcIDList id_list, SilcClientID *id,
- SilcIDCacheEntry *ret_entry)
+ bool registered, SilcIDCacheEntry *ret_entry)
{
SilcIDCacheEntry id_cache = NULL;
SilcClientEntry client;
if (ret_entry)
*ret_entry = id_cache;
+ if (client && registered && !client->data.registered)
+ return NULL;
+
SILC_LOG_DEBUG(("Found"));
return client;