io.netty.handler.ssl.OpenSsl.memoryAddress()方法的使用及代码示例

x33g5p2x  于2022-01-25 转载在 其他  
字(8.6k)|赞(0)|评价(0)|浏览(228)

本文整理了Java中io.netty.handler.ssl.OpenSsl.memoryAddress()方法的一些代码示例,展示了OpenSsl.memoryAddress()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。OpenSsl.memoryAddress()方法的具体详情如下:
包路径:io.netty.handler.ssl.OpenSsl
类名称:OpenSsl
方法名:memoryAddress

OpenSsl.memoryAddress介绍

暂无

代码示例

代码示例来源:origin: redisson/redisson

  1. private static long newBIO(ByteBuf buffer) throws Exception {
  2. try {
  3. long bio = SSL.newMemBIO();
  4. int readable = buffer.readableBytes();
  5. if (SSL.bioWrite(bio, OpenSsl.memoryAddress(buffer) + buffer.readerIndex(), readable) != readable) {
  6. SSL.freeBIO(bio);
  7. throw new IllegalStateException("Could not write data to memory BIO");
  8. }
  9. return bio;
  10. } finally {
  11. buffer.release();
  12. }
  13. }

代码示例来源:origin: wildfly/wildfly

  1. private static long newBIO(ByteBuf buffer) throws Exception {
  2. try {
  3. long bio = SSL.newMemBIO();
  4. int readable = buffer.readableBytes();
  5. if (SSL.bioWrite(bio, OpenSsl.memoryAddress(buffer) + buffer.readerIndex(), readable) != readable) {
  6. SSL.freeBIO(bio);
  7. throw new IllegalStateException("Could not write data to memory BIO");
  8. }
  9. return bio;
  10. } finally {
  11. buffer.release();
  12. }
  13. }

代码示例来源:origin: redisson/redisson

  1. /**
  2. * Write encrypted data to the OpenSSL network BIO.
  3. */
  4. private ByteBuf writeEncryptedData(final ByteBuffer src, int len) {
  5. final int pos = src.position();
  6. if (src.isDirect()) {
  7. SSL.bioSetByteBuffer(networkBIO, bufferAddress(src) + pos, len, false);
  8. } else {
  9. final ByteBuf buf = alloc.directBuffer(len);
  10. try {
  11. final int limit = src.limit();
  12. src.limit(pos + len);
  13. buf.writeBytes(src);
  14. // Restore the original position and limit because we don't want to consume from `src`.
  15. src.position(pos);
  16. src.limit(limit);
  17. SSL.bioSetByteBuffer(networkBIO, memoryAddress(buf), len, false);
  18. return buf;
  19. } catch (Throwable cause) {
  20. buf.release();
  21. PlatformDependent.throwException(cause);
  22. }
  23. }
  24. return null;
  25. }

