modvals.h 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. /*
  2. * modvals.h
  3. *
  4. */
  5. /*
  6. * Copyright (C) 1997 Robey Pointer
  7. * Copyright (C) 1999, 2000, 2001, 2002 Eggheads Development Team
  8. *
  9. * This program is free software; you can redistribute it and/or
  10. * modify it under the terms of the GNU General Public License
  11. * as published by the Free Software Foundation; either version 2
  12. * of the License, or (at your option) any later version.
  13. *
  14. * This program is distributed in the hope that it will be useful,
  15. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  16. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  17. * GNU General Public License for more details.
  18. *
  19. * You should have received a copy of the GNU General Public License
  20. * along with this program; if not, write to the Free Software
  21. * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  22. */
  23. #ifndef _EGG_MOD_MODVALS_H
  24. #define _EGG_MOD_MODVALS_H
  25. /* #define HOOK_GET_FLAGREC 0 */
  26. /* #define HOOK_BUILD_FLAGREC 1 */
  27. /* #define HOOK_SET_FLAGREC 2 */
  28. #define HOOK_READ_USERFILE 3
  29. #define HOOK_REHASH 4
  30. #define HOOK_MINUTELY 5
  31. #define HOOK_DAILY 6
  32. #define HOOK_HOURLY 7
  33. #define HOOK_USERFILE 8
  34. #define HOOK_SECONDLY 9
  35. #define HOOK_PRE_REHASH 10
  36. #define HOOK_IDLE 11
  37. #define HOOK_5MINUTELY 12
  38. #define HOOK_LOADED 13
  39. #define HOOK_BACKUP 14
  40. #define HOOK_DIE 15
  41. #define HOOK_10SECONDLY 16
  42. #define HOOK_30SECONDLY 17
  43. #define HOOK_3SECONDLY 18
  44. #define HOOK_HALFHOURLY 19
  45. #define REAL_HOOKS 20
  46. //#define HOOK_CHANFILE 17
  47. #define HOOK_SHAREOUT 105
  48. #define HOOK_SHAREIN 106
  49. #define HOOK_QSERV 108
  50. #define HOOK_ADD_MODE 109
  51. #define HOOK_MATCH_NOTEREJ 110
  52. #define HOOK_RFC_CASECMP 111
  53. #define HOOK_DNS_HOSTBYIP 112
  54. #define HOOK_DNS_IPBYHOST 113
  55. #define HOOK_SHAREUPDATEIN 117
  56. /* These are FIXED once they are in a release they STAY
  57. */
  58. #define MODCALL_START 0
  59. /* #define MODCALL_CLOSE 1 */
  60. #define MODCALL_EXPMEM 2
  61. #define MODCALL_REPORT 3
  62. /* Filesys */
  63. #define FILESYS_REMOTE_REQ 4
  64. #define FILESYS_ADDFILE 5
  65. #define FILESYS_INCRGOTS 6
  66. #define FILESYS_ISVALID 7
  67. /* Share */
  68. #define SHARE_FINISH 4
  69. #define UPDATE_FINISH 4
  70. #define SHARE_DUMP_RESYNC 5
  71. /* Channels */
  72. #define CHANNEL_CLEAR 15
  73. #define CHANNEL_REMOVE 45
  74. /* Server */
  75. #define SERVER_BOTNAME 4
  76. #define SERVER_BOTUSERHOST 5
  77. #define SERVER_NICKLEN 38
  78. #define SERVER_NUKESERVER 19
  79. /* IRC */
  80. #define IRC_RECHECK_CHANNEL 15
  81. #define IRC_RECHECK_CHANNEL_MODES 17
  82. #define IRC_DO_CHANNEL_PART 19
  83. #define IRC_CHECK_THIS_BAN 20
  84. #define IRC_CHECK_THIS_USER 21
  85. /* Notes */
  86. #define NOTES_CMD_NOTE 4
  87. /* Console */
  88. #define CONSOLE_DOSTORE 4
  89. /* compress */
  90. #define COMPRESS_CFILE 5
  91. #define COMPRESS_UFILE 7
  92. #ifdef HPUX_HACKS
  93. # include <dl.h>
  94. #endif
  95. typedef struct _module_entry {
  96. struct _module_entry *next;
  97. char *name; /* Name of the module (without .so) */
  98. int major; /* Major version number MUST match */
  99. int minor; /* Minor version number MUST be >= */
  100. Function *funcs;
  101. # ifdef DEBUG_MEM
  102. int mem_work;
  103. # endif /* DEBUG_MEM */
  104. } module_entry;
  105. #endif /* _EGG_MOD_MODVALS_H */