code: public int readP2PPacket(SteamID steamIDRemote, ByteBuffer dest, int channel) throws SteamException {
  
  		if (!dest.isDirect()) {
  			throw new SteamException("Direct buffer required!");
  		}
  
  		if (readP2PPacket(pointer, dest, dest.position(), dest.remaining(), tmpIntResult, tmpLongResult, channel)) {
  			steamIDRemote.handle = tmpLongResult[0];
  			return tmpIntResult[0];
  		}
  
  		return 0;
  	}
docs: Read incoming packet data into a direct {@link ByteBuffer}.
  
  On success, returns the number of bytes received, and the <code>steamIDRemote</code> parameter contains the
  sender's ID.