1 /************************************************************************
2  *   IRC - Internet Relay Chat, ircd/s_serv_ext.h
3  *   Copyright (C) 1997 Alain Nissen
4  *
5  *   This program is free software; you can redistribute it and/or modify
6  *   it under the terms of the GNU General Public License as published by
7  *   the Free Software Foundation; either version 1, or (at your option)
8  *   any later version.
9  *
10  *   This program is distributed in the hope that it will be useful,
11  *   but WITHOUT ANY WARRANTY; without even the implied warranty of
12  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  *   GNU General Public License for more details.
14  *
15  *   You should have received a copy of the GNU General Public License
16  *   along with this program; if not, write to the Free Software
17  *   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18  */
19 
20 /*  This file contains external definitions for global variables and functions
21     defined in ircd/s_serv.c.
22  */
23 
24 /*  External definitions for global functions.
25  */
26 #ifndef S_SERV_C
27 #define EXTERN extern
28 #else /* S_SERV_C */
29 #define EXTERN
30 #endif /* S_SERV_C */
31 EXTERN int m_version (aClient *cptr, aClient *sptr, int parc,
32 			  char *parv[]);
33 EXTERN int m_squit (aClient *cptr, aClient *sptr, int parc, char *parv[]);
34 EXTERN int check_version (aClient *cptr);
35 EXTERN int m_smask (aClient *cptr, aClient *sptr, int parc, char *parv[]);
36 EXTERN int m_server (aClient *cptr, aClient *sptr, int parc,
37 			 char *parv[]);
38 EXTERN int m_server_estab (aClient *cptr, char *sid, char *versionbuf);
39 EXTERN int m_info (aClient *cptr, aClient *sptr, int parc, char *parv[]);
40 EXTERN int m_links (aClient *cptr, aClient *sptr, int parc, char *parv[]);
41 EXTERN int m_summon (aClient *cptr, aClient *sptr, int parc,
42 			 char *parv[]);
43 EXTERN int m_stats (aClient *cptr, aClient *sptr, int parc, char *parv[]);
44 EXTERN int m_users (aClient *cptr, aClient *sptr, int parc, char *parv[]);
45 EXTERN int m_error (aClient *cptr, aClient *sptr, int parc, char *parv[]);
46 EXTERN int m_help (aClient *cptr, aClient *sptr, int parc, char *parv[]);
47 EXTERN int m_lusers (aClient *cptr, aClient *sptr, int parc,
48 			 char *parv[]);
49 EXTERN int m_connect (aClient *cptr, aClient *sptr, int parc,
50 			  char *parv[]);
51 EXTERN int m_wallops (aClient *cptr, aClient *sptr, int parc,
52 			  char *parv[]);
53 EXTERN int m_time (aClient *cptr, aClient *sptr, int parc, char *parv[]);
54 EXTERN int m_admin (aClient *cptr, aClient *sptr, int parc, char *parv[]);
55 EXTERN int m_trace (aClient *cptr, aClient *sptr, int parc, char *parv[]);
56 EXTERN int m_etrace (aClient *cptr, aClient *sptr, int parc, char *parv[]);
57 #ifdef ENABLE_SIDTRACE
58 EXTERN int m_sidtrace (aClient *cptr, aClient *sptr, int parc, char *parv[]);
59 #endif
60 EXTERN int m_motd (aClient *cptr, aClient *sptr, int parc, char *parv[]);
61 EXTERN int m_close (aClient *cptr, aClient *sptr, int parc, char *parv[]);
62 EXTERN int m_eob (aClient *cptr, aClient *sptr, int parc, char *parv[]);
63 EXTERN int m_eoback (aClient *, aClient *, int, char **);
64 EXTERN int m_encap (aClient *, aClient *, int, char **);
65 EXTERN int m_sdie (aClient *, aClient *, int, char **);
66 EXTERN int m_map (aClient *cptr, aClient *sptr, int parc, char *parv[]);
67 EXTERN char *find_server_string (int snum);
68 EXTERN int find_server_num (char *sname);
69 EXTERN int m_rehash (aClient *cptr, aClient *sptr, int parc, char *parv[]);
70 EXTERN int m_restart (aClient *cptr, aClient *sptr, int parc, char *parv[]);
71 EXTERN int m_die (aClient *cptr, aClient *sptr, int parc, char *parv[]);
72 EXTERN int m_set(aClient *cptr, aClient *sptr, int parc, char *parv[]);
73 
74 void	add_server_to_tree(aClient *cptr);
75 void	remove_server_from_tree(aClient *cptr);
76 int	check_servername(char *);
77 EXTERN const  char *check_servername_errors[3][2];
78 
79 EXTERN int register_server(aClient *cptr);
80 EXTERN int unregister_server(aClient *cptr);
81 #undef EXTERN
82