Ecco il codice relativo al client:
#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <netdb.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#define QUEUE_LEN 20
#define BUFF_SIZE 20
int main(int argc, char* argv[])
{
int sk;
int client;
int ret;
struct sockaddr_in s_addr;
struct sockaddr_in c_addr;
char buffer[] = "Sono il client 345.\0";
int port = 2001;
char address[] = "127.0.0.1";
sk = socket(AF_INET, SOCK_STREAM, 0);
bzero(&s_addr, sizeof(s_addr));
s_addr.sin_family = AF_INET;
s_addr.sin_port = htons(port);
s_addr.sin_addr.s_addr = inet_addr(address);
connect(sk, (struct sockaddr*)&s_addr, sizeof(s_addr));
printf("Client Send: %s\n", buffer);
ret = send(sk, buffer, BUFF_SIZE, 0);
ret = recv(sk, buffer, BUFF_SIZE, 0);
printf("Client Receive: %s\n", buffer);
return 1;
}
Come per il server, per poter compilare il client è sufficiente digitare da terminale:
gcc -o client_tcp client_tcp.c
dove client_tcp.c è il nome data al file contenente il codice esposto in precedenza.
Nessun commento:
Posta un commento