-uint32 silc_hash_string(void *key);
-uint32 silc_hash_uint(void *key);
-uint32 silc_hash_ptr(void *key);
-uint32 silc_hash_server_id(void *key);
-uint32 silc_hash_client_id(void *key);
-uint32 silc_hash_channel_id(void *key);
+uint32 silc_hash_string(void *key, void *user_context);
+uint32 silc_hash_uint(void *key, void *user_context);
+uint32 silc_hash_ptr(void *key, void *user_context);
+uint32 silc_hash_id(void *key, void *user_context);
+uint32 silc_hash_data(void *key, void *user_context);
+bool silc_hash_string_compare(void *key1, void *key2, void *user_context);
+bool silc_hash_id_compare(void *key1, void *key2, void *user_context);
+bool silc_hash_client_id_compare(void *key1, void *key2, void *user_context);
+bool silc_hash_data_compare(void *key1, void *key2, void *user_context);
+char *silc_client_chmode(uint32 mode, const char *cipher, const char *hmac);
+char *silc_client_chumode(uint32 mode);
+char *silc_client_chumode_char(uint32 mode);
+int silc_gettimeofday(struct timeval *p);