Moved silc_client_ch[u]mode[_char] to client library from silc/.
[silc.git] / lib / silcclient / client.h
index a9dce2aa13e0f5766bf426af9847024180197630..fdff610eee9e0ae4bcafa828d3540eeeafe0e81a 100644 (file)
@@ -118,7 +118,7 @@ struct SilcClientConnectionObject {
   SilcClientAway *away;
 
   /* Pointer back to the SilcClient. This object is passed to the application
-     and the actual client object is accesible thourh this pointer. */
+     and the actual client object is accesible through this pointer. */
   SilcClient client;
 
   /* User data context. Library does not touch this. */
@@ -132,8 +132,9 @@ struct SilcClientObject {
    * of this structure.
    */
 
-  /* Users's username and realname. */
+  /* Users's username, hostname and realname. */
   char *username;
+  char *hostname;
   char *realname;
 
   /* Private and public key of the user. */
@@ -223,6 +224,8 @@ int silc_client_init(SilcClient client);
 void silc_client_stop(SilcClient client);
 void silc_client_run(SilcClient client);
 SilcClientConnection silc_client_add_connection(SilcClient client,
+                                               char *hostname,
+                                               int port,
                                                void *context);
 int silc_client_connect_to_server(SilcClient client, int port,
                                  char *host, void *context);
@@ -261,15 +264,14 @@ void silc_client_error_by_server(SilcClient client,
                                 SilcBuffer message);
 void silc_client_notify_by_server(SilcClient client,
                                  SilcSocketConnection sock,
-                                 SilcBuffer message);
+                                 SilcPacketContext *packet);
 void silc_client_receive_new_id(SilcClient client,
                                SilcSocketConnection sock,
-                               unsigned char *id_string);
+                               SilcIDPayload idp);
 void silc_client_new_channel_id(SilcClient client,
                                SilcSocketConnection sock,
                                char *channel_name,
-                               unsigned int mode,
-                               unsigned char *id_string);
+                               unsigned int mode, SilcIDPayload idp);
 void silc_client_receive_channel_key(SilcClient client,
                                     SilcSocketConnection sock,
                                     SilcBuffer packet);
@@ -279,4 +281,15 @@ void silc_client_channel_message(SilcClient client,
 void silc_client_private_message(SilcClient client, 
                                 SilcSocketConnection sock, 
                                 SilcPacketContext *packet);
+void silc_client_remove_from_channels(SilcClient client,
+                                     SilcClientConnection conn,
+                                     SilcClientEntry client_entry);
+void silc_client_replace_from_channels(SilcClient client, 
+                                      SilcClientConnection conn,
+                                      SilcClientEntry old,
+                                      SilcClientEntry new);
+char *silc_client_chmode(unsigned int mode);
+char *silc_client_chumode(unsigned int mode);
+char *silc_client_chumode_char(unsigned int mode);
+
 #endif