Δημοσιεύτηκε: 05 Απρ 2011, 01:29
από panos7
Καλησπέρα,
εχω μια εργασία σε γλωσσα προγραμματισμού C με tcp-sockets και ηθελα μια βοήθεια παρακαλώ...
στο προγραμμα μου θα πρεπει ο client να στελνει στον server 2 txt αρχεία(τα περνάμε απο τη main...) οπου ο τελευταίος θα κάνει συνένωση των αρχείων αυτών...

για τον client εχω κανει:
Κώδικας: Επιλογή όλων
#include <sys/socket.h>

#include <netinet/in.h>

#include <stdio.h>

#include <string.h>

#define SERV_HOST_ADDR "127.0.0.1"

#define SERV_TCP_PORT 6000





int main(int argc, char**argv)

{

int sockfd;

struct sockaddr_in my_addr;

char filename[BUFSIZ];



/*Dimiourgia socket*/

if((sockfd=socket(AF_INET,SOCK_STREAM,0)) < 0)

{

perror("socket");

return 0;

}



/*Ka8orismos port k ip address gia ton client*/

bzero(&my_addr,sizeof(my_addr));

my_addr.sin_family = AF_INET;

my_addr.sin_addr.s_addr=inet_addr(SERV_HOST_ADDR);

my_addr.sin_port=htons(SERV_TCP_PORT);



/*Sundesi me ton server*/

if ((connect(sockfd, (struct sockaddr *)&my_addr, sizeof(my_addr)))<0)

{

perror("connect");

return 0;

}





/*Apostoli tou onomatos ston server mesw tou socket*/

if ((send(sockfd,argv[1],strlen(argv[1]),0))<0)

{

printf("Error occured on sending data to server\n");

return 0;

}



/*Lipsi apanthshs apo ton server*/

if ((recv(sockfd,filename,sizeof(filename),0))<0)

{

printf("Error occured on received response\n");

return 0;

}

return 0;

}


στον παραπάνω κώδικα στέλνω το 1ο txt στον server αλλα δεν μπορώ να καταλαβω πως στελνω παράλληλα και το 2ο txt για να γινει η συνένωση στον server