Advertisement
Guest User

Untitled

a guest
Jun 25th, 2017
52
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.91 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <unistd.h>
  3. #include <assert.h>
  4. #include <sys/types.h>
  5. #include <sys/socket.h>
  6.  #include <arpa/inet.h>
  7. #define MAXCON 256
  8.  
  9.  
  10. int main(int argc, char* argv[]){
  11.    
  12.    
  13. /*variablen*/  
  14. int newsocket = 0;
  15. char options;
  16. int kactive = 0;
  17. extern int optind;
  18. extern char *optarg;
  19. FILE *ssstream;
  20. char buffer[256];
  21. char *welcomemsg;
  22. char *blaafterprogrammname;
  23. int s = 0;
  24. struct sockaddr_in serverAddr;
  25. socklen_t addrlen;
  26. /*int bytecount = 0;*/ 
  27.     /*getopt*/
  28.     while((options = getopt(argc,argv,"k:d:"))!=-1){
  29.        
  30.         switch(options){
  31.            
  32.                 case 'k':
  33.                     kactive = 1;
  34.                     break;
  35.                
  36.                 case 'd':
  37.                     welcomemsg = optarg;
  38.                     break;
  39.                
  40.                 default:
  41.                     assert(0);
  42.                     break;
  43.            
  44.         }
  45.        
  46.         if(optind<argc){
  47.            
  48.             blaafterprogrammname = argv[optind];
  49.            
  50.         }
  51.     }
  52.    
  53.     printf(" %s\n", welcomemsg);
  54.    
  55.    
  56.     if( (s = socket(AF_INET,SOCK_STREAM,0) )==-1){
  57.         fprintf(stderr, "Fail %s\n", argv[0]);
  58.     }else{
  59.         printf("socket k");
  60.         }
  61.     printf("asdfasdf");
  62.     serverAddr.sin_family = AF_INET;
  63.     serverAddr.sin_port = 1337;
  64.     serverAddr.sin_addr.s_addr = INADDR_ANY;
  65.     addrlen = sizeof(struct sockaddr_in);
  66.     if(bind(s, (const struct sockaddr*)&serverAddr, addrlen)==-1){
  67.         fprintf(stderr, "Oh noes");
  68.     }else{
  69.         printf("bind k");
  70.         }
  71.    
  72.     if(listen(s,  MAXCON)==-1){
  73.         fprintf(stderr, "Oh noes");
  74.     }else{
  75.         printf("listen k");
  76.         }
  77.    
  78.     while( (newsocket = accept(s,(struct sockaddr*)&serverAddr, &addrlen) )!= -1 ){
  79.         printf("waiting");
  80.         if((ssstream = fdopen(s, "r"))!=NULL){
  81.             printf("fdopen k");
  82.             if((fgets(buffer, 256, ssstream))!= NULL){
  83.                
  84.                 printf("buffer: %s\n",buffer);
  85.                 printf("hat allet geklappt un so");
  86.                 }else{
  87.                    
  88.                     printf("fdopen not k");
  89.                     }
  90.            
  91.            
  92.             }else{
  93.                 printf("fgets not k");
  94.                 }
  95.        
  96.         fclose(ssstream);
  97.         }
  98.     /*if(newsocket == -1){
  99.         fprintf(stderr, "%s , Error at accepting",argv[0]);
  100.     }*/
  101.    
  102.    
  103.     return 0;
  104. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement