| 1234567891011121314151617181920212223242526272829303132333435363738394041 | #include <string.h>#include <features.h>#include <errno.h>#include <unistd.h>#include <fcntl.h>#include <sys/stat.h>char *mktemp(template)char *template;{	int i;	int num __attribute__ ((unused));	/* UNINITIALIZED */	int n2;	int l = strlen(template);	struct stat stbuf;	if (l < 6) {		errno = EINVAL;		return 0;	}	for (i = l - 6; i < l; i++)		if (template[i] != 'X') {			errno = EINVAL;			return 0;		}  again:	n2 = num;	for (i = l - 1; i >= l - 6; i--) {		template[i] = '0' + n2 % 10;		n2 /= 10;	}	if (stat(template, &stbuf) == 0) {		num++;		goto again;	}	return template;}
 |