]> git.netwichtig.de Git - user/henk/code/inspircd.git/blob - include/servers.h
Added server classes for linking
[user/henk/code/inspircd.git] / include / servers.h
1 /*
2
3 $Log$
4 Revision 1.1  2003/01/26 20:15:00  brain
5 Added server classes for linking
6
7
8 */
9
10 #include "inspircd_config.h" 
11 #include <string>
12  
13 #ifndef __SERVERS_H__ 
14 #define __SERVERS_H__ 
15  
16 #define LINK_ACTIVE     1
17 #define LINK_INACTIVE   0
18
19 typedef vector<serverrec*> server_list;
20
21 class serverrec
22 {
23  private:
24         server_list leaf; // list of child servers (leaves)
25  public:
26         char name[MAXBUF];      // server name
27         int pingtime;           // last ping response (ms)
28         int linktype;           // link type, LINK_ACTIVE or LINK_INACTIVE
29         time_t lastping;        // time the link was last pinged
30         long usercount_i;       // invisible users on server
31         long usercount;         // non-invisible users on server
32         long opercount;         // opers on server
33         time_t connected_at;    // time server was connected into the network
34         time_t hops_away;       // number of hops away (for quick access)
35         long version;           // ircd version
36         bool jupiter;           // is a JUPE server (faked to enforce a server ban)
37
38         serverrec();
39         serverrec(char* n, int link_t,  long ver, bool jupe);
40         ~serverrec()
41         void AddLeaf(serverrec *child);
42         void DelLeaf(char* n);
43 };
44
45
46 #endif
47