FromReader() public static method

public static FromReader ( MetadataHeader header, IBinaryStreamReader reader ) : SecurityAttributeSignature
header MetadataHeader
reader IBinaryStreamReader
return SecurityAttributeSignature
Exemplo n.º 1
0
        public static PermissionSetSignature FromReader(MetadataHeader header, IBinaryStreamReader reader)
        {
            var signature = new PermissionSetSignature()
            {
                StartOffset = reader.Position
            };

            var signatureHeader = reader.ReadByte();

            if (signatureHeader != '.')
            {
                throw new ArgumentException("Signature doesn't refer to a valid permission set signature.");
            }

            uint attributeCount;

            if (!reader.TryReadCompressedUInt32(out attributeCount))
            {
                return(signature);
            }

            for (int i = 0; i < attributeCount; i++)
            {
                signature.Attributes.Add(SecurityAttributeSignature.FromReader(header, reader));
            }
            return(signature);
        }