Esempio n. 1
0
        internal override void SetProtocolOp(Asn1ProtocolOp op)
        {
            op.SearchRequest = new Asn1SearchRequest
            {
                BaseObject   = BaseObject.GetBytes(),
                Scope        = Scope,
                DerefAliases = DerefAliases,
                TimeLimit    = (int)TimeLimit.TotalSeconds,
                TypesOnly    = TypesOnly,
                Filter       = Filter.GetAsn(),
            };

            if (SizeLimit == Int32.MaxValue)
            {
                op.SearchRequest.SizeLimit = 0;
            }
            else
            {
                op.SearchRequest.SizeLimit = SizeLimit;
            }

            if (Attributes != null && Attributes.Count > 0)
            {
                var attr = op.SearchRequest.Attributes = new ReadOnlyMemory <byte> [Attributes.Count];
                for (int i = 0; i < Attributes.Count; i++)
                {
                    attr[i] = Attributes[i].GetBytes();
                }
            }
            else
            {
                op.SearchRequest.Attributes = Array.Empty <ReadOnlyMemory <byte> >();
            }
        }
Esempio n. 2
0
 internal override void SetProtocolOp(Asn1ProtocolOp op)
 {
     op.CompareRequest = new Asn1CompareRequest
     {
         Entry     = Entry.GetBytes(),
         Assertion = Assertion.GetAsn()
     };
 }
Esempio n. 3
0
 internal override void SetProtocolOp(Asn1ProtocolOp op)
 {
     op.ExtendedRequest = new Asn1ExtendedRequest
     {
         Name  = Name.NumericOid(),
         Value = Value
     };
 }
Esempio n. 4
0
 internal override void SetProtocolOp(Asn1ProtocolOp op)
 {
     op.BindResponse = new Asn1BindResponse
     {
         ResultCode        = ResultCode,
         MatchedDN         = MatchedDN.GetBytes(),
         DiagnosticMessage = DiagnosticMessage.LdapString(),
         Referral          = this.GetReferrals(Referrals),
         ServerSaslCreds   = ServerSaslCreds
     };
 }
 internal override void SetProtocolOp(Asn1ProtocolOp op)
 {
     op.IntermediateResponse = new Asn1IntermediateResponse
     {
         Value = Value
     };
     if (Name != null)
     {
         op.IntermediateResponse.Name = Name.NumericOid();
     }
 }
Esempio n. 6
0
        internal override void SetProtocolOp(Asn1ProtocolOp op)
        {
            var asn = new Asn1LDAPResult
            {
                ResultCode        = ResultCode,
                MatchedDN         = MatchedDN.GetBytes(),
                DiagnosticMessage = DiagnosticMessage.LdapString(),
                Referral          = this.GetReferrals(Referrals),
            };

            SetProtocolOp(op, asn);
        }
Esempio n. 7
0
        internal override void SetProtocolOp(Asn1ProtocolOp op)
        {
            var modify = op.ModifyRequest = new Asn1ModifyRequest
            {
                Object  = ObjectDN.GetBytes(),
                Changes = new Asn1Change[Changes.Count]
            };

            for (int i = 0; i < Changes.Count; i++)
            {
                modify.Changes[i] = Changes[i].GetAsn();
            }
        }
Esempio n. 8
0
 internal override void SetProtocolOp(Asn1ProtocolOp op)
 {
     op.ModifyDNRequest = new Asn1ModifyDNRequest
     {
         Entry        = Entry.GetBytes(),
         NewRDN       = NewRDN.GetBytes(),
         DeleteOldRDN = DeleteOldRDN,
     };
     if (NewSuperior != null)
     {
         op.ModifyDNRequest.NewSuperior = NewSuperior.GetBytes();
     }
 }
Esempio n. 9
0
 internal override void SetProtocolOp(Asn1ProtocolOp op)
 {
     op.ExtendedResponse = new Asn1ExtendedResponse
     {
         ResultCode        = ResultCode,
         MatchedDN         = MatchedDN.GetBytes(),
         DiagnosticMessage = DiagnosticMessage.LdapString(),
         Referral          = this.GetReferrals(Referrals),
         Value             = Value
     };
     if (Name != null)
     {
         op.ExtendedResponse.Name = Name.NumericOid();
     }
 }
Esempio n. 10
0
        internal override void SetProtocolOp(Asn1ProtocolOp op)
        {
            var attributes = new Asn1PartialAttribute[Attributes.Count];

            if (attributes.Length == 0)
            {
                throw new ArgumentException("at least one attribute required");
            }
            for (int i = 0; i < Attributes.Count; i++)
            {
                attributes[i] = Attributes[i].GetAsn();
            }
            op.AddRequest = new Asn1AddRequest
            {
                Entry      = Entry.GetBytes(),
                Attributes = attributes
            };
        }
Esempio n. 11
0
        internal override void SetProtocolOp(Asn1ProtocolOp op)
        {
            var result = new Asn1SearchResultEntry
            {
                ObjectName = ObjectName.GetBytes(),
                Attributes = Array.Empty <Asn1PartialAttribute>()
            };

            if (Attributes != null && Attributes.Count > 0)
            {
                result.Attributes = new Asn1PartialAttribute[Attributes.Count];
                for (int i = 0; i < Attributes.Count; i++)
                {
                    var attribute = Attributes[i];
                    result.Attributes[i] = attribute.GetAsn();
                }
            }
            op.SearchResEntry = result;
        }
Esempio n. 12
0
        internal override void SetProtocolOp(Asn1ProtocolOp op)
        {
            var bindRequest = op.BindRequest = new Asn1BindRequest
            {
                Version        = Version,
                Name           = Name.GetBytes(),
                Authentication = new Asn1AuthenticationChoice()
            };

            if (Simple.HasValue)
            {
                bindRequest.Authentication.Simple = Simple.Value;
            }
            else if (SaslMechanism != null)
            {
                var sasl = new Asn1SaslCredentials
                {
                    Mechanism   = SaslMechanism.LdapString(),
                    Credentials = SaslCredentials
                };
                bindRequest.Authentication.Sasl = sasl;
            }
        }
Esempio n. 13
0
 internal override void SetProtocolOp(Asn1ProtocolOp op, Asn1LDAPResult result)
 {
     op.AddResponse = result;
 }
Esempio n. 14
0
 internal override void SetProtocolOp(Asn1ProtocolOp op, Asn1LDAPResult result)
 {
     op.SearchResultDone = result;
 }
Esempio n. 15
0
 internal override void SetProtocolOp(Asn1ProtocolOp op)
 {
     op.UnbindRequest = true;
 }
Esempio n. 16
0
 internal abstract void SetProtocolOp(Asn1ProtocolOp op);
Esempio n. 17
0
 internal override void SetProtocolOp(Asn1ProtocolOp op)
 {
     op.SearchResultReference = LdapResultExtensions.GetReferrals(Uris);
 }
Esempio n. 18
0
 internal override void SetProtocolOp(Asn1ProtocolOp op)
 {
     op.DelRequest = DN.GetBytes();
 }
Esempio n. 19
0
 internal override void SetProtocolOp(Asn1ProtocolOp op)
 {
     op.AbandonRequest = MessageId;
 }
Esempio n. 20
0
 internal abstract void SetProtocolOp(Asn1ProtocolOp op, Asn1LDAPResult result);