#ifndef WH_PROTO_H_c8adc971_ #define WH_PROTO_H_c8adc971_ typedef struct protoops PROTOOPS; #include "client.h" struct protoops { const char *name; void (*init)(SERVER *); void (*done)(SERVER *); const char *(*canuse)(SERVER *); void (*connected)(SERVER *); void (*disconnected)(SERVER *); void (*input)(SERVER *, void *, int); void (*send)(SERVER *, const char *, int, const char *, int, unsigned int); #define SENDF_ACTION 0x00000001 int (*channeldest)(SERVER *, const char *, int); int (*okchan)(SERVER *, const char *, int); void (*sendjoin)(SERVER *, const char *, int); void (*sendpart)(SERVER *, const char *, int); int (*slashcmd)(SERVER *, const char *, int, int, int, int); int (*oknick)(SERVER *, const char *,int); void (*setnick)(SERVER *, const char *,int); void (*sendaway)(SERVER *, const char *, int); void (*sendping)(SERVER *, unsigned long long int); const char *(*defaultport)(void); } ; #define PROTOOPS_INIT(name) {\ #name, \ &op_##name##_init, \ &op_##name##_done, \ &op_##name##_canuse, \ &op_##name##_connected, \ &op_##name##_disconnected, \ &op_##name##_input, \ &op_##name##_send, \ &op_##name##_channeldest, \ &op_##name##_okchan, \ &op_##name##_sendjoin, \ &op_##name##_sendpart, \ &op_##name##_slashcmd, \ &op_##name##_oknick, \ &op_##name##_setnick, \ &op_##name##_sendaway, \ &op_##name##_sendping, \ &op_##name##_defaultport, \ } #endif