public void WriteIPAddress(IPAddress value)
{
if (value.AddressFamily == AddressFamily.InterNetworkV6)
{
if (value.ScopeId != 0)
{
WriteUInt8(2);
WriteBlock(value.GetAddressBytes());
WriteVUInt64((ulong)value.ScopeId);
}
else
{
WriteUInt8(1);
WriteBlock(value.GetAddressBytes());
}
}
else
{
WriteUInt8(0);
#pragma warning disable 612,618
WriteInt32LE((int)value.Address);
#pragma warning restore 612,618
}
}