version 1.10, 2001/08/10 13:48:39 |
version 1.13, 2002/11/07 13:32:06 |
|
|
/* $OpenXM: OpenXM/src/kan96xx/plugin/oxmisc.c,v 1.9 2001/05/04 01:06:30 takayama Exp $ */ |
/* $OpenXM: OpenXM/src/kan96xx/plugin/oxmisc.c,v 1.12 2002/02/24 10:27:20 takayama Exp $ */ |
#include <stdio.h> |
#include <stdio.h> |
#include <sys/types.h> |
#include <sys/types.h> |
#include <sys/stat.h> |
#include <sys/stat.h> |
Line 611 int oxIsThereErrorClient(oxclientp client) { |
|
Line 611 int oxIsThereErrorClient(oxclientp client) { |
|
oxclientp oxCreateClient(char *sname,int portStream,int portControl) |
oxclientp oxCreateClient(char *sname,int portStream,int portControl) |
/* you also need to change oxCreateClient2. */ |
/* you also need to change oxCreateClient2. */ |
{ |
{ |
static int clnum = 0; |
|
int v = 0; |
int v = 0; |
int fdControl = -1; |
int fdControl = -1; |
int fdStream = -1; |
int fdStream = -1; |
Line 654 oxclientp oxCreateClient(char *sname,int portStream,in |
|
Line 653 oxclientp oxCreateClient(char *sname,int portStream,in |
|
client->dataport = portStream; |
client->dataport = portStream; |
client->controlport = portControl; |
client->controlport = portControl; |
client->controlfd = fdControl; |
client->controlfd = fdControl; |
client->id = clnum; clnum++; |
client->id = oxGetClientID(); |
client->type = CLIENT_SOCKET; /* socket */ |
client->type = CLIENT_SOCKET; /* socket */ |
client->engineByteOrder = engineByteOrder; |
client->engineByteOrder = engineByteOrder; |
client->controlByteOrder = controlByteOrder; |
client->controlByteOrder = controlByteOrder; |
Line 883 char *oxGenPass(void) { |
|
Line 882 char *oxGenPass(void) { |
|
|
|
|
|
static void cancelConnection() { |
static void cancelConnection() { |
|
#if defined(__CYGWIN__) |
|
extern sigjmp_buf MyEnv_oxmisc; |
|
#else |
extern jmp_buf MyEnv_oxmisc; |
extern jmp_buf MyEnv_oxmisc; |
|
#endif |
signal(SIGALRM,SIG_IGN); |
signal(SIGALRM,SIG_IGN); |
fprintf(stderr,"Time out in TCP/IP connection.\n"); |
fprintf(stderr,"Time out in TCP/IP connection.\n"); |
|
#if defined(__CYGWIN__) |
|
siglongjmp(MyEnv_oxmisc,1); |
|
#else |
longjmp(MyEnv_oxmisc,1); |
longjmp(MyEnv_oxmisc,1); |
|
#endif |
} |
} |
|
|
oxclientp oxCreateClient2(int fdstream,int portStream, |
oxclientp oxCreateClient2(int fdstream,int portStream, |
int fdcontrol,int portControl,int ipmask,char *pass) |
int fdcontrol,int portControl,int ipmask,char *pass) |
{ |
{ |
static int clnum = 0; |
|
int v = 0; |
int v = 0; |
int fdControl = -1; |
int fdControl = -1; |
int fdStream = -1; |
int fdStream = -1; |
Line 900 oxclientp oxCreateClient2(int fdstream,int portStream, |
|
Line 906 oxclientp oxCreateClient2(int fdstream,int portStream, |
|
|
|
char *s; |
char *s; |
oxclientp client; |
oxclientp client; |
extern jmp_buf MyEnv_oxmisc ; |
#if defined(__CYGWIN__) |
|
extern sigjmp_buf MyEnv_oxmisc; |
|
#else |
|
extern jmp_buf MyEnv_oxmisc; |
|
#endif |
int controlByteOrder, engineByteOrder; |
int controlByteOrder, engineByteOrder; |
|
|
v = !Quiet; |
v = !Quiet; |
|
#if defined(__CYGWIN__) |
|
if (sigsetjmp(MyEnv_oxmisc,1)) { |
|
#else |
if (setjmp(MyEnv_oxmisc)) { |
if (setjmp(MyEnv_oxmisc)) { |
|
#endif |
return(NULL); |
return(NULL); |
}else{ |
}else{ |
} |
} |
alarm((unsigned int) 10); /* setup timeout. */ |
alarm((unsigned int) 20); /* setup timeout. */ |
signal(SIGALRM,cancelConnection); |
signal(SIGALRM,cancelConnection); |
|
|
switch(ipmask) { |
switch(ipmask) { |
Line 970 oxclientp oxCreateClient2(int fdstream,int portStream, |
|
Line 984 oxclientp oxCreateClient2(int fdstream,int portStream, |
|
client->dataport = portStream; |
client->dataport = portStream; |
client->controlport = portControl; |
client->controlport = portControl; |
client->controlfd = fdControl; |
client->controlfd = fdControl; |
client->id = clnum; clnum++; |
client->id = oxGetClientID(); |
client->type = CLIENT_SOCKET; /* socket */ |
client->type = CLIENT_SOCKET; /* socket */ |
client->engineByteOrder = engineByteOrder; |
client->engineByteOrder = engineByteOrder; |
client->controlByteOrder = controlByteOrder; |
client->controlByteOrder = controlByteOrder; |