00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef _EGG_MOD_SERVER_SERVER_H_
00023 #define _EGG_MOD_SERVER_SERVER_H_
00024
00025 #include <eggdrop/eggdrop.h>
00026
00027 #include "egg_server_internal.h"
00028
00029 #define match_my_nick(test) (!((current_server.strcmp)(current_server.nick, test)))
00030
00031
00032 typedef struct {
00033 int trigger_on_ignore;
00034 int keepnick;
00035 int connect_timeout;
00036 int cycle_delay;
00037 int default_port;
00038 int ping_timeout;
00039 int dcc_timeout;
00040 char *user;
00041 char *realname;
00042 char *chanfile;
00043 int max_line_len;
00044
00045
00046 char *chaninfo_items;
00047
00048
00049 char *fake005;
00050
00051 int raw_log;
00052
00053 int ip_lookup;
00054 } server_config_t;
00055
00056
00057 typedef struct {
00058
00059 int idx;
00060 char *server_host;
00061 char *server_self;
00062 int port;
00063 int connected;
00064
00065
00066 egg_timeval_t last_ping_sent, last_ping_time;
00067 int ping_id;
00068 int time_to_ping;
00069 int npings;
00070
00071
00072 int registered;
00073 int got005;
00074 char *nick, *user, *host, *real_name;
00075 char *pass;
00076
00077
00078 struct {
00079 char *name;
00080 char *value;
00081 } *support;
00082 int nsupport;
00083 char *chantypes;
00084 int (*strcmp)(const char *s1, const char *s2);
00085 char *type1modes, *type2modes, *type3modes, *type4modes;
00086 char *modeprefix, *whoprefix;
00087
00088
00089 char *myip;
00090 unsigned int mylongip;
00091 } current_server_t;
00092
00093 #include "egg_server_api.h"
00094 #include "channels.h"
00095 #include "input.h"
00096 #include "output.h"
00097 #include "dcc.h"
00098 #include "binds.h"
00099 #include "servsock.h"
00100 #include "nicklist.h"
00101 #include "serverlist.h"
00102
00103 extern server_config_t server_config;
00104 extern current_server_t current_server;
00105 extern event_owner_t server_owner, server_dcclistener_owner;
00106
00107 extern int server_support(const char *name, const char **value);
00108 extern void *server_get_api();
00109
00110 #endif