3
0
Mirror von https://github.com/PaperMC/Velocity.git synchronisiert 2024-12-25 07:40:13 +01:00
Velocity/native
Joe Hirschfeld a16684564b Make AES crypto operations use one buffer
All AES implementations being used are 'copy safe', where the source and
destination arrays may be the same. Lets save ourself a copy and reap
the performance wins!
2019-10-19 19:55:02 -07:00
..
src Make AES crypto operations use one buffer 2019-10-19 19:55:02 -07:00
build.gradle An Easter basket bearing gifts! (#191) 2019-04-24 14:36:49 -04:00
compile-linux.sh Switch to zlib-ng 2019-09-08 23:30:28 -04:00
compile-osx.sh Switch to zlib-ng 2019-09-08 23:30:28 -04:00
README.md Native cryptography support using mbed TLS 2018-08-04 23:46:41 -04:00

velocity-natives

This directory contains native acceleration code for Velocity, along with traditional Java fallbacks.

Compression

  • Supported platforms: macOS 10.13, Linux amd64 (precompiled binary is built on Debian 9 with JDK 8)
  • Rationale: Using a native zlib wrapper, we can avoid multiple trips into Java just to copy memory around.

Encryption

  • Supported platforms: macOS 10.13, Linux amd64
  • Rationale: Using a C library for encryption means we can limit memory copies. Prior to Java 7, this was the only way to use AES-NI extensions on modern processors, but this is less important since JDK 8 has native support.
  • Note: Due to U.S. restrictions on cryptography export, this native is provided in source code form only for now.

OS support

If you are on Alpine Linux, apk add libc6-compat will enable native support.