home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
GRIPS 2: Government Rast…rocessing Software & Data
/
GRIPS_2.cdr
/
dos
/
ncsa_tel
/
contribu
/
byu_tel2.hqx
/
tcpip
/
atalk.c
< prev
next >
Wrap
Text File
|
1989-05-17
|
4KB
|
151 lines
#ifndef lint
static char *SCCSid = "%W% (NCSA) %G%";
#endif
/*
* atalk.c
* by Gaige B. Paulsen
****************************************************************************
* *
* Uses : *
* TCP/IP kernel for NCSA Telnet *
* by Tim Krauskopf *
* with Macintosh code by Gaige B. Paulsen *
* *
* National Center for Supercomputing Applications *
* 152 Computing Applications Building *
* 605 E. Springfield Ave. *
* Champaign, IL 61820 *
* *
* *
****************************************************************************
*
* Appletalk init and shutdown (and utility) procs.
*
* Called by:
* dlayer.c
* mactools.c
* macutil.c
*/
#include <stdio.h>
#include "protocol.h"
#include "data.h"
#include <AppleTalk.h>
#include <Dialogs.h>
#include "::main:mpw.h"
typedef struct {
char node[26];
char net[2];
} ABusVarStruct, *ABusVarPtr, **ABusVarHdl;
extern Listen();
extern char *KIPnameptr;
getATaddress( hi,low,node)
int *hi,*low,*node;
{
ABusVarPtr ABusVars;
ABusVarHdl ABusHdl= (ABusVarHdl) 0x2d8L;
ABusVars= *ABusHdl;
*hi=ABusVars->net[0];
*low=ABusVars->net[1];
*node=ABusVars->node[0];
}
atopen()
{
short err;
short socket=72, refnum, item;
ABusVarPtr ABusVars;
ABusVarHdl ABusHdl=(ABusVarHdl)0x2d8L;
char buffr[100];
DialogPtr dtemp;
MPPParamBlock pb;
err = 0;
#ifndef MPW
if (!IsMPPOpen())
err=OpenDriver("\P.MPP",&refnum);
if (!IsMPPOpen())
err=OpenDriver("\P.ATP",&refnum);
#else
if (!IsMPPOpen())
err=OpenDriver(".MPP",&refnum);
if (!IsMPPOpen())
err=OpenDriver(".ATP",&refnum);
#endif MPW
pb.DDPlistener=Listen;
pb.DDPsocket = socket;
err=POpenSkt(&pb, FALSE);
if (err!=0) {
sprintf(buffr,"Failed Appletalk initialization (%d)\n",err);
putln(buffr);
#ifndef MPW
if (err==-91) ParamText(0L,0L,0L,"\PCouldn't install Listener");
else if (err==-192) ParamText(0L,0L,0L,"\PCouldn't find atpl resource");
else ParamText(0L,0L,0L,"\PUnknown Error");
#else
if (err==-91) ParamText(0L,0L,0L,"Couldn't install Listener");
else if (err==-192) ParamText(0L,0L,0L,"Couldn't find atpl resource");
else ParamText(0L,0L,0L,"Unknown Error");
#endif MPW
dtemp=GetNewDialog(302,(Ptr) 0L,(Ptr) -1L);
ModalDialog(0L,&item);
DisposDialog(dtemp);
quit();
}
ABusVars= *ABusHdl;
nnmyaddr[0]=ABusVars->net[0];
nnmyaddr[1]=ABusVars->net[1];
nnmyaddr[2]=ABusVars->node[0];
nnmyaddr[3]=72;
sprintf(buffr,"Net : %d, Node : %d",*((int *)(&(ABusVars->net[0]))),(int)(ABusVars->node[0]));
putln(buffr);
return(0);
}
atclose()
{
MPPParamBlock pb;
pb.DDPsocket=72;
PCloseSkt(&pb, FALSE);
if (KIPnameptr)
KIPunregister();
return(0);
}
pascal Boolean IsMPPOpen()
{
char *portBUse;
portBUse = (char *)0x291;
if ((*portBUse & 0x0f) != 1)
return(0);
return(1);
}
pascal Boolean IsATPOpen()
{
char *portBUse;
portBUse = (char *) 0x291;
if ((*portBUse & 0x0f) != 1)
return(0);
if (!(*portBUse & 0x10))
return(0);
return(1);
}