private static byte[] readHostName(final DatagramReader reader, final InetSocketAddress peerAddress) throws HandshakeException { if (reader.bitsLeft() >= LENGTH_BITS) { int length = reader.read(LENGTH_BITS); if (reader.bytesAvailable(length)) { return reader.readBytes(length); } } throw newDecodeError(peerAddress); }
while (reader.bytesAvailable()) {
byte nextByte = 0; while (reader.bytesAvailable()) { nextByte = reader.readNextByte(); if (nextByte != PAYLOAD_MARKER) { if (reader.bytesAvailable(optionLength)) { Option option = new Option(currentOptionNumber); option.setValue(reader.readBytes(optionLength)); if (!reader.bytesAvailable()) { throw new CoAPMessageFormatException( "Found payload marker (0xFF) but message contains no payload",