#ifndef COMMAND_H #define COMMAND_H #include "server.h" typedef uint_fast8_t command_flags_t; enum command_flags { COMMAND_FLAG_EVENT_CONNECT = (1<<0), COMMAND_FLAG_EVENT_DISCONNECT = (1<<1), }; struct command { unsigned char *command; size_t command_len; command_flags_t flags; STAILQ_ENTRY(command) stailq_entry; }; struct command * command_new(unsigned char *command, size_t command_len, command_flags_t flags); void command_free(struct command *command); void command_parse(struct connection *c, struct server_worker_context *ctx, size_t thread_id, struct command *command); #endif /* COMMAND_H */