=================================================================== RCS file: /home/cvs/OpenXM/src/kxx/oxmain.c,v retrieving revision 1.9 retrieving revision 1.11 diff -u -p -r1.9 -r1.11 --- OpenXM/src/kxx/oxmain.c 2001/12/28 01:20:27 1.9 +++ OpenXM/src/kxx/oxmain.c 2002/05/02 08:33:47 1.11 @@ -1,7 +1,8 @@ -/* $OpenXM: OpenXM/src/kxx/oxmain.c,v 1.8 2001/05/06 08:11:48 takayama Exp $ */ +/* $OpenXM: OpenXM/src/kxx/oxmain.c,v 1.10 2002/05/02 03:08:28 takayama Exp $ */ /* nullserver01 */ #include #include +#include #include #include #include @@ -333,13 +334,11 @@ restoreLockCtrlCForOx() { ; } static int findOxServer(char *server) { char *p; char *p2; - int fd; char *getenv(char *s); if (strlen(server) == 0) return(-1); - fd = open(server,O_RDONLY); - if (fd >= 0) { + /* fd = open(server,O_RDONLY); */ + if (access(server,X_OK&R_OK) == 0) { fprintf(stderr,"Starting OX server : %s\n",server); - close(fd); return(0); } if (server[0] == '/') { @@ -354,15 +353,14 @@ static int findOxServer(char *server) { p2 = (char *) malloc(sizeof(char)*(strlen(p)+strlen("/bin/")+3+strlen(server))); if (p2 == NULL) { fprintf(stderr,"No more memory.\n"); exit(10); } strcpy(p2,p); strcat(p2,"/bin/"); strcat(p2,server); - fd = open(p2,O_RDONLY); - if (fd >= 0) { + /* fd = open(p2,O_RDONLY); */ + if (access(p2,X_OK&R_OK) == 0) { fprintf(stderr,"Starting OX server : %s\n",p2); if (strlen(p2) < SERVERNAME_SIZE) strcpy(server,p2); else { couldNotFind("Too long ox server name."); return(-1); } - close(fd); return(0); } couldNotFind(p2);