68 void PrintOn(ostream & strm)
const;
199 PINDEX timeoutMax = 5,
200 PINDEX rxBufferSize = 1500,
201 PINDEX txSize = 484);
204 PINDEX timeoutMax = 5,
205 PINDEX rxBufferSize = 1500,
206 PINDEX txSize = 484);
261 WORD localPort = 161,
262 PINDEX timeout = 5000,
263 PINDEX rxSize = 10000,
264 PINDEX txSize = 10000);
301 #endif // PTLIB_PSNMP_H
PBYTEArray readBuffer
Definition: psnmp.h:245
list< pair< PString, PRFC1155_ObjectSyntax > > BindingList
Definition: psnmp.h:185
PASNObject & operator[](PINDEX idx) const
PString GetObjectID(PINDEX idx) const
PASN_Integer version
Definition: psnmp.h:289
#define PCLASSINFO(cls, par)
Declare all the standard PTLib class information.
Definition: object.h:1049
PBYTEArray readBuffer
Definition: psnmp.h:292
PINDEX retryMax
Definition: psnmp.h:242
PString community
Definition: psnmp.h:288
virtual PBoolean ConfirmCommunity(PASN_OctetString &community)
PBoolean WriteGetRequest(PSNMPVarBindingList &varsIn, PSNMPVarBindingList &varsOut)
A socket channel that uses the UDP transport on the Internet Protocol.
Definition: udpsock.h:47
static void SendTrap(const PIPSocket::Address &addr, PSNMP::TrapType trapType, const PString &community, const PString &enterprise, PINDEX specificTrap, PASNUnsigned timeTicks, const PSNMPVarBindingList &vars, WORD sendPort=TrapPort)
A descendant of PUDPSocket which can perform SNMP calls.
Definition: psnmp.h:79
void SetVersion(PASNInt version)
PString community
Definition: psnmp.h:239
This is a channel that operates indirectly through another channel(s).
Definition: indchan.h:49
TrapType
Definition: psnmp.h:111
static PString GetTrapTypeText(PINDEX code)
PStringArray objectIds
Definition: psnmp.h:71
This is an array collection class of PString objects.
Definition: pstring.h:2024
void SetCommunity(const PString &str)
PINDEX lastErrorIndex
Definition: psnmp.h:290
PInt32 PASNInt
Definition: pasn.h:43
PINDEX lastErrorIndex
Definition: psnmp.h:243
This class defines the common behviour of all ASN objects.
Definition: pasn.h:64
Class which gets SNMP data.
Definition: psnmp.h:193
PINDEX maxTxSize
Definition: psnmp.h:294
PBoolean WriteRequest(PASNInt requestCode, PSNMPVarBindingList &varsIn, PSNMPVarBindingList &varsOut)
virtual PBoolean MIB_LocalMatch(PSNMP_PDU &pdu)
void SetVersion(PASNInt newVersion)
BOOL PBoolean
Definition: object.h:102
PINDEX GetLastErrorIndex() const
void SetRequestID(PASNInt requestID)
virtual PBoolean OnSetRequest(PINDEX reqID, PSNMP::BindingList &vars, PSNMP::ErrorType &errCode)
void AppendString(const PString &objectID, const PString &str)
Array of unsigned characters.
Definition: array.h:670
PString hostName
Definition: psnmp.h:238
PBoolean ProcessPDU(const PBYTEArray &readBuffer, PBYTEArray &writeBuffer)
PSNMPClient(const PString &host, PINDEX retryMax=5, PINDEX timeoutMax=5, PINDEX rxBufferSize=1500, PINDEX txSize=484)
static PString GetErrorText(ErrorType err)
ErrorType
Definition: psnmp.h:83
void PrintOn(ostream &strm) const
Output the contents of the object to the stream.
PThreadObj< PSNMPServer > m_thread
Definition: psnmp.h:287
PASNInt requestId
Definition: psnmp.h:240
PINDEX maxRxSize
Definition: psnmp.h:246
virtual PBoolean Authorise(const PIPSocket::Address &received)
Abstract class defining I/O channel semantics.
Definition: channel.h:107
virtual PBoolean OnGetNextRequest(PINDEX reqID, PSNMP::BindingList &vars, PSNMP::ErrorType &errCode)
PASNObjectArray values
Definition: psnmp.h:72
static void SendEnterpriseTrap(const PIPSocket::Address &addr, const PString &community, const PString &enterprise, PINDEX specificTrap, PASNUnsigned timeTicks, WORD sendPort=TrapPort)
PASNInt GetRequestID() const
PINDEX maxTxSize
Definition: psnmp.h:247
The character string class.
Definition: pstring.h:108
virtual PBoolean ConfirmVersion(PASN_Integer vers)
PASNInt version
Definition: psnmp.h:241
PSNMPServer(PIPSocket::Address binding=PIPSocket::GetDefaultIpAny(), WORD localPort=161, PINDEX timeout=5000, PINDEX rxSize=10000, PINDEX txSize=10000)
A list of object IDs and their values.
Definition: psnmp.h:51
static void WriteTrap(PChannel &channel, PSNMP::TrapType trapType, const PString &community, const PString &enterprise, PINDEX specificTrap, PASNUnsigned timeTicks, const PSNMPVarBindingList &vars, const PIPSocket::Address &agentAddress)
static PIPSocket::Address GetDefaultIpAny()
void Append(const PString &objectID)
ErrorType lastErrorCode
Definition: psnmp.h:244
A class describing an IP address.
Definition: ipsock.h:75
PINDEX GetIndex(const PString &objectID) const
PBoolean ReadRequest(PBYTEArray &readBuffer)
PBoolean WriteSetRequest(PSNMPVarBindingList &varsIn, PSNMPVarBindingList &varsOut)
PSNMP::ErrorType SendGetResponse(PSNMPVarBindingList &vars)
virtual PBoolean OnGetRequest(PINDEX reqID, PSNMP::BindingList &vars, PSNMP::ErrorType &errCode)
PBoolean WriteGetNextRequest(PSNMPVarBindingList &varsIn, PSNMPVarBindingList &varsOut)
PUDPSocket * baseSocket
Definition: psnmp.h:295
PString GetCommunity() const
Class for ASN Octet String type.
Definition: asner.h:458
RequestType
Definition: psnmp.h:101
Class for ASN Integer type.
Definition: asner.h:234
PString GetLastErrorText() const
Class which supplies SNMP data.
Definition: psnmp.h:255
PDictionary< PRFC1155_ObjectName, PRFC1155_ObjectSyntax > objList
Definition: psnmp.h:296
Ultimate parent class for all objects in the class library.
Definition: object.h:1118
PINDEX maxRxSize
Definition: psnmp.h:293
PASNInt GetVersion() const
DWORD PASNUnsigned
Definition: pasn.h:44
ErrorType GetLastErrorCode() const
ErrorType lastErrorCode
Definition: psnmp.h:291