/// <summary> /// Constructs an extended request. /// </summary> /// <param name="requestName"> /// The OID for this extended operation. /// </param> /// <param name="requestValue"> /// An optional request value. /// </param> public RfcExtendedRequest(RfcLdapOid requestName, Asn1OctetString requestValue) : base(2) { Add(new Asn1Tagged(new Asn1Identifier(Asn1Identifier.Context, false, RequestName), requestName, false)); if (requestValue != null) { Add(new Asn1Tagged(new Asn1Identifier(Asn1Identifier.Context, false, RequestValue), requestValue, false)); } }
/// <summary> /// Note: criticality is only added if true, as per RFC 2251 sec 5.1 part /// (4): If a value of a type is its default value, it MUST be /// absent. /// </summary> public RfcControl(RfcLdapOid controlType, Asn1Boolean criticality, Asn1OctetString controlValue) : base(3) { Add(controlType); if (criticality.BooleanValue()) { Add(criticality); } if (controlValue != null) { Add(controlValue); } }
// ************************************************************************* // Constructors for ExtendedRequest // ************************************************************************* /// <summary> /// Constructs an extended request. /// </summary> /// <param name="requestName"> /// The OID for this extended operation. /// </param> public RfcExtendedRequest(RfcLdapOid requestName) : this(requestName, null) { }
/// <summary> </summary> public RfcControl(RfcLdapOid controlType, Asn1Boolean criticality) : this(controlType, criticality, null) { }
// ************************************************************************* // Constructors for Control // ************************************************************************* /// <summary> </summary> public RfcControl(RfcLdapOid controlType) : this(controlType, new Asn1Boolean(false), null) { }