Guest User

Untitled

a guest
Jan 22nd, 2019
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.13 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <string.h>
  3. #include <sys/types.h>
  4. #include <sys/socket.h>
  5. #include <netinet/in.h>
  6. #include <errno.h>
  7. #include <sys/time.h>
  8. #include <strings.h>
  9. #include <ctype.h>
  10.  
  11.  
  12. int main(int argc, char **argv)
  13. {
  14.     int sockfd;
  15.     struct sockaddr_in servaddr;
  16.     socklen_t len = sizeof(servaddr);
  17.     char *point;
  18.     char mesg[1024];
  19.     char command[10];
  20.     char myip[50];
  21.     char count[50]="4";
  22.     struct timeval time1,time2;
  23.  
  24.     if(argc!=2){
  25.         printf("Usage: %s <ip_addr>\n",argv[0]);
  26.         return -EINVAL;
  27.     }
  28.  
  29. //  while(1){    
  30.  
  31.     sockfd = socket(PF_INET,SOCK_STREAM,0);
  32.     if(sockfd<0) {
  33.         perror("socket: ");
  34.         return -EIO;
  35.     }
  36.     bzero(&servaddr, sizeof(servaddr));
  37.     servaddr.sin_family = AF_INET;
  38.     servaddr.sin_port = htons(54321);
  39.     inet_pton(AF_INET,argv[1],&servaddr.sin_addr);
  40.  
  41.  
  42.     while(1){
  43.     scanf("%s %s %s", command, myip, count);
  44.     printf("%s, %s, %s", command, myip, count);
  45.     if (strncmp (command, "ping", 4)==0){
  46.         printf("NAG-PING KA!");
  47.         if(connect(sockfd,(struct sockaddr *)&servaddr,sizeof(servaddr))<0){
  48.             perror("connect: ");
  49.             close(sockfd);
  50.         return -EIO;
  51.         }
  52.         while (1){     
  53.         fgets(mesg,sizeof(mesg),stdin);
  54.         sendto(sockfd,mesg,strlen(mesg),0,(const struct sockaddr *)&servaddr,len);
  55.         }  
  56.         close(sockfd);
  57.     }
  58.  
  59.        
  60.     if (strncmp (command, "send", 4)==0){
  61.         printf("NAG-SEND KA!");
  62.         if(connect(sockfd,(struct sockaddr *)&servaddr,sizeof(servaddr))<0){
  63.             perror("connect: ");
  64.             close(sockfd);
  65.         return -EIO;
  66.         }
  67.         while (1){
  68.         fgets(mesg,sizeof(mesg),stdin);
  69.         sendto(sockfd,mesg,strlen(mesg),0,(const struct sockaddr *)&servaddr,len);
  70.         }
  71.         close(sockfd);  
  72.     }
  73.     }
  74.            
  75.    
  76.  
  77.  
  78. /*  bzero(&servaddr, sizeof(servaddr));
  79.     servaddr.sin_family = AF_INET;
  80.     servaddr.sin_port = htons(54321);
  81.     inet_pton(AF_INET,argv[1],&servaddr.sin_addr);
  82.  
  83.     //not present in udp clients
  84.     if(connect(sockfd,(struct sockaddr *)&servaddr,sizeof(servaddr))<0){
  85.         perror("connect: ");
  86.         close(sockfd);
  87.     return -EIO;
  88.     }
  89.  
  90. //      while(1){
  91.         fgets(mesg,sizeof(mesg),stdin);
  92.         sendto(sockfd,mesg,strlen(mesg),0,(const struct sockaddr *)&servaddr,len);
  93.     }
  94.     close(sockfd);
  95.  */ return 0;
  96. }
Add Comment
Please, Sign In to add comment