modvals.h 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  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. /* HOOK_LOADED IS OBSOLETE */
  39. #define HOOK_LOADED 13
  40. #define HOOK_BACKUP 14
  41. #define HOOK_DIE 15
  42. #define HOOK_10SECONDLY 16
  43. #define HOOK_30SECONDLY 17
  44. #define HOOK_5SECONDLY 18
  45. #define HOOK_HALFHOURLY 19
  46. #define REAL_HOOKS 20
  47. //#define HOOK_CHANFILE 17
  48. #define HOOK_SHAREOUT 105
  49. #define HOOK_SHAREIN 106
  50. #define HOOK_QSERV 108
  51. #define HOOK_ADD_MODE 109
  52. #define HOOK_MATCH_NOTEREJ 110
  53. #define HOOK_RFC_CASECMP 111
  54. #define HOOK_DNS_HOSTBYIP 112
  55. #define HOOK_DNS_IPBYHOST 113
  56. #define HOOK_SHAREUPDATEIN 117
  57. #define HOOK_STORENOTE 116
  58. /* These are FIXED once they are in a release they STAY
  59. */
  60. #define MODCALL_START 0
  61. /* #define MODCALL_CLOSE 1 */
  62. #define MODCALL_EXPMEM 2
  63. #define MODCALL_REPORT 3
  64. /* Filesys */
  65. #define FILESYS_REMOTE_REQ 4
  66. #define FILESYS_ADDFILE 5
  67. #define FILESYS_INCRGOTS 6
  68. #define FILESYS_ISVALID 7
  69. /* Share */
  70. #define SHARE_FINISH 4
  71. #define UPDATE_FINISH 4
  72. #define SHARE_DUMP_RESYNC 5
  73. /* Channels */
  74. #define CHANNEL_CLEAR 15
  75. #define CHANNEL_REMOVE 45
  76. /* Server */
  77. #define SERVER_BOTNAME 4
  78. #define SERVER_BOTUSERHOST 5
  79. #define SERVER_NICKLEN 38
  80. #define SERVER_NUKESERVER 19
  81. /* IRC */
  82. #define IRC_RECHECK_CHANNEL 15
  83. #define IRC_RECHECK_CHANNEL_MODES 17
  84. #define IRC_DO_CHANNEL_PART 19
  85. #define IRC_CHECK_THIS_BAN 20
  86. #define IRC_CHECK_THIS_USER 21
  87. /* Notes */
  88. #define NOTES_CMD_NOTE 4
  89. /* Console */
  90. #define CONSOLE_DOSTORE 4
  91. /* compress */
  92. #define COMPRESS_CFILE 5
  93. #define COMPRESS_UFILE 7
  94. #ifdef HPUX_HACKS
  95. # include <dl.h>
  96. #endif
  97. typedef struct _module_entry {
  98. struct _module_entry *next;
  99. char *name; /* Name of the module (without .so) */
  100. int major; /* Major version number MUST match */
  101. int minor; /* Minor version number MUST be >= */
  102. Function *funcs;
  103. # ifdef DEBUG_MEM
  104. int mem_work;
  105. # endif /* DEBUG_MEM */
  106. } module_entry;
  107. #endif /* _EGG_MOD_MODVALS_H */