Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <sys/types.h>
- #include <sys/socket.h>
- #include <netinet/in.h>
- #include <netdb.h>
- #include <netdb.h>
- #include <string.h>
- #include <stdlib.h>
- #include <unistd.h>
- #include <errno.h>
- #include <arpa/inet.h>
- void error(char *msg)
- {
- perror(msg);
- exit(0);
- }
- void sendData( int sockfd, char* buffer )
- {
- if (write( sockfd, buffer, 512 ) < 0 )
- error( (char*)"ERROR writing to socket" );
- }
- void getData( int sockfd, char* buffer)
- {
- if (read(sockfd,buffer,512) < 0 )
- error( (char*)"ERROR reading from socket");
- }
- int main(int argc, char *argv[])
- {
- int sockfd01, portno01 = 51000;
- int sockfd02, portno02 = 51500;
- char serverIp[] = "localhost";
- struct sockaddr_in serv_addr01;
- struct sockaddr_in serv_addr02;
- struct hostent *server01;
- struct hostent *server02;
- char buffer[512];
- if ((sockfd01 = socket(AF_INET, SOCK_STREAM, 0) ) < 0 )
- error( (char*)"ERROR opening socket");
- if ((server01 = gethostbyname(serverIp ) ) == NULL )
- error( (char*)"ERROR, no such host\n");
- bzero((char *) &serv_addr01, sizeof(serv_addr01));
- serv_addr01.sin_family = AF_INET;
- bcopy((char *)server01->h_addr, (char *)&serv_addr01.sin_addr.s_addr, server01->h_length);
- serv_addr01.sin_port = htons(portno01);
- if (connect(sockfd01, (struct sockaddr *)&serv_addr01, sizeof(serv_addr01)) < 0)
- error( (char*)"ERROR connecting");
- sendData(sockfd01, buffer);
- printf("sent first byte %d second byte %d\n", buffer[0], buffer[1]);
- close(sockfd01);
- if ((sockfd02 = socket(AF_INET, SOCK_STREAM, 0) ) < 0 )
- error( (char*)"ERROR opening socket");
- if ((server02 = gethostbyname(serverIp ) ) == NULL )
- error( (char*)"ERROR, no such host\n");
- bzero((char *) &serv_addr02, sizeof(serv_addr02));
- serv_addr02.sin_family = AF_INET;
- bcopy((char *)server02->h_addr, (char *)&serv_addr02.sin_addr.s_addr, server02->h_length);
- serv_addr02.sin_port = htons(portno02);
- if (connect(sockfd02, (struct sockaddr *)&serv_addr02, sizeof(serv_addr02)) < 0)
- error( (char*)"ERROR connecting");
- getData(sockfd02, buffer);
- printf("received first byte %d second byte %d\n", buffer[0], buffer[1]);
- close(sockfd02);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement