X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?p=ngircd-alex.git;a=blobdiff_plain;f=src%2Fngircd%2Flists.h;h=070e4233efcaac596641bfb78626bfedb20c22ea;hp=6458e7825377e2f55e9cedde0f423687d9d27081;hb=b8482fd3cfdb429aec75575958f4d5d4e9ae22df;hpb=b36fc3b095b2038e6339a8d1fd103e09916783c7 diff --git a/src/ngircd/lists.h b/src/ngircd/lists.h index 6458e782..070e4233 100644 --- a/src/ngircd/lists.h +++ b/src/ngircd/lists.h @@ -1,19 +1,22 @@ /* * ngIRCd -- The Next Generation IRC Daemon - * Copyright (c)2001,2002 by Alexander Barton (alex@barton.de) + * Copyright (c)2001-2012 Alexander Barton (alex@barton.de) and Contributors. * * 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. * Please read the file COPYING, README and AUTHORS for more information. - * - * Management of IRC lists: ban, invite, ... (header) */ - #ifndef __lists_h__ #define __lists_h__ + +/** + * @file + * Management of IRC lists (header) + */ + #include "portab.h" #include "client.h" @@ -23,22 +26,31 @@ struct list_head { struct list_elem *first; }; - GLOBAL struct list_elem *Lists_GetFirst PARAMS((const struct list_head *)); GLOBAL struct list_elem *Lists_GetNext PARAMS((const struct list_elem *)); -GLOBAL bool Lists_Check PARAMS((struct list_head *head, CLIENT *client )); -GLOBAL bool Lists_CheckDupeMask PARAMS((const struct list_head *head, const char *mask )); +GLOBAL bool Lists_Check PARAMS((struct list_head *head, CLIENT *client)); +GLOBAL bool Lists_CheckReason PARAMS((struct list_head *head, CLIENT *client, + char *reason, size_t len)); +GLOBAL struct list_elem *Lists_CheckDupeMask PARAMS((const struct list_head *head, + const char *mask)); -GLOBAL bool Lists_Add PARAMS((struct list_head *header, const char *Mask, bool OnlyOnce )); -GLOBAL void Lists_Del PARAMS((struct list_head *head, const char *Mask )); +GLOBAL bool Lists_Add PARAMS((struct list_head *h, const char *Mask, + time_t ValidUntil, const char *Reason, + bool OnlyOnce)); +GLOBAL void Lists_Del PARAMS((struct list_head *head, const char *Mask)); +GLOBAL unsigned long Lists_Count PARAMS((struct list_head *h)); -GLOBAL bool Lists_AlreadyRegistered PARAMS(( const struct list_head *head, const char *Mask)); +GLOBAL void Lists_Free PARAMS((struct list_head *head)); -GLOBAL void Lists_Free PARAMS(( struct list_head *head )); +GLOBAL void Lists_MakeMask PARAMS((const char *Pattern, char *mask, size_t len)); +GLOBAL const char *Lists_GetMask PARAMS((const struct list_elem *e)); +GLOBAL const char *Lists_GetReason PARAMS((const struct list_elem *e)); +GLOBAL time_t Lists_GetValidity PARAMS((const struct list_elem *e)); +GLOBAL bool Lists_GetOnlyOnce PARAMS((const struct list_elem *e)); -GLOBAL const char *Lists_MakeMask PARAMS((const char *Pattern)); -GLOBAL const char *Lists_GetMask PARAMS(( const struct list_elem *e )); +GLOBAL void Lists_Expire PARAMS((struct list_head *h, const char *ListName)); #endif + /* -eof- */