Exemplo n.º 1
0
        /// <summary>
        /// Converts this extension to a byte array
        /// </summary>
        /// <returns>array of bytes</returns>
        internal override void ToBytes(SlpWriter writer)
        {
            writer.Write((short)Id);

            var tmp = writer.GetBytes(TemplateName + TemplateVersion + writer.TagListEncode(Attributes, false));
            writer.Write(tmp.Length, 3);
            writer.Write(tmp);
        }
Exemplo n.º 2
0
        internal void ToBytes(SlpWriter writer)
        {
            var spitmp = writer.GetBytes(SpiString);

            writer.Write((short)Descriptor);
            writer.Write((short)(2 + 2 + 4 + 2 + spitmp.Length + Data.Length));
            writer.Write(TimeStamp);
            writer.Write(SpiString);

            writer.Write(Data);
        }
Exemplo n.º 3
0
        public override void ToBytes(SlpWriter writer)
        {
            base.ToBytes(writer);

            var innerwriter = new SlpWriter(new MemoryStream());
            innerwriter.Write((short)ErrorCode);
            innerwriter.Write(ServiceTypes.Select(s => s.FullServiceType));

            writer.Write(innerwriter.Length, 3);
            WriteHeader(writer);
            writer.Write(innerwriter);
        }
        public override void ToBytes(SlpWriter writer)
        {
            base.ToBytes(writer);

            var innerwriter = new SlpWriter(new System.IO.MemoryStream());
            innerwriter.Write(Scopes);
            Service.ToBytes(innerwriter);
            innerwriter.Write(Tags);

            writer.Write(innerwriter.Length, 3);
            WriteHeader(writer);
            writer.Write(innerwriter);
        }
Exemplo n.º 5
0
        public override void ToBytes(SlpWriter writer)
        {
            base.ToBytes(writer);

            var innerwriter = new SlpWriter(new MemoryStream());
            innerwriter.Write((short)ErrorCode);
            Attributes.ToBytes(innerwriter);
            WriteAuthBlocks(innerwriter, AuthBlocks);

            writer.Write(innerwriter.Length, 3);

            WriteHeader(writer);
            writer.Write(innerwriter);
        }
Exemplo n.º 6
0
        public override void ToBytes(SlpWriter writer)
        {
            base.ToBytes(writer);

            var innerwriter = new SlpWriter(new System.IO.MemoryStream());
            Service.ToBytes(innerwriter);
            writer.Write(Service.Uri.ServiceType);
            innerwriter.Write(Scopes);
            Service.Uri.Attributes.ToBytes(innerwriter);
            WriteAuthBlocks(innerwriter, AuthBlocks);

            writer.Write(innerwriter.Length, 3);
            WriteHeader(writer);
            writer.Write(innerwriter);
        }
Exemplo n.º 7
0
        public override void ToBytes(SlpWriter writer)
        {
            base.ToBytes(writer);

            var innerwriter = new SlpWriter(new System.IO.MemoryStream());
            innerwriter.Write("service:service-agent://" + Uri.Host);
            innerwriter.Write(Scopes);
            Uri.Attributes.ToBytes(innerwriter);
            WriteAuthBlocks(innerwriter, AuthBlocks);

            writer.Write(innerwriter.Length, 3);

            WriteHeader(writer);
            writer.Write(innerwriter);
        }
Exemplo n.º 8
0
        public override void ToBytes(SlpWriter writer)
        {
            base.ToBytes(writer);

            var innerwriter = new SlpWriter(new System.IO.MemoryStream());
            WriteIPList(innerwriter, PreviousResponders);
            innerwriter.Write(Uri.ToString());
            innerwriter.Write(Scopes);
            innerwriter.Write(Tags);
            innerwriter.Write(Spi);

            writer.Write(innerwriter.Length, 3);
            WriteHeader(writer);
            writer.Write(innerwriter);
        }
Exemplo n.º 9
0
        public override void ToBytes(SlpWriter writer)
        {
            base.ToBytes(writer);

            var innerwriter = new SlpWriter(new MemoryStream());
            innerwriter.Write((short)ErrorCode);
            innerwriter.Write((short)Services.Count);
            foreach (var item in Services)
            {
                item.ToBytes(innerwriter);
            }

            writer.Write(innerwriter.Length, 3);
            WriteHeader(writer);
            writer.Write(innerwriter);
        }
Exemplo n.º 10
0
        public override void ToBytes(SlpWriter writer)
        {
            base.ToBytes(writer);

            var innerwriter = new SlpWriter(new System.IO.MemoryStream());
            WriteIPList(innerwriter, PreviousResponders);

            if (GetAllAuthorities)
                innerwriter.Write((short)0xfff);
            else
                innerwriter.Write(NamingAuthority);
            innerwriter.Write(Scopes);

            writer.Write(innerwriter.Length, 3);
            WriteHeader(writer);
            writer.Write(innerwriter);
        }
