lists.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. /*
  2. * ngIRCd -- The Next Generation IRC Daemon
  3. * Copyright (c)2001,2002 by Alexander Barton (alex@barton.de)
  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 2 of the License, or
  8. * (at your option) any later version.
  9. * Please read the file COPYING, README and AUTHORS for more information.
  10. *
  11. * $Id: lists.h,v 1.12.4.1 2007/04/03 20:23:31 fw Exp $
  12. *
  13. * Management of IRC lists: ban, invite, ... (header)
  14. */
  15. #ifndef __lists_h__
  16. #define __lists_h__
  17. #include "portab.h"
  18. #include "client.h"
  19. struct list_elem;
  20. struct list_head {
  21. struct list_elem *first;
  22. };
  23. GLOBAL struct list_elem *Lists_GetFirst PARAMS((const struct list_head *));
  24. GLOBAL struct list_elem *Lists_GetNext PARAMS((const struct list_elem *));
  25. GLOBAL bool Lists_Check PARAMS((struct list_head *head, CLIENT *client ));
  26. GLOBAL bool Lists_CheckDupeMask PARAMS((const struct list_head *head, const char *mask ));
  27. GLOBAL bool Lists_Add PARAMS((struct list_head *header, const char *Mask, bool OnlyOnce ));
  28. GLOBAL void Lists_Del PARAMS((struct list_head *head, const char *Mask ));
  29. GLOBAL bool Lists_AlreadyRegistered PARAMS(( const struct list_head *head, const char *Mask));
  30. GLOBAL void Lists_Free PARAMS(( struct list_head *head ));
  31. GLOBAL char *Lists_MakeMask PARAMS(( char *Pattern ));
  32. GLOBAL const char *Lists_GetMask PARAMS(( const struct list_elem *e ));
  33. #endif
  34. /* -eof- */