diff --git a/tests/misc-procfs.c b/tests/misc-procfs.c index 31b7a01a3d6d8ee567d5e975af15aed8879fa819..8600175c1b9f0e0ad267a11f978626b7d930ef04 100644 --- a/tests/misc-procfs.c +++ b/tests/misc-procfs.c @@ -11,9 +11,27 @@ #include <string.h> #include <unistd.h> #include <assert.h> +#include <sys/types.h> +#include <dirent.h> #define BUF_SIZE 4096 +static void proc_readdir(const char *procdir) +{ + DIR *dirp; + struct dirent *dp; + + if ((dirp = opendir(procdir)) == NULL) { + perror("opendir"); + return; + } + printf("Reading directory entries at %s...\n", procdir); + while ((dp = readdir(dirp)) != NULL) { + printf("dentry name: %s\n", dp->d_name); + } + (void) closedir(dirp); +} + int main(int argc, char **argv) { unsigned char buf[BUF_SIZE]; @@ -39,5 +57,9 @@ int main(int argc, char **argv) if (close(fd) < 0) { perror("close"); } + + proc_readdir("/proc"); + proc_readdir("/proc/self"); + return 0; }