Author: Kev <klmitch@mit.edu>
[ircu2.10.12-pk.git] / include / ircd_features.h
1 #ifndef INCLUDED_features_h
2 #define INCLUDED_features_h
3 /*
4  * IRC - Internet Relay Chat, include/features.h
5  * Copyright (C) 2000 Kevin L. Mitchell <klmitch@mit.edu>
6  *
7  * This program is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation; either version 2, or (at your option)
10  * any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program; if not, write to the Free Software
19  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20  *
21  * $Id$
22  */
23
24 struct Client;
25
26 enum Feature {
27   FEAT_LOG,
28   FEAT_LAST_F
29 };
30
31 extern int feature_set(struct Client* from, const char* const* fields,
32                        int count);
33 extern int feature_reset(struct Client* from, const char* const* fields,
34                          int count);
35 extern int feature_get(struct Client* from, const char* const* fields,
36                        int count);
37
38 extern void feature_unmark(void);
39 extern void feature_mark(void);
40
41 extern void feature_report(struct Client* to);
42
43 extern int feature_int(enum Feature feat);
44 extern int feature_bool(enum Feature feat);
45 extern const char *feature_str(enum Feature feat);
46
47 #endif /* INCLUDED_features_h */