tiny-chain/socket/client.cc

37 lines
994 B
C++
Raw Normal View History

// Sample of a client which sends up preconstructed data to our server
#include <iostream>
#include <stdlib.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <unistd.h>
#include "transaction.h"
#define PORT 6969
int main(void) {
sockaddr_in server_addr;
Transaction sample_ta;
int sock = socket(AF_INET, SOCK_STREAM, 0);
if(sock < 0) {
std::cerr << "Could not create socket\n";
return 1;
}
server_addr.sin_family = AF_INET;
server_addr.sin_port = PORT;
if(inet_pton(AF_INET, "127.0.0.1", &server_addr.sin_addr) <= 0) {
std::cerr << "Invalid address\n";
return 1;
}
if(connect(sock, (sockaddr*)&server_addr, sizeof(server_addr)) < 0) {
std::cerr << "Conection failed\n";
return 1;
}
send(sock, &sample_ta, sizeof(Transaction), 0);
char buffer[1024] = {0};
int response = read(sock, buffer, 1024);
std::cout << "BEGIN BUFFER\n" << buffer << "\nEND BUFFER\n";
return 0;
}