updates. New data types.
[silc.git] / lib / silcclient / client_prvmsg.c
index 698f51cb36def47984e112bdfa66cae5f65626e7..0db6fd3142a0a1028fa7285bc39142444fc53957 100644 (file)
@@ -35,8 +35,9 @@
 void silc_client_send_private_message(SilcClient client,
                                      SilcClientConnection conn,
                                      SilcClientEntry client_entry,
+                                     SilcMessageFlags flags,
                                      unsigned char *data, 
-                                     unsigned int data_len, 
+                                     uint32 data_len, 
                                      int force_send)
 {
   SilcSocketConnection sock = conn->sock;
@@ -48,7 +49,7 @@ void silc_client_send_private_message(SilcClient client,
   SILC_LOG_DEBUG(("Sending private message"));
 
   /* Encode private message payload */
-  buffer = silc_private_message_payload_encode(0, strlen(conn->nickname),
+  buffer = silc_private_message_payload_encode(flags, strlen(conn->nickname),
                                               conn->nickname,
                                               data_len, data,
                                               client_entry->send_key);
@@ -121,7 +122,7 @@ void silc_client_send_private_message(SilcClient client,
 static void silc_client_private_message_cb(SilcClient client,
                                           SilcClientConnection conn,
                                           SilcClientEntry *clients,
-                                          unsigned int clients_count,
+                                          uint32 clients_count,
                                           void *context)
 {
   SilcPacketContext *packet = (SilcPacketContext *)context;
@@ -172,7 +173,8 @@ void silc_client_private_message(SilcClient client,
   }
 
   /* Pass the private message to application */
-  client->ops->private_message(client, conn, remote_client, 
+  client->ops->private_message(client, conn, remote_client,
+                              silc_private_message_get_flags(payload),
                               silc_private_message_get_message(payload, 
                                                                NULL));
 
@@ -185,6 +187,7 @@ void silc_client_private_message(SilcClient client,
 
     /* Send the away message */
     silc_client_send_private_message(client, conn, remote_client,
+                                    SILC_MESSAGE_FLAG_AUTOREPLY,
                                     conn->away->away,
                                     strlen(conn->away->away), TRUE);
   }
@@ -201,12 +204,12 @@ void silc_client_private_message(SilcClient client,
 static void silc_client_private_message_key_cb(SilcClient client,
                                               SilcClientConnection conn,
                                               SilcClientEntry *clients,
-                                              unsigned int clients_count,
+                                              uint32 clients_count,
                                               void *context)
 {
   SilcPacketContext *packet = (SilcPacketContext *)context;
   unsigned char *key;
-  unsigned short key_len;
+  uint16 key_len;
   unsigned char *cipher;
   int ret;
 
@@ -287,11 +290,11 @@ int silc_client_add_private_message_key(SilcClient client,
                                        SilcClientEntry client_entry,
                                        char *cipher,
                                        unsigned char *key,
-                                       unsigned int key_len,
+                                       uint32 key_len,
                                        int generate_key)
 {
   unsigned char private_key[32];
-  unsigned int len;
+  uint32 len;
   int i;
   SilcSKEKeyMaterial *keymat;
 
@@ -473,10 +476,10 @@ int silc_client_del_private_message_key(SilcClient client,
 SilcPrivateMessageKeys
 silc_client_list_private_message_keys(SilcClient client,
                                      SilcClientConnection conn,
-                                     unsigned int *key_count)
+                                     uint32 *key_count)
 {
   SilcPrivateMessageKeys keys;
-  unsigned int count = 0;
+  uint32 count = 0;
   SilcIDCacheEntry id_cache;
   SilcIDCacheList list;
   SilcClientEntry entry;
@@ -518,7 +521,7 @@ silc_client_list_private_message_keys(SilcClient client,
    silc_client_list_private_message_keys. */
 
 void silc_client_free_private_message_keys(SilcPrivateMessageKeys keys,
-                                          unsigned int key_count)
+                                          uint32 key_count)
 {
   silc_free(keys);
 }