int db_env_set_func_dirlist( int (*func_dirlist)(const char *dir, char ***namesp, int *cntp));
The Berkeley DB library requires the ability to read through a directory and create a list of files that the directory contains. The func_dirlist argument must conform to the following interface:
int dirlist(const char *dir, char ***namesp, int *cntp);
The dir argument is the name of the directory to be searched. The function must return a pointer to an array of nul-terminated file names into the memory location to which the namesp argument refers, and a count of the number of elements in the array into the memory location to which cntp refers.
The func_dirlist function must return the value of errno on failure and 0 on success.
The db_env_set_func_dirlist interface affects the entire application, not a single database or database environment.
Although the db_env_set_func_dirlist interface may be used to configure Berkeley DB at any time during the life of the application, it should normally be called before making any calls to the db_env_create or db_create functions.
The db_env_set_func_dirlist function returns a non-zero error value on failure and 0 on success.
The db_env_set_func_dirlist function may fail and return a non-zero error for the following conditions:
The db_env_set_func_dirlist function may fail and return a non-zero error for errors specified for other Berkeley DB and C library or system functions. If a catastrophic error has occurred, the db_env_set_func_dirlist function may fail and return DB_RUNRECOVERY, in which case all subsequent Berkeley DB calls will fail in the same way.
Copyright Sleepycat Software