|
|
researchv10 Norman
#include <stdio.h>
#include <errno.h>
#if defined(V9) || defined(BSD4_2)
char *tempnam(dir, pfx)
char *dir, *pfx;
{
int pid;
unsigned int len;
char *tnm, *malloc();
static int seq = 0;
pid = getpid();
len = strlen(dir) + strlen(pfx) + 10;
if ((tnm = malloc(len)) != NULL) {
sprintf(tnm, "%s", dir);
if (access(tnm, 7) == -1)
return(NULL);
do {
sprintf(tnm, "%s/%s%d%d", dir, pfx, pid, seq++);
errno = 0;
if (access(tnm, 7) == -1)
if (errno == ENOENT)
return(tnm);
} while (1);
}
return(tnm);
}
#endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.