Commit Graph

48 Commits

Author SHA1 Message Date
lax1dude
8b195d1d21
#3693: Compile natives as C instead of C++, check malloc/calloc return values for null 2024-06-25 07:01:10 +10:00
md_5
bc528d5d98
Update native libraries 2024-04-14 09:15:51 +10:00
md_5
f9b75c4a3a
Update tests to JUnit 5 2023-09-23 18:44:14 +10:00
md_5
dfd847f705
Update native libraries 2023-03-25 11:14:25 +11:00
md_5
1ad81504ca
Update native cipher 2021-12-10 15:54:39 +11:00
md_5
1b489bcc11
Attempt to fix java 8 native crash 2021-06-26 11:39:53 +10:00
md_5
da27924a49
#3115, #3125: Update natives build script, switch to Cloudflare zlib 2021-06-26 11:31:05 +10:00
Janmm14
cb738188de
#3126: Use suppliers instead of reflection for native impl generation. 2021-06-26 10:01:30 +10:00
md_5
d20e622b7b Apply checkstyle to javadoc 2020-01-05 11:25:56 +11:00
md_5
065893b523 Update Netty to 4.1.44.Final and remove usage of some deprecated methods 2019-12-21 11:52:45 +11:00
md_5
af10f82d14 Apply and enforce import ordering rules 2019-04-23 15:23:40 +10:00
md_5
7dd09289ee Update native-cipher to mbedtls 2.15.1 2018-12-21 11:01:35 +11:00
md_5
0fc5694b6a Fix some compiler warnings 2017-10-28 17:08:05 +11:00
md_5
a5ffeae757 Replace OpenSSL native cipher with static mbed TLS for maximum compat 2017-06-29 08:52:13 +10:00
md_5
93819212b8 Use statically linked zlib in native-compress for maximum compat 2017-06-28 17:07:57 +10:00
md_5
3ee7fdd90e Revert: Add flag -Dbungee.native=false to disable native code.
Reverted from commit 71b00d644f.
Flag was hiding under: -Dnet.md_5.bungee.native.disable=true
2016-12-05 09:08:03 +11:00
md_5
71b00d644f #2015: Add flag -Dbungee.native=false to disable native code. 2016-12-04 10:41:29 +11:00
md_5
4872075bf7 #1762: Don't perform repetitive decompress.
Pointed out by @sfPlayer1
2016-04-12 07:55:04 +10:00
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
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
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