/// <summary> /// Creates a <see cref="SetRequestPdu"/> instance with all contents. /// </summary> /// <param name="requestId">The request id.</param> /// <param name="variables">Variables</param> public SetRequestPdu(int requestId, IList <Variable> variables) { if (variables == null) { throw new ArgumentNullException("variables"); } RequestId = new Integer32(requestId); ErrorStatus = Integer32.Zero; ErrorIndex = Integer32.Zero; Variables = variables; _varbindSection = Variable.Transform(Variables); }
/// <summary> /// Initializes a new instance of the <see cref="Header"/> class. /// </summary> /// <param name="messageId">The message id.</param> /// <param name="maxMessageSize">Size of the max message.</param> /// <param name="securityLevel">The security level.</param> /// <remarks>If you want an empty header, please use <see cref="Empty"/>.</remarks> public Header(Integer32 messageId, Integer32 maxMessageSize, Levels securityLevel) { if (maxMessageSize == null) { throw new ArgumentNullException("maxMessageSize"); } _messageId = messageId; _maxSize = maxMessageSize; SecurityLevel = securityLevel; _flags = new OctetString(SecurityLevel); _securityModel = DefaultSecurityModel; }
/// <summary> /// Initializes a new instance of the <see cref="SecurityParameters"/> class. /// </summary> /// <param name="engineId">The engine ID.</param> /// <param name="engineBoots">The engine boots.</param> /// <param name="engineTime">The engine time.</param> /// <param name="userName">The user name.</param> /// <param name="authenticationParameters">The authentication parameters.</param> /// <param name="privacyParameters">The privacy parameters.</param> /// <remarks>Only <paramref name="userName"/> cannot be null.</remarks> public SecurityParameters(OctetString engineId, Integer32 engineBoots, Integer32 engineTime, OctetString userName, OctetString authenticationParameters, OctetString privacyParameters) { if (userName == null) { throw new ArgumentNullException("userName"); } EngineId = engineId; EngineBoots = engineBoots; EngineTime = engineTime; UserName = userName; AuthenticationParameters = authenticationParameters; PrivacyParameters = privacyParameters; }
/// <summary> /// Initializes a new instance of the <see cref="TrapV1Pdu"/> class. /// </summary> /// <param name="stream">The stream.</param> public TrapV1Pdu(EndPoint sourceEndPoint, Stream stream) { if (stream == null) { throw new ArgumentNullException("stream"); } Enterprise = (ObjectIdentifier)DataFactory.CreateSnmpData(sourceEndPoint, stream); AgentAddress = (IP)DataFactory.CreateSnmpData(sourceEndPoint, stream); _generic = (Integer32)DataFactory.CreateSnmpData(sourceEndPoint, stream); _specific = (Integer32)DataFactory.CreateSnmpData(sourceEndPoint, stream); TimeStamp = (TimeTicks)DataFactory.CreateSnmpData(sourceEndPoint, stream); _varbindSection = (Sequence)DataFactory.CreateSnmpData(sourceEndPoint, stream); Variables = Variable.Transform(_varbindSection); }
/// <summary> /// Initializes a new instance of the <see cref="Header"/> class. /// </summary> /// <param name="data">The data.</param> public Header(ISnmpData data) { if (data == null) { throw new ArgumentNullException("data"); } var container = (Sequence)data; _messageId = (Integer32)container[0]; _maxSize = (Integer32)container[1]; _flags = (OctetString)container[2]; SecurityLevel = _flags.ToLevels(); _securityModel = (Integer32)container[3]; }
/// <summary> /// Creates a <see cref="TrapV1Pdu"/> instance with PDU elements. /// </summary> /// <param name="enterprise">Enterprise</param> /// <param name="agent">Agent address</param> /// <param name="generic">Generic trap type</param> /// <param name="specific">Specific trap type</param> /// <param name="timestamp">Time stamp</param> /// <param name="variables">Variable binds</param> public TrapV1Pdu(ObjectIdentifier enterprise, IP agent, Integer32 generic, Integer32 specific, TimeTicks timestamp, IList <Variable> variables) { if (enterprise == null) { throw new ArgumentNullException("enterprise"); } if (agent == null) { throw new ArgumentNullException("agent"); } if (generic == null) { throw new ArgumentNullException("generic"); } if (specific == null) { throw new ArgumentNullException("specific"); } if (timestamp == null) { throw new ArgumentNullException("timestamp"); } if (variables == null) { throw new ArgumentNullException("variables"); } Enterprise = enterprise; AgentAddress = agent; _generic = generic; _specific = specific; TimeStamp = timestamp; _varbindSection = Variable.Transform(variables); Variables = variables; }
//----------------------------------------------------------------------------------- public static ISnmpData CreateSnmpDataFromStringUnsafe(SnmpType type, string strValeur) { ISnmpData data = null; switch (type) { case SnmpType.EndMarker: //Non geré break; case SnmpType.Integer32: data = new Integer32(Int32.Parse(strValeur)); break; case SnmpType.OctetString: data = new OctetString(strValeur); break; case SnmpType.Null: data = new Null(); break; case SnmpType.ObjectIdentifier: data = new ObjectIdentifier(strValeur); break; case SnmpType.Sequence: //Non geré break; case SnmpType.IPAddress: data = new IP(IPAddress.Parse(strValeur)); break; case SnmpType.Counter32: data = new Counter32(uint.Parse(strValeur)); break; case SnmpType.Gauge32: data = new Gauge32(uint.Parse(strValeur)); break; case SnmpType.TimeTicks: data = new TimeTicks(uint.Parse(strValeur)); break; case SnmpType.Opaque: //Non geré break; case SnmpType.NetAddress: //Non geré break; case SnmpType.Counter64: data = new Counter64(ulong.Parse(strValeur)); break; case SnmpType.UInt32: //Non geré break; case SnmpType.NoSuchObject: //Non geré break; case SnmpType.NoSuchInstance: //Non geré break; case SnmpType.EndOfMibView: //Non geré break; case SnmpType.GetRequestPdu: //Non geré break; case SnmpType.GetNextRequestPdu: //Non geré break; case SnmpType.ResponsePdu: //Non geré break; case SnmpType.SetRequestPdu: //Non geré break; case SnmpType.TrapV1Pdu: //Non geré break; case SnmpType.GetBulkRequestPdu: //Non geré break; case SnmpType.InformRequestPdu: //Non geré break; case SnmpType.TrapV2Pdu: //Non geré break; case SnmpType.ReportPdu: //Non geré break; case SnmpType.Unknown: //Non geré break; default: break; } return(data); }
public TrapV1Pdu(uint[] enterprise, IP agent, Integer32 generic, Integer32 specific, TimeTicks timestamp, IList <Variable> variables) : this(new ObjectIdentifier(enterprise), agent, generic, specific, timestamp, variables) { }