shithub: ircd

ref: 4161df5fd7487feaf4758b93a8d8371bec433471
dir: /dat.h/

View raw version
typedef struct Prefix Prefix;
typedef struct Request Request;
typedef struct Command Command;
typedef struct Reply Reply;
typedef struct User User;
typedef struct Replybuffer Replybuffer;
typedef struct Userlist Userlist;

#pragma varargck type "R" Request

struct Prefix
{
	char *name;
	char *user;
	char *host;
};

struct Request
{
	Command *cmd;
	Prefix prefix;
	char *args[15];
};

struct Command
{
	char *name;
	void (*func)(User*,Request*);
};

struct Reply
{
	int nr;
	char *msg;
};

struct Replybuffer
{
	QLock;
	void *reply;
};

struct User
{
	char *name;
	Replybuffer replies;
	
	User *prev;
	User *next;
};

struct Userlist
{
	User *first;
};

extern int debug;
extern char* sysnameb;