113653Ssam #ifndef lint 2*17835Sralph static char sccsid[] = "@(#)gnamef.c 5.3 (Berkeley) 01/22/85"; 313653Ssam #endif 413653Ssam 513653Ssam #include "uucp.h" 613653Ssam #include <sys/types.h> 713653Ssam #ifdef NDIR 813653Ssam #include "ndir.h" 913653Ssam #else 1013702Ssam #include <sys/dir.h> 1113653Ssam #endif 1213653Ssam 13*17835Sralph /* 14*17835Sralph * get next file name from directory 1513653Ssam * 1613653Ssam * return codes: 1713653Ssam * 0 - end of directory read 1813653Ssam * 1 - returned name 1913653Ssam */ 2013653Ssam 2113653Ssam gnamef(dirp, filename) 2213653Ssam register DIR *dirp; 2313653Ssam register char *filename; 2413653Ssam { 2513653Ssam register struct direct *dentp; 2613653Ssam 27*17835Sralph for (;;) { 28*17835Sralph if ((dentp = readdir(dirp)) == NULL) { 29*17835Sralph return 0; 30*17835Sralph } 3113653Ssam if (dentp->d_ino != 0) 3213653Ssam break; 3313653Ssam } 3413653Ssam 35*17835Sralph /* Truncate filename. This may become a problem someday. */ 3613653Ssam strncpy(filename, dentp->d_name, NAMESIZE-1); 3713653Ssam filename[NAMESIZE-1] = '\0'; 38*17835Sralph DEBUG(99,"gnamef returns %s\n",filename); 39*17835Sralph return 1; 4013653Ssam } 41