| version 1.22, 2004/03/08 08:24:42 |
version 1.23, 2004/09/17 07:27:28 |
|
|
| /* $OpenXM: OpenXM/src/kan96xx/plugin/oxmisc2.c,v 1.21 2004/03/01 07:19:45 takayama Exp $ */ |
/* $OpenXM: OpenXM/src/kan96xx/plugin/oxmisc2.c,v 1.22 2004/03/08 08:24:42 takayama Exp $ */ |
| #include <stdio.h> |
#include <stdio.h> |
| #include "ox_kan.h" |
#include "ox_kan.h" |
| #include "oxmisc2.h" /* This file requires sm1 object description. */ |
#include "oxmisc2.h" /* This file requires sm1 object description. */ |
| Line 1023 struct object KoxCreateClient2(struct object peer, |
|
| Line 1023 struct object KoxCreateClient2(struct object peer, |
|
| int fdStream, portStream, fdControl, portControl; |
int fdStream, portStream, fdControl, portControl; |
| int i; |
int i; |
| struct object ob1; |
struct object ob1; |
| |
struct object opassControl, opassData; |
| rob.tag = Snull; |
rob.tag = Snull; |
| if (peer.tag != Sarray) { |
if (peer.tag != Sarray) { |
| errorOxmisc2("KoxCreateClient2(): The first argument must be an array [fdStream, portStream, fdControl, portControl]"); |
errorOxmisc2("KoxCreateClient2(): The first argument must be an array [fdStream, portStream, fdControl, portControl]"); |
| Line 1046 struct object KoxCreateClient2(struct object peer, |
|
| Line 1047 struct object KoxCreateClient2(struct object peer, |
|
| if (ipmask.tag != Sinteger) { |
if (ipmask.tag != Sinteger) { |
| errorOxmisc2("KoxCreateClient2(): ipmask must be an integer."); |
errorOxmisc2("KoxCreateClient2(): ipmask must be an integer."); |
| } |
} |
| if (pass.tag != Sdollar) { |
if (pass.tag == Sdollar) { |
| errorOxmisc2("KoxCreateClient2(): pass must be a string."); |
opassControl = pass; opassData = pass; |
| |
}else if (pass.tag == Sarray) { |
| |
if (getoaSize(pass) < 2) errorOxmisc2("KoxCreateClient2: #passArray < 2."); |
| |
opassControl = getoa(pass,0); |
| |
opassData = getoa(pass,1); |
| |
}else{ |
| |
errorOxmisc2("KoxCreateClient2(): pass must be a string or an array."); |
| } |
} |
| |
if ((opassControl.tag != Sdollar) || (opassData.tag != Sdollar)) { |
| |
errorOxmisc2("KoxCreateClient2(): opassControl or opassData must be a string."); |
| |
} |
| |
|
| client = oxCreateClient2(fdStream, portStream, fdControl, portControl, |
client = oxCreateClient2(fdStream, portStream, fdControl, portControl, |
| KopInteger(ipmask), KopString(pass)); |
KopInteger(ipmask), |
| |
KopString(opassControl),KopString(opassData)); |
| if (client == NULL) { |
if (client == NULL) { |
| errorOxmisc2("KoxCreateClient2(): Open error."); |
errorOxmisc2("KoxCreateClient2(): Open error."); |
| return(rob); |
return(rob); |