aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Jonas Gunz <himself@jonasgunz.de> 2020-10-03 13:42:01 +0200
committerGravatar Jonas Gunz <himself@jonasgunz.de> 2020-10-03 13:42:01 +0200
commit5a88c5b61e4575397793f80ca780416104e904bb (patch)
tree1754b09d9333e571abd02e7e07a7c9b40e5994cb
parent43530628a808fda00a410b442196e58abe3507b7 (diff)
downloadminecraft-rcon-5a88c5b61e4575397793f80ca780416104e904bb.tar.gz
comments, usage to stderr
-rw-r--r--src/main.c2
-rw-r--r--src/rcon.h31
2 files changed, 24 insertions, 9 deletions
diff --git a/src/main.c b/src/main.c
index 3fda198..eeb489a 100644
--- a/src/main.c
+++ b/src/main.c
@@ -122,7 +122,7 @@ int connect_socket ( char* _host, char* _port ) {
}
void print_help ( char* _progname ) {
- printf(
+ fprintf( stderr,
"Minecraft RCON client\n"
"Usage:\n"
" %s HOST PORT PASSWORD COMMAND ...",
diff --git a/src/rcon.h b/src/rcon.h
index 1c1e232..566aa0b 100644
--- a/src/rcon.h
+++ b/src/rcon.h
@@ -12,7 +12,9 @@
* 2-byte pad byte^2 Two null bytes
*
* sizeof int: 4B
- * */
+ */
+
+#pragma once
#include <stdint.h>
#include <stdlib.h>
@@ -43,17 +45,30 @@ typedef struct rcon_packet_s {
uint32_t payload_len;
} rcon_packet_t;
-int rcon_parse_packet ( rcon_packet_t* _packet, char* _buffer, uint32_t _len );
-
-int rcon_construct_packet ( char* _buffer, uint32_t _len, rcon_packet_t* _packet );
-
+/**
+ * Authenticate RCON connection
+ */
int rcon_login ( int _socket, const char* _password );
+/**
+ * Send command via authenticated RCON connection
+ * Result is written to _output.
+ */
int rcon_command ( char** _output, int _socket, const char* _command );
-int rcon_recv_packet ( int _socket, rcon_packet_t* _packet, int _timeout_msecs );
+/**
+ * Get rcon_* return code string representation
+ */
+const char* rcon_strerror ( int _errno );
-int rcon_send_packet ( int _socket, rcon_packet_t* _packet );
+/**
+ * rcon_login and rcon_command are wrappers around the following functions
+ */
-const char* rcon_strerror ( int _errno );
+int rcon_parse_packet ( rcon_packet_t* _packet, char* _buffer, uint32_t _len );
+
+int rcon_construct_packet ( char* _buffer, uint32_t _len, rcon_packet_t* _packet );
+int rcon_recv_packet ( int _socket, rcon_packet_t* _packet, int _timeout_msecs );
+
+int rcon_send_packet ( int _socket, rcon_packet_t* _packet );