[BACK]Return to mytcpio.c CVS log [TXT][DIR] Up to [local] / OpenXM / src / kan96xx / plugin

Diff for /OpenXM/src/kan96xx/plugin/mytcpio.c between version 1.13 and 1.14

version 1.13, 2004/02/25 23:14:35 version 1.14, 2004/02/28 13:39:42
Line 1 
Line 1 
 /*  $OpenXM: OpenXM/src/kan96xx/plugin/mytcpio.c,v 1.12 2003/09/16 02:57:39 takayama Exp $ */  /*  $OpenXM: OpenXM/src/kan96xx/plugin/mytcpio.c,v 1.13 2004/02/25 23:14:35 takayama Exp $ */
 #include <stdio.h>  #include <stdio.h>
 #include <sys/types.h>  #include <sys/types.h>
 #include <sys/socket.h>  #include <sys/socket.h>
Line 42  socketOpen(char *serverName,int portNumber) {
Line 42  socketOpen(char *serverName,int portNumber) {
   int tt;    int tt;
   
   SET_TCPIOERROR;    SET_TCPIOERROR;
   fprintf(TcpioError,"Hello from open. serverName is %s and portnumber is %d\n",    if (!Quiet) fprintf(TcpioError,"Hello from open. serverName is %s and portnumber is %d\n",
           serverName,portNumber);            serverName,portNumber);
   if ((myhost = gethostbyname(serverName)) == NULL) {    if ((myhost = gethostbyname(serverName)) == NULL) {
     errorMsg1s("Bad server name.");      errorMsg1s("Bad server name.");
Line 78  socketOpen(char *serverName,int portNumber) {
Line 78  socketOpen(char *serverName,int portNumber) {
     errorMsg1s("Listen failed");      errorMsg1s("Listen failed");
     return(-1);      return(-1);
   }    }
   fprintf(TcpioError,"Done the initialization. port =%d\n",ntohs(me.sin_port));    if (!Quiet) fprintf(TcpioError,"Done the initialization. port =%d\n",ntohs(me.sin_port));
   OpenedSocket = ntohs(me.sin_port);    OpenedSocket = ntohs(me.sin_port);
   return(s_waiting);    return(s_waiting);
 }  }
Line 89  socketAccept(int snum) {
Line 89  socketAccept(int snum) {
   
   SET_TCPIOERROR;    SET_TCPIOERROR;
   s = snum;    s = snum;
   fprintf(TcpioError,"Trying to accept... "); fflush(TcpioError);    if (!Quiet) fprintf(TcpioError,"Trying to accept... "); fflush(TcpioError);
   if ((news = accept(s,NULL,NULL)) < 0) {    if ((news = accept(s,NULL,NULL)) < 0) {
     errorMsg1s("Error in accept. Retrying (socketAccept).");      errorMsg1s("Error in accept. Retrying (socketAccept).");
     /* Code added for strange behavior on cygwin. */      /* Code added for strange behavior on cygwin. */
Line 98  socketAccept(int snum) {
Line 98  socketAccept(int snum) {
       return (-1);        return (-1);
     }      }
   }    }
   fprintf(TcpioError,"Accepted.\n"); fflush(TcpioError);    if (!Quiet) fprintf(TcpioError,"Accepted.\n"); fflush(TcpioError);
   if (close(s) < 0) {    if (close(s) < 0) {
     errorMsg1s("Error in closing the old socket.");      errorMsg1s("Error in closing the old socket.");
     return(-1);      return(-1);
Line 114  socketAcceptLocal(int snum) {
Line 114  socketAcceptLocal(int snum) {
   
   SET_TCPIOERROR;    SET_TCPIOERROR;
   s = snum;    s = snum;
   fprintf(TcpioError,"Trying to accept from localhost... "); fflush(TcpioError);    if (!Quiet) fprintf(TcpioError,"Trying to accept from localhost... "); fflush(TcpioError);
   len = sizeof(struct sockaddr);    len = sizeof(struct sockaddr);
   if ((news = accept(s,&peer,&len)) < 0) {    if ((news = accept(s,&peer,&len)) < 0) {
     errorMsg1s("Error in accept. Retrying");      errorMsg1s("Error in accept. Retrying");
Line 127  socketAcceptLocal(int snum) {
Line 127  socketAcceptLocal(int snum) {
   
   len = sizeof(struct sockaddr);    len = sizeof(struct sockaddr);
   getpeername(news,&peer,&len);    getpeername(news,&peer,&len);
   printf("len= %d\n",len);    if (!Quiet) printf("len= %d\n",len);
   for (i=0; i<len; i++) {    for (i=0; i<len; i++) {
     printf(" %x ",peer.sa_data[i]);      if (!Quiet) printf(" %x ",peer.sa_data[i]);
   }    }
   printf("\n");    printf("\n");
   if (peer.sa_data[2] == 0x7f && peer.sa_data[3] == 0 &&    if (peer.sa_data[2] == 0x7f && peer.sa_data[3] == 0 &&
       peer.sa_data[4] == 0    && peer.sa_data[5] == 1) {        peer.sa_data[4] == 0    && peer.sa_data[5] == 1) {
     fprintf(stderr,"Authentication: localhost is allowed to be accepted.\n");      if (!Quiet) fprintf(stderr,"Authentication: localhost is allowed to be accepted.\n");
   }else{    }else{
     errorMsg1s("Authentication: The connection is not from the localhost.");      errorMsg1s("Authentication: The connection is not from the localhost.");
     close(s);      close(s);
Line 142  socketAcceptLocal(int snum) {
Line 142  socketAcceptLocal(int snum) {
     return(-1);      return(-1);
   }    }
   
   fprintf(TcpioError,"Accepted.\n"); fflush(TcpioError);    if (!Quiet) fprintf(TcpioError,"Accepted.\n"); fflush(TcpioError);
   if (close(s) < 0) {    if (close(s) < 0) {
     errorMsg1s("Error in closing the old socket.");      errorMsg1s("Error in closing the old socket.");
     return(-1);      return(-1);
Line 159  socketAcceptLocal2(int snum) {
Line 159  socketAcceptLocal2(int snum) {
   
   SET_TCPIOERROR;    SET_TCPIOERROR;
   s = snum;    s = snum;
   fprintf(TcpioError,"Trying to accept from localhost... "); fflush(TcpioError);    if (!Quiet) fprintf(TcpioError,"Trying to accept from localhost... "); fflush(TcpioError);
   len = sizeof(struct sockaddr);    len = sizeof(struct sockaddr);
   if ((news = accept(s,&peer,&len)) < 0) {    if ((news = accept(s,&peer,&len)) < 0) {
     errorMsg1s("Error in accept. Retrying (socketAcceptLocal2).");      errorMsg1s("Error in accept. Retrying (socketAcceptLocal2).");
Line 172  socketAcceptLocal2(int snum) {
Line 172  socketAcceptLocal2(int snum) {
   
   len = sizeof(struct sockaddr);    len = sizeof(struct sockaddr);
   getpeername(news,&peer,&len);    getpeername(news,&peer,&len);
   printf("len= %d\n",len);    if (!Quiet) printf("len= %d\n",len);
   for (i=0; i<len; i++) {    for (i=0; i<len; i++) {
     printf(" %x ",peer.sa_data[i]);      if (!Quiet) printf(" %x ",peer.sa_data[i]);
   }    }
   printf("\n");    printf("\n");
   if (peer.sa_data[2] == 0x7f && peer.sa_data[3] == 0 &&    if (peer.sa_data[2] == 0x7f && peer.sa_data[3] == 0 &&
       peer.sa_data[4] == 0    && peer.sa_data[5] == 1) {        peer.sa_data[4] == 0    && peer.sa_data[5] == 1) {
     fprintf(stderr,"Authentication: localhost is allowed to be accepted.\n");      if (!Quiet) fprintf(stderr,"Authentication: localhost is allowed to be accepted.\n");
   }else{    }else{
     errorMsg1s("Authentication: The connection is not from the localhost.");      errorMsg1s("Authentication: The connection is not from the localhost.");
     fprintf(stderr,"The connection is refused.");      fprintf(stderr,"The connection is refused.");
     return(-1);      return(-1);
   }    }
   
   fprintf(TcpioError,"Accepted.\n"); fflush(TcpioError);    if (!Quiet) fprintf(TcpioError,"Accepted.\n"); fflush(TcpioError);
   return(news);    return(news);
 }  }
   

Legend:
Removed from v.1.13  
changed lines
  Added in v.1.14

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>