Graham
89f7a192f9
Optimise inbound message matcher creation
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
29693a39cf
Add timeout support for all services on the RS2 port
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
a43e98e8f4
Add HTTP keep-alive support
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
03fc499566
Improve robustness of reference counting in JaggrabChannelHandler
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
620808cb97
Improve the HTTP implementation
...
This commit adds support for:
* Version negotiation.
* HEAD requests.
* Friendly error messages.
* More robust reference counting.
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
92a01b6262
Add cross-domain policy support
...
Required by the most recent versions of the Java plugin (before it was
killed).
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
2a6b97480c
Add implementation of Jagex's custom .class file format
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
ad0cdb6056
Add initial high-level cache API
...
It supports reading and writing a cache backed by a Store, as well as
standalone .js5 files.
I'm not quite as happy with this as I am with the lower-level API yet,
and there are still a few remaining TODOs.
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
6f13a0a737
Add readVarInt and writeVarInt extension methods
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
29fecec34e
Add support for overriding the charset in readString/writeString
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
f26e6ef0b9
Update Kotlin
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
cdc1edbb1d
Use more realistic test data in the JAGGRAB test
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
440711def0
Fix JAGGRAB request parsing
...
The paths aren't prefixed with a slash, unlike HTTP.
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
7eae597892
Move RsaKeyProvider to the config module
...
I think this makes more sense, as we're loading it from the etc
directory, just like etc/config.yaml, and it isn't required by most of
the users of the crypto module.
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
7e8883b430
Move Store/Js5MasterIndex providers to the game module
...
This prevents the archive module from failing on a machine without the
cache installed (like the archive.openrs2.org server).
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
7692862c7c
Add RequestWorldList packet
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
235ee41e32
Update dependencies
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
ea725b3881
Add extension methods for reading/writing null-terminated Cp1252 strings
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
bdbfb61590
Ensure master index format is set to VERSIONED
...
This ensures the server sends a master index compatible with the client
even if all the indexes in the cache use the original Js5Index format.
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
55016d7223
Rename updated to version
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
01b50e33f7
Fix resolve_group() if the version number is greater than 65535
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
bc907d5309
Add support for reading existing .dat2m caches
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
6be16f1748
Update dependencies
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
080677b45c
Name the shutdown hook thread
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
43b8be3ff3
Add shutdown hook
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
dc4b769f29
Add startup log messages
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
fbb9694feb
Close JS5 connection if an invalid file is requested
...
This mimics the behaviour of the OSRS server.
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
f48d23c4b9
Update Gradle
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
20f1b86ce9
Update dependencies
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
bc018a3b0f
Add initial JAGGRAB, JS5 and HTTP servers
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
65b3e1315a
Add Store and Js5MasterIndex providers
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
a3cca0e6c3
Add Protocol constants
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
484c52af8e
Add InitJaggrabConnection packet
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
4d5c9153ab
Add support for converting a Netty Future to a CompletableFuture
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
d3b89d5b41
Remove AUTO_READ option from the ServerChannel config
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
81e665e9d8
Add UniqueQueue
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
ce741279b4
Add read-only Js5Index.{Group,File} types
...
These will be used by the high-level cache API, where we don't want to
expose mutable versions of the group/file types as that would allow the
index/cache to get out of sync.
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
e0d29e5ac2
Update dependencies
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
1c0bf7529c
Update Bootstrap
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
ee151aef56
Add constants to BitBuf
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
ff19c57396
Rename Js5File to Js5Pack
...
I still don't know what Jagex call this, but calling it pack at least
avoids confusion with the files contained within the archive.
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
bd5a925f9b
Add BitBuf
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
1954f408e7
Replace deprecated capitalize() function
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
b37e4d0d0b
Use alternatives for most methods deprecated in Kotlin 1.5
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
7f58b50a47
Update to Kotlin 1.5.0
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
40eb0302f7
Downgrade to working Kotlinter
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
d7e9f83953
Return ByteBuf from extension methods for chaining
...
This is consistent with the built-in ByteBuf methods that would
otherwise return void/unit.
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
9bb511369d
Add automatically-generated ByteBuf extensions
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
fae51b8eb5
Update dependencies
...
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago
Graham
c6f18ceca9
Exclude Flyway from minimization
...
It uses the Java Service Provider Interface.
Signed-off-by: Graham <gpe@openrs2.org>
4 years ago