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

Diff for /OpenXM/src/kan96xx/plugin/oxmisc.c between version 1.23 and 1.31

version 1.23, 2004/09/17 08:46:10 version 1.31, 2016/08/29 01:15:01
Line 1 
Line 1 
 /*  $OpenXM: OpenXM/src/kan96xx/plugin/oxmisc.c,v 1.22 2004/09/17 07:27:28 takayama Exp $ */  /*  $OpenXM: OpenXM/src/kan96xx/plugin/oxmisc.c,v 1.30 2016/03/31 03:22:55 takayama Exp $ */
 #include <stdio.h>  #include <stdio.h>
   #include <string.h>
 #include <sys/types.h>  #include <sys/types.h>
 #include <sys/stat.h>  #include <sys/stat.h>
 #include <sys/socket.h>  #include <sys/socket.h>
Line 22  FILE *MyErrorOut = NULL;
Line 23  FILE *MyErrorOut = NULL;
 #include "../Kan/extern.h"  #include "../Kan/extern.h"
   
 #include "ox_kan.h"  #include "ox_kan.h"
   #include "mysig.h"
   
   
 #define READBUFSIZE 5000  #define READBUFSIZE 5000
   
 int OxVersion = 200012030;  int OxVersion = 200012030;
Line 174  int oxWaitSyncBall(ox_stream ostream)
Line 177  int oxWaitSyncBall(ox_stream ostream)
 {  {
   int sss;    int sss;
   int mtag;    int mtag;
     int com;
   while ((mtag = oxGetOXheader(ostream,&sss)) != OX_SYNC_BALL) {    while ((mtag = oxGetOXheader(ostream,&sss)) != OX_SYNC_BALL) {
     fprintf(stderr,"Looking for the next message tag. mtag=%d\n",mtag);      switch (mtag) {
       case OX_COMMAND:
         fprintf(stderr,"Waiting for command body: "); fflush(NULL);
         com=oxGetInt32(ostream);
         fprintf(stderr,"%d. Done\n",com);
         break;
       default:  /* Todo, need support OX_DATA */
         fprintf(stderr,"Looking for the next message tag. Current unknown or unimplented mtag=%d\n",mtag);
         if (UseOXPacketSerial) fprintf(stderr,"Note that we expect the OX message tag with a serial number.\n");
         if (UseOXPacketSerial && (sss == OX_SYNC_BALL)) {
           /* dirty trick, it might cause a trouble. */
           fprintf(stderr,"We assume that the serial number is OX_SYNC_BALL\n");
           oxGetInt32(ostream); // discard the serial of OX_SYNC_BALL
           goto aaa ;
         }
         break;
       }
     aaa:
     /* or stdout */      /* or stdout */
     fflush(NULL);      fflush(NULL);
           if (mtag == -1) {
             fprintf(stderr,"Your peer seems to be dead.\n"); return 0;
           }
   }    }
 }  }
   
Line 344  void oxSendResultOfControl(int fd) 
Line 368  void oxSendResultOfControl(int fd) 
 void oxSendMathCap(ox_stream os,struct mathCap *mathcap)  void oxSendMathCap(ox_stream os,struct mathCap *mathcap)
 {  {
   int i,n,infosize,ncmo;    int i,n,infosize,ncmo;
   struct object mathinfo;    struct object mathinfo = OINIT;
   /* printf("ox sending mathcap\n"); fflush(stdout); */    /* printf("ox sending mathcap\n"); fflush(stdout); */
   mathinfo = *((struct object *)(mathcap->infop));    mathinfo = *((struct object *)(mathcap->infop));
   infosize = getoaSize(mathinfo);    infosize = getoaSize(mathinfo);
Line 917  static void cancelConnection() {
Line 941  static void cancelConnection() {
 #else  #else
   extern jmp_buf MyEnv_oxmisc;    extern jmp_buf MyEnv_oxmisc;
 #endif  #endif
   signal(SIGALRM,SIG_IGN);    mysignal(SIGALRM,SIG_IGN);
   fprintf(stderr,"Time out in TCP/IP connection.\n");    fprintf(stderr,"Time out in TCP/IP connection.\n");
 #if defined(__CYGWIN__)  #if defined(__CYGWIN__)
   siglongjmp(MyEnv_oxmisc,1);    MYSIGLONGJMP(MyEnv_oxmisc,1);
 #else  #else
   longjmp(MyEnv_oxmisc,1);    MYLONGJMP(MyEnv_oxmisc,1);
 #endif  #endif
 }  }
   
Line 946  oxclientp oxCreateClient2(int fdstream,int portStream,
Line 970  oxclientp oxCreateClient2(int fdstream,int portStream,
   
   v = !Quiet;    v = !Quiet;
 #if defined(__CYGWIN__)  #if defined(__CYGWIN__)
   if (sigsetjmp(MyEnv_oxmisc,1)) {    if (MYSIGSETJMP(MyEnv_oxmisc,1)) {
 #else  #else
   if (setjmp(MyEnv_oxmisc)) {    if (MYSETJMP(MyEnv_oxmisc)) {
 #endif  #endif
     return(NULL);      return(NULL);
   }else{    }else{
   }    }
   alarm((unsigned int) 20);  /* setup timeout. */    alarm((unsigned int) 20);  /* setup timeout. */
   signal(SIGALRM,cancelConnection);    mysignal(SIGALRM,cancelConnection);
   
   switch(ipmask) {    switch(ipmask) {
   case 0:/* only local */    case 0:/* only local */
Line 996  oxclientp oxCreateClient2(int fdstream,int portStream,
Line 1020  oxclientp oxCreateClient2(int fdstream,int portStream,
       return(NULL);        return(NULL);
     }      }
   }    }
   signal(SIGALRM,SIG_IGN);    mysignal(SIGALRM,SIG_IGN);
   
   controlByteOrder = oxSetByteOrder(fdControl);    controlByteOrder = oxSetByteOrder(fdControl);
   if (v) fprintf(stderr,"Byte order for control process is %s.\n",    if (v) fprintf(stderr,"Byte order for control process is %s.\n",

Legend:
Removed from v.1.23  
changed lines
  Added in v.1.31

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