Skip to content

BigDipper release (7.0)

Compare
Choose a tag to compare
@lextm lextm released this 30 Oct 06:49
· 671 commits to master since this release

Tested on

  • openSUSE 11.4 x86,
  • Windows Vista SP2 x86,
  • Windows 8 Developer Preview x86.
  1. SharpSnmpLib.Controls.dll is removed. Its components are moved to SharpSnmpLib.dll.
  2. Asynchronous support is added to ISnmpMessage derived classes.
  3. Compiler core is enhanced.

Core assemblies changes from 6.1.1:

Although in this release we only performed cleanup, a lot of the corners are touched heavily.

New Public Types

This query return a lot, but in fact only several new types are added to enhance the MIB compiler, such as

  • MaxAccess
  • Status
    and some extension classes to define extension methods which simplifies the code base a lot, such as
  • SnmpDataExtension
  • StreamExtension
  • AuthenticationProviderExtension
  • EndPointExtension

Most of classes returned from this query are in fact moved from old places to new ones, such as

  • ITypeAssignment moved from .Mib
  • Levels moved from .Security

Changed Interfaces (Breaking)

The following interfaces are changed,

  1. ISnmpData
    1, IDefinition
  2. IModule
  3. IObjectRegistry
  4. IObjectTree
  5. ISnmpMessage
  6. IAuthenticationProvider

Obsolete and Deleted Classes (Breaking)

  1. GetResponseMessage under .Messaging.(Resolution: Use ResponseMessage.)
  2. GetResponsePdu. (Resolution: Use ResponsePdu.)
  3. Integer64. (Resolution: not needed by #SNMP any more. If need it, use the old class from a previous release.)
  4. Integer under .Mib

Removed Methods (Breaking)

  1. ByteTool.ToBytes(ISnmpData) (Resolution: ToBytes is now an extension method in SnmpDataExtension class.)
  2. ISnmpData.ToBytes() (Resolution: ToBytes is now an extension method in SnmpDataExtension class.)
  3. All ISnmpData derived classes have ToBytes method. (Resolution: ToBytes is now an extension method in SnmpDataExtension class.)
  4. Header.Header(Integer32, Integer32, OctetString, Integer32) (Resolution: Use other constructors.)
  5. MalformedPdu.Instance (Resolution: Construct objects instead of using this default one.)
  6. SearchResult.GetStringOf(ObjectIdentifier, IObjectRegistry) (Resolution: Use 1. 1. ObjectIdentifier.ToString(IObjectRegistry).)
  7. OctetString.ToDateString() (Resolution: Use GetRaw() to get the raw bytes and then parse on your own.)
  8. Sequence.ctor(IEnumerable) (Resolution: Use other constructors.)
  9. Sequence.Count (Resolution: Use Sequence.Length.)
  10. ISnmpMessage.Pdu, RequestId, MessageId. (Resolution: Moved to SnmpMessageExtension as extension methods.)
  11. All ISnmpMessage derived classes Variables, RequestId, Pdu, MessageId, Community, GetResponse(*). (Resolution: Moved to SnmpMessageExtension as extension methods.)
  12. SnmpMessageExtension.GetSocket(EndPoint) (Resolution: Moved to EndPointExtension as extension method.)
  13. InformRequestMessage.GenerateResponse() (Resolution: Use the pipeline.)
  14. TrapV1Message.Send(*) (Resolution: Moved to SnmpMessageExtension as extension method.)
  15. TrapV2Message.Send(*) (Resolution: Moved to SnmpMessageExtension as extension method.)
  16. IAuthenticationProvider.ComputeHash, VerifyHash. (Resolution: Moved to AuthenticationProviderExtension class as extension methods.)
  17. One of User constructor. (Resolution: Use the remaining constructor.)

Obsolete Methods (Breaking)

Some constructors of GetNextRequestPdu, GetRequestPdu, SetRequestPdu. (Resolution: Use the other constructors.)