db_env_set_func_exists

APIRef

#include <db.h>

int db_env_set_func_exists(int (*func_exists)(const char *path, int *isdirp));

Description

The Berkeley DB library requires the ability to determine whether a file exists and whether it is a file of type directory. The func argument must conform to the following interface:

int exists(const char *path, int *isdirp);

The path argument is the pathname of the file to be checked.

If the isdirp argument is non-NULL, it must be set to non-0 if path is a directory, and 0 if path is not a directory.

The func_exists interface must return the value of errno on failure and 0 on success.

The db_env_set_func_exists method configures all operations performed by a process and all of its threads of control, not operations confined to a single database environment.

Although the db_env_set_func_exists interface may be called at any time during the life of the application, it should normally be called before making calls to the db_env_create or db_create methods.

The db_env_set_func_exists method returns a non-zero error value on failure and 0 on success.

Errors

The db_env_set_func_exists method may fail and return a non-zero error for the following conditions:

EINVAL
An invalid flag value or parameter was specified.

The db_env_set_func_exists method 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_exists method may fail and return DB_RUNRECOVERY, in which case all subsequent Berkeley DB calls will fail in the same way.

See Also

Run-time configuration

APIRef

Copyright Sleepycat Software