-/* Decrypts the channel message payload. */
-
-int silc_channel_message_payload_decrypt(unsigned char *data,
- size_t data_len,
- SilcCipher cipher,
- SilcHmac hmac)
+/* Decrypts the channel message payload. First push the IV out of the
+ packet. The IV is used in the decryption process. Then decrypt the
+ message. After decyprtion, take the MAC from the decrypted packet,
+ compute MAC and compare the MACs. If they match, the decryption was
+ successful and we have the channel message ready to be displayed. */
+
+bool silc_channel_message_payload_decrypt(unsigned char *data,
+ size_t data_len,
+ SilcCipher cipher,
+ SilcHmac hmac)