32 #include <sys/types.h>
44 # define LP_ENTRY_SIZE PATH_MAX
45 #elif defined(NAME_MAX)
46 # define LP_ENTRY_SIZE NAME_MAX
54 #if !defined(LP_ENTRY_SIZE) || LP_ENTRY_SIZE<255
56 # define LP_ENTRY_SIZE 255
67 struct dirent *direntry = NULL;
69 if (ctx == NULL || directory == NULL)
86 (*ctx)->dir = opendir(directory);
87 if ((*ctx)->dir == NULL)
89 int save_errno =
errno;
97 direntry = readdir((*ctx)->dir);
103 strncpy((*ctx)->entry_name, direntry->d_name,
sizeof((*ctx)->entry_name) - 1);
104 (*ctx)->entry_name[
sizeof((*ctx)->entry_name) - 1] =
'\0';
105 return (*ctx)->entry_name;
110 if (ctx != NULL && *ctx != NULL)
112 int ret = closedir((*ctx)->dir);