/* * DNETLIB.H */ #include "/version.h" #define CHANN struct _CHANN #define NAMELEN sizeof("DNET.PORT.XXXXX") #define NAMEPAT "DNET.PORT.%ld" CHANN { PORT port; /* receive data, replies */ PORT *dnetport; /* dnet's master port */ LIST rdylist; /* ready to be read */ uword chan; /* channel # for open channels */ ubyte eof; /* channel remotely closed/eof */ ubyte filler; int qlen; /* allowed write queue size */ int queued; /* current # packets queued */ }; #define EFATAL 0 #define EWARN 1 #define EDEBUG 2 #define NT_REQUEUE 0x40 #define elog(how, ctl, data) _elog(__LINE__,__FILE__,how,ctl,data) extern char *Program; /* * Routines */ extern void Version ARGS((char *, char *, char *)); extern PORT *DListen ARGS((uword)); extern void DUnListen ARGS((PORT *)); extern PORT *DAccept ARGS((PORT *)); extern int DNAAccept ARGS((PORT *)); extern void DPri ARGS((void *, int)); extern PORT *DOpen ARGS((char *, uword, int, int)); extern int DCheckEof ARGS((void *)); extern short DGetIoctl ARGS((void *, short *, char *)); extern long DNRead ARGS((void *, void *, long)); extern long DRead ARGS((void *, void *, long)); extern void DQueue ARGS((void *, long)); extern long DWrite ARGS((void *, void *, long)); extern void DEof ARGS((void *)); extern void DIoctl ARGS((void *, ubyte, uword, ubyte)); extern int DStat ARGS((char *, APTR, long)); extern int DQuit ARGS((char *)); extern void DClose ARGS((void *)); extern int DExec ARGS((void *, char *)); extern short WaitQueue ARGS((void *, IOSTD *)); extern void *MakeChannel ARGS((IOSTD *, char *)); extern void DeleteChannel ARGS((void *)); extern void FixSignal ARGS((void *)); extern int GetEnvVal ARGS((char *)); extern int OpenCfgFile ARGS((void)); extern char *GetCfgLine ARGS((char *)); extern void CloseCfgFile ARGS((void)); extern void GetOneCfg ARGS((char *)); extern int ExtractFieldVal ARGS((char *, char *, short *)); extern void _elog ARGS((int, char *, int, char *, void *));