Пример #1
0
 public static Data decodeData(final DataInput buffer, PeerAddress originator)
     throws InvalidKeyException, NoSuchAlgorithmException, InvalidKeySpecException {
   // mini header for data, 8 bytes ttl and data length
   if (buffer.readableBytes() < 4 + 4) return null;
   int ttl = buffer.readInt();
   boolean protectedEntry = (ttl & 0x80000000) != 0;
   ttl &= 0x7FFFFFFF;
   int dateLength = buffer.readInt();
   //
   if (buffer.readableBytes() < dateLength) return null;
   final Data data =
       createData(
           buffer.array(),
           buffer.arrayOffset() + buffer.readerIndex(),
           dateLength,
           ttl,
           protectedEntry,
           originator);
   buffer.skipBytes(dateLength);
   return data;
 }