|
|
BSD 4.3
#include "../h/rt.h"
/*
* cvcset(d, cs, csbuf) - convert d to a cset and
* make cs point to it, using csbuf as a buffer if necessary.
*/
cvcset(d, cs, csbuf)
register struct descrip *d;
int **cs, *csbuf;
{
register char *s;
register int l;
char sbuf[MAXSTRING];
DeRef(*d)
if (!QUAL(*d) && TYPE(*d) == T_CSET) {
*cs = BLKLOC(*d)->cset.bits;
return (T_CSET);
}
if (cvstr(d, sbuf) == NULL)
return (NULL);
for (l = 0; l < CSETSIZE; l++)
csbuf[l] = 0;
s = STRLOC(*d);
l = STRLEN(*d);
while (l--) {
setb(*s, csbuf);
s++;
}
*cs = csbuf;
return (1);
}
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.