#ifndef SILCMODE_H
#define SILCMODE_H
-/* Forward declarations */
-typedef struct SilcSetModePayloadStruct *SilcSetModePayload;
-
-/* Mode types defined for Set Mode payload */
-#define SILC_MODE_TYPE_CHANNEL 0
-#define SILC_MODE_TYPE_UCHANNEL 1
-#define SILC_MODE_RESERVED 2 /* RESERVED */
-#define SILC_MODE_PRIVATE 32768 /* RESERVED */
-
/* Channel modes */
#define SILC_CHANNEL_MODE_NONE 0x0000
#define SILC_CHANNEL_MODE_PRIVATE 0x0001 /* private channel */
#define SILC_CHANNEL_MODE_PASSPHRASE 0x0040 /* passphrase set */
#define SILC_CHANNEL_MODE_BAN 0x0080 /* ban list set */
#define SILC_CHANNEL_MODE_INVITE_LIST 0x0100 /* invite list set */
-#define SILC_CHANNEL_MODE_CIPHER 0x0200 /* sets cipher of channel */
+#define SILC_CHANNEL_MODE_CIPHER 0x0200 /* sets cipher of the channel */
+#define SILC_CHANNEL_MODE_HMAC 0x0400 /* sets hmac of the channel */
/* User modes on channel */
#define SILC_CHANNEL_UMODE_NONE 0x0000 /* Normal user */
#define SILC_CHANNEL_UMODE_CHANFO 0x0001 /* channel founder */
#define SILC_CHANNEL_UMODE_CHANOP 0x0002 /* channel operator */
-/* Prototypes */
-SilcSetModePayload silc_set_mode_payload_parse(SilcBuffer buffer);
-SilcBuffer silc_set_mode_payload_encode(unsigned short mode_type,
- unsigned int mode_mask,
- unsigned int argc,
- va_list ap);
-void silc_set_mode_payload_free(SilcSetModePayload payload);
-unsigned short silc_set_mode_get_type(SilcSetModePayload payload);
-unsigned int silc_set_mode_get_mode(SilcSetModePayload payload);
-unsigned int silc_set_mode_get_arg_num(SilcSetModePayload payload);
-SilcArgumentPayload silc_set_mode_get_args(SilcSetModePayload payload);
+/* SILC modes */
+#define SILC_UMODE_NONE 0x0000 /* Normal SILC user */
+#define SILC_UMODE_SERVER_OPERATOR 0x0001 /* Server operator */
+#define SILC_UMODE_ROUTER_OPERATOR 0x0002 /* Router (SILC) operator */
#endif