scandir(3) (BSD Compatibility Package) scandir(3)
NAME
scandir, alphasort - scan a directory
SYNOPSIS
/usr/ucb/cc [flag ...] file ... -lucb
#include <sys/types.h>
#include <sys/dir.h>
scandir(dirname, &namelist, select, compar)
char *dirname;
struct direct **namelist;
int (*select)();
int (*compar)();
alphasort(d1, d2)
struct direct **d1, **d2;
DESCRIPTION
scandir reads the directory dirname and builds an array of pointers to
directory entries using malloc. The second parameter is a pointer to
an array of structure pointers. The third parameter is a pointer to a
routine which is called with a pointer to a directory entry and should
return a non-zero value if the directory entry should be included in
the array. If this pointer is NULL, then all the directory entries
will be included. The last argument is a pointer to a routine which is
passed to qsort to sort the completed array. If this pointer is NULL,
the array is not sorted. alphasort is a routine which will sort the
array alphabetically.
scandir returns the number of entries in the array and a pointer to
the array through the parameter namelist.
RETURN VALUE
Returns -1 if the directory cannot be opened for reading or if malloc
cannot allocate enough memory to hold all the data structures.
SEE ALSO
getdents(2), directory(3C), malloc(3C), qsort(3C), types(5).
Page 1 Reliant UNIX 5.44 Printed 11/98