X-Git-Url: http://git.silcnet.org/gitweb/?a=blobdiff_plain;f=apps%2Fsilcd%2Fidlist.h;h=7b9c2ad139647bd385ee5e09369d5d4e7b130666;hb=805fddcf6431e784f9f77114782a90c9d12f9cbe;hp=e6d1ce47514c0851fedb143cd210ee7524d94397;hpb=f9f6dfe319b9ee24fd24963003a230fa0ab11d47;p=silc.git diff --git a/apps/silcd/idlist.h b/apps/silcd/idlist.h index e6d1ce47..7b9c2ad1 100644 --- a/apps/silcd/idlist.h +++ b/apps/silcd/idlist.h @@ -162,6 +162,9 @@ struct SilcServerEntryStruct { /* Connection data */ void *connection; + + void *backup_proto; + unsigned int backup : 1; /* Set when executing backup protocol */ }; /* @@ -543,6 +546,7 @@ struct SilcIDListStruct { typedef struct { /* Generic data structure. DO NOT add anything before this! */ SilcIDListDataStruct data; + SilcAsyncOperation op; SilcServerConfigRef cconfig; SilcServerConfigRef sconfig; SilcServerConfigRef rconfig; @@ -550,6 +554,7 @@ typedef struct { const char *hostname; const char *ip; SilcUInt16 port; + SilcConnectionType conn_type; } *SilcUnknownEntry; /* Prototypes */ @@ -575,6 +580,10 @@ SilcServerEntry silc_idlist_replace_server_id(SilcIDList id_list, SilcServerID *old_id, SilcServerID *new_id); int silc_idlist_del_server(SilcIDList id_list, SilcServerEntry entry); +void silc_idlist_server_destructor(SilcIDCache cache, + SilcIDCacheEntry entry, + void *dest_context, + void *app_context); SilcClientEntry silc_idlist_add_client(SilcIDList id_list, char *nickname, char *username, char *userinfo, SilcClientID *id, @@ -584,7 +593,8 @@ int silc_idlist_get_clients_by_nickname(SilcIDList id_list, char *nickname, char *server, SilcClientEntry **clients, SilcUInt32 *clients_count); -int silc_idlist_get_clients_by_hash(SilcIDList id_list, char *nickname, +int silc_idlist_get_clients_by_hash(SilcIDList id_list, + char *nickname, char *server, SilcHash md5hash, SilcClientEntry **clients, SilcUInt32 *clients_count); @@ -604,6 +614,10 @@ silc_idlist_add_channel(SilcIDList id_list, char *channel_name, int mode, SilcChannelID *id, SilcServerEntry router, SilcCipher send_key, SilcCipher receive_key, SilcHmac hmac); +void silc_idlist_channel_destructor(SilcIDCache cache, + SilcIDCacheEntry entry, + void *dest_context, + void *app_context); int silc_idlist_del_channel(SilcIDList id_list, SilcChannelEntry entry); SilcChannelEntry silc_idlist_find_channel_by_name(SilcIDList id_list, char *name,