代码示例来源:origin: redisson/redisson

  1. src.limit(limit);
  2. sslWrote = SSL.writeToSSL(ssl, memoryAddress(buf), len);
  3. if (sslWrote > 0) {
  4. src.position(pos + sslWrote);

代码示例来源:origin: redisson/redisson

  1. /**
  2. * Read plaintext data from the OpenSSL internal BIO
  3. */
  4. private int readPlaintextData(final ByteBuffer dst) {
  5. final int sslRead;
  6. final int pos = dst.position();
  7. if (dst.isDirect()) {
  8. sslRead = SSL.readFromSSL(ssl, bufferAddress(dst) + pos, dst.limit() - pos);
  9. if (sslRead > 0) {
  10. dst.position(pos + sslRead);
  11. }
  12. } else {
  13. final int limit = dst.limit();
  14. final int len = min(maxEncryptedPacketLength0(), limit - pos);
  15. final ByteBuf buf = alloc.directBuffer(len);
  16. try {
  17. sslRead = SSL.readFromSSL(ssl, memoryAddress(buf), len);
  18. if (sslRead > 0) {
  19. dst.limit(pos + sslRead);
  20. buf.getBytes(buf.readerIndex(), dst);
  21. dst.limit(limit);
  22. }
  23. } finally {
  24. buf.release();
  25. }
  26. }
  27. return sslRead;
  28. }

代码示例来源:origin: wildfly/wildfly

  1. /**
  2. * Write encrypted data to the OpenSSL network BIO.
  3. */
  4. private ByteBuf writeEncryptedData(final ByteBuffer src, int len) {
  5. final int pos = src.position();
  6. if (src.isDirect()) {
  7. SSL.bioSetByteBuffer(networkBIO, bufferAddress(src) + pos, len, false);
  8. } else {
  9. final ByteBuf buf = alloc.directBuffer(len);
  10. try {
  11. final int limit = src.limit();
  12. src.limit(pos + len);
  13. buf.writeBytes(src);
  14. // Restore the original position and limit because we don't want to consume from `src`.
  15. src.position(pos);
  16. src.limit(limit);
  17. SSL.bioSetByteBuffer(networkBIO, memoryAddress(buf), len, false);
  18. return buf;
  19. } catch (Throwable cause) {
  20. buf.release();
  21. PlatformDependent.throwException(cause);
  22. }
  23. }
  24. return null;
  25. }

代码示例来源:origin: wildfly/wildfly

  1. src.limit(limit);
  2. sslWrote = SSL.writeToSSL(ssl, memoryAddress(buf), len);
  3. if (sslWrote > 0) {
  4. src.position(pos + sslWrote);

代码示例来源:origin: wildfly/wildfly

  1. /**
  2. * Read plaintext data from the OpenSSL internal BIO
  3. */
  4. private int readPlaintextData(final ByteBuffer dst) {
  5. final int sslRead;
  6. final int pos = dst.position();
  7. if (dst.isDirect()) {
  8. sslRead = SSL.readFromSSL(ssl, bufferAddress(dst) + pos, dst.limit() - pos);
  9. if (sslRead > 0) {
  10. dst.position(pos + sslRead);
  11. }
  12. } else {
  13. final int limit = dst.limit();
  14. final int len = min(maxEncryptedPacketLength0(), limit - pos);
  15. final ByteBuf buf = alloc.directBuffer(len);
  16. try {
  17. sslRead = SSL.readFromSSL(ssl, memoryAddress(buf), len);
  18. if (sslRead > 0) {
  19. dst.limit(pos + sslRead);
  20. buf.getBytes(buf.readerIndex(), dst);
  21. dst.limit(limit);
  22. }
  23. } finally {
  24. buf.release();
  25. }
  26. }
  27. return sslRead;
  28. }

代码示例来源:origin: redisson/redisson

  1. } else {
  2. bioReadCopyBuf = alloc.directBuffer(dst.remaining());
  3. SSL.bioSetByteBuffer(networkBIO, memoryAddress(bioReadCopyBuf), bioReadCopyBuf.writableBytes(),
  4. true);

代码示例来源:origin: wildfly/wildfly

  1. } else {
  2. bioReadCopyBuf = alloc.directBuffer(dst.remaining());
  3. SSL.bioSetByteBuffer(networkBIO, memoryAddress(bioReadCopyBuf), bioReadCopyBuf.writableBytes(),
  4. true);

代码示例来源:origin: io.netty/netty-handler

  1. private static long newBIO(ByteBuf buffer) throws Exception {
  2. try {
  3. long bio = SSL.newMemBIO();
  4. int readable = buffer.readableBytes();
  5. if (SSL.bioWrite(bio, OpenSsl.memoryAddress(buffer) + buffer.readerIndex(), readable) != readable) {
  6. SSL.freeBIO(bio);
  7. throw new IllegalStateException("Could not write data to memory BIO");
  8. }
  9. return bio;
  10. } finally {
  11. buffer.release();
  12. }
  13. }

代码示例来源:origin: io.netty/netty-handler

  1. /**
  2. * Write encrypted data to the OpenSSL network BIO.
  3. */
  4. private ByteBuf writeEncryptedData(final ByteBuffer src, int len) {
  5. final int pos = src.position();
  6. if (src.isDirect()) {
  7. SSL.bioSetByteBuffer(networkBIO, bufferAddress(src) + pos, len, false);
  8. } else {
  9. final ByteBuf buf = alloc.directBuffer(len);
  10. try {
  11. final int limit = src.limit();
  12. src.limit(pos + len);
  13. buf.writeBytes(src);
  14. // Restore the original position and limit because we don't want to consume from `src`.
  15. src.position(pos);
  16. src.limit(limit);
  17. SSL.bioSetByteBuffer(networkBIO, memoryAddress(buf), len, false);
  18. return buf;
  19. } catch (Throwable cause) {
  20. buf.release();
  21. PlatformDependent.throwException(cause);
  22. }
  23. }
  24. return null;
  25. }

代码示例来源:origin: io.netty/netty-handler

  1. src.limit(limit);
  2. sslWrote = SSL.writeToSSL(ssl, memoryAddress(buf), len);
  3. if (sslWrote > 0) {
  4. src.position(pos + sslWrote);

代码示例来源:origin: io.netty/netty-handler

  1. /**
  2. * Read plaintext data from the OpenSSL internal BIO
  3. */
  4. private int readPlaintextData(final ByteBuffer dst) {
  5. final int sslRead;
  6. final int pos = dst.position();
  7. if (dst.isDirect()) {
  8. sslRead = SSL.readFromSSL(ssl, bufferAddress(dst) + pos, dst.limit() - pos);
  9. if (sslRead > 0) {
  10. dst.position(pos + sslRead);
  11. }
  12. } else {
  13. final int limit = dst.limit();
  14. final int len = min(maxEncryptedPacketLength0(), limit - pos);
  15. final ByteBuf buf = alloc.directBuffer(len);
  16. try {
  17. sslRead = SSL.readFromSSL(ssl, memoryAddress(buf), len);
  18. if (sslRead > 0) {
  19. dst.limit(pos + sslRead);
  20. buf.getBytes(buf.readerIndex(), dst);
  21. dst.limit(limit);
  22. }
  23. } finally {
  24. buf.release();
  25. }
  26. }
  27. return sslRead;
  28. }

代码示例来源:origin: io.netty/netty-handler

  1. } else {
  2. bioReadCopyBuf = alloc.directBuffer(dst.remaining());
  3. SSL.bioSetByteBuffer(networkBIO, memoryAddress(bioReadCopyBuf), bioReadCopyBuf.writableBytes(),
  4. true);

代码示例来源:origin: apache/activemq-artemis

  1. private static long newBIO(ByteBuf buffer) throws Exception {
  2. try {
  3. long bio = SSL.newMemBIO();
  4. int readable = buffer.readableBytes();
  5. if (SSL.bioWrite(bio, OpenSsl.memoryAddress(buffer) + buffer.readerIndex(), readable) != readable) {
  6. SSL.freeBIO(bio);
  7. throw new IllegalStateException("Could not write data to memory BIO");
  8. }
  9. return bio;
  10. } finally {
  11. buffer.release();
  12. }
  13. }

代码示例来源:origin: org.jboss.eap/wildfly-client-all

  1. private static long newBIO(ByteBuf buffer) throws Exception {
  2. try {
  3. long bio = SSL.newMemBIO();
  4. int readable = buffer.readableBytes();
  5. if (SSL.bioWrite(bio, OpenSsl.memoryAddress(buffer) + buffer.readerIndex(), readable) != readable) {
  6. SSL.freeBIO(bio);
  7. throw new IllegalStateException("Could not write data to memory BIO");
  8. }
  9. return bio;
  10. } finally {
  11. buffer.release();
  12. }
  13. }
  14. }

代码示例来源:origin: org.apache.activemq/artemis-jms-client-all

  1. private static long newBIO(ByteBuf buffer) throws Exception {
  2. try {
  3. long bio = SSL.newMemBIO();
  4. int readable = buffer.readableBytes();
  5. if (SSL.bioWrite(bio, OpenSsl.memoryAddress(buffer) + buffer.readerIndex(), readable) != readable) {
  6. SSL.freeBIO(bio);
  7. throw new IllegalStateException("Could not write data to memory BIO");
  8. }
  9. return bio;
  10. } finally {
  11. buffer.release();
  12. }
  13. }
  14. }

代码示例来源:origin: apache/activemq-artemis

  1. /**
  2. * Write encrypted data to the OpenSSL network BIO.
  3. */
  4. private ByteBuf writeEncryptedData(final ByteBuffer src, int len) {
  5. final int pos = src.position();
  6. if (src.isDirect()) {
  7. SSL.bioSetByteBuffer(networkBIO, bufferAddress(src) + pos, len, false);
  8. } else {
  9. final ByteBuf buf = alloc.directBuffer(len);
  10. try {
  11. final int limit = src.limit();
  12. src.limit(pos + len);
  13. buf.writeBytes(src);
  14. // Restore the original position and limit because we don't want to consume from `src`.
  15. src.position(pos);
  16. src.limit(limit);
  17. SSL.bioSetByteBuffer(networkBIO, memoryAddress(buf), len, false);
  18. return buf;
  19. } catch (Throwable cause) {
  20. buf.release();
  21. PlatformDependent.throwException(cause);
  22. }
  23. }
  24. return null;
  25. }

代码示例来源:origin: org.apache.activemq/artemis-jms-client-all

  1. /**
  2. * Write encrypted data to the OpenSSL network BIO.
  3. */
  4. private ByteBuf writeEncryptedData(final ByteBuffer src, int len) {
  5. final int pos = src.position();
  6. if (src.isDirect()) {
  7. SSL.bioSetByteBuffer(networkBIO, bufferAddress(src) + pos, len, false);
  8. } else {
  9. final ByteBuf buf = alloc.directBuffer(len);
  10. try {
  11. final int limit = src.limit();
  12. src.limit(pos + len);
  13. buf.writeBytes(src);
  14. // Restore the original position and limit because we don't want to consume from `src`.
  15. src.position(pos);
  16. src.limit(limit);
  17. SSL.bioSetByteBuffer(networkBIO, memoryAddress(buf), len, false);
  18. return buf;
  19. } catch (Throwable cause) {
  20. buf.release();
  21. PlatformDependent.throwException(cause);
  22. }
  23. }
  24. return null;
  25. }

相关文章