Okay... ho sviluppato un client... solo che non mi ritorna niente, anche perchè su SEND ho trovato solo un piccolo esempio e non una guida + approfondita... in più il server non mi ritorna niente...
Voi che dite?codice:// Including required headers #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h> #include <netdb.h> #include <stdio.h> #include <unistd.h> // Constants #define MAX_MSG 1024 #define PORT 1991 #define PROTOCOL PF_INET #define TYPE SOCK_STREAM #define FAMILY AF_INET int main (int argc, char *argv[]) { // Variables and Structures struct sockaddr_in localAddr, servAddr; struct hostent * host; // Opening a socket stream: int socket(int domain, int type, int protocol) int sockfd = socket(PROTOCOL, TYPE, 0); // Control for incoming socket if(sockfd <= 0) perror("Cannot create socket"); // Adjusting variables in structure - local localAddr.sin_family = FAMILY; localAddr.sin_addr.s_addr = htonl(INADDR_ANY); localAddr.sin_port = htons(1990); // Assign a local address to a socket: int bind(int sockfd, const struct sockaddr *serv_addr, socklen_t addrlen) int bindc = bind(sockfd, (struct sockaddr *) &localAddr, sizeof(localAddr)); // Control for bind if(bindc < 0) perror("Cannot bind socket"); // Adjusting variables in structure - server host = gethostbyname("127.0.0.1"); servAddr.sin_family = host->h_addrtype; servAddr.sin_port = htons(PORT); // Connecting to server socket: int connect(int sockfd, const struct sockaddr *servaddr, socklen_t addrlen) int connectc = connect(sockfd, (struct sockaddr *) &servAddr, sizeof(servAddr)); // Control for bind if(connectc < 0) perror("Cannot connect to socket"); // Sending data to server: int send(int sockfd, const struct sockaddr *servaddr, socklen_t addrlen); int sendc = send(sockfd, "test", strlen("test") + 1, 0); // Control for bind if(sendc < 0) perror("Cannot send data to socket"); }

Rispondi quotando