0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-10-31 10:58:54 +01:00
construct/include/packet.h
Stephen Bennett e6e54763d9 Make flood control settings configurable by those who know exactly what they're doing.
From ircd-seven git changeset 29aa4203150337925a4f5c6e7da47be5394c2125 .
2011-03-27 16:35:26 -04:00

57 lines
2.1 KiB
C

/*
* ircd-ratbox: A slightly useful ircd.
* packet.h: A header for the packet functions.
*
* Copyright (C) 1990 Jarkko Oikarinen and University of Oulu, Co Center
* Copyright (C) 1996-2002 Hybrid Development Team
* Copyright (C) 2002-2004 ircd-ratbox development team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA
*
* $Id: packet.h 813 2006-02-14 20:52:15Z nenolod $
*/
#ifndef INCLUDED_packet_h
#define INCLUDED_packet_h
/*
* this hides in here rather than a config.h because it really shouldn't
* be tweaked unless you *REALLY REALLY* know what you're doing!
* Remember, messages are only anti-flooded on incoming from the client, not on
* incoming from a server for a given client, so if you tweak this you risk
* allowing a client to flood differently depending upon where they are on
* the network..
* -- adrian
*/
/* MAX_FLOOD is the amount of lines in a 'burst' we allow from a client,
* anything beyond MAX_FLOOD is limited to about one line per second.
*
* MAX_FLOOD_CONN is the amount of lines we allow from a client who has
* just connected. this allows clients to rejoin multiple channels
* without being so heavily penalised they excess flood.
*/
/*
* spb: Made these configurable
*/
#define MAX_FLOOD ConfigFileEntry.client_flood_burst_max
#define MAX_FLOOD_BURST MAX_FLOOD * 8
extern PF read_packet;
extern EVH flood_recalc;
extern void flood_endgrace(struct Client *);
#endif /* INCLUDED_packet_h */