sysdis-project/plane/lib/network/tcp/client.c

43 lines
1.1 KiB
C

#include "client.h"
int TCP_CONNECT(int* pSocket, const char* pAddr, const int pPort, struct sockaddr_in* pInfo){
/* [0] Initialisation des variables
=========================================================*/
*pSocket = -1;
/* [1] Création de la socket
=======================================================*/
/* 1. Création de la socket */
*pSocket = socket(AF_INET, SOCK_STREAM, 0);
/* 2. Gestion erreur */
if( *pSocket < 0 )
return -1;
/* [2] On définit les infos de la socket
=========================================================*/
/* (1) Reset des valeurs */
bzero(pInfo, sizeof(struct sockaddr_in));
/* (2) On définit les infos */
pInfo->sin_family = AF_INET;
pInfo->sin_port = htons(pPort);
pInfo->sin_addr.s_addr = inet_addr(pAddr);
/* [3] On se connecte au serveur
=========================================================*/
if( connect(*pSocket, (struct sockaddr*) pInfo, sizeof(struct sockaddr_in)) < 0 )
return -1;
/* [n] Code succès
=========================================================*/
return 0;
}