add data compression and decompression

This commit is contained in:
Theo Tappe
2026-06-14 16:52:07 +00:00
parent 7478d050e3
commit 75d5f91c6a
14 changed files with 189 additions and 94 deletions
+4 -13
View File
@@ -1,10 +1,9 @@
#ifndef SOCKET_H
#define SOCKET_H
#include "array_list.h"
#include "data.h"
#include <netinet/in.h>
typedef unsigned long long NET_SIZE;
typedef int Status;
enum NET_STATUS { OK, ERROR, FINISHED, NEXT };
@@ -24,25 +23,17 @@ typedef struct Client {
int file_descriptor;
} Client;
typedef struct DataFragment {
void *data;
unsigned long long size;
} DataFragment;
Client *client_create();
void client_disconnect(Client *client);
void client_delete(Client *client);
void client_connect(Client *client, char *host, int port);
DataFragment *data_fragment_create(void *data, unsigned long long size);
void data_fragment_delete(void *data_fragment);
void send_n_data(int file_descriptor, void *data, NET_SIZE data_size);
void receive_n_data(int file_descriptor, void *data, NET_SIZE data_size);
void send_n_data(int file_descriptor, void *data, size_t data_size);
void receive_n_data(int file_descriptor, void *data, size_t data_size);
void send_str(int file_descriptor, char *data);
char *receive_str(int file_descriptor);
void send_data(int file_descriptor, void *data, unsigned long long data_size);
DataFragment *receive_data(int file_descriptor);
Data *receive_data(int file_descriptor);
void send_int(int file_descriptor, int data);
int receive_int(int file_descriptor);
void send_status(int file_descriptor, Status status);