#include "k.h" /* * s p a c k */ spack(type,num,len,data) char type, *data; int num, len; { int i; char chksum, buffer[100]; register char *bufp; /* initialize some parameters */ #if debug fprintf(stderr,"spack -- sending a packet with type %c\n",type); #endif bufp = buffer; for (i=1; i<=pad; i++) /* issue necessary padding */ write(remfd,&padchar,1); *bufp++ = SOH; /* packet marker, ASCII 1 (SOH) */ chksum = tochar(len+3); /* initialize the checksum */ *bufp++ = tochar(len+3); /* send the character count */ chksum = chksum + tochar(num); /* init checksum */ *bufp++ = tochar(num); /* packet number */ chksum = chksum + type; *bufp++ = type; /* packet type */ /* loop for all data characters */ for (i=0; i 0) /* get the next character */ { t = t & 0177; if (t= spsiz-8) return(i); } if (i==0) return(EOF); /* wind up here only on EOF */ return(i); /* so the partial buffer isn't lost */ } /* * b u f e m p */ bufemp(buffer,fd,len) char buffer[]; int fd, len; { int i, t; for (i=0; ifab$l_nam; strncpy(namestr,namp->nam$l_name,namp->nam$b_name); strncpy(extstr,namp->nam$l_type,namp->nam$b_type); strcpy(filestr,namestr); strcat(filestr,extstr); return(1); }