diff options
author | David Härdeman <david@hardeman.nu> | 2020-06-23 15:46:23 +0200 |
---|---|---|
committer | David Härdeman <david@hardeman.nu> | 2020-06-23 15:46:23 +0200 |
commit | 973ae757342b91e3e6aafd07e0c0a24af84aad98 (patch) | |
tree | 0b3b108d741d81f3971f1a7426c531ed37d1fbbb /mcserverctl.c | |
parent | 7a8bee84bd1f41bf349f9077617e20c3560b7c62 (diff) |
Add skeleton of new mcserverctl binary
Diffstat (limited to 'mcserverctl.c')
-rw-r--r-- | mcserverctl.c | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/mcserverctl.c b/mcserverctl.c new file mode 100644 index 0000000..8a799a2 --- /dev/null +++ b/mcserverctl.c @@ -0,0 +1,41 @@ +#include <stdio.h> +#include <stdlib.h> +#include <stdint.h> +#include <inttypes.h> + +#include "rcon-protocol.h" + + +int +main(int argc, char **argv) +{ + char buf[4096]; + size_t len; + int32_t id, type; + const char *msg, *error; + + fprintf(stderr, "Started\n"); + + if (!rcon_protocol_create_packet(buf, sizeof(buf), &len, + 1, RCON_PACKET_LOGIN, + "test")) { + fprintf(stderr, "Failed to create packet\n"); + exit(EXIT_FAILURE); + } + + if (!rcon_protocol_packet_complete(buf, len)) { + fprintf(stderr, "Packet not complete\n"); + exit(EXIT_FAILURE); + } + + if (!rcon_protocol_read_packet(buf, len, &id, &type, &msg, &error)) { + fprintf(stderr, "Packet parsing failed: %s\n", error); + exit(EXIT_FAILURE); + } + + fprintf(stderr, "Packet - id: %" PRIi32 ", type: %" PRIi32 ", msg: %s\n", + id, type, msg); + + exit(EXIT_SUCCESS); +} + |