SNMP#NET / News: Recent posts

Version 0.8.6

There are 2 major changes in this version. First is the long ready and somehow overlooked update to SNMPv3 caching of authentication and privacy keys. By using new methods/properties in SecureAgentParameters and SnmpV3Packet classes you can now cut down the time it takes to make v3 requests to a fraction of time it took in the previous version. My appologies to Pavel for not publishing this earlier.... read more

Posted by milans 2011-03-30

Version 0.8.5

This is a small update version. None of the core functionality has been changed.

Responding to a request, I have changed the VbCollection copy constructor to accept any IEnumerable<Vb> class as a parameter.

I have spent the last few weeks working with the library and SNMPv3 and found that SecureAgentParameters initialization of user, authentication and privacy is not as smooth as I hoped. For that reason there are now noAuthNoPriv, authNoPriv and authPriv methods that allow you to set all security related information through a single call. This should help with setting these values after discovery is completed.... read more

Posted by milans 2011-02-20

Package layout change on SourceForge

I have changed the layout of the download packages. From version 0.6 binary, source and documentation downloads will be posted under snmpsharpnet package. Old snmpsharpnet-doc and snmpsharpnet-src packages have been hidden and are no longer accesible. If you need an older version of the SnmpSharpNet library, feel free to contact me on dev [at] snmpsharpnet [dot] com and I will make version you require available again.

Posted by milans 2009-05-12

Library version 0.6 released

Major update is inclusion of AES-192 and AES-256 privacy protocols (encryption).



Posted by milans 2009-05-12

Documentation updates

Check out new and updated documentation on

Included are guides on how to use the packet class libraries for full control over the packet content, encoding and decoding, examples on how to use TrapAgent to send v1, v2 and v3 Traps and a lot more.

Keep checking the site for new documents.

Posted by milans 2009-04-12

Version 0.5.2 posted

New and improved version 0.5.2 has been posted.

Included is a critical bugfix related to decoding negative numbers in Integer32 class so it is recommended that everybody move to the latest library version.

Changelog for the version includes:
* changed Pdu.Type from byte constants in SnmpConstants to PduType enum to avoid mistakes
* changed TrapPdu.encode to use VbList.encode instead of encoding individual Vb entries in a loop
* added TrapAgent helper class for simplified sending of Traps
* added offset check in AsnType.ParseLength that now throws OverflowException when end of buffer is reached
* added [Serializable] flag to all the Type classes
* reordered operations in Null.decode so parsed ASN.1 type is checked before field length
* removed Opaque.ToString(). Base class OctetString.ToString() and OctetString.ToHexString are adequate.
* bugfix: Integer32.decode() BER decoding of negative numbers fixed
* improved Integer32.encode() method
* changed TrapPdu properties Generic, Specific and TimeStamp to return native data types (Int32 and UInt32) instead
of library specific Integer32 and TimeStamp class references
* added VbCollection.Add(VbCollection) method to easily append contents of one collection to another
* changed TrapPdu.Set(AsnType) to TrapPdu.Set(TrapPdu)
* changed TrapPdu.Enterprise property from get/set to get only returning Oid object reference
* changed Pdu.encode to use private variables and not properties when encoding internal values
* removed generating a random Pdu.RequestId in SnmpV2Packet.encode because it is already done in Pdu.encode
* changed Oid.Set(AsnType) to Oid.Set(Oid). Didn't make sense to keep AsnType parameter when only Oid type is processed
* removed Pdu.Reset() call from Pdu.SetVbList() and replaced it with VbCollection.Clear()
* renamed SnmpV1Packet.SnmpCommunity, SnmpV1TrapPacket.SnmpCommunity and SnmpV2Packet.SnmpCommunity property to Community
* changed SnmpV1Packet.decode, SnmpV1TrapPacket.decode and encode, SnmpV2Packet.decode methods from using Community
property to using _snmpCommunity protected variable
* changed Oid.encode to allow encoding of 0 length Oid values
* changed Pdu class to set NonRepeaters to zero and MaxRepetitions to 100 when type is changed to GetBulk
* added SnmpInvalidPduTypeException when trying to access Pdu properties ErrorStatus and ErrorIndex in GetBulk Pdu Types

Posted by milans 2009-04-12

Bugfix release 0.5.1

0.5.1 is a bug fix release. 3 bugs have been found that can seriously impact development using this library so I have organized a fix and a quick release to address them.

First issue is related to the Pdu.Reset function that set RequestId value to 0. This results in RequestId being allocated a random value during encoding and interfering with matching of requests and replies.

The other two bugs are in operator == code in Integer32 and UInteger32 classes. When comparing against null, StackOverflowException is thrown.... read more

Posted by milans 2009-03-30

SNMP Version 3 notifications

Guide on how to receive SNMP version 3 Trap and Inform packets with noAuthNoPriv, authNoPriv and authPriv security models is posted here:

Posted by milans 2009-03-19

Release beta version 0.5.0

Updated version has been posted. This is the first full beta with all included operations tested to beta standard (lab testing).

Changes include:
* improved exception generation
* improved class interface consistency
* included SimpleSnmp class for easy v1 and v2c operations
* completed and tested v2trap and inform handling with both SNMPv2 and SNMPv3
* fully tested SNMPv3 DES/AES-128 privacy
* fully tested SNMPv3 MD5/SHA-1 authentication
* fully tested noAuthNoPriv SNMPv3 operation
* fully tested all operations with SNMPv2c and v1
* many, many bug fixes... read more

Posted by milans 2009-03-17

Version 0.4.3 posted

In the new version fixed issues with SNMP version 1 and 2 traps. Sufficient testing has been completed to move v1 and v2 TRAP handling to beta status.

Posted by milans 2009-02-22

Major bug introduced in version 0.4.1 fixed in 0.4.2

Version 0.4.1 will not correctly encode SNMP version 2 packets. Fix implemented in newly posted 0.4.2 version.

Posted by milans 2009-02-10

bug fix update version 0.4.0001

First round of async interface tests completed. Fixes to bugs found are posted in release 0.4.0001.

No new features included.

Posted by milans 2009-02-09

Version 0.4 posted

New version of the SNMP#NET library has been loaded on SourceForge.

This is the first alpha version that includes support for SNMP version 3. Authentication using MD5 and SHA-1 digests is included. Privacy protocols DES and AES-128 are implemented.

Until the first beta is released, library is subject to radical change as further protocol support is built.

Posted by milans 2009-02-02

Alpha version 0.2.1028 posted

New version including a large number of bug fixes has been posted.

Posted by milans 2008-12-18

Version 0.2.1024 posted

Version 0.2.1024 is now available in the downloads section and SVN. This version is a big cleanup, mostly based on FxCop evaluation. Testing of the new version has not been done so it is possible that some of the suggested fixes break functionality.

New version with tests completed is expected within a week.

Posted by milans 2008-11-23

Document introducing basic operation added

Introduction document showing how to use the library has been loaded on the website at

Posted by milans 2008-11-18

SnmpSharpNet version posted

Library version (Alpha) has been posted on SourceForge. Basic functionality of both blocking and async mode SNMP Get, Get-Next, Get-Bulk, and Set has been tested and is fully operational.

Posted by milans 2008-11-17