updates.
[silc.git] / apps / silcd / idlist.h
index 803392f2e923ffd6eb714850f43603701a514abe..e070b1ca815e91273ead1757ed5ddf59b1886313 100644 (file)
@@ -46,6 +46,7 @@ typedef struct {
      is TRUE if the Perfect Forward Secrecy is performed in re-key. */
   unsigned char *send_enc_key;
   uint32 enc_key_len;
+  int ske_group;
   bool pfs;
   uint32 timeout;
   void *context;
@@ -76,7 +77,8 @@ typedef struct {
   SilcHash hash;
 
   /* HMAC */
-  SilcHmac hmac;
+  SilcHmac hmac_send;
+  SilcHmac hmac_receive;
 
   /* Public key */
   SilcPublicKey public_key;
@@ -114,7 +116,7 @@ typedef struct {
        Logical name of the server. There is no limit of the length of the
        server name. This is usually the same name as defined in DNS.
 
-   int server_type
+   uint8 server_type
 
        Type of the server. SILC_SERVER or SILC_ROUTER are the possible
        choices for this.
@@ -155,7 +157,7 @@ struct SilcServerEntryStruct {
   SilcIDListDataStruct data;
 
   char *server_name;
-  int server_type;
+  uint8 server_type;
   SilcServerID *id;
   char *server_info;
   char *motd;
@@ -227,6 +229,14 @@ typedef struct SilcChannelClientEntryStruct {
 
        Generic data structure to hold data common to all ID entries.
 
+   unsigned char *nickname
+
+       The nickname of the client.
+
+   char *servername
+
+       The name of the server where the client is from. MAy be NULL.
+
    char username
 
        Client's usename. This is defined in the following manner:
@@ -265,7 +275,7 @@ typedef struct SilcChannelClientEntryStruct {
        nickname. Nickname is not relevant information that would need to be 
        saved as plain.
 
-   int mode
+   uint32 mode
 
        Client's mode.  Client maybe for example server operator or
        router operator (SILC operator).
@@ -305,10 +315,11 @@ struct SilcClientEntryStruct {
   SilcIDListDataStruct data;
 
   unsigned char *nickname;
+  char *servername;
   char *username;
   char *userinfo;
   SilcClientID *id;
-  int mode;
+  uint32 mode;
 
   long last_command;
   uint8 fast_command;
@@ -534,8 +545,7 @@ silc_idlist_replace_server_id(SilcIDList id_list, SilcServerID *old_id,
                              SilcServerID *new_id);
 int silc_idlist_del_server(SilcIDList id_list, SilcServerEntry entry);
 SilcClientEntry
-silc_idlist_add_client(SilcIDList id_list, unsigned char *nickname, 
-                      uint32 nickname_len, char *username, 
+silc_idlist_add_client(SilcIDList id_list, char *nickname, char *username, 
                       char *userinfo, SilcClientID *id, 
                       SilcServerEntry router, void *connection);
 int silc_idlist_del_client(SilcIDList id_list, SilcClientEntry entry);
@@ -548,9 +558,6 @@ int silc_idlist_get_clients_by_hash(SilcIDList id_list, char *nickname,
                                    SilcClientEntry **clients,
                                    uint32 *clients_count);
 SilcClientEntry
-silc_idlist_find_client_by_hash(SilcIDList id_list, char *nickname,
-                               SilcHash md5hash, SilcIDCacheEntry *ret_entry);
-SilcClientEntry
 silc_idlist_find_client_by_id(SilcIDList id_list, SilcClientID *id,
                              SilcIDCacheEntry *ret_entry);
 SilcClientEntry