1 |
/* |
2 |
* proto.h |
3 |
* prototypes for every function used outside its own module |
4 |
* |
5 |
* (i guess i'm not very modular, cuz there are a LOT of these.) |
6 |
* with full prototyping, some have been moved to other .h files |
7 |
* because they use structures in those |
8 |
* (saves including those .h files EVERY time) - Beldin |
9 |
* |
10 |
* $Id: proto.h,v 1.67 2002/02/07 22:19:05 wcc Exp $ |
11 |
*/ |
12 |
/* |
13 |
* Copyright (C) 1997 Robey Pointer |
14 |
* Copyright (C) 1999, 2000, 2001, 2002 Eggheads Development Team |
15 |
* |
16 |
* This program is free software; you can redistribute it and/or |
17 |
* modify it under the terms of the GNU General Public License |
18 |
* as published by the Free Software Foundation; either version 2 |
19 |
* of the License, or (at your option) any later version. |
20 |
* |
21 |
* This program is distributed in the hope that it will be useful, |
22 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
23 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
24 |
* GNU General Public License for more details. |
25 |
* |
26 |
* You should have received a copy of the GNU General Public License |
27 |
* along with this program; if not, write to the Free Software |
28 |
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
29 |
*/ |
30 |
|
31 |
#ifndef _EGG_PROTO_H |
32 |
#define _EGG_PROTO_H |
33 |
|
34 |
#include "lush.h" |
35 |
|
36 |
#include "irccmp.h" |
37 |
#include "match.h" |
38 |
|
39 |
#ifdef HAVE_DPRINTF |
40 |
#define dprintf dprintf_eggdrop |
41 |
#endif |
42 |
|
43 |
struct chanset_t; /* keeps the compiler warnings down :) */ |
44 |
struct userrec; |
45 |
struct maskrec; |
46 |
struct igrec; |
47 |
struct flag_record; |
48 |
struct list_type; |
49 |
struct tand_t_struct; |
50 |
|
51 |
#ifndef MAKING_MODS |
52 |
extern void (*encrypt_pass) (char *, char *); |
53 |
extern char *(*encrypt_string) (char *, char *); |
54 |
extern char *(*decrypt_string) (char *, char *); |
55 |
extern int (*match_noterej) (struct userrec *, char *); |
56 |
extern int (*storenote)(char *from, char *to, char *msg, int idx, char *who, int bufsize); |
57 |
#endif |
58 |
|
59 |
/* botcmd.c */ |
60 |
void bot_share(int, char *); |
61 |
|
62 |
/* botnet.c */ |
63 |
void answer_local_whom(int, int); |
64 |
char *lastbot(char *); |
65 |
int nextbot(char *); |
66 |
int in_chain(char *); |
67 |
void tell_bots(int); |
68 |
void tell_bottree(int, int); |
69 |
int botlink(char *, int, char *); |
70 |
int botunlink(int, char *, char *); |
71 |
void dump_links(int); |
72 |
void addbot(char *, char *, char *, char, int); |
73 |
void updatebot(int, char *, char, int); |
74 |
void rembot(char *); |
75 |
struct tand_t_struct *findbot(char *); |
76 |
void unvia(int, struct tand_t_struct *); |
77 |
void check_botnet_pings(); |
78 |
int partysock(char *, char *); |
79 |
int addparty(char *, char *, int, char, int, char *, int *); |
80 |
void remparty(char *, int); |
81 |
void partystat(char *, int, int, int); |
82 |
int partynick(char *, int, char *); |
83 |
int partyidle(char *, char *); |
84 |
void partysetidle(char *, int, int); |
85 |
void partyaway(char *, int, char *); |
86 |
void zapfbot(int); |
87 |
void tandem_relay(int, char *, int); |
88 |
int getparty(char *, int); |
89 |
|
90 |
/* botmsg.c */ |
91 |
int add_note(char *, char *, char *, int, int); |
92 |
void tandout_but EGG_VARARGS(int, arg1); |
93 |
|
94 |
/* chanprog.c */ |
95 |
void tell_verbose_status(int); |
96 |
void tell_settings(int); |
97 |
int logmodes(char *); |
98 |
int isowner(char *); |
99 |
char *masktype(int); |
100 |
char *maskname(int); |
101 |
void reaffirm_owners(); |
102 |
void rehash(); |
103 |
void reload(); |
104 |
void chanprog(); |
105 |
void check_timers(); |
106 |
void check_utimers(); |
107 |
void set_chanlist(const char *host, struct userrec *rec); |
108 |
void clear_chanlist(void); |
109 |
void clear_chanlist_member(const char *nick); |
110 |
|
111 |
/* cmds.c */ |
112 |
int check_dcc_attrs(struct userrec *, int); |
113 |
int check_dcc_chanattrs(struct userrec *, char *, int, int); |
114 |
int stripmodes(char *); |
115 |
char *stripmasktype(int); |
116 |
|
117 |
/* dcc.c */ |
118 |
void failed_link(int); |
119 |
void dupwait_notify(char *); |
120 |
|
121 |
/* dccutil.c */ |
122 |
void dprintf EGG_VARARGS(int, arg1); |
123 |
void chatout EGG_VARARGS(char *, arg1); |
124 |
extern void (*shareout) (); |
125 |
extern void (*sharein) (int, char *); |
126 |
void chanout_but EGG_VARARGS(int, arg1); |
127 |
void dcc_chatter(int); |
128 |
void lostdcc(int); |
129 |
void removedcc(int); |
130 |
void makepass(char *); |
131 |
void tell_dcc(int); |
132 |
void not_away(int); |
133 |
void set_away(int, char *); |
134 |
void dcc_remove_lost(void); |
135 |
|
136 |
void flush_lines(int, struct chat_info *); |
137 |
struct dcc_t *find_idx(int); |
138 |
int new_dcc(struct dcc_table *, int); |
139 |
void del_dcc(int); |
140 |
char *add_cr(char *); |
141 |
void changeover_dcc(int, struct dcc_table *, int); |
142 |
|
143 |
/* gotdcc.c */ |
144 |
void gotdcc(char *, char *, struct userrec *, char *); |
145 |
void do_boot(int, char *, char *); |
146 |
int detect_dcc_flood(time_t *, struct chat_info *, int); |
147 |
|
148 |
/* main.c */ |
149 |
void fatal(const char *, int); |
150 |
void patch(const char *); |
151 |
void backup_userfile(void); |
152 |
|
153 |
/* net.c */ |
154 |
unsigned long iptolong(IP); |
155 |
IP getmyip(); |
156 |
struct in6_addr getmyip6(); |
157 |
void neterror(char *); |
158 |
void setsock(int, int); |
159 |
int allocsock(int, int); |
160 |
int getsock(int); |
161 |
void killsock(int); |
162 |
int answer(int, char *, char *, unsigned short *, int); |
163 |
inline int open_listen(int *, int); |
164 |
int open_address_listen(char *, int *); |
165 |
int open_telnet(char *, int); |
166 |
int open_telnet_dcc(int, char *, char *); |
167 |
int open_telnet_raw(int, char *, int); |
168 |
void tputs(int, char *, unsigned int); |
169 |
void dequeue_sockets(); |
170 |
int sockgets(char *, int *); |
171 |
void tell_netdebug(int); |
172 |
char *iptostr(IP); |
173 |
char *getlocaladdr(int); |
174 |
int sock_has_data(int, int); |
175 |
int sockoptions(int sock, int operation, int sock_options); |
176 |
int flush_inbuf(int idx); |
177 |
|
178 |
/* tcl.c */ |
179 |
void do_tcl(char *, char *); |
180 |
int readtclprog(char *fname); |
181 |
int findidx(int); |
182 |
int findanyidx(int); |
183 |
|
184 |
/* userent.c */ |
185 |
void list_type_kill(struct list_type *); |
186 |
int xtra_set(); |
187 |
|
188 |
/* userrec.c */ |
189 |
struct userrec *adduser(struct userrec *, char *, char *, char *, int); |
190 |
void addhost_by_handle(char *, char *); |
191 |
void clear_masks(struct maskrec *); |
192 |
void clear_userlist(struct userrec *); |
193 |
int u_pass_match(struct userrec *, char *); |
194 |
int delhost_by_handle(char *, char *); |
195 |
int ishost_for_handle(char *, char *); |
196 |
int count_users(struct userrec *); |
197 |
int deluser(char *); |
198 |
void freeuser(struct userrec *); |
199 |
int change_handle(struct userrec *, char *); |
200 |
void correct_handle(char *); |
201 |
int write_user(struct userrec *u, FILE * f, int shr); |
202 |
void write_userfile(int); |
203 |
struct userrec *check_dcclist_hand(char *); |
204 |
void touch_laston(struct userrec *, char *, time_t); |
205 |
void user_del_chan(char *); |
206 |
char *fixfrom(char *); |
207 |
|
208 |
/* users.c */ |
209 |
void addignore(char *, char *, char *, time_t); |
210 |
int delignore(char *); |
211 |
void tell_ignores(int, char *); |
212 |
int match_ignore(char *); |
213 |
void check_expired_ignores(); |
214 |
void autolink_cycle(char *); |
215 |
void tell_file_stats(int, char *); |
216 |
void tell_user_ident(int, char *, int); |
217 |
void tell_users_match(int, char *, int, int, int, char *); |
218 |
int readuserfile(char *, struct userrec **); |
219 |
|
220 |
#endif /* _EGG_PROTO_H */ |