server.h 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. #ifdef LEAF
  2. /*
  3. * server.h -- part of server.mod
  4. *
  5. */
  6. #ifndef _EGG_MOD_SERVER_SERVER_H
  7. #define _EGG_MOD_SERVER_SERVER_H
  8. #define check_tcl_ctcp(a,b,c,d,e,f) check_tcl_ctcpr(a,b,c,d,e,f,H_ctcp)
  9. #define check_tcl_ctcr(a,b,c,d,e,f) check_tcl_ctcpr(a,b,c,d,e,f,H_ctcr)
  10. #ifndef MAKING_SERVER
  11. /* 4 - 7 */
  12. #define botuserhost ((char *)(server_funcs[5]))
  13. #define quiet_reject (*(int *)(server_funcs[6]))
  14. #define serv (*(int *)(server_funcs[7]))
  15. #define servi (*(int *)(server_funcs[7]))
  16. /* 8 - 11 */
  17. #define flud_thr (*(int*)(server_funcs[8]))
  18. #define flud_time (*(int*)(server_funcs[9]))
  19. #define flud_ctcp_thr (*(int*)(server_funcs[10]))
  20. #define flud_ctcp_time (*(int*)(server_funcs[11]))
  21. /* 12 - 15 */
  22. #define match_my_nick ((int(*)(char *))server_funcs[12])
  23. /* #define fixfrom ((void (*)(char *))server_funcs[14]) -- moved to core */
  24. #define answer_ctcp (*(int *)(server_funcs[15]))
  25. /* 16 - 19 */
  26. #define trigger_on_ignore (*(int *)(server_funcs[16]))
  27. #define check_tcl_ctcpr ((int(*)(char*,char*,struct userrec*,char*,char*,char*,p_tcl_bind_list))server_funcs[17])
  28. #define detect_avalanche ((int(*)(char *))server_funcs[18])
  29. #define nuke_server ((void(*)(char *))server_funcs[19])
  30. /* 20 - 22 */
  31. #define newserver ((char *)(server_funcs[20]))
  32. #define newserverport (*(int *)(server_funcs[21]))
  33. #define newserverpass ((char *)(server_funcs[22]))
  34. /* 23 - 26 */
  35. #define cycle_time (*(int *)(server_funcs[23]))
  36. #define default_port (*(int *)(server_funcs[24]))
  37. #define server_online (*(int *)(server_funcs[25]))
  38. #define min_servs (*(int *)(server_funcs[26]))
  39. /* 27 - 30 */
  40. #define H_raw (*(p_tcl_bind_list *)(server_funcs[27]))
  41. #define H_msg (*(p_tcl_bind_list *)(server_funcs[29]))
  42. #define H_msgm (*(p_tcl_bind_list *)(server_funcs[30]))
  43. /* 31 - 34 */
  44. #define H_ctcp (*(p_tcl_bind_list *)(server_funcs[33]))
  45. #define H_ctcr (*(p_tcl_bind_list *)(server_funcs[34]))
  46. /* 35 - 38 */
  47. #define ctcp_reply ((char *)(server_funcs[35]))
  48. #define get_altbotnick ((char *(*)(void))(server_funcs[36]))
  49. #define nick_len (*(int *)(server_funcs[37]))
  50. #define server_lag (*(int *)(server_funcs[39]))
  51. #define curserv (*(int *)(server_funcs[40))
  52. #define cursrvname ((char *)(server_funcs[41]))
  53. #define botrealname ((char *)(server_funcs[42]))
  54. #ifdef S_AUTH
  55. #define H_msgc (*(p_tcl_bind_list *)(server_funcs[43]))
  56. #endif /* S_AUTH */
  57. #else /* MAKING_SERVER */
  58. /* Macros for commonly used commands.
  59. */
  60. #define free_null(ptr) do { \
  61. nfree(ptr); \
  62. ptr = NULL; \
  63. } while (0)
  64. #endif /* MAKING_SERVER */
  65. struct server_list {
  66. struct server_list *next;
  67. char *name;
  68. int port;
  69. char *pass;
  70. char *realname;
  71. };
  72. /* Available net types. */
  73. enum {
  74. NETT_EFNET = 0, /* EfNet except new +e/+I hybrid. */
  75. NETT_IRCNET = 1, /* Ircnet. */
  76. NETT_UNDERNET = 2, /* Undernet. */
  77. NETT_DALNET = 3, /* Dalnet. */
  78. NETT_HYBRID_EFNET = 4 /* new +e/+I Efnet hybrid. */
  79. } nett_t;
  80. #define IRC_CANTCHANGENICK "Can't change nickname on %s. Is my nickname banned?"
  81. #endif /* _EGG_MOD_SERVER_SERVER_H */
  82. #endif /*leaf*/