Simple program for sending data from one computer to another.
This program can transfer data from a smartphone to a computer, but the ability to transfer data from a computer to a smartphone will also be added.
There are Linux server and Android Client
The production of Apple products (iPhones and other devices) will not be supported but Windows 7, 10 and 11 will be.
- OpenSSL 3.6.4-1
- cJSON https://github.com/DaveGamble/cJSON.git v1.7.18
- SQLite3 3.53.4-1
- androidx.room:room-runtime 2.6.1
- androidx.room:room-compiler 2.6.1
-
Clone repository
-
Edit Server.c file
#define BUFFER_SIZE 4096
#define TIMEOUT_SEC 50
#define MAX_MESSAGE_SIZE 0x6400000
#define IP_SOLVER_SERVER_DOMAIN "icanhazip.com"
#define HTTP_REQUEST "GET / HTTP/1.1\r\nHost: icanhazip.com\r\nConnection: close\r\n\r\n"
#define FAILED_SIGNAL_HANDLERS_MESSAGE "Failed to set up signal handlers\n"
#define FAILED_TO_SET_THREAD_ATTRS "Failed to set up thread attributes\n"
const unsigned short CONNECTION_PORT = 5000;
const char* CONNECTION_IP = "0.0.0.0";
const int PORT_RECONNECTION_SLEEP_TIME = 5;
const bool SSL_ENCRYPT = true;
const char* PUBLIC_KEY_FILE = "server.crt";
const char* PRIVATE_KEY_FILE = "server.key";-
Generate server public and private key files if SSL_ENCRYPT flag allowed.
-
Build with Cmake
Find corresponding preset
cmake --list-presetsBuild with preset
mkdir -p build && cd build
cmake .. --list-presets
cmake .. --preset linux-debug
cd ..
cmake --build ./build --preset- Launch
./build/SendingSystem-
Sync gradle
-
Run project



