public override PacketData GetBytes(IHeader header, PacketData packetData) { var ospfLlsDataBlockHeader = (OspfLlsDataBlockHeader)header; var currentData = new List<byte>(); currentData.AddRange(new byte[] { 0, 0 }); var size = (ushort)(packetData.Data.Count + 4); packetData.AddProperty("OspfLlsDataBlockHeaderSize", size); currentData.AddRange(GetBytes((ushort)(size / 4))); byte[] crc = Checksum.GetCrc(currentData.ToArray()); currentData[0] = 0xff; currentData[1] = 0xf6; //foreach (var ospfLlsDataBlockTlv in OspfLlsDataBlockHeader.OspfLlsDataBlockTlv) //{ // var subData = new List<byte>(); // Controller.GetSingletonHandler("OSPFLLSDATABLOCKTLV").GetBytes(ospfLlsDataBlockTlv, subData); // currentData.AddRange(subData); //} currentData.AddRange(packetData.Data); return packetData.UpdateData(currentData); }