Add slapi_x_backend_get_flags() API

This commit is contained in:
Luke Howard 2005-01-28 08:33:29 +00:00
parent 4304dfc9a2
commit 4b1d72ab2f
3 changed files with 32 additions and 0 deletions

View file

@ -317,6 +317,8 @@ void *slapi_get_object_extension(int objecttype, void *object,
void slapi_set_object_extension(int objecttype, void *object,
int extensionhandle, void *extension);
int slapi_x_backend_get_flags( const Slapi_Backend *be, unsigned long *flags );
/* parameters currently supported */
/*
@ -330,6 +332,20 @@ void slapi_set_object_extension(int objecttype, void *object,
#define SLAPI_ATTR_FLAG_COLLECTIVE 0x0080
#define SLAPI_ATTR_FLAG_NOUSERMOD 0x0100
/*
* Backend flags returned by slapi_x_backend_get_flags()
*/
#define SLAPI_BACKEND_FLAG_NOLASTMOD 0x0001U
#define SLAPI_BACKEND_FLAG_NO_SCHEMA_CHECK 0x0002U
#define SLAPI_BACKEND_FLAG_GLUE_INSTANCE 0x0010U /* a glue backend */
#define SLAPI_BACKEND_FLAG_GLUE_SUBORDINATE 0x0020U /* child of a glue hierarchy */
#define SLAPI_BACKEND_FLAG_GLUE_LINKED 0x0040U /* child is connected to parent */
#define SLAPI_BACKEND_FLAG_OVERLAY 0x0080U /* this db struct is an overlay */
#define SLAPI_BACKEND_FLAG_GLOBAL_OVERLAY 0x0100U /* this db struct is a global overlay */
#define SLAPI_BACKEND_FLAG_SHADOW 0x8000U /* a shadow */
#define SLAPI_BACKEND_FLAG_SYNC_SHADOW 0x1000U /* a sync shadow */
#define SLAPI_BACKEND_FLAG_SLURP_SHADOW 0x2000U /* a slurp shadow */
/*
* ACL levels
*/

View file

@ -248,6 +248,8 @@ extern int slapi_x_compute_get_pblock(computed_attr_context *c, Slapi_PBlock **p
extern int slapi_int_access_allowed(Operation *op, Entry *entry, AttributeDescription *desc, struct berval *val, slap_access_t access, AccessControlState *state);
extern int slapi_x_backend_get_flags( const Slapi_Backend *be, unsigned long *flags );
extern ldap_pvt_thread_mutex_t slapi_hn_mutex;
extern ldap_pvt_thread_mutex_t slapi_time_mutex;
extern ldap_pvt_thread_mutex_t slapi_printmessage_mutex;

View file

@ -4267,3 +4267,17 @@ void slapi_ldap_unbind( LDAP *ld )
#endif /* LDAP_SLAPI */
}
int slapi_x_backend_get_flags( const Slapi_Backend *be, unsigned long *flags )
{
#ifdef LDAP_SLAPI
if ( be == NULL )
return LDAP_PARAM_ERROR;
*flags = SLAP_DBFLAGS(be);
return LDAP_SUCCESS;
#else
return -1;
#endif /* LDAP_SLAPI */
}