DNPAP.H
上传用户:sunrenlu
上传日期:2022-06-13
资源大小:1419k
文件大小:8k
源码类别:

操作系统开发

开发平台:

DOS

  1. /* See snmp.h for details */
  2. /****************************************************************
  3. ** MODULE INFORMATION*
  4. **********************
  5. **      FILE    NAME:           DNPAP.H
  6. **      SYSTEM  NAME:           DNPAP
  7. **      VERSION NUMBER:         1.00
  8. **
  9. ** DESCRIPTION: This module contains general DNPAP definitions
  10. ******************************************************************
  11. ** ADMINISTRATIVE INFORMATION*
  12. ******************************
  13. **      ORIGINAL AUTHOR:        The DNPAP Group
  14. **      CREATION DATE:          91/12/05
  15. **      CHANGES: None
  16. *****************************************************************/
  17. #ifndef _DNPAP_H_
  18. #define _DNPAP_H_
  19. #include <dos.h>
  20. #include <time.h>
  21. #include <signal.h>
  22. /* system dependent defines */
  23. #ifndef DNPAPBASE
  24.  #ifdef OS2
  25.  #define DNPAPBASE  "/init"
  26.  #else
  27.  #define DNPAPBASE  "/usr/local/project/init"
  28.  #endif           
  29. #endif
  30. #if !defined OS2_INCLUDED && !defined _OS2EMX_H
  31. typedef char            CHAR;
  32. typedef unsigned char   BYTE;
  33. typedef long            LONG;
  34. typedef unsigned long   ULONG;
  35. typedef short           SHORT;
  36. typedef unsigned short  USHORT;
  37. typedef unsigned char   UCHAR;
  38. typedef int             INT;
  39. typedef unsigned int    UINT;
  40. #endif
  41. typedef unsigned short  WORD;
  42. typedef unsigned long  DWORD;
  43. typedef unsigned long  LWORD;
  44. /*
  45.     there seems to some systems that have FLOAT defined to
  46.     some number, this is a hack to overcome problems
  47.     as a result of this
  48. */
  49. #ifdef FLOAT
  50. #undef FLOAT
  51. #endif
  52. typedef float          FLOAT;
  53. typedef double         DOUBLE;
  54. typedef unsigned short BOOLEAN;
  55. typedef DWORD          IPADDR;
  56. #if defined(__STDC__) || defined(__cplusplus) || defined(_MSC_VER)
  57. #define __(a) a
  58. #define VAR_PROTO       , ...
  59. #define VAR_ARGS        
  60. #define VAR_DCL
  61. #define VAR_LIST        va_list
  62. #define VAR_END(va)     va_end(va)
  63. #define VAR_START(va,f) va_start(va,f)
  64. #else
  65. #define __(a) ()
  66. #define VAR_PROTO
  67. #define VAR_ARGS        , va_alist
  68. #define VAR_DCL         va_dcl
  69. #define VAR_LIST        va_list
  70. #define VAR_END(va)     va_end(va)
  71. #define VAR_START(va,f) va_start(va)
  72. #endif
  73. /* Put reasonable defaults in some defines */
  74. #ifndef INT_MAX           /* Some say INT_MAX, others say MAXINT */
  75. # define INT_MAX MAXINT
  76. #endif
  77. #ifndef SIG_ERR   /* Some UNIX flavors don't define a SIG_ERR */
  78. # define SIG_ERR -1
  79. #endif
  80. #ifndef CLOCKS_PER_SEC    /* Resolve a weakpoint of ANSI */
  81. # define CLOCKS_PER_SEC   1000000L  /* number of ticks per seconds */
  82. #endif
  83. #ifndef CDECL   /* Microsoft junk not used */
  84. # define CDECL
  85. #endif
  86. #ifndef PASCAL   /* Microsoft junk not used */
  87. # define PASCAL
  88. #endif
  89. #ifndef VOID   /* Some unix compilers don't know about void */
  90. # define VOID void
  91. #endif
  92. #ifndef CONST   /* Some unix compilers don't know about const */
  93. # define CONST const
  94. #endif
  95. #ifndef SEEK_SET
  96. # define SEEK_SET 0
  97. # define SEEK_CUR 1
  98. # define SEEK_END 2
  99. #endif
  100. #ifndef TRUE   /* Not always defined, make sure it is */
  101. # define TRUE 1
  102. # define FALSE 0
  103. #endif
  104. #ifndef NULL
  105. # define NULL ((VOID *)0)
  106. #endif
  107. #ifndef STATIC   /* Easy changing of static to non-static */
  108. # define STATIC static
  109. #endif
  110. #ifndef FAR
  111. # define FAR _far
  112. #endif
  113. #ifndef HUGE
  114. # define HUGE _huge
  115. #endif
  116. #ifndef INTERRUPT
  117. # define INTERRUPT _interrupt
  118. #endif
  119. #ifndef MK_FP
  120. # define MK_FP(seg,off)   (VOID FAR *)((ULONG)(((USHORT)(off)) | ((ULONG)((USHORT)(seg))) << 16))
  121. #endif
  122. #ifndef PRIVAT
  123. # define PRIVAT static
  124. #endif
  125. #ifndef IMPORT
  126. # define IMPORT extern
  127. #endif
  128. #ifndef EXPORT
  129. # define EXPORT
  130. #endif
  131. #ifndef NUMBEROF
  132. # define NUMBEROF(a) (sizeof(a)/sizeof(*a))
  133. #endif
  134. /******************************************************
  135. * Prototypes for DNPAP library functions.
  136. *******************************************************/
  137. VOID *DnpapMalloc   __((ULONG size));
  138. VOID *DnpapRealloc  __((VOID *memblock, ULONG size));
  139. VOID  DnpapFree     __((VOID *memblock));                
  140. VOID  DnpapAtExit   __((VOID(*func) __((VOID)) ));
  141. VOID  DnpapExit     __((INT status));
  142. VOID  DnpapMessage  __((INT code, LONG ec, CONST char *format VAR_PROTO)); 
  143. VOID  (*DnpapSignal __((INT signum, VOID (*func)(INT))))(INT);
  144. #ifdef LIBRARY
  145.   typedef VOID  *(*DNPAPMALLOCFUN)  __((ULONG size));
  146.   typedef VOID  *(*DNPAPREALLOCFUN) __((VOID *memblock, ULONG size));
  147.   typedef VOID   (*DNPAPFREEFUN)    __((VOID *memblock));                
  148.   typedef VOID   (*DNPAPATEXITFUN)  __((VOID(*func) __((VOID)) ));
  149.   typedef VOID   (*DNPAPEXITFUN)    __((INT status));
  150.   typedef VOID   (*DNPAPMESSAGEFUN) __((INT code, LONG ec, CONST char *format, VOID * vp));
  151.   typedef VOID (*(*DNPAPSIGNALFUN)  __((INT signum, VOID (*func)(INT))))(INT);
  152.   
  153.   /* These functions install new functions, for the standard dnpap functions */
  154.   /* The standard ones are as simple as possible... */
  155.   /* When called with NULL as argument, they only return the current function */
  156.   DNPAPMALLOCFUN  DnpapSetMallocFun  __((DNPAPMALLOCFUN  dmf));
  157.   DNPAPREALLOCFUN DnpapSetReallocFun __((DNPAPREALLOCFUN drf));
  158.   DNPAPFREEFUN    DnpapSetFreeFun    __((DNPAPFREEFUN    dff));
  159.   DNPAPEXITFUN    DnpapSetExitFun    __((DNPAPEXITFUN    def));
  160.   DNPAPATEXITFUN  DnpapSetAtExitFun  __((DNPAPATEXITFUN  daef));
  161.   DNPAPMESSAGEFUN DnpapSetMessageFun __((DNPAPMESSAGEFUN dmf));
  162.   DNPAPSIGNALFUN  DnpapSetSignalFun  __((DNPAPSIGNALFUN  dsf));
  163. #endif  
  164. /********************************
  165. * DNPAP general defines
  166. ********************************/
  167. #define DNPAP_MIB           1,3,6,1,4,1,464
  168. #define DNPAP_MIBLEN        7
  169. #define BTNG_MIB            DNPAP_MIB,1
  170. #define BTNG_MIBLEN         DNPAP_MIBLEN+1
  171. #ifdef DNPAP_RMON_EXTENSIONS
  172. #define DNPAP_RMON_MIB      DNPAP_MIB,2
  173. #define DNPAP_RMON_MIBLEN   DNPAP_MIBLEN+1
  174. #endif
  175. /******************************** 
  176. * Codes for DnpapMessage 
  177. *********************************/
  178. #define DMC_FATAL    0
  179. #define DMC_ERROR    1
  180. #define DMC_WARNING  2
  181. #define DMC_MESSAGE  3
  182. #define DMC_DEBUG    4
  183. #define DMC_TRACE    5
  184. #define DMC_LOG      6
  185. #define DMC_MAX 16
  186. #define STATISTICS_ERROR             1000L
  187. #define INFO_ERROR                   2000L
  188. #define FILTER_ERROR                 3000L
  189. #define CHANNEL_ERROR                4000L
  190. #define CAPTURE_ERROR                5000L
  191. #define NEURO_ERROR                  6000L
  192. #define LOG_ERROR                    7000L
  193. #define ALARM_ERROR                  8000L
  194. #define EVENT_ERROR                  9000L
  195. #define TEST_ERROR                  10000L
  196. #define HOST_ERROR                  11000L
  197. #define TOPN_ERROR                  12000L
  198. #define MATRIX_ERROR                13000L
  199. #define HISTORY_ERROR               14000L
  200. #define MAXMEM_ERROR                15000L
  201. #define DNPAP_STATISTICS_ERROR      16000L
  202. #define DNPAP_FILTER_ERROR          17000L
  203. #define DNPAP_HOST_ERROR            18000L
  204. #define DNPAP_TOPN_ERROR            19000L
  205. #define DNPAP_MATRIX_ERROR          20000L
  206. #define DNPAP_CAPTURE_ERROR         21000L
  207. #define DNPAP_CHANNEL_ERROR         22000L
  208. #define DNPAP_EVENT_ERROR           23000L
  209. #define PERF_ERROR                  24000L
  210. #define REGISTER_ERROR              25000L
  211. #define DISC_ERROR                  26000L
  212. #define BEHOLDER_ERROR              27000L
  213. #define STATBUF_ERROR               28000L
  214. #define REACH_ERROR                 29000L
  215. #define NEUS_ERROR                  43000L
  216. #define VIP_ERROR                   44000L
  217. #define INI_ERROR                   45000L       
  218. #define MEMORY_ERROR                46000L
  219. #define SNOR_ERROR                  47000L
  220. #define TIMER_ERROR                 48000L
  221. #define MSG_ERROR                   49000L
  222. #define TRANS_ERROR                 50000L
  223. #define MGMT_ERROR                  51000L
  224. #define MAC_ERROR                   52000L
  225. #define NIT_ERROR                   53000L
  226. #define TRICKLET_ERROR              54000L
  227. #define ECHO_ERROR                  55000L 
  228. #define PING_ERROR                  56000L 
  229. #define AGENT_ERROR                 57000L
  230. #define BLOCK_ERROR 58000L
  231. #define NW_ERROR 59000L
  232. #define NWNIT_ERROR 60000L
  233. #define NWICMP_ERROR 61000L
  234. #define GEN_ERROR 62000L
  235. #define MIB_ERROR 63000L
  236. #define IP_ERROR 64000L
  237. #define UDP_ERROR 65000L
  238. #define ICMP_ERROR 66000L
  239. #define NWPF_ERROR 67000L
  240. #define PF_ERROR 68000L
  241. /* ... etc ... */
  242. #endif