ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/include/s_bsd.h
Revision: 8660
Committed: Sun Nov 18 12:55:59 2018 UTC (6 years, 9 months ago) by michael
Content type: text/x-chdr
File size: 2294 byte(s)
Log Message:
- Make use of the bool data type in some more places

File Contents

# Content
1 /*
2 * ircd-hybrid: an advanced, lightweight Internet Relay Chat Daemon (ircd)
3 *
4 * Copyright (c) 1997-2018 ircd-hybrid development team
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
19 * USA
20 */
21
22 /*! \file s_bsd.h
23 * \brief A header for the network subsystem.
24 * \version $Id$
25 */
26
27 #ifndef INCLUDED_s_bsd_h
28 #define INCLUDED_s_bsd_h
29
30 #include "fdlist.h"
31
32 /* Type of IO */
33 enum
34 {
35 COMM_SELECT_READ = 1 << 0,
36 COMM_SELECT_WRITE = 1 << 1
37 };
38
39 /* How long can comm_select() wait for network events [milliseconds] */
40 enum { SELECT_DELAY = 500 };
41
42 struct Client;
43 struct Listener;
44
45 extern void add_connection(struct Listener *, struct irc_ssaddr *, int);
46 extern void report_error(int, const char *, const char *, int);
47
48 extern int comm_get_sockerr(int);
49 extern bool comm_ignore_errno(int);
50
51 extern void comm_settimeout(fde_t *, uintmax_t, void (*)(fde_t *, void *), void *);
52 extern void comm_setflush(fde_t *, uintmax_t, void (*)(fde_t *, void *), void *);
53 extern void comm_checktimeouts(void *);
54 extern void comm_connect_tcp(fde_t *, const char *, unsigned short, struct sockaddr *, int,
55 void (fde_t *, int, void *), void *, int, uintmax_t);
56 extern const char *comm_errstr(int);
57 extern int comm_socket(int, int, int);
58 extern int comm_accept(int, struct irc_ssaddr *);
59
60 /* These must be defined in the network IO loop code of your choice */
61 extern void comm_select_init(void);
62 extern void comm_setselect(fde_t *, unsigned int, void (*)(fde_t *, void *), void *, uintmax_t);
63 extern void comm_select(void);
64 extern void remove_ipv6_mapping(struct irc_ssaddr *);
65 #endif /* INCLUDED_s_bsd_h */

Properties

Name Value
svn:eol-style native
svn:keywords Id