Commit Graph

82 Commits

Author SHA1 Message Date
md_5
79dbdea107 Use more realistic cipher test sizes and counts. 2016-01-16 14:03:47 +11:00
md_5
255d7fde9a Ensure native zlib actually loads. 2016-01-16 13:33:09 +11:00
md_5
7907610eeb Compatability and benchmark fixes for native code. 2016-01-16 13:29:50 +11:00
kamcio96
b6e26e0c09 Load NativeCode manually, not in constructor.
Bungee will call load method from main thread
https://github.com/SpigotMC/BungeeCord/blob/master/proxy/src/main/java/net/md_5/bungee/BungeeCord.java#L202
2015-11-19 08:42:01 +11:00
md_5
b4997f6379 Add better exception handling for native code. 2015-02-08 09:11:52 +11:00
md_5
eeaa44e1e7 #1362: Tighter catch on errors in native lib compilation. 2015-02-08 08:08:20 +11:00
md_5
f4ae511af0 2 megabytes is sufficient for testing purposes. 2015-02-07 14:19:33 +11:00
md_5
32693aeaff Don't compile with the stdlib, I don't think it is needed. 2015-02-07 14:14:33 +11:00
md_5
0d569ac0d1 Refactor native code and implement our own JNI wrapper around zlib.
The previous native cipher code has been refactored so that it may be loaded and used slightly more generically, allowing more native components to be easily added as time goes on.
I have also written a new native code compression module, which wraps around zlib in the same manner that Inflater / Deflater does, however it operates directly on the memory addresses of it's input / output buffers which means that we can save one, or maybe even two copies. To support this, the VarInt decoder has been adjusted to always use a native buffer.
2015-02-07 14:06:41 +11:00
zreed
22084b2c75 Try loading native cipher from java.library.path first 2014-12-16 13:21:25 +11:00
md_5
2cec5f344a Update versions to 1.8... oops 2014-09-01 16:56:03 +10:00
md_5
c965e60f5e Cipher thread locals should be static 2014-07-12 19:49:12 +10:00
md_5
02cb1fc65b Allocate cipher with EVP_CIPHER_CTX_new. Thanks @Adam- for the tip. 2014-07-02 12:57:17 +10:00
md_5
7318750ed0 Update native cipher to make use of the OpenSSL EVP API so that it can actually utilise hardware acceleration and other goodies.
Whereas before OpenSSL would often lose benchmarks now it always wins.
2014-07-01 20:13:30 +10:00
md_5
886f7499fb Update compile-native script. 2014-02-16 11:40:36 +11:00
md_5
8064a3d4fb Revert "Compile native cipher on ancient CentOS for maximum compatability - closes #880"
This reverts commit 7bfa024c23.
2014-02-16 11:39:47 +11:00
md_5
5039922fa7 Revert "Compile on CentOS 6.4 with OpenSSL 1.0.0e and glibc 2.12"
This reverts commit eb753c8109.
2014-02-16 11:39:42 +11:00
md_5
eb753c8109 Compile on CentOS 6.4 with OpenSSL 1.0.0e and glibc 2.12 2014-02-15 19:37:53 -05:00
md_5
7bfa024c23 Compile native cipher on ancient CentOS for maximum compatability - closes #880 2014-02-16 00:13:13 -05:00
md_5
56e9e6a245 Delete extracted native code on exit 2014-02-12 19:53:33 +11:00
md_5
90104b03b7 Only allow key sizes of 16 in native cipher 2014-02-12 19:45:28 +11:00
md_5
0b7789035f Revert as its unstable anyway. 2014-02-12 18:02:02 +11:00
md_5
3f7850dc5a Clean up JNI code, add stack trace to check up on Jenkins test. 2014-02-12 17:43:49 +11:00
md_5
2e80bf30dd Various improvements to native cipher so that it now actually destroys Java in terms of speed. Closes #871 - thanks @ninja- 2014-02-12 17:37:08 +11:00
md_5
5adc0000d8 Add small benchmark to the native cipher suite - see #755 2014-02-02 10:18:01 +11:00
md_5
a0cc5d84be Add explicit casts to make clang support easier - see #755 2014-02-02 10:15:19 +11:00
md_5
94ee61cd35 Native cipher, with more smoke tests! 2013-11-19 07:16:06 +11:00
md_5
897a59254c Still segfaulting. 2013-11-18 20:00:15 +11:00
md_5
c1ba555553 Hopefully fix native cipher segfault 2013-11-18 07:18:23 +11:00
ninja-
c70006a36c Implement new, high-performance cipher in native code. Currently available only for Linux-x64, other platforms will fallback to Java cipher. 2013-11-18 07:17:14 +11:00
md_5
12ef019d69 Revert native cipher, causing SIGSEGV 2013-11-17 16:51:11 +11:00
ninja-
fc189e81d5 Implement new, high-performance cipher in native code. Currently available only for Linux-x64, other platforms will fallback to Java cipher. 2013-11-17 15:59:18 +11:00