/// <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); }
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); }
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); }
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); }
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); }
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); }
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); }
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); }
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); }
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); }
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); }
/// <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); }
/// <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); }
/// <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); } }
/// <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); }