Leaked source code of windows server 2003
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.
 
 
 
 
 
 

67 lines
1.7 KiB

// Copyright (c) 1997-2001 Microsoft Corporation, All Rights Reserved
/*-------------------------------------------------
filename: vbl.hpp
author: B.Rajeev
purpose: To provide declarations for the VBList class.
It encapsulates an association between a
VarBindList and a winSNMP VBL.
------------------------------------------------*/
#ifndef __VBL__
#define __VBL__
#include "forward.h"
#include "encap.h"
#include "common.h"
#include "encdec.h"
#include "vblist.h"
#define WinSNMPSession HSNMP_SESSION
// Given a var_bind_list creates a WinSnmpVbl. It supports deletion
// of variable bindings by their index. This deletes the
// binding from both var_bind_list and the WinSnmpVbl.
// It also allows direct access to the var_bind_list and the WinSnmpVbl
// for convenience
class VBList
{
ULONG m_Index ;
SnmpVarBindList *var_bind_list;
public:
VBList (
IN SnmpEncodeDecode &a_SnmpEncodeDecode ,
IN SnmpVarBindList &var_bind_list,
IN ULONG index
);
~VBList(void);
// the two Get functions provide direct access to the
// VarBindList and the WinSnmpVbl
SnmpVarBindList &GetVarBindList(void) { return *var_bind_list; }
ULONG GetIndex () { return m_Index ; }
// deletes the specified variable binding from both the
// var_bind_list and the WinSnmpVbl. returns a copy of the
// deleted VarBind
SnmpVarBind *Remove(IN UINT vbl_index);
// gets the specified variable binding from both the
// var_bind_list and the WinSnmpVbl. returns a copy of the
// deleted VarBind
SnmpVarBind *Get (IN UINT vbl_index);
// deletes the specified variable binding from both the
// var_bind_list and the WinSnmpVbl.
void Delete (IN UINT vbl_index);
};
#endif // __VBL__