This repository has been archived on 2024-12-16. You can view files and clone it, but cannot push or open issues or pull requests.
CodeBlocksPortable/WATCOM/h/nt/winsnmp.h

299 lines
12 KiB
C
Raw Permalink Normal View History

/*
* winsnmp.h Win32 SNMP functions
*
* =========================================================================
*
* Open Watcom Project
*
* Copyright (c) 2004-2010 The Open Watcom Contributors. All Rights Reserved.
*
* This file is automatically generated. Do not edit directly.
*
* =========================================================================
*/
#ifndef _INC_WINSNMP
#define _INC_WINSNMP
#ifndef _ENABLE_AUTODEPEND
#pragma read_only_file;
#endif
#ifdef __cplusplus
extern "C" {
#endif
/* SNMP calling convention */
#define SNMPAPI_CALL WINAPI
/* SNMP primitive data types */
typedef HANDLE HSNMP_SESSION;
typedef HANDLE *LPHSNMP_SESSION;
typedef HANDLE HSNMP_ENTITY;
typedef HANDLE *LPHSNMP_ENTITY;
typedef HANDLE HSNMP_CONTEXT;
typedef HANDLE *LPHSNMP_CONTEXT;
typedef HANDLE HSNMP_PDU;
typedef HANDLE *LPHSNMP_PDU;
typedef HANDLE HSNMP_VBL;
typedef HANDLE *LPHSNMP_VBL;
typedef unsigned char smiBYTE;
typedef unsigned char *smiLPBYTE;
typedef signed long smiINT;
typedef signed long *smiLPINT;
typedef smiINT smiINT32;
typedef smiINT *smiLPINT32;
typedef unsigned long smiUINT32;
typedef unsigned long *smiLPUINT32;
typedef smiUINT32 smiCNTR32;
typedef smiUINT32 *smiLPCNTR32;
typedef smiUINT32 smiGAUGE32;
typedef smiUINT32 *smiLPGAUGE32;
typedef smiUINT32 smiTIMETICKS;
typedef smiUINT32 *smiLPTIMETICKS;
typedef smiUINT32 SNMPAPI_STATUS;
/* ASN base types */
#define ASN_UNIVERSAL 0x00
#define ASN_APPLICATION 0x40
#define ASN_CONTEXT 0x80
#define ASN_PRIVATE 0xC0
#define ASN_PRIMITIVE 0x00
#define ASN_CONSTRUCTOR 0x20
/* SNMP object syntax values */
#define SNMP_SYNTAX_SEQUENCE (ASN_UNIVERSAL | ASN_CONSTRUCTOR | 0x10)
#define SNMP_SYNTAX_INT (ASN_UNIVERSAL | ASN_PRIMITIVE | 0x02)
#define SNMP_SYNTAX_BITS (ASN_UNIVERSAL | ASN_PRIMITIVE | 0x03)
#define SNMP_SYNTAX_OCTETS (ASN_UNIVERSAL | ASN_PRIMITIVE | 0x04)
#define SNMP_SYNTAX_NULL (ASN_UNIVERSAL | ASN_PRIMITIVE | 0x05)
#define SNMP_SYNTAX_OID (ASN_UNIVERSAL | ASN_PRIMITIVE | 0x06)
#define SNMP_SYNTAX_INT32 SNMP_SYNTAX_INT
#define SNMP_SYNTAX_IPADDR (ASN_APPLICATION | ASN_PRIMITIVE | 0x00)
#define SNMP_SYNTAX_CNTR32 (ASN_APPLICATION | ASN_PRIMITIVE | 0x01)
#define SNMP_SYNTAX_GAUGE32 (ASN_APPLICATION | ASN_PRIMITIVE | 0x02)
#define SNMP_SYNTAX_TIMETICKS (ASN_APPLICATION | ASN_PRIMITIVE | 0x03)
#define SNMP_SYNTAX_OPAQUE (ASN_APPLICATION | ASN_PRIMITIVE | 0x04)
#define SNMP_SYNTAX_NSAPADDR (ASN_APPLICATION | ASN_PRIMITIVE | 0x05)
#define SNMP_SYNTAX_CNTR64 (ASN_APPLICATION | ASN_PRIMITIVE | 0x06)
#define SNMP_SYNTAX_UINT32 (ASN_APPLICATION | ASN_PRIMITIVE | 0x07)
#define SNMP_SYNTAX_UNSIGNED32 SNMP_SYNTAX_GAUGE32
#define SNMP_SYNTAX_NOSUCHOBJECT (ASN_CONTEXT | ASN_PRIMITIVE | 0x00)
#define SNMP_SYNTAX_NOSUCHINSTANCE (ASN_CONTEXT | ASN_PRIMITIVE | 0x01)
#define SNMP_SYNTAX_ENDOFMIBVIEW (ASN_CONTEXT | ASN_PRIMITIVE | 0x02)
/* Size limits */
#define MAXOBJIDSIZE 128
#define MAXOBJIDSTRSIZE 1408
#define MAXVENDORINFO 32
/* SNMP PDU types */
#define SNMP_PDU_GET (ASN_CONTEXT | ASN_CONSTRUCTOR | 0x00)
#define SNMP_PDU_GETNEXT (ASN_CONTEXT | ASN_CONSTRUCTOR | 0x01)
#define SNMP_PDU_RESPONSE (ASN_CONTEXT | ASN_CONSTRUCTOR | 0x02)
#define SNMP_PDU_SET (ASN_CONTEXT | ASN_CONSTRUCTOR | 0x03)
#define SNMP_PDU_V1TRAP (ASN_CONTEXT | ASN_CONSTRUCTOR | 0x04)
#define SNMP_PDU_GETBULK (ASN_CONTEXT | ASN_CONSTRUCTOR | 0x05)
#define SNMP_PDU_INFORM (ASN_CONTEXT | ASN_CONSTRUCTOR | 0x06)
#define SNMP_PDU_TRAP (ASN_CONTEXT | ASN_CONSTRUCTOR | 0x07)
/* SnmpListenEx() flags */
#define SNMPLISTEN_USEENTITY_ADDR 0
#define SNMPLISTEN_ALL_ADDR 1
/* SNMP trap values */
#define SNMP_TRAP_COLDSTART 0
#define SNMP_TRAP_WARMSTART 1
#define SNMP_TRAP_LINKDOWN 2
#define SNMP_TRAP_LINKUP 3
#define SNMP_TRAP_AUTHFAIL 4
#define SNMP_TRAP_EGPNEIGHBORLOSS 5
#define SNMP_TRAP_ENTERPRISESPECIFIC 6
/* SNMP error codes */
#define SNMP_ERROR_NOERROR 0
#define SNMP_ERROR_TOOBIG 1
#define SNMP_ERROR_NOSUCHNAME 2
#define SNMP_ERROR_BADVALUE 3
#define SNMP_ERROR_READONLY 4
#define SNMP_ERROR_GENERR 5
#define SNMP_ERROR_NOACCESS 6
#define SNMP_ERROR_WRONGTYPE 7
#define SNMP_ERROR_WRONGLENGTH 8
#define SNMP_ERROR_WRONGENCODING 9
#define SNMP_ERROR_WRONGVALUE 10
#define SNMP_ERROR_NOCREATION 11
#define SNMP_ERROR_INCONSISTENTVALUE 12
#define SNMP_ERROR_RESOURCEUNAVAILABLE 13
#define SNMP_ERROR_COMMITFAILED 14
#define SNMP_ERROR_UNDOFAILED 15
#define SNMP_ERROR_AUTHORIZATIONERROR 16
#define SNMP_ERROR_NOTWRITABLE 17
#define SNMP_ERROR_INCONSISTENTNAME 18
/* SNMP API values */
#define SNMPAPI_TRANSLATED 0
#define SNMPAPI_UNTRANSLATED_V1 1
#define SNMPAPI_UNTRANSLATED_V2 2
#define SNMPAPI_NO_SUPPORT 0
#define SNMPAPI_V1_SUPPORT 1
#define SNMPAPI_V2_SUPPORT 2
#define SNMPAPI_M2M_SUPPORT 3
#define SNMPAPI_OFF 0
#define SNMPAPI_ON 1
/* SNMP API status values */
#define SNMPAPI_FAILURE 0L
#define SNMPAPI_SUCCESS 1L
#define SNMPAPI_ALLOC_ERROR 2L
#define SNMPAPI_CONTEXT_INVALID 3L
#define SNMPAPI_CONTEXT_UNKNOWN 4L
#define SNMPAPI_ENTITY_INVALID 5L
#define SNMPAPI_ENTITY_UNKNOWN 6L
#define SNMPAPI_INDEX_INVALID 7L
#define SNMPAPI_NOOP 8L
#define SNMPAPI_OID_INVALID 9L
#define SNMPAPI_OPERATION_INVALID 10L
#define SNMPAPI_OUTPUT_TRUNCATED 11L
#define SNMPAPI_PDU_INVALID 12L
#define SNMPAPI_SESSION_INVALID 13L
#define SNMPAPI_SYNTAX_INVALID 14L
#define SNMPAPI_VBL_INVALID 15L
#define SNMPAPI_MODE_INVALID 16L
#define SNMPAPI_SIZE_INVALID 17L
#define SNMPAPI_NOT_INITIALIZED 18L
#define SNMPAPI_MESSAGE_INVALID 19L
#define SNMPAPI_HWND_INVALID 20L
#define SNMPAPI_OTHER_ERROR 99L
#define SNMPAPI_TL_NOT_INITIALIZED 100L
#define SNMPAPI_TL_NOT_SUPPORTED 101L
#define SNMPAPI_TL_NOT_AVAILABLE 102L
#define SNMPAPI_TL_RESOURCE_ERROR 103L
#define SNMPAPI_TL_UNDELIVERABLE 104L
#define SNMPAPI_TL_SRC_INVALID 105L
#define SNMPAPI_TL_INVALID_PARAM 106L
#define SNMPAPI_TL_IN_USE 107L
#define SNMPAPI_TL_TIMEOUT 108L
#define SNMPAPI_TL_PDU_TOO_BIG 109L
#define SNMPAPI_TL_OTHER 199L
/* Octets */
typedef struct {
smiUINT32 len;
smiLPBYTE ptr;
} smiOCTETS;
typedef smiOCTETS *smiLPOCTETS;
typedef const smiOCTETS *smiLPCOCTETS;
typedef smiOCTETS smiBITS;
typedef smiOCTETS *smiLPBITS;
typedef smiOCTETS smiIPADDR;
typedef smiOCTETS *smiLPIPADDR;
typedef smiOCTETS smiOPAQUE;
typedef smiOCTETS *smiLPOPAQUE;
typedef smiOCTETS smiNSAPADDR;
typedef smiOCTETS *smiLPNSAPADDR;
/* Object identifier */
typedef struct {
smiUINT32 len;
smiLPUINT32 ptr;
} smiOID;
typedef smiOID *smiLPOID;
typedef const smiOID *smiLPCOID;
/* Counter (64-bit version) */
typedef struct {
smiUINT32 hipart;
smiUINT32 lopart;
} smiCNTR64;
typedef smiCNTR64 *smiLPCNTR64;
/* Value */
typedef struct {
smiUINT32 syntax;
union {
smiINT sNumber;
smiUINT32 uNumber;
smiCNTR64 hNumber;
smiOCTETS string;
smiOID oid;
smiBYTE empty;
} value;
} smiVALUE;
typedef smiVALUE *smiLPVALUE;
typedef const smiVALUE *smiLPCVALUE;
/* Vendor information */
typedef struct {
char vendorName[MAXVENDORINFO * 2];
char vendorContact[MAXVENDORINFO * 2];
char vendorVersionId[MAXVENDORINFO];
char vendorVersionDate[MAXVENDORINFO];
smiUINT32 vendorEnterprise;
} smiVENDORINFO;
typedef smiVENDORINFO *smiLPVENDORINFO;
/* SNMP API callback */
typedef SNMPAPI_STATUS (CALLBACK *SNMPAPI_CALLBACK)( HSNMP_SESSION, HWND, UINT, WPARAM, LPARAM, LPVOID );
/* Function pointer prototypes for some SNMP functions */
typedef SNMPAPI_STATUS (SNMPAPI_CALL *PFNSNMPSTARTUPEX)( smiLPUINT32, smiLPUINT32, smiLPUINT32, smiLPUINT32, smiLPUINT32 );
typedef SNMPAPI_STATUS (SNMPAPI_CALL *PFNSNMPCLEANUPEX)( void );
/* Functions in WSNMP32.DLL */
SNMPAPI_STATUS SNMPAPI_CALL SnmpCancelMsg( HSNMP_SESSION, smiINT32 );
SNMPAPI_STATUS SNMPAPI_CALL SnmpCleanup( void );
SNMPAPI_STATUS SNMPAPI_CALL SnmpCleanupEx( void );
SNMPAPI_STATUS SNMPAPI_CALL SnmpClose( HSNMP_SESSION );
SNMPAPI_STATUS SNMPAPI_CALL SnmpContextToStr( HSNMP_CONTEXT, smiLPOCTETS );
SNMPAPI_STATUS SNMPAPI_CALL SnmpCountVbl( HSNMP_VBL );
HSNMP_PDU SNMPAPI_CALL SnmpCreatePdu( HSNMP_SESSION, smiINT, smiINT32, smiINT, smiINT, HSNMP_VBL );
HSNMP_SESSION SNMPAPI_CALL SnmpCreateSession( HWND, UINT, SNMPAPI_CALLBACK, LPVOID );
HSNMP_VBL SNMPAPI_CALL SnmpCreateVbl( HSNMP_SESSION, smiLPCOID, smiLPCVALUE );
SNMPAPI_STATUS SNMPAPI_CALL SnmpDecodeMsg( HSNMP_SESSION, LPHSNMP_ENTITY, LPHSNMP_ENTITY, LPHSNMP_CONTEXT, LPHSNMP_PDU, smiLPCOCTETS );
SNMPAPI_STATUS SNMPAPI_CALL SnmpDeleteVb( HSNMP_VBL, smiUINT32 );
HSNMP_PDU SNMPAPI_CALL SnmpDuplicatePdu( HSNMP_SESSION, HSNMP_PDU );
HSNMP_VBL SNMPAPI_CALL SnmpDuplicateVbl( HSNMP_SESSION, HSNMP_PDU );
SNMPAPI_STATUS SNMPAPI_CALL SnmpEncodeMsg( HSNMP_SESSION, HSNMP_ENTITY, HSNMP_ENTITY, HSNMP_CONTEXT, HSNMP_PDU, smiLPOCTETS );
SNMPAPI_STATUS SNMPAPI_CALL SnmpEntityToStr( HSNMP_ENTITY, smiUINT32, LPSTR );
SNMPAPI_STATUS SNMPAPI_CALL SnmpFreeContext( HSNMP_CONTEXT );
SNMPAPI_STATUS SNMPAPI_CALL SnmpFreeDescriptor( smiUINT32, smiLPOPAQUE );
SNMPAPI_STATUS SNMPAPI_CALL SnmpFreeEntity( HSNMP_ENTITY );
SNMPAPI_STATUS SNMPAPI_CALL SnmpFreePdu( HSNMP_PDU );
SNMPAPI_STATUS SNMPAPI_CALL SnmpFreeVbl( HSNMP_VBL );
SNMPAPI_STATUS SNMPAPI_CALL SnmpGetLastError( HSNMP_SESSION );
SNMPAPI_STATUS SNMPAPI_CALL SnmpGetPduData( HSNMP_PDU, smiLPINT, smiLPINT32, smiLPINT, smiLPINT, LPHSNMP_VBL );
SNMPAPI_STATUS SNMPAPI_CALL SnmpGetRetransmitMode( smiLPUINT32 );
SNMPAPI_STATUS SNMPAPI_CALL SnmpGetRetry( HSNMP_ENTITY, smiLPUINT32, smiLPUINT32 );
SNMPAPI_STATUS SNMPAPI_CALL SnmpGetTimeout( HSNMP_ENTITY, smiLPTIMETICKS, smiLPTIMETICKS );
SNMPAPI_STATUS SNMPAPI_CALL SnmpGetTranslateMode( smiLPUINT32 );
SNMPAPI_STATUS SNMPAPI_CALL SnmpGetVb( HSNMP_VBL, smiUINT32, smiLPOID, smiLPVALUE );
SNMPAPI_STATUS SNMPAPI_CALL SnmpGetVendorInfo( smiLPVENDORINFO );
SNMPAPI_STATUS SNMPAPI_CALL SnmpListen( HSNMP_ENTITY, SNMPAPI_STATUS );
SNMPAPI_STATUS SNMPAPI_CALL SnmpListenEx( HSNMP_ENTITY, SNMPAPI_STATUS, smiUINT32 );
SNMPAPI_STATUS SNMPAPI_CALL SnmpOidCompare( smiLPCOID, smiLPCOID, smiUINT32, smiLPINT );
SNMPAPI_STATUS SNMPAPI_CALL SnmpOidCopy( smiLPCOID, smiLPOID );
SNMPAPI_STATUS SNMPAPI_CALL SnmpOidToStr( smiLPCOID, smiUINT32, LPSTR );
HSNMP_SESSION SNMPAPI_CALL SnmpOpen( HWND, UINT );
SNMPAPI_STATUS SNMPAPI_CALL SnmpRecvMsg( HSNMP_SESSION, LPHSNMP_ENTITY, LPHSNMP_ENTITY, LPHSNMP_CONTEXT, LPHSNMP_PDU );
SNMPAPI_STATUS SNMPAPI_CALL SnmpRegister( HSNMP_SESSION, HSNMP_ENTITY, HSNMP_ENTITY, HSNMP_CONTEXT, smiLPCOID, smiUINT32 );
SNMPAPI_STATUS SNMPAPI_CALL SnmpSendMsg( HSNMP_SESSION, HSNMP_ENTITY, HSNMP_ENTITY, HSNMP_CONTEXT, HSNMP_PDU );
SNMPAPI_STATUS SNMPAPI_CALL SnmpSetPduData( HSNMP_PDU, const smiINT *, const smiINT32 *, const smiINT *, const smiINT *, const HSNMP_VBL * );
SNMPAPI_STATUS SNMPAPI_CALL SnmpSetPort( HSNMP_ENTITY, UINT );
SNMPAPI_STATUS SNMPAPI_CALL SnmpSetRetransmitMode( smiUINT32 );
SNMPAPI_STATUS SNMPAPI_CALL SnmpSetRetry( HSNMP_ENTITY, smiUINT32 );
SNMPAPI_STATUS SNMPAPI_CALL SnmpSetTimeout( HSNMP_ENTITY, smiTIMETICKS );
SNMPAPI_STATUS SNMPAPI_CALL SnmpSetTranslateMode( smiUINT32 );
SNMPAPI_STATUS SNMPAPI_CALL SnmpSetVb( HSNMP_VBL, smiUINT32, smiLPCOID, smiLPCVALUE );
SNMPAPI_STATUS SNMPAPI_CALL SnmpStartup( smiLPUINT32, smiLPUINT32, smiLPUINT32, smiLPUINT32, smiLPUINT32 );
SNMPAPI_STATUS SNMPAPI_CALL SnmpStartupEx( smiLPUINT32, smiLPUINT32, smiLPUINT32, smiLPUINT32, smiLPUINT32 );
HSNMP_CONTEXT SNMPAPI_CALL SnmpStrToContext( HSNMP_SESSION, smiLPCOCTETS );
HSNMP_ENTITY SNMPAPI_CALL SnmpStrToEntity( HSNMP_SESSION, LPCSTR );
SNMPAPI_STATUS SNMPAPI_CALL SnmpStrToOid( LPCSTR, smiLPOID );
#ifdef __cplusplus
} /* extern "C" */
#endif
#endif /* _INC_WINSNMP */