tried to reorder the program structure and build process
[NeonServV5.git] / src / WHOHandler.h
diff --git a/src/WHOHandler.h b/src/WHOHandler.h
new file mode 100644 (file)
index 0000000..31485f8
--- /dev/null
@@ -0,0 +1,23 @@
+#ifndef _WHOHandler_h
+#define _WHOHandler_h
+
+#include "main.h"
+
+struct ClientSocket;
+struct ChanNode;
+struct UserNode;
+
+#define USERLIST_CALLBACK(NAME) void NAME(UNUSED_ARG(struct ClientSocket *client), UNUSED_ARG(struct ChanNode *chan), UNUSED_ARG(void *data))
+typedef USERLIST_CALLBACK(userlist_callback_t);
+
+#define USERAUTH_CALLBACK(NAME) void NAME(UNUSED_ARG(struct ClientSocket *client), UNUSED_ARG(char *user_nick), UNUSED_ARG(struct UserNode *user), UNUSED_ARG(void *data))
+typedef USERAUTH_CALLBACK(userauth_callback_t);
+
+void recv_whohandler_354(struct ClientSocket *client, char **argv, unsigned int argc);
+void recv_whohandler_315(struct ClientSocket *client, char **argv, unsigned int argc);
+void get_userlist(struct ChanNode *chan, userlist_callback_t callback, void *data);
+void get_userlist_with_invisible(struct ChanNode *chan, userlist_callback_t callback, void *data);
+void get_userauth(struct UserNode *user, userauth_callback_t callback, void *data);
+void free_whoqueue();
+
+#endif
\ No newline at end of file