From b9251a3c950e75f0d69d5799da42d06dd3e41a63 Mon Sep 17 00:00:00 2001 From: justanothercatgirl Date: Sat, 22 Jun 2024 01:00:16 +0300 Subject: Я ночью плачу и дрочу, я лишь с тобою быть хочу... MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- include/packet.h | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 include/packet.h (limited to 'include/packet.h') diff --git a/include/packet.h b/include/packet.h new file mode 100644 index 0000000..224469e --- /dev/null +++ b/include/packet.h @@ -0,0 +1,43 @@ +#ifndef KV_PACKET_H +#define KV_PACKET_H + +#define KV_PACKET_SIZE 512 + +#ifdef DEBUG +#define DEBUGF(fmt, ...) fprintf(stderr, "DEBUG: %s:%d:%s(): " fmt, __FILE__, __LINE__, __func__, ##__VA_ARGS__) +#else +#define DEBUGF(fmt, ...) \ + do { } while (0) +#endif + +enum system_operation { + do_nothing = 0, + join_channel = -1, + leave_channel = -2, + acknowledgement = -4, +}; +struct user { + unsigned int ip; + unsigned short port; + int id; +}; +struct channel_handle { + int sockfd; + struct user* users; +}; +struct kv_packet { + int id; + unsigned char data[KV_PACKET_SIZE - sizeof(unsigned int)]; +}; +struct kv_system_packet { + int operation_id; + int user_id; + unsigned int checksum; + unsigned char sentinel[KV_PACKET_SIZE - 4 * sizeof(int) - sizeof(short)]; +}; + +unsigned int system_packet_checksum(struct kv_system_packet *packet); +int __user_cmp(const void* a, const void* b); + +#endif // KV_PACKET_H + -- cgit v1.2.3-70-g09d2