X-Git-Url: https://jfr.im/git/irc/evilnet/x3.git/blobdiff_plain/37ef8ee393f2316d81465f1632e0787ecfac1148..35305a49c0973c0e29e4a607c2b507a2d8face43:/src/hash.h diff --git a/src/hash.h b/src/hash.h index c4e33fe..1cceb21 100644 --- a/src/hash.h +++ b/src/hash.h @@ -101,7 +101,7 @@ #define NICKLEN 30 #define USERLEN 10 #define HOSTLEN 63 -#define SOCKIPLEN 15 +#define SOCKIPLEN 45 #define ACCOUNTLEN 15 #define REALLEN 50 #define TOPICLEN 250 @@ -191,7 +191,7 @@ struct exemptNode { struct modeNode { struct chanNode *channel; struct userNode *user; - unsigned short modes; + long modes; short oplevel; time_t idle_since; }; @@ -219,6 +219,42 @@ struct server { struct serverList children; }; +struct waitingConnection { + char *server; + char *target; +}; + +struct routingPlan { + dict_t servers; +}; + +struct routingPlanServer { + char *uplink; + char *secondaryuplink; + unsigned int port; + int karma; + int offline; +}; + +/* Ported from X2 */ +struct routeList { + char* server; /* Name of the server */ + unsigned int port; /* connection port */ + char *uplink; /* Server its linked to (towards us) */ + char *secondaryuplink; + int outsideness; /* 0 means leaf, 1 second layer, etc. my uplink is highest */ + struct routeList *next; +}; + +/* Ported from X2 */ +struct route { + int count; /* how many servers we have */ + int maxdepth; /* biggest outsideness value */ + int centered; /* set to TRUE when changerouteUplinks is run */ + struct routeList *servers; +}; + + extern struct server *self; extern dict_t channels; extern dict_t clients;