Releases: bilintsui/minecraft-relay-server
v1.2-beta4
Please notice, this is a pre-release, don't use it in a production environment.
New Features
- Added support for Minecraft 23w31a (1.20.2) and later versions.
Full Changelog since previous stable release: v1.1.5...v1.2-beta4
Full Changelog since previous pre-release: v1.2-beta3...v1.2-beta4
v1.2-beta3
Please notice, this is a pre-release, don't use it in a production environment.
The codes changed in v1.2 beta 2 still not be fully tested, use it with cautions.
New Features
- Added User Public Key Signature Data support in rewrite routine, to support Minecraft 22w17a (1.19) and later versions.
Changes
- Added internal version to the header string.
Changes(Technical)
- Added CMake for compiling workflow.
- Added following architectures to workflow: ppc64el, riscv64, s390x.
- Added "defines.h" for global defines (only type definitions currently).
- Added "proto_proxy.c" and "proto_proxy.h" for Proxy Protocol v1, but currently most unused.
- Optimized some functions in "basic.c".
- Changed how the codes organized.
- Changed how the header string was generated.
- Changed how the protocol be handled (except legacy login routine, will be changed later).
- Merged logic of protocols identifying, and split it from "basic.c" to "protocols/common.c".
- Standardized some type usages.
- Renamed macros of some protocol type definitions.
- Other internal code changes.
Fixed Bugs
- Fixed a issue of Legacy MOTD packet can not be identified properly. (since 1.1-rc1, which not fixed completely that time)
- Fixed a issue of proxy duplicate detection can not be working properly. (since 1.2-beta2-patch1)
Full Changelog since previous stable release: v1.1.5...v1.2-beta3
Full Changelog since previous pre-release: v1.2-beta2...v1.2-beta3
v1.2-beta2
Please notice, this is a pre-release, don't use it in a production environment.
Unlike previous pre-releases, this version wasn't taken some basic tests, use it with cautions.
From this version, the pre-compiled binary file for i386 platform will not be provided, due to the restriction of the pre-compiled cJSON shared library.
If the pre-compiled binary files are not supporting your desired platform, you can manually compile cJSON and mcrelay instead.
New Features
- Added IPv6 support on networking and ip-forwarding.
- Added IPv6 support on logging.
Changes
- Changed the format of configuration to JSON format.
- Changed virtual hostname verification to case insensitive.
Removes
- Removed Default Server.
Changes(Technical)
- Replaced network library for IPv6 support.
- Replaced config library for configuration file in JSON format.
- Renamed some structures.
- Replaced some pre-allocated variables to dynamic-allocated.
- Merged some "mksysmsg" callings.
- Splitted "gettime" and "mksysmsg" from "basic.h" to "log.h".
- Some other underhood code changes.
Removes(Technical)
- Removed some unused functions.
Fixed Bugs
- Fixed some memory leak issues.
Full Changelog since previous stable release: v1.1.5...v1.2-beta2
Full Changelog since previous pre-release: v1.2-beta1...v1.2-beta2
v1.2-beta1
Please notice, this is a pre-release, don't use it in production environment.
New Features
- Supported IP forwarding.
Changes
- Moved "runmode" config option to a command line option.
Removes
- Removed support for UNIX Socket.
Changes(Technical)
- Added a currently unused function "freadall" to read all contents in a file to a buffer with flexible size.
- Added a currently unused function "base64_encode" to encode contents to base64.
- Replaced network library for future IPv6 support.
- Changed some structure's usage.
Fixed Bugs
- Fixed binding error when restarting server.
- Fixed potiential issues after released the allocated memory.
- Fixed potiential issues of log's mess.
Full Changelog since previous stable release: v1.1.5...v1.2-beta1
v1.1.5
v1.1.4
This is a minor update. Fixed two bugs.
If there's haven't any accident, this version will be the last minor version of v1.1.
v1.2 will be the next major development version.
Fixed Bugs
- Fixed "Invalid Virtual Host" issue when a client connected to the proxy using a resolved SRV record.
- Fixed process abnormal exit issue(#6) when log file permission changed(and made the log not writable) while process running.
v1.1.3
Happy new year! 2021! This is the first update in this year.
This is a minor update, changed a lot, and fixed some bugs.
New Features
- Added "-v/--version" option in command line to display mcrelay version and its internal version.
Enhancements
- Increased relay efficiency and decreased CPU cost & network latency by using event poll(epoll).
Changes
- Changed copyright year from "2020" to "2020-2021".
- Added "version.json" as version manifest.
- Changed some display messages.
Changes(Technical)
- Changed dump style of Configuration Dumper.
- Added string split in reverse order.
Fixed Bugs
- Cannot proper read destination address in configuration file.
- Cannot proper read proxy information in configuration file when you enabled SRV Resolve.
- Processing wrong when option with "-" prefix and it's not a valid option.
v1.1.2
This is a minor update, changed a lot, and fixed some bugs.
New Features
- Supported Default Server.
Changes
- Added proxy duplicate check.
- Added error messages for proxy duplicate check.
- Added bind address / port check.
Changes(Technical)
- Standarized format of header files.
- Future-reserved support for multi-platform.
- Splited most part of code in mcrelay.c into main.c and misc.c.
- Modified the processing method on establish a outgoing connection.
- Removed some unused variables.
- Removed some unnessasery function calls to get a better latency.
- Added Config Dumper for debug purpose. (Will not use in any released version.)
- Replaced return code of config_load with macro.
- Changed usage of function net_mksockaddr_in.
Fixed Bugs
- Screen / Log output of Binding will not output actual binding port.
- Core dumped when using a log path which can't write to.
- The last line of config file couldn't be read.
v1.1.1
v1.1
Finally, we made v1.1 released!
New Features
- Supported reverse proxy.
- Supported config file and config reload.
- Supported running program in different mode. (simple and forking)
- Supported log file and leveled logging.
- Supported listening or connecting to an UNIX socket.
- Supported SRV record resolve.
- Supported send MOTD to client when proxy unavailable.
- Supported reload/terminate previous running process by command line.
- Supported legacy server & client with version 12w04a or later. (Some versions are excepted. For details, watch README.md.)
Changes
- Totally rewrited rewrite module.
- Changed rewrite process for modern protocol(Minecraft 13w41a+).
Changes(Technical)
- Splited sources.
- Standardized return code.
- A bunch of backbone functions.
For more details, watch comments of previous commits and pre-releases.