xref: /csrg-svn/usr.bin/uucp/gnamef.c (revision 23607)
113653Ssam #ifndef lint
2*23607Sbloom static char sccsid[] = "@(#)gnamef.c	5.4 (Berkeley) 06/20/85";
313653Ssam #endif
413653Ssam 
513653Ssam #include "uucp.h"
613653Ssam #ifdef	NDIR
713653Ssam #include "ndir.h"
813653Ssam #else
913702Ssam #include <sys/dir.h>
1013653Ssam #endif
1113653Ssam 
12*23607Sbloom /*LINTLIBRARY*/
13*23607Sbloom 
1417835Sralph /*
1517835Sralph  *	get next file name from directory
1613653Ssam  *
1713653Ssam  *	return codes:
1813653Ssam  *		0  -  end of directory read
1913653Ssam  *		1  -  returned name
2013653Ssam  */
2113653Ssam 
gnamef(dirp,filename)2213653Ssam gnamef(dirp, filename)
2313653Ssam register DIR *dirp;
2413653Ssam register char *filename;
2513653Ssam {
2613653Ssam 	register struct direct *dentp;
2713653Ssam 
2817835Sralph 	for (;;) {
2917835Sralph 		if ((dentp = readdir(dirp)) == NULL) {
3017835Sralph 			return 0;
3117835Sralph 		}
3213653Ssam 		if (dentp->d_ino != 0)
3313653Ssam 			break;
3413653Ssam 	}
3513653Ssam 
3617835Sralph 	/* Truncate filename.  This may become a problem someday. */
3713653Ssam 	strncpy(filename, dentp->d_name, NAMESIZE-1);
3813653Ssam 	filename[NAMESIZE-1] = '\0';
3917835Sralph 	DEBUG(99,"gnamef returns %s\n",filename);
4017835Sralph 	return 1;
4113653Ssam }
42