Exemplo n.º 11
0
        public override void ToBytes(SlpWriter writer)
        {
            base.ToBytes(writer);

            var innerwriter = new SlpWriter(new System.IO.MemoryStream());

            WriteIPList(innerwriter, PreviousResponders);

            if (GetAllAuthorities)
            {
                innerwriter.Write((short)0xfff);
            }
            else
            {
                innerwriter.Write(NamingAuthority);
            }
            innerwriter.Write(Scopes);

            writer.Write(innerwriter.Length, 3);
            WriteHeader(writer);
            writer.Write(innerwriter);
        }
Exemplo n.º 12
0
        public override void ToBytes(SlpWriter writer)
        {
            base.ToBytes(writer);

            var innerwriter = new SlpWriter(new MemoryStream());

            innerwriter.Write((short)ErrorCode);
            Attributes.ToBytes(innerwriter);
            WriteAuthBlocks(innerwriter, AuthBlocks);

            writer.Write(innerwriter.Length, 3);

            WriteHeader(writer);
            writer.Write(innerwriter);
        }
Exemplo n.º 13
0
        public override void ToBytes(SlpWriter writer)
        {
            base.ToBytes(writer);

            var innerwriter = new SlpWriter(new System.IO.MemoryStream());

            Service.ToBytes(innerwriter);
            writer.Write(Service.Uri.ServiceType);
            innerwriter.Write(Scopes);
            Service.Uri.Attributes.ToBytes(innerwriter);
            WriteAuthBlocks(innerwriter, AuthBlocks);

            writer.Write(innerwriter.Length, 3);
            WriteHeader(writer);
            writer.Write(innerwriter);
        }
Exemplo n.º 14
0
        public override void ToBytes(SlpWriter writer)
        {
            base.ToBytes(writer);

            var innerwriter = new SlpWriter(new System.IO.MemoryStream());
            innerwriter.Write((short)ErrorCode);
            innerwriter.Write(BootTimeStamp);
            innerwriter.Write("service:directory-agent://" + Uri.Host);
            innerwriter.Write(Scopes);
            Uri.Attributes.ToBytes(innerwriter);
            innerwriter.Write(SpiStrings);
            WriteAuthBlocks(innerwriter, AuthBlocks);

            writer.Write(innerwriter.Length, 3);

            WriteHeader(writer);
            writer.Write(innerwriter);
        }
Exemplo n.º 15
0
 /// <summary>
 /// Convert this message to bytes
 /// </summary>
 /// <param name="writer">writer</param>
 public virtual void ToBytes(SlpWriter writer)
 {
     writer.Write((byte)Version);
     writer.Write((byte)FunctionId);
 }
Exemplo n.º 16
0
        /// <summary>
        /// Add the message header bytes
        /// </summary>
        /// <param name="writer">writer</param>
        protected void WriteHeader(SlpWriter writer)
        {
            int flags = IsOverFlow ? 0x8 : 0x0;
            flags |= IsFresh ? 0x4 : 0x0;
            flags |= IsMulticast ? 0x2 : 0x0;
            writer.Write((byte)flags);

            writer.Write((int)0);

            writer.Write((short)MessageId);
            writer.Write(Language);
        }
Exemplo n.º 17
0
 /// <summary>
 /// Write the authblocks bytes
 /// </summary>
 /// <param name="writer">writer</param>
 /// <param name="authBlocks">list of authblocks</param>
 protected void WriteAuthBlocks(SlpWriter writer, IEnumerable<Security.AuthenticationBlock> authBlocks)
 {
     writer.Write((byte)authBlocks.Count());
     foreach (var item in authBlocks)
     {
         item.ToBytes(writer);
     }
 }
Exemplo n.º 18
0
 /// <summary>
 /// Convert this message to bytes
 /// </summary>
 /// <param name="writer">writer</param>
 public virtual void ToBytes(SlpWriter writer)
 {
     writer.Write((byte)Version);
     writer.Write((byte)FunctionId);
 }
Exemplo n.º 19
0
 /// <summary>
 /// Converts this extension to a byte array
 /// </summary>
 /// <returns>array of bytes</returns>
 internal override void ToBytes(SlpWriter writer)
 {
     writer.Write((short)Id);
     writer.Write(Offset, 3);
     writer.Write(Data);
 }
Exemplo n.º 20
0
 /// <summary>
 /// Converts this extension to a byte array
 /// </summary>
 /// <returns>array of bytes</returns>
 internal override void ToBytes(SlpWriter writer)
 {
     writer.Write((short)Id);
     writer.Write(Offset, 3);
     writer.Write(Data);
 }