typedef struct SilcNotifyPayloadStruct *SilcNotifyPayload;
/* Type definition of notify type */
-typedef unsigned short SilcNotifyType;
+typedef uint16 SilcNotifyType;
/* SILC notify types. Server may send these notify types to client to
- notify of some action. Server also sends human readable notify message
- to the client which client may ignore. */
+ notify of some action. */
#define SILC_NOTIFY_TYPE_NONE 0 /* no specific type */
-#define SILC_NOTIFY_TYPE_INVITE 1 /* "invites you to channel" */
+#define SILC_NOTIFY_TYPE_INVITE 1 /* invites/invite list change */
#define SILC_NOTIFY_TYPE_JOIN 2 /* "has joined channel" */
#define SILC_NOTIFY_TYPE_LEAVE 3 /* "has left channel" */
#define SILC_NOTIFY_TYPE_SIGNOFF 4 /* "signoff" */
#define SILC_NOTIFY_TYPE_MOTD 9 /* message of the day */
#define SILC_NOTIFY_TYPE_CHANNEL_CHANGE 10 /* Channel's ID has changed */
#define SILC_NOTIFY_TYPE_SERVER_SIGNOFF 11 /* Server quitting SILC */
+#define SILC_NOTIFY_TYPE_KICKED 12 /* Kicked from channel */
+#define SILC_NOTIFY_TYPE_KILLED 13 /* Killed from the network */
+#define SILC_NOTIFY_TYPE_UMODE_CHANGE 14 /* user mode was changed */
+#define SILC_NOTIFY_TYPE_BAN 15 /* ban list change */
/* Prototypes */
SilcNotifyPayload silc_notify_payload_parse(SilcBuffer buffer);
-SilcBuffer silc_notify_payload_encode(SilcNotifyType type, unsigned int argc,
+SilcBuffer silc_notify_payload_encode(SilcNotifyType type, uint32 argc,
va_list ap);
+SilcBuffer silc_notify_payload_encode_args(SilcNotifyType type,
+ uint32 argc,
+ SilcBuffer args);
void silc_notify_payload_free(SilcNotifyPayload payload);
SilcNotifyType silc_notify_get_type(SilcNotifyPayload payload);
-unsigned int silc_notify_get_arg_num(SilcNotifyPayload payload);
+uint32 silc_notify_get_arg_num(SilcNotifyPayload payload);
SilcArgumentPayload silc_notify_get_args(SilcNotifyPayload payload);
#endif