public override int BerDecode(IAsn1DecodingBuffer buffer, bool explicitTag = true)
        {
            int headLen = 0;
            Asn1Tag appTag;
            headLen += TagBerDecode(buffer, out appTag);
            int valueLen;
            headLen += LengthBerDecode(buffer, out valueLen);

            int valueLenDecode = 0;
            version = new Asn1Integer();
            valueLenDecode += version.BerDecode(buffer);
            name = new LDAPDN();
            valueLenDecode += name.BerDecode(buffer);
            authentication = new AuthenticationChoice();
            valueLenDecode += authentication.BerDecode(buffer);
            if (valueLen != valueLenDecode)
            {
                throw new Asn1DecodingUnexpectedData(ExceptionMessages.DecodingUnexpectedData + " LDAPResult.");
            }
            return headLen + valueLen;
        }
Beispiel #2
0
        public override int BerDecode(IAsn1DecodingBuffer buffer, bool explicitTag = true)
        {
            int     headLen = 0;
            Asn1Tag appTag;

            headLen += TagBerDecode(buffer, out appTag);
            int valueLen;

            headLen += LengthBerDecode(buffer, out valueLen);

            int valueLenDecode = 0;

            version         = new Asn1Integer();
            valueLenDecode += version.BerDecode(buffer);
            name            = new LDAPDN();
            valueLenDecode += name.BerDecode(buffer);
            authentication  = new AuthenticationChoice();
            valueLenDecode += authentication.BerDecode(buffer);
            if (valueLen != valueLenDecode)
            {
                throw new Asn1DecodingUnexpectedData(ExceptionMessages.DecodingUnexpectedData + " LDAPResult.");
            }
            return(headLen + valueLen);
        }