diff --git a/lib/dns/gen-unix.h b/lib/dns/gen-unix.h index 84c3e7f78f..16b7524130 100644 --- a/lib/dns/gen-unix.h +++ b/lib/dns/gen-unix.h @@ -28,8 +28,10 @@ #include /* Required on some systems for dirent.h. */ +#include #include #include +#include #include /* XXXDCL Required for ?. */ #include @@ -66,9 +68,15 @@ next_file(isc_dir_t *dir) { dir->filename = NULL; if (dir->handle != NULL) { + errno = 0; dirent = readdir(dir->handle); - if (dirent != NULL) + if (dirent != NULL) { dir->filename = dirent->d_name; + } else { + if (errno != 0) { + exit(1); + } + } } if (dir->filename != NULL)