|
|
1.1 ! root 1: /*++ BUILD Version: 0001 // Increment this if a change has global effects ! 2: ! 3: Copyright (c) 1991 Microsoft Corporation ! 4: ! 5: Module Name: ! 6: ! 7: testmib.h ! 8: ! 9: Abstract: ! 10: ! 11: Sample SNMP Extension Agent for Windows NT. ! 12: ! 13: These files (testdll.c, testmib.c, and testmib.h) provide an example of ! 14: how to structure an Extension Agent DLL which works in conjunction with ! 15: the SNMP Extendible Agent for Windows NT. ! 16: ! 17: Extensive comments have been included to describe its structure and ! 18: operation. See also "Microsoft Windows/NT SNMP Programmer's Reference". ! 19: ! 20: Created: ! 21: ! 22: 13-Jun-1991 ! 23: ! 24: Revision History: ! 25: ! 26: --*/ ! 27: ! 28: #ifndef testmib_h ! 29: #define testmib_h ! 30: ! 31: static char *testmib__h = "@(#) $Logfile: N:/xtest/vcs/testmib.h_v $ $Revision: 1.2 $"; ! 32: ! 33: ! 34: // Necessary includes. ! 35: ! 36: #include <snmp.h> ! 37: ! 38: ! 39: // MIB Specifics. ! 40: ! 41: #define MIB_PREFIX_LEN MIB_OidPrefix.idLength ! 42: #define MAX_STRING_LEN 255 ! 43: ! 44: ! 45: // Ranges and limits for specific MIB variables. ! 46: ! 47: #define MIB_TOASTER_UP 1 ! 48: #define MIB_TOASTER_DOWN 2 ! 49: ! 50: #define MIB_TOASTER_LIGHTLYWARM 1 ! 51: #define MIB_TOASTER_BURNT 10 ! 52: ! 53: #define MIB_TOASTER_WHITEBREAD 1 ! 54: #define MIB_TOASTER_OTHERBREAD 7 ! 55: ! 56: ! 57: // MIB function actions. ! 58: ! 59: #define MIB_ACTION_GET ASN_RFC1157_GETREQUEST ! 60: #define MIB_ACTION_SET ASN_RFC1157_SETREQUEST ! 61: #define MIB_ACTION_GETNEXT ASN_RFC1157_GETNEXTREQUEST ! 62: ! 63: ! 64: // MIB Variable access privileges. ! 65: ! 66: #define MIB_ACCESS_READ 0 ! 67: #define MIB_ACCESS_WRITE 1 ! 68: #define MIB_ACCESS_READWRITE 2 ! 69: ! 70: ! 71: // Macro to determine number of sub-oid's in array. ! 72: ! 73: #define OID_SIZEOF( Oid ) ( sizeof Oid / sizeof(UINT) ) ! 74: ! 75: ! 76: // MIB variable ENTRY definition. This structure defines the format for ! 77: // each entry in the MIB. ! 78: ! 79: typedef struct mib_entry ! 80: { ! 81: AsnObjectIdentifier Oid; ! 82: void * Storage; ! 83: BYTE Type; ! 84: UINT Access; ! 85: UINT (*MibFunc)( UINT, struct mib_entry *, ! 86: RFC1157VarBind * ); ! 87: struct mib_entry * MibNext; ! 88: } MIB_ENTRY; ! 89: ! 90: ! 91: // Internal MIB structure. ! 92: ! 93: extern MIB_ENTRY Mib[]; ! 94: extern UINT MIB_num_variables; ! 95: ! 96: ! 97: // Prefix to every variable in the MIB. ! 98: ! 99: extern AsnObjectIdentifier MIB_OidPrefix; ! 100: ! 101: ! 102: // Function Prototypes. ! 103: ! 104: UINT ResolveVarBind( ! 105: IN OUT RFC1157VarBind *VarBind, // Variable Binding to resolve ! 106: IN UINT PduAction // Action specified in PDU ! 107: ); ! 108: ! 109: UINT MIB_leaf_func( ! 110: IN UINT Action, ! 111: IN MIB_ENTRY *MibPtr, ! 112: IN RFC1157VarBind *VarBind ! 113: ); ! 114: ! 115: UINT MIB_control_func( ! 116: IN UINT Action, ! 117: IN MIB_ENTRY *MibPtr, ! 118: IN RFC1157VarBind *VarBind ! 119: ); ! 120: ! 121: UINT MIB_doneness_func( ! 122: IN UINT Action, ! 123: IN MIB_ENTRY *MibPtr, ! 124: IN RFC1157VarBind *VarBind ! 125: ); ! 126: ! 127: UINT MIB_toasttype_func( ! 128: IN UINT Action, ! 129: IN MIB_ENTRY *MibPtr, ! 130: IN RFC1157VarBind *VarBind ! 131: ); ! 132: ! 133: ! 134: #endif /* testmib_h */ ! 135:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.