Moving version history from source file to readme.

This commit is contained in:
Tiiffi
2015-01-19 02:02:42 +02:00
parent 3ab3e51889
commit 5f05286170
2 changed files with 76 additions and 107 deletions

View File

@ -37,3 +37,79 @@ enable-rcon=true
rcon.password=your_rcon_pasword
rcon.port=9999
```
####Contact:
WWW: http://sourceforge.net/projects/mcrcon/
MAIL: tiiffi_at_gmail_dot_com
IRC: tiiffi @ quakenet
BUG REPORTS: https://github.com/Tiiffi/mcrcon/issues
####Version history
0.0.5
- IPv6 support!
* Thanks to 'Tanja84dk' for addressing the real need of IPv6.
- Fixed bug causing crash / segmentation fault (invalid write) when receiving malformed rcon packet.
- Program makes use of C99 feature (variable-length arrays) so "-std=gnu99" flag on
GCC-compiler must be used to avoid unecessary warnings.
- Rcon receive buffer is now bigger (2024 bytes -> 10240 bytes).
* Thanks to 'gman_ftw' @ Bukkit forums.
- Fixed invalid error message when receiving empty rcon packet (10 bytes).
* Thanks to 'pkmnfrk' @ bukkit forums.
- Terminal mode now closes automatically when rcon socket is closed by server
or if packet size cannot be retrieved correctly.
- Client now tries to clean the incoming socket data if last package was out of spec.
0.0.4
- Reverted back to default getopts options error handler (opterr = 1).
Custom error handler requires rewriting.
- Some comestic fixes in program output strings.
- Program usage(); function now waits for enter before exiting on Windows.
0.0.3
- Colors are now supported on Windows too!
- Terminal mode is now triggered with "-t" flag. "-i" flag still works for
backwards compatibility.
- Bug fixes (Packet size check always evaluating false and color validity
check always evaluating true).
0.0.2
- License changed from 'ISC License' to 'zlib/libpng License'.
- Bug fixes & code cleanups
- Interactive mode (-i flag). Client acts as interactive terminal.
- Program return value is now the number of rcon commmands sent successfully.
If connecting or authentication fails, the return value is -1.
- Colors are now enabled by default. Now '-c' flag disables the color support.
0.0.1
- Added experimental support for bukkit colors.
Should work with any sh compatible shell.
- Packet string data limited to max 2048 (DATA_BUFFSIZE) bytes.
No idea how Minecraft handles multiple rcon packets.
If someone knows, please mail me so I can implement it.
####TODO:
- Make the receive buffer dynamic??
- Change some of the packet size issues to fatal errors.
- Code cleanups.
- Check global variables (remove if possible).
- Add some protocol checks (proper packet id check etc..).
- Preprocessor (#ifdef / #ifndef) cleanups.
- Follow valve rcon protocol standard strictly?
- Multiple packet support if minecraft supports it?!
- Investigate if player chat messages gets sent through rcon.
If they are, the messaging system requires rewriting.
- Name resolving should be integrated to connection creation function.
- Dont try to cleanup the socket if not authenticated
- Better sockets error reporting
- Better error function (VA_ARGS support)

107
mcrcon.c
View File

@ -21,113 +21,6 @@
* distribution.
*/
/*
* Name: mcrcon (minecraft rcon)
* Version: 0.0.5
* Date: 31.08.2012
*
* License: zlib/libpng License
*
*
* Contact:
* WWW: http://sourceforge.net/projects/mcrcon/
* MAIL: tiiffi_at_gmail_dot_com
* IRC: tiiffi @ quakenet
*
*
* Description:
* Mcrcon is powerful IPv6 compliant minecraft rcon client with bukkit coloring support.
* It is well suited for remote administration and to be used as part of automated server maintenance scripts.
* Does not cause "IO: Broken pipe" or "IO: Connection reset" spam in server console.
*
*
* Features:
* - Interacive terminal mode. Keeps the connection alive.
* - Send multiple commands in one command line.
* - Silent mode. Does not print rcon output.
* - Support for bukkit coloring on Windows and Linux (sh compatible shells).
* - Multiplatform code. Compiles on many platforms with minor changes.
* - IPv6 support.
*
*
* Version history:
*
* 0.0.5
*
* - IPv6 support!
* * Thanks to 'Tanja84dk' for addressing the real need of IPv6.
*
* - Fixed bug causing crash / segmentation fault (invalid write) when receiving malformed rcon packet.
*
* - Program makes use of C99 feature (variable-length arrays) so "-std=gnu99" flag on
* GCC-compiler must be used to avoid unecessary warnings.
*
* - Rcon receive buffer is now bigger (2024 bytes -> 10240 bytes).
* * Thanks to 'gman_ftw' @ Bukkit forums.
*
* - Fixed invalid error message when receiving empty rcon packet (10 bytes).
* * Thanks to 'pkmnfrk' @ bukkit forums.
*
* - Terminal mode now closes automatically when rcon socket is closed by server
* or if packet size cannot be retrieved correctly.
*
* - Client now tries to clean the incoming socket data if last package was out of spec.
*
*
* 0.0.4
* - Reverted back to default getopts options error handler (opterr = 1).
* Custom error handler requires rewriting.
* - Some comestic fixes in program output strings.
* - Program usage(); function now waits for enter before exiting on Windows.
*
*
* 0.0.3
* - Colors are now supported on Windows too!
* - Terminal mode is now triggered with "-t" flag. "-i" flag still works for
* backwards compatibility.
* - Bug fixes (Packet size check always evaluating false and color validity
* check always evaluating true).
*
*
* 0.0.2
* - License changed from 'ISC License' to 'zlib/libpng License'.
* - Bug fixes & code cleanups
* - Interactive mode (-i flag). Client acts as interactive terminal.
* - Program return value is now the number of rcon commmands sent successfully.
* If connecting or authentication fails, the return value is -1.
* - Colors are now enabled by default. Now '-c' flag disables the color support.
*
*
* 0.0.1
* - Added experimental support for bukkit colors.
* Should work with any sh compatible shell.
* - Packet string data limited to max 2048 (DATA_BUFFSIZE) bytes.
* No idea how Minecraft handles multiple rcon packets.
* If someone knows, please mail me so I can implement it.
*
*
* TODO:
* - Make the receive buffer dynamic??
* - Change some of the packet size issues to fatal errors.
* - Code cleanups.
* - Check global variables (remove if possible).
* - Add some protocol checks (proper packet id check etc..).
* - Preprocessor (#ifdef / #ifndef) cleanups.
* - Follow valve rcon protocol standard strictly?
* - Multiple packet support if minecraft supports it?!
* - Investigate if player chat messages gets sent through rcon.
* If they are, the messaging system requires rewriting.
* - Name resolving should be integrated to connection creation function.
* - Dont try to cleanup the socket if not authenticated
* - Better sockets error reporting
* - Better error function (VA_ARGS support)
*
*
* Bug reports and feature requests to tiiffi_at_gmail_dot_com.
*
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>