xref: /csrg-svn/lib/libc/stdio/mktemp.c (revision 13260)
1*13260Sroot /*	mktemp.c	4.1	83/06/22	*/
2*13260Sroot 
3*13260Sroot char *
4*13260Sroot mktemp(as)
5*13260Sroot char *as;
6*13260Sroot {
7*13260Sroot 	register char *s;
8*13260Sroot 	register unsigned pid;
9*13260Sroot 	register i;
10*13260Sroot 
11*13260Sroot 	pid = getpid();
12*13260Sroot 	s = as;
13*13260Sroot 	while (*s++)
14*13260Sroot 		;
15*13260Sroot 	s--;
16*13260Sroot 	while (*--s == 'X') {
17*13260Sroot 		*s = (pid%10) + '0';
18*13260Sroot 		pid /= 10;
19*13260Sroot 	}
20*13260Sroot 	s++;
21*13260Sroot 	i = 'a';
22*13260Sroot 	while (access(as, 0) != -1) {
23*13260Sroot 		if (i=='z')
24*13260Sroot 			return("/");
25*13260Sroot 		*s = i++;
26*13260Sroot 	}
27*13260Sroot 	return(as);
28*13260Sroot }
29