diff options
| author | Paul Oliver <contact@pauloliver.dev> | 2026-04-28 00:06:58 +0200 |
|---|---|---|
| committer | Paul Oliver <contact@pauloliver.dev> | 2026-04-28 00:06:58 +0200 |
| commit | b1b94e828f477b384eb36a8cee9e511069ee77a5 (patch) | |
| tree | 165ea11defd6975ae76369b94ec23e7da841e7e4 /core/client.c | |
| parent | f7f2d1193758bb9d7a2d467f188cf755c8d5ddc9 (diff) | |
Adds native server and client (WIP)native_server_client
Diffstat (limited to 'core/client.c')
| -rw-r--r-- | core/client.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/core/client.c b/core/client.c new file mode 100644 index 0000000..220a90c --- /dev/null +++ b/core/client.c @@ -0,0 +1,28 @@ +#include <arpa/inet.h> +#include <json-c/json.h> + +#include "logger.c" + +int main(void) { + log_info("Initializing salis data client"); + int client_fd = socket(AF_INET, SOCK_STREAM, 0); + struct sockaddr_in server_addr = { 0 }; + server_addr.sin_family = AF_INET; + server_addr.sin_addr.s_addr = inet_addr(IP); + server_addr.sin_port = htons(PORT); + + log_info("Attempting to connect to salis data server at: %s:%d", IP, PORT); + if (connect(client_fd, (struct sockaddr *)&server_addr, sizeof(struct sockaddr_in))) { + log_warn("Could not connect to salis data server!"); + return 1; + } + + log_info("Fetching simulation info"); + write(client_fd, "o", sizeof(char)); + struct json_object *response = json_object_from_fd(client_fd); + const char *str_rep = json_object_to_json_string_ext(response, JSON_C_TO_STRING_PRETTY); + printf("resp: %s\n", str_rep); + + close(client_fd); + return 0; +} |
