Exemple #1
0
        public void Read(BufRef reader)
        {
            // magic number and zero byte 6
            var magic = reader.ReadBufLen(6);

            _ = reader.Read8();
            var magicstr = magic.ToEncoding(Encoding.UTF8);

            if (magicstr != SU3_MAGIC_NUMBER)
            {
                throw new ArgumentException("Not SU3 data.");
            }

            // su3 file format version
            FileVersion = reader.Read8();

            SignatureType   = reader.ReadFlip16();
            SignatureLength = reader.ReadFlip16();
            _              = reader.Read8();
            VersionLength  = reader.Read8();
            _              = reader.Read8();
            SignerIdLength = reader.Read8();
            ContentLength  = reader.ReadFlip64();
            _              = reader.Read8();
            FileType       = (SU3FileTypes)reader.Read8();
            _              = reader.Read8();
            ContentType    = (SU3ContentTypes)reader.Read8();
            reader.Seek(12);
            Version  = reader.ReadBufLen(VersionLength);
            SignerID = reader.ReadBufLen(SignerIdLength)
                       .ToEncoding(Encoding.UTF8);
        }
Exemple #2
0
 public I2PDate(BufRef buf)
 {
     DateMilliseconds = buf.ReadFlip64();
 }