lists.h 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  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. * Management of IRC lists: ban, invite, ... (header)
  12. */
  13. #ifndef __lists_h__
  14. #define __lists_h__
  15. #include "portab.h"
  16. #include "client.h"
  17. struct list_elem;
  18. struct list_head {
  19. struct list_elem *first;
  20. };
  21. GLOBAL struct list_elem *Lists_GetFirst PARAMS((const struct list_head *));
  22. GLOBAL struct list_elem *Lists_GetNext PARAMS((const struct list_elem *));
  23. GLOBAL bool Lists_Check PARAMS((struct list_head *head, CLIENT *client ));
  24. GLOBAL bool Lists_CheckDupeMask PARAMS((const struct list_head *head, const char *mask ));
  25. GLOBAL bool Lists_Add PARAMS((struct list_head *header, const char *Mask, bool OnlyOnce ));
  26. GLOBAL void Lists_Del PARAMS((struct list_head *head, const char *Mask ));
  27. GLOBAL bool Lists_AlreadyRegistered PARAMS(( const struct list_head *head, const char *Mask));
  28. GLOBAL void Lists_Free PARAMS(( struct list_head *head ));
  29. GLOBAL const char *Lists_MakeMask PARAMS((const char *Pattern));
  30. GLOBAL const char *Lists_GetMask PARAMS(( const struct list_elem *e ));
  31. #endif
  32. /* -eof- */