X-Git-Url: http://git.silcnet.org/gitweb/?a=blobdiff_plain;f=lib%2Fsilccore%2Fsilcchannel.h;h=792c31c83627f2ecc7b02be8b92f40c9ed86f4dc;hb=a818c5b5411bbc4436d1c5f011236985c96bb787;hp=349ae3481fd7d2a89dc10fa443213c8f960ffc1f;hpb=af7267cc1671b856d4de21228f1a890a9d131e8f;p=silc.git diff --git a/lib/silccore/silcchannel.h b/lib/silccore/silcchannel.h index 349ae348..792c31c8 100644 --- a/lib/silccore/silcchannel.h +++ b/lib/silccore/silcchannel.h @@ -1,24 +1,24 @@ -/****h* silccore/silcchannel.h - * - * NAME - * - * silcchannel.h - * - * COPYRIGHT - * - * Author: Pekka Riikonen - * - * Copyright (C) 1997 - 2001 Pekka Riikonen - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. +/* + + silcchannel.h + + Author: Pekka Riikonen + + Copyright (C) 1997 - 2001 Pekka Riikonen + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + +*/ + +/****h* silccore/SilcChannelAPI * * DESCRIPTION * @@ -91,7 +91,7 @@ typedef struct SilcChannelKeyPayloadStruct *SilcChannelKeyPayload; * * NAME * - * typedef uint16 SilcMessageFlags; + * typedef SilcUInt16 SilcMessageFlags; * * DESCRIPTION * @@ -101,7 +101,7 @@ typedef struct SilcChannelKeyPayloadStruct *SilcChannelKeyPayload; * * SOURCE */ -typedef uint16 SilcMessageFlags; +typedef SilcUInt16 SilcMessageFlags; /* The message flags (shared by both channel and private messages) */ #define SILC_MESSAGE_FLAG_NONE 0x0000 @@ -110,7 +110,8 @@ typedef uint16 SilcMessageFlags; #define SILC_MESSAGE_FLAG_ACTION 0x0004 #define SILC_MESSAGE_FLAG_NOTICE 0x0008 #define SILC_MESSAGE_FLAG_REQUEST 0x0010 -#define SILC_MESSAGE_FLAG_RESERVED 0x0020 /* to 0x0200 */ +#define SILC_MESSAGE_FLAG_SIGNED 0x0020 +#define SILC_MESSAGE_FLAG_RESERVED 0x0040 /* to 0x0200 */ #define SILC_MESSAGE_FLAG_PRIVATE 0x0400 /* to 0x8000 */ /***/ @@ -120,7 +121,9 @@ typedef uint16 SilcMessageFlags; * * SYNOPSIS * - * SilcChannelPayload silc_channel_payload_parse(SilcBuffer buffer); + * SilcChannelPayload + * silc_channel_payload_parse(const unsigned char *payload, + * SilcUInt32 payload_len); * * DESCRIPTION * @@ -128,13 +131,16 @@ typedef uint16 SilcMessageFlags; * `buffer' is the raw payload buffer. * ***/ -SilcChannelPayload silc_channel_payload_parse(SilcBuffer buffer); +SilcChannelPayload silc_channel_payload_parse(const unsigned char *payload, + SilcUInt32 payload_len); /****f* silccore/SilcChannelAPI/silc_channel_payload_parse_list * * SYNOPSIS * - * SilcDList silc_channel_payload_parse_list(SilcBuffer buffer); + * SilcDList + * silc_channel_payload_parse_list(const unsigned char *payload, + * SilcUInt32 payload_len); * * DESCRIPTION * @@ -143,28 +149,29 @@ SilcChannelPayload silc_channel_payload_parse(SilcBuffer buffer); * now includes multiple Channel Payloads one after the other. * ***/ -SilcDList silc_channel_payload_parse_list(SilcBuffer buffer); +SilcDList silc_channel_payload_parse_list(const unsigned char *payload, + SilcUInt32 payload_len); /****f* silccore/SilcChannelAPI/silc_channel_payload_encode * * SYNOPSIS * - * SilcBuffer silc_channel_payload_encode(unsigned char *channel_name, - * uint16 channel_name_len, - * unsigned char *channel_id, - * uint32 channel_id_len, - * uint32 mode); + * SilcBuffer silc_channel_payload_encode(const unsigned char *channel_name, + * SilcUInt16 channel_name_len, + * const unsigned char *channel_id, + * SilcUInt32 channel_id_len, + * SilcUInt32 mode); * * DESCRIPTION * * Encode new channel payload and returns it as buffer. * ***/ -SilcBuffer silc_channel_payload_encode(unsigned char *channel_name, - uint16 channel_name_len, - unsigned char *channel_id, - uint32 channel_id_len, - uint32 mode); +SilcBuffer silc_channel_payload_encode(const unsigned char *channel_name, + SilcUInt16 channel_name_len, + const unsigned char *channel_id, + SilcUInt32 channel_id_len, + SilcUInt32 mode); /****f* silccore/SilcChannelAPI/silc_channel_payload_free * @@ -197,7 +204,7 @@ void silc_channel_payload_list_free(SilcDList list); * SYNOPSIS * * unsigned char *silc_channel_get_name(SilcChannelPayload payload, - * uint32 *channel_name_len); + * SilcUInt32 *channel_name_len); * * DESCRIPTION * @@ -205,14 +212,14 @@ void silc_channel_payload_list_free(SilcDList list); * ***/ unsigned char *silc_channel_get_name(SilcChannelPayload payload, - uint32 *channel_name_len); + SilcUInt32 *channel_name_len); /****f* silccore/SilcChannelAPI/silc_channel_get_id * * SYNOPSIS * * unsigned char *silc_channel_get_id(SilcChannelPayload payload, - * uint32 *channel_id_len); + * SilcUInt32 *channel_id_len); * * DESCRIPTION * @@ -220,7 +227,7 @@ unsigned char *silc_channel_get_name(SilcChannelPayload payload, * ***/ unsigned char *silc_channel_get_id(SilcChannelPayload payload, - uint32 *channel_id_len); + SilcUInt32 *channel_id_len); /****f* silccore/SilcChannelAPI/silc_channel_get_id_parse * @@ -241,7 +248,7 @@ SilcChannelID *silc_channel_get_id_parse(SilcChannelPayload payload); * * SYNOPSIS * - * uint32 silc_channel_get_mode(SilcChannelPayload payload); + * SilcUInt32 silc_channel_get_mode(SilcChannelPayload payload); * * DESCRIPTION * @@ -250,16 +257,16 @@ SilcChannelID *silc_channel_get_id_parse(SilcChannelPayload payload); * dictates what the usage of the mode is in different circumstances. * ***/ -uint32 silc_channel_get_mode(SilcChannelPayload payload); +SilcUInt32 silc_channel_get_mode(SilcChannelPayload payload); /****f* silccore/SilcChannelAPI/silc_channel_message_payload_decrypt * * SYNOPSIS * - * int silc_channel_message_payload_decrypt(unsigned char *data, - * size_t data_len, - * SilcCipher cipher, - * SilcHmac hmac); + * bool silc_channel_message_payload_decrypt(unsigned char *data, + * size_t data_len, + * SilcCipher cipher, + * SilcHmac hmac); * * DESCRIPTION * @@ -278,17 +285,18 @@ uint32 silc_channel_get_mode(SilcChannelPayload payload); * not verified. * ***/ -int silc_channel_message_payload_decrypt(unsigned char *data, - size_t data_len, - SilcCipher cipher, - SilcHmac hmac); +bool silc_channel_message_payload_decrypt(unsigned char *data, + size_t data_len, + SilcCipher cipher, + SilcHmac hmac); /****f* silccore/SilcChannelAPI/silc_channel_message_payload_parse * * SYNOPSIS * * SilcChannelMessagePayload - * silc_channel_message_payload_parse(SilcBuffer buffer, + * silc_channel_message_payload_parse(const unsigned char *payload, + * SilcUInt32 payload_len, * SilcCipher cipher, * SilcHmac hmac); * @@ -303,7 +311,8 @@ int silc_channel_message_payload_decrypt(unsigned char *data, * ***/ SilcChannelMessagePayload -silc_channel_message_payload_parse(SilcBuffer buffer, +silc_channel_message_payload_parse(unsigned char *payload, + SilcUInt32 payload_len, SilcCipher cipher, SilcHmac hmac); @@ -311,10 +320,10 @@ silc_channel_message_payload_parse(SilcBuffer buffer, * * SYNOPSIS * - * SilcBuffer silc_channel_message_payload_encode(uint16 flags, - * uint16 data_len, - * unsigned char *data, - * uint16 iv_len, + * SilcBuffer silc_channel_message_payload_encode(SilcUInt16 flags, + * SilcUInt16 data_len, + * const unsigned char *data, + * SilcUInt16 iv_len, * unsigned char *iv, * SilcCipher cipher, * SilcHmac hmac); @@ -330,10 +339,10 @@ silc_channel_message_payload_parse(SilcBuffer buffer, * payload. * ***/ -SilcBuffer silc_channel_message_payload_encode(uint16 flags, - uint16 data_len, - unsigned char *data, - uint16 iv_len, +SilcBuffer silc_channel_message_payload_encode(SilcUInt16 flags, + SilcUInt16 data_len, + const unsigned char *data, + SilcUInt16 iv_len, unsigned char *iv, SilcCipher cipher, SilcHmac hmac); @@ -373,7 +382,7 @@ silc_channel_message_get_flags(SilcChannelMessagePayload payload); * * unsigned char * * silc_channel_message_get_data(SilcChannelMessagePayload payload, - * uint32 *data_len); + * SilcUInt32 *data_len); * * DESCRIPTION * @@ -382,7 +391,7 @@ silc_channel_message_get_flags(SilcChannelMessagePayload payload); * ***/ unsigned char *silc_channel_message_get_data(SilcChannelMessagePayload payload, - uint32 *data_len); + SilcUInt32 *data_len); /****f* silccore/SilcChannelAPI/silc_channel_message_get_mac * @@ -418,7 +427,9 @@ unsigned char *silc_channel_message_get_iv(SilcChannelMessagePayload payload); * * SYNOPSIS * - * SilcChannelKeyPayload silc_channel_key_payload_parse(SilcBuffer buffer); + * SilcChannelKeyPayload + * silc_channel_key_payload_parse(const unsigned char *payload, + * uin32 payload_len); * * DESCRIPTION * @@ -426,18 +437,20 @@ unsigned char *silc_channel_message_get_iv(SilcChannelMessagePayload payload); * structure. * ***/ -SilcChannelKeyPayload silc_channel_key_payload_parse(SilcBuffer buffer); +SilcChannelKeyPayload +silc_channel_key_payload_parse(const unsigned char *payload, + SilcUInt32 payload_len); /****f* silccore/SilcChannelAPI/silc_channel_key_payload_encode * * SYNOPSIS * - * SilcBuffer silc_channel_key_payload_encode(uint16 id_len, - * unsigned char *id, - * uint16 cipher_len, - * unsigned char *cipher, - * uint16 key_len, - * unsigned char *key); + * SilcBuffer silc_channel_key_payload_encode(SilcUInt16 id_len, + * const unsigned char *id, + * SilcUInt16 cipher_len, + * const unsigned char *cipher, + * SilcUInt16 key_len, + * const unsigned char *key); * * DESCRIPTION * @@ -445,12 +458,12 @@ SilcChannelKeyPayload silc_channel_key_payload_parse(SilcBuffer buffer); * to add channel key payload into a packet. * ***/ -SilcBuffer silc_channel_key_payload_encode(uint16 id_len, - unsigned char *id, - uint16 cipher_len, - unsigned char *cipher, - uint16 key_len, - unsigned char *key); +SilcBuffer silc_channel_key_payload_encode(SilcUInt16 id_len, + const unsigned char *id, + SilcUInt16 cipher_len, + const unsigned char *cipher, + SilcUInt16 key_len, + const unsigned char *key); /****f* silccore/SilcChannelAPI/silc_channel_key_payload_free * @@ -470,7 +483,7 @@ void silc_channel_key_payload_free(SilcChannelKeyPayload payload); * SYNOPSIS * * unsigned char *silc_channel_key_get_id(SilcChannelKeyPayload payload, - * uint32 *id_len); + * SilcUInt32 *id_len); * * DESCRIPTION * @@ -479,14 +492,14 @@ void silc_channel_key_payload_free(SilcChannelKeyPayload payload); * ***/ unsigned char *silc_channel_key_get_id(SilcChannelKeyPayload payload, - uint32 *id_len); + SilcUInt32 *id_len); /****f* silccore/SilcChannelAPI/silc_channel_key_get_cipher * * SYNOPSIS * * unsigned char *silc_channel_key_get_cipher(SilcChannelKeyPayload payload, - * uint32 *cipher_len); + * SilcUInt32 *cipher_len); * * DESCRIPTION * @@ -495,14 +508,14 @@ unsigned char *silc_channel_key_get_id(SilcChannelKeyPayload payload, * ***/ unsigned char *silc_channel_key_get_cipher(SilcChannelKeyPayload payload, - uint32 *cipher_len); + SilcUInt32 *cipher_len); /****f* silccore/SilcChannelAPI/silc_channel_key_get_key * * SYNOPSIS * * unsigned char *silc_channel_key_get_key(SilcChannelKeyPayload payload, - * uint32 *key_len); + * SilcUInt32 *key_len); * * DESCRIPTION * @@ -511,6 +524,6 @@ unsigned char *silc_channel_key_get_cipher(SilcChannelKeyPayload payload, * ***/ unsigned char *silc_channel_key_get_key(SilcChannelKeyPayload payload, - uint32 *key_len); + SilcUInt32 *key_len); #endif