public Option CreateInstance(IpV4OptionType optionType, byte[] buffer, ref int offset, byte valueLength) { if ((int)valueLength < 0) { return((Option)null); } byte[] destination = new byte[(int)valueLength]; ByteArrayExtensions.BlockCopy(buffer, offset, destination, 0, (int)valueLength); offset += (int)valueLength; return((Option) new IpV4OptionUnknown(optionType, (IList <byte>)destination)); }