Advertisement
Aw3som3n3sss

client

Apr 21st, 2024
547
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.52 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <unistd.h>
  4. #include <string.h>
  5. #include <sys/types.h>
  6. #include <sys/socket.h>
  7. #include <netinet/in.h>
  8. #include <netdb.h>
  9.  
  10. void error(const char *msg)
  11. {
  12.     perror(msg);
  13.     exit(0);
  14. }
  15.  
  16. int main(int argc, char *argv[])
  17. {
  18.     int sockfd, portno, n;
  19.     struct sockaddr_in serv_addr;
  20.     struct hostent *server;
  21.  
  22.     char buffer[256];
  23.     if (argc < 3) {
  24.        fprintf(stderr,"usage %s hostname port\n", argv[0]);
  25.        exit(0);
  26.     }
  27.     portno = atoi(argv[2]);
  28.     sockfd = socket(AF_INET, SOCK_STREAM, 0);
  29.     if (sockfd < 0)
  30.         error("ERROR opening socket");
  31.     server = gethostbyname(argv[1]);
  32.     if (server == NULL) {
  33.         fprintf(stderr,"ERROR, no such host\n");
  34.         exit(0);
  35.     }
  36.     bzero((char *) &serv_addr, sizeof(serv_addr));
  37.     serv_addr.sin_family = AF_INET;
  38.     bcopy((char *)server->h_addr,
  39.          (char *)&serv_addr.sin_addr.s_addr,
  40.          server->h_length);
  41.     serv_addr.sin_port = htons(portno);
  42.     if (connect(sockfd,(struct sockaddr *) &serv_addr,sizeof(serv_addr)) < 0)
  43.         error("ERROR connecting");
  44.     printf("Please enter an Expression in post fix notation (5 4 -): ");
  45.     bzero(buffer,256);
  46.     fgets(buffer,255,stdin);
  47.     n = write(sockfd,buffer,strlen(buffer));
  48.     if (n < 0)
  49.          error("ERROR writing to socket");
  50.     bzero(buffer,256);
  51.     n = read(sockfd,buffer,255);
  52.     if (n < 0)
  53.          error("ERROR reading from socket");
  54.     printf("%s\n",buffer);
  55.     close(sockfd);
  56.     return 0;
  57. }
  58.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement