Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

667 lines
23 KiB

  1. /*++
  2. Copyright (C) 1992-1999 Microsoft Corporation
  3. Module Name:
  4. snmp.h
  5. Abstract:
  6. Definitions for SNMP development.
  7. --*/
  8. #ifndef _INC_SNMP
  9. #define _INC_SNMP
  10. #if _MSC_VER > 1000
  11. #pragma once
  12. #endif
  13. ///////////////////////////////////////////////////////////////////////////////
  14. // //
  15. // Additional Header Files //
  16. // //
  17. ///////////////////////////////////////////////////////////////////////////////
  18. #include <windows.h>
  19. #ifdef __cplusplus
  20. extern "C" {
  21. #endif
  22. ///////////////////////////////////////////////////////////////////////////////
  23. // //
  24. // SNMP Type Definitions //
  25. // //
  26. ///////////////////////////////////////////////////////////////////////////////
  27. #include <pshpack4.h>
  28. typedef struct {
  29. BYTE * stream;
  30. UINT length;
  31. BOOL dynamic;
  32. } AsnOctetString;
  33. typedef struct {
  34. UINT idLength;
  35. UINT * ids;
  36. } AsnObjectIdentifier;
  37. typedef LONG AsnInteger32;
  38. typedef ULONG AsnUnsigned32;
  39. typedef ULARGE_INTEGER AsnCounter64;
  40. typedef AsnUnsigned32 AsnCounter32;
  41. typedef AsnUnsigned32 AsnGauge32;
  42. typedef AsnUnsigned32 AsnTimeticks;
  43. typedef AsnOctetString AsnBits;
  44. typedef AsnOctetString AsnSequence;
  45. typedef AsnOctetString AsnImplicitSequence;
  46. typedef AsnOctetString AsnIPAddress;
  47. typedef AsnOctetString AsnNetworkAddress;
  48. typedef AsnOctetString AsnDisplayString;
  49. typedef AsnOctetString AsnOpaque;
  50. typedef struct {
  51. BYTE asnType;
  52. union {
  53. AsnInteger32 number; // ASN_INTEGER
  54. // ASN_INTEGER32
  55. AsnUnsigned32 unsigned32; // ASN_UNSIGNED32
  56. AsnCounter64 counter64; // ASN_COUNTER64
  57. AsnOctetString string; // ASN_OCTETSTRING
  58. AsnBits bits; // ASN_BITS
  59. AsnObjectIdentifier object; // ASN_OBJECTIDENTIFIER
  60. AsnSequence sequence; // ASN_SEQUENCE
  61. AsnIPAddress address; // ASN_IPADDRESS
  62. AsnCounter32 counter; // ASN_COUNTER32
  63. AsnGauge32 gauge; // ASN_GAUGE32
  64. AsnTimeticks ticks; // ASN_TIMETICKS
  65. AsnOpaque arbitrary; // ASN_OPAQUE
  66. } asnValue;
  67. } AsnAny;
  68. typedef AsnObjectIdentifier AsnObjectName;
  69. typedef AsnAny AsnObjectSyntax;
  70. typedef struct {
  71. AsnObjectName name;
  72. AsnObjectSyntax value;
  73. } SnmpVarBind;
  74. typedef struct {
  75. SnmpVarBind * list;
  76. UINT len;
  77. } SnmpVarBindList;
  78. #include <poppack.h>
  79. #ifndef _INC_WINSNMP
  80. ///////////////////////////////////////////////////////////////////////////////
  81. // //
  82. // ASN/BER Base Types //
  83. // //
  84. ///////////////////////////////////////////////////////////////////////////////
  85. #define ASN_UNIVERSAL 0x00
  86. #define ASN_APPLICATION 0x40
  87. #define ASN_CONTEXT 0x80
  88. #define ASN_PRIVATE 0xC0
  89. #define ASN_PRIMITIVE 0x00
  90. #define ASN_CONSTRUCTOR 0x20
  91. ///////////////////////////////////////////////////////////////////////////////
  92. // //
  93. // PDU Type Values //
  94. // //
  95. ///////////////////////////////////////////////////////////////////////////////
  96. #define SNMP_PDU_GET (ASN_CONTEXT | ASN_CONSTRUCTOR | 0x0)
  97. #define SNMP_PDU_GETNEXT (ASN_CONTEXT | ASN_CONSTRUCTOR | 0x1)
  98. #define SNMP_PDU_RESPONSE (ASN_CONTEXT | ASN_CONSTRUCTOR | 0x2)
  99. #define SNMP_PDU_SET (ASN_CONTEXT | ASN_CONSTRUCTOR | 0x3)
  100. #define SNMP_PDU_V1TRAP (ASN_CONTEXT | ASN_CONSTRUCTOR | 0x4)
  101. #define SNMP_PDU_GETBULK (ASN_CONTEXT | ASN_CONSTRUCTOR | 0x5)
  102. #define SNMP_PDU_INFORM (ASN_CONTEXT | ASN_CONSTRUCTOR | 0x6)
  103. #define SNMP_PDU_TRAP (ASN_CONTEXT | ASN_CONSTRUCTOR | 0x7)
  104. #endif // _INC_WINSNMP
  105. ///////////////////////////////////////////////////////////////////////////////
  106. // //
  107. // SNMP Simple Syntax Values //
  108. // //
  109. ///////////////////////////////////////////////////////////////////////////////
  110. #define ASN_INTEGER (ASN_UNIVERSAL | ASN_PRIMITIVE | 0x02)
  111. #define ASN_BITS (ASN_UNIVERSAL | ASN_PRIMITIVE | 0x03)
  112. #define ASN_OCTETSTRING (ASN_UNIVERSAL | ASN_PRIMITIVE | 0x04)
  113. #define ASN_NULL (ASN_UNIVERSAL | ASN_PRIMITIVE | 0x05)
  114. #define ASN_OBJECTIDENTIFIER (ASN_UNIVERSAL | ASN_PRIMITIVE | 0x06)
  115. #define ASN_INTEGER32 ASN_INTEGER
  116. ///////////////////////////////////////////////////////////////////////////////
  117. // //
  118. // SNMP Constructor Syntax Values //
  119. // //
  120. ///////////////////////////////////////////////////////////////////////////////
  121. #define ASN_SEQUENCE (ASN_UNIVERSAL | ASN_CONSTRUCTOR | 0x10)
  122. #define ASN_SEQUENCEOF ASN_SEQUENCE
  123. ///////////////////////////////////////////////////////////////////////////////
  124. // //
  125. // SNMP Application Syntax Values //
  126. // //
  127. ///////////////////////////////////////////////////////////////////////////////
  128. #define ASN_IPADDRESS (ASN_APPLICATION | ASN_PRIMITIVE | 0x00)
  129. #define ASN_COUNTER32 (ASN_APPLICATION | ASN_PRIMITIVE | 0x01)
  130. #define ASN_GAUGE32 (ASN_APPLICATION | ASN_PRIMITIVE | 0x02)
  131. #define ASN_TIMETICKS (ASN_APPLICATION | ASN_PRIMITIVE | 0x03)
  132. #define ASN_OPAQUE (ASN_APPLICATION | ASN_PRIMITIVE | 0x04)
  133. #define ASN_COUNTER64 (ASN_APPLICATION | ASN_PRIMITIVE | 0x06)
  134. #define ASN_UNSIGNED32 (ASN_APPLICATION | ASN_PRIMITIVE | 0x07)
  135. ///////////////////////////////////////////////////////////////////////////////
  136. // //
  137. // SNMP Exception Conditions //
  138. // //
  139. ///////////////////////////////////////////////////////////////////////////////
  140. #define SNMP_EXCEPTION_NOSUCHOBJECT (ASN_CONTEXT | ASN_PRIMITIVE | 0x00)
  141. #define SNMP_EXCEPTION_NOSUCHINSTANCE (ASN_CONTEXT | ASN_PRIMITIVE | 0x01)
  142. #define SNMP_EXCEPTION_ENDOFMIBVIEW (ASN_CONTEXT | ASN_PRIMITIVE | 0x02)
  143. ///////////////////////////////////////////////////////////////////////////////
  144. // //
  145. // SNMP Request Types (used in SnmpExtensionQueryEx) //
  146. // //
  147. ///////////////////////////////////////////////////////////////////////////////
  148. #define SNMP_EXTENSION_GET SNMP_PDU_GET
  149. #define SNMP_EXTENSION_GET_NEXT SNMP_PDU_GETNEXT
  150. #define SNMP_EXTENSION_GET_BULK SNMP_PDU_GETBULK
  151. #define SNMP_EXTENSION_SET_TEST (ASN_PRIVATE | ASN_CONSTRUCTOR | 0x0)
  152. #define SNMP_EXTENSION_SET_COMMIT SNMP_PDU_SET
  153. #define SNMP_EXTENSION_SET_UNDO (ASN_PRIVATE | ASN_CONSTRUCTOR | 0x1)
  154. #define SNMP_EXTENSION_SET_CLEANUP (ASN_PRIVATE | ASN_CONSTRUCTOR | 0x2)
  155. ///////////////////////////////////////////////////////////////////////////////
  156. // //
  157. // SNMP Error Codes //
  158. // //
  159. ///////////////////////////////////////////////////////////////////////////////
  160. #define SNMP_ERRORSTATUS_NOERROR 0
  161. #define SNMP_ERRORSTATUS_TOOBIG 1
  162. #define SNMP_ERRORSTATUS_NOSUCHNAME 2
  163. #define SNMP_ERRORSTATUS_BADVALUE 3
  164. #define SNMP_ERRORSTATUS_READONLY 4
  165. #define SNMP_ERRORSTATUS_GENERR 5
  166. #define SNMP_ERRORSTATUS_NOACCESS 6
  167. #define SNMP_ERRORSTATUS_WRONGTYPE 7
  168. #define SNMP_ERRORSTATUS_WRONGLENGTH 8
  169. #define SNMP_ERRORSTATUS_WRONGENCODING 9
  170. #define SNMP_ERRORSTATUS_WRONGVALUE 10
  171. #define SNMP_ERRORSTATUS_NOCREATION 11
  172. #define SNMP_ERRORSTATUS_INCONSISTENTVALUE 12
  173. #define SNMP_ERRORSTATUS_RESOURCEUNAVAILABLE 13
  174. #define SNMP_ERRORSTATUS_COMMITFAILED 14
  175. #define SNMP_ERRORSTATUS_UNDOFAILED 15
  176. #define SNMP_ERRORSTATUS_AUTHORIZATIONERROR 16
  177. #define SNMP_ERRORSTATUS_NOTWRITABLE 17
  178. #define SNMP_ERRORSTATUS_INCONSISTENTNAME 18
  179. ///////////////////////////////////////////////////////////////////////////////
  180. // //
  181. // SNMPv1 Trap Types //
  182. // //
  183. ///////////////////////////////////////////////////////////////////////////////
  184. #define SNMP_GENERICTRAP_COLDSTART 0
  185. #define SNMP_GENERICTRAP_WARMSTART 1
  186. #define SNMP_GENERICTRAP_LINKDOWN 2
  187. #define SNMP_GENERICTRAP_LINKUP 3
  188. #define SNMP_GENERICTRAP_AUTHFAILURE 4
  189. #define SNMP_GENERICTRAP_EGPNEIGHLOSS 5
  190. #define SNMP_GENERICTRAP_ENTERSPECIFIC 6
  191. ///////////////////////////////////////////////////////////////////////////////
  192. // //
  193. // SNMP Access Types //
  194. // //
  195. ///////////////////////////////////////////////////////////////////////////////
  196. #define SNMP_ACCESS_NONE 0
  197. #define SNMP_ACCESS_NOTIFY 1
  198. #define SNMP_ACCESS_READ_ONLY 2
  199. #define SNMP_ACCESS_READ_WRITE 3
  200. #define SNMP_ACCESS_READ_CREATE 4
  201. ///////////////////////////////////////////////////////////////////////////////
  202. // //
  203. // SNMP API Return Code Definitions //
  204. // //
  205. ///////////////////////////////////////////////////////////////////////////////
  206. #define SNMPAPI INT
  207. #define SNMP_FUNC_TYPE WINAPI
  208. #define SNMPAPI_NOERROR TRUE
  209. #define SNMPAPI_ERROR FALSE
  210. ///////////////////////////////////////////////////////////////////////////////
  211. // //
  212. // SNMP Extension API Prototypes //
  213. // //
  214. ///////////////////////////////////////////////////////////////////////////////
  215. BOOL
  216. SNMP_FUNC_TYPE
  217. SnmpExtensionInit(
  218. DWORD dwUptimeReference,
  219. HANDLE * phSubagentTrapEvent,
  220. AsnObjectIdentifier * pFirstSupportedRegion
  221. );
  222. BOOL
  223. SNMP_FUNC_TYPE
  224. SnmpExtensionInitEx(
  225. AsnObjectIdentifier * pNextSupportedRegion
  226. );
  227. BOOL
  228. SNMP_FUNC_TYPE
  229. SnmpExtensionMonitor(
  230. LPVOID pAgentMgmtData
  231. );
  232. BOOL
  233. SNMP_FUNC_TYPE
  234. SnmpExtensionQuery(
  235. BYTE bPduType,
  236. SnmpVarBindList * pVarBindList,
  237. AsnInteger32 * pErrorStatus,
  238. AsnInteger32 * pErrorIndex
  239. );
  240. BOOL
  241. SNMP_FUNC_TYPE
  242. SnmpExtensionQueryEx(
  243. UINT nRequestType,
  244. UINT nTransactionId,
  245. SnmpVarBindList * pVarBindList,
  246. AsnOctetString * pContextInfo,
  247. AsnInteger32 * pErrorStatus,
  248. AsnInteger32 * pErrorIndex
  249. );
  250. BOOL
  251. SNMP_FUNC_TYPE
  252. SnmpExtensionTrap(
  253. AsnObjectIdentifier * pEnterpriseOid,
  254. AsnInteger32 * pGenericTrapId,
  255. AsnInteger32 * pSpecificTrapId,
  256. AsnTimeticks * pTimeStamp,
  257. SnmpVarBindList * pVarBindList
  258. );
  259. VOID
  260. SNMP_FUNC_TYPE
  261. SnmpExtensionClose(
  262. );
  263. ///////////////////////////////////////////////////////////////////////////////
  264. // //
  265. // SNMP Extension API Type Definitions //
  266. // //
  267. ///////////////////////////////////////////////////////////////////////////////
  268. typedef BOOL (SNMP_FUNC_TYPE * PFNSNMPEXTENSIONINIT)(
  269. DWORD dwUpTimeReference,
  270. HANDLE * phSubagentTrapEvent,
  271. AsnObjectIdentifier * pFirstSupportedRegion
  272. );
  273. typedef BOOL (SNMP_FUNC_TYPE * PFNSNMPEXTENSIONINITEX)(
  274. AsnObjectIdentifier * pNextSupportedRegion
  275. );
  276. typedef BOOL (SNMP_FUNC_TYPE * PFNSNMPEXTENSIONMONITOR)(
  277. LPVOID pAgentMgmtData
  278. );
  279. typedef BOOL (SNMP_FUNC_TYPE * PFNSNMPEXTENSIONQUERY)(
  280. BYTE bPduType,
  281. SnmpVarBindList * pVarBindList,
  282. AsnInteger32 * pErrorStatus,
  283. AsnInteger32 * pErrorIndex
  284. );
  285. typedef BOOL (SNMP_FUNC_TYPE * PFNSNMPEXTENSIONQUERYEX)(
  286. UINT nRequestType,
  287. UINT nTransactionId,
  288. SnmpVarBindList * pVarBindList,
  289. AsnOctetString * pContextInfo,
  290. AsnInteger32 * pErrorStatus,
  291. AsnInteger32 * pErrorIndex
  292. );
  293. typedef BOOL (SNMP_FUNC_TYPE * PFNSNMPEXTENSIONTRAP)(
  294. AsnObjectIdentifier * pEnterpriseOid,
  295. AsnInteger32 * pGenericTrapId,
  296. AsnInteger32 * pSpecificTrapId,
  297. AsnTimeticks * pTimeStamp,
  298. SnmpVarBindList * pVarBindList
  299. );
  300. typedef VOID (SNMP_FUNC_TYPE * PFNSNMPEXTENSIONCLOSE)(
  301. );
  302. ///////////////////////////////////////////////////////////////////////////////
  303. // //
  304. // SNMP API Prototypes //
  305. // //
  306. ///////////////////////////////////////////////////////////////////////////////
  307. SNMPAPI
  308. SNMP_FUNC_TYPE
  309. SnmpUtilOidCpy(
  310. AsnObjectIdentifier * pOidDst,
  311. AsnObjectIdentifier * pOidSrc
  312. );
  313. SNMPAPI
  314. SNMP_FUNC_TYPE
  315. SnmpUtilOidAppend(
  316. AsnObjectIdentifier * pOidDst,
  317. AsnObjectIdentifier * pOidSrc
  318. );
  319. SNMPAPI
  320. SNMP_FUNC_TYPE
  321. SnmpUtilOidNCmp(
  322. AsnObjectIdentifier * pOid1,
  323. AsnObjectIdentifier * pOid2,
  324. UINT nSubIds
  325. );
  326. SNMPAPI
  327. SNMP_FUNC_TYPE
  328. SnmpUtilOidCmp(
  329. AsnObjectIdentifier * pOid1,
  330. AsnObjectIdentifier * pOid2
  331. );
  332. VOID
  333. SNMP_FUNC_TYPE
  334. SnmpUtilOidFree(
  335. AsnObjectIdentifier * pOid
  336. );
  337. SNMPAPI
  338. SNMP_FUNC_TYPE
  339. SnmpUtilOctetsCmp(
  340. AsnOctetString * pOctets1,
  341. AsnOctetString * pOctets2
  342. );
  343. SNMPAPI
  344. SNMP_FUNC_TYPE
  345. SnmpUtilOctetsNCmp(
  346. AsnOctetString * pOctets1,
  347. AsnOctetString * pOctets2,
  348. UINT nChars
  349. );
  350. SNMPAPI
  351. SNMP_FUNC_TYPE
  352. SnmpUtilOctetsCpy(
  353. AsnOctetString * pOctetsDst,
  354. AsnOctetString * pOctetsSrc
  355. );
  356. VOID
  357. SNMP_FUNC_TYPE
  358. SnmpUtilOctetsFree(
  359. AsnOctetString * pOctets
  360. );
  361. SNMPAPI
  362. SNMP_FUNC_TYPE
  363. SnmpUtilAsnAnyCpy(
  364. AsnAny * pAnyDst,
  365. AsnAny * pAnySrc
  366. );
  367. VOID
  368. SNMP_FUNC_TYPE
  369. SnmpUtilAsnAnyFree(
  370. AsnAny * pAny
  371. );
  372. SNMPAPI
  373. SNMP_FUNC_TYPE
  374. SnmpUtilVarBindCpy(
  375. SnmpVarBind * pVbDst,
  376. SnmpVarBind * pVbSrc
  377. );
  378. VOID
  379. SNMP_FUNC_TYPE
  380. SnmpUtilVarBindFree(
  381. SnmpVarBind * pVb
  382. );
  383. SNMPAPI
  384. SNMP_FUNC_TYPE
  385. SnmpUtilVarBindListCpy(
  386. SnmpVarBindList * pVblDst,
  387. SnmpVarBindList * pVblSrc
  388. );
  389. VOID
  390. SNMP_FUNC_TYPE
  391. SnmpUtilVarBindListFree(
  392. SnmpVarBindList * pVbl
  393. );
  394. VOID
  395. SNMP_FUNC_TYPE
  396. SnmpUtilMemFree(
  397. LPVOID pMem
  398. );
  399. LPVOID
  400. SNMP_FUNC_TYPE
  401. SnmpUtilMemAlloc(
  402. UINT nBytes
  403. );
  404. LPVOID
  405. SNMP_FUNC_TYPE
  406. SnmpUtilMemReAlloc(
  407. LPVOID pMem,
  408. UINT nBytes
  409. );
  410. LPSTR
  411. SNMP_FUNC_TYPE
  412. SnmpUtilOidToA(
  413. IN AsnObjectIdentifier *Oid
  414. );
  415. LPSTR
  416. SNMP_FUNC_TYPE
  417. SnmpUtilIdsToA(
  418. IN UINT *Ids,
  419. IN UINT IdLength
  420. );
  421. VOID
  422. SNMP_FUNC_TYPE
  423. SnmpUtilPrintOid(
  424. IN AsnObjectIdentifier *Oid
  425. );
  426. VOID
  427. SNMP_FUNC_TYPE
  428. SnmpUtilPrintAsnAny(
  429. AsnAny * pAny
  430. );
  431. DWORD
  432. SNMP_FUNC_TYPE
  433. SnmpSvcGetUptime(
  434. );
  435. VOID
  436. SNMP_FUNC_TYPE
  437. SnmpSvcSetLogLevel(
  438. INT nLogLevel
  439. );
  440. VOID
  441. SNMP_FUNC_TYPE
  442. SnmpSvcSetLogType(
  443. INT nLogType
  444. );
  445. ///////////////////////////////////////////////////////////////////////////////
  446. // //
  447. // SNMP Debugging Definitions //
  448. // //
  449. ///////////////////////////////////////////////////////////////////////////////
  450. #define SNMP_LOG_SILENT 0x0
  451. #define SNMP_LOG_FATAL 0x1
  452. #define SNMP_LOG_ERROR 0x2
  453. #define SNMP_LOG_WARNING 0x3
  454. #define SNMP_LOG_TRACE 0x4
  455. #define SNMP_LOG_VERBOSE 0x5
  456. #define SNMP_OUTPUT_TO_CONSOLE 0x1
  457. #define SNMP_OUTPUT_TO_LOGFILE 0x2
  458. #define SNMP_OUTPUT_TO_EVENTLOG 0x4 // no longer supported
  459. #define SNMP_OUTPUT_TO_DEBUGGER 0x8
  460. ///////////////////////////////////////////////////////////////////////////////
  461. // //
  462. // SNMP Debugging Prototypes //
  463. // //
  464. ///////////////////////////////////////////////////////////////////////////////
  465. VOID
  466. SNMP_FUNC_TYPE
  467. SnmpUtilDbgPrint(
  468. IN INT nLogLevel, // see log levels above...
  469. IN LPSTR szFormat,
  470. IN ...
  471. );
  472. #if DBG
  473. #define SNMPDBG(_x_) SnmpUtilDbgPrint _x_
  474. #else
  475. #define SNMPDBG(_x_)
  476. #endif
  477. ///////////////////////////////////////////////////////////////////////////////
  478. // //
  479. // Miscellaneous definitions //
  480. // //
  481. ///////////////////////////////////////////////////////////////////////////////
  482. #define DEFINE_SIZEOF(Array) (sizeof(Array)/sizeof((Array)[0]))
  483. #define DEFINE_OID(SubIdArray) {DEFINE_SIZEOF(SubIdArray),(SubIdArray)}
  484. #define DEFINE_NULLOID() {0,NULL}
  485. #define DEFINE_NULLOCTETS() {NULL,0,FALSE}
  486. #define DEFAULT_SNMP_PORT_UDP 161
  487. #define DEFAULT_SNMP_PORT_IPX 36879
  488. #define DEFAULT_SNMPTRAP_PORT_UDP 162
  489. #define DEFAULT_SNMPTRAP_PORT_IPX 36880
  490. #define SNMP_MAX_OID_LEN 128
  491. ///////////////////////////////////////////////////////////////////////////////
  492. // //
  493. // API Error Code Definitions //
  494. // //
  495. ///////////////////////////////////////////////////////////////////////////////
  496. #define SNMP_MEM_ALLOC_ERROR 1
  497. #define SNMP_BERAPI_INVALID_LENGTH 10
  498. #define SNMP_BERAPI_INVALID_TAG 11
  499. #define SNMP_BERAPI_OVERFLOW 12
  500. #define SNMP_BERAPI_SHORT_BUFFER 13
  501. #define SNMP_BERAPI_INVALID_OBJELEM 14
  502. #define SNMP_PDUAPI_UNRECOGNIZED_PDU 20
  503. #define SNMP_PDUAPI_INVALID_ES 21
  504. #define SNMP_PDUAPI_INVALID_GT 22
  505. #define SNMP_AUTHAPI_INVALID_VERSION 30
  506. #define SNMP_AUTHAPI_INVALID_MSG_TYPE 31
  507. #define SNMP_AUTHAPI_TRIV_AUTH_FAILED 32
  508. ///////////////////////////////////////////////////////////////////////////////
  509. // //
  510. // Support for old definitions (support disabled via SNMPSTRICT) //
  511. // //
  512. ///////////////////////////////////////////////////////////////////////////////
  513. #ifndef SNMPSTRICT
  514. #define SNMP_oidcpy SnmpUtilOidCpy
  515. #define SNMP_oidappend SnmpUtilOidAppend
  516. #define SNMP_oidncmp SnmpUtilOidNCmp
  517. #define SNMP_oidcmp SnmpUtilOidCmp
  518. #define SNMP_oidfree SnmpUtilOidFree
  519. #define SNMP_CopyVarBindList SnmpUtilVarBindListCpy
  520. #define SNMP_FreeVarBindList SnmpUtilVarBindListFree
  521. #define SNMP_CopyVarBind SnmpUtilVarBindCpy
  522. #define SNMP_FreeVarBind SnmpUtilVarBindFree
  523. #define SNMP_printany SnmpUtilPrintAsnAny
  524. #define SNMP_free SnmpUtilMemFree
  525. #define SNMP_malloc SnmpUtilMemAlloc
  526. #define SNMP_realloc SnmpUtilMemReAlloc
  527. #define SNMP_DBG_free SnmpUtilMemFree
  528. #define SNMP_DBG_malloc SnmpUtilMemAlloc
  529. #define SNMP_DBG_realloc SnmpUtilMemReAlloc
  530. #define ASN_RFC1155_IPADDRESS ASN_IPADDRESS
  531. #define ASN_RFC1155_COUNTER ASN_COUNTER32
  532. #define ASN_RFC1155_GAUGE ASN_GAUGE32
  533. #define ASN_RFC1155_TIMETICKS ASN_TIMETICKS
  534. #define ASN_RFC1155_OPAQUE ASN_OPAQUE
  535. #define ASN_RFC1213_DISPSTRING ASN_OCTETSTRING
  536. #define ASN_RFC1157_GETREQUEST SNMP_PDU_GET
  537. #define ASN_RFC1157_GETNEXTREQUEST SNMP_PDU_GETNEXT
  538. #define ASN_RFC1157_GETRESPONSE SNMP_PDU_RESPONSE
  539. #define ASN_RFC1157_SETREQUEST SNMP_PDU_SET
  540. #define ASN_RFC1157_TRAP SNMP_PDU_V1TRAP
  541. #define ASN_CONTEXTSPECIFIC ASN_CONTEXT
  542. #define ASN_PRIMATIVE ASN_PRIMITIVE
  543. #define RFC1157VarBindList SnmpVarBindList
  544. #define RFC1157VarBind SnmpVarBind
  545. #define AsnInteger AsnInteger32
  546. #define AsnCounter AsnCounter32
  547. #define AsnGauge AsnGauge32
  548. #endif // SNMPSTRICT
  549. #ifdef __cplusplus
  550. }
  551. #endif
  552. #endif // _INC_SNMP