mirror of
https://git.openldap.org/openldap/openldap.git
synced 2025-01-30 13:30:57 +08:00
Heads up: fix for SLAPI compliance: when calling slapi_pblock_set() with
an integer or long integer parameter, the value argument is a pointer to the integeral value rather than the value itself.
This commit is contained in:
parent
93540e339a
commit
4836f2a5c5
@ -80,15 +80,8 @@ plugin_pblock_new(
|
||||
goto done;
|
||||
}
|
||||
|
||||
rc = slapi_pblock_set( pPlugin, SLAPI_PLUGIN_TYPE, (void *)type );
|
||||
if ( rc != 0 ) {
|
||||
goto done;
|
||||
}
|
||||
|
||||
rc = slapi_pblock_set( pPlugin, SLAPI_PLUGIN_ARGC, (void *)argc );
|
||||
if ( rc != 0 ) {
|
||||
goto done;
|
||||
}
|
||||
slapi_pblock_set( pPlugin, SLAPI_PLUGIN_TYPE, (void *)&type );
|
||||
slapi_pblock_set( pPlugin, SLAPI_PLUGIN_ARGC, (void *)&argc );
|
||||
|
||||
av2 = ldap_charray_dup( argv );
|
||||
if ( av2 == NULL ) {
|
||||
@ -101,15 +94,9 @@ plugin_pblock_new(
|
||||
} else {
|
||||
ppPluginArgv = NULL;
|
||||
}
|
||||
rc = slapi_pblock_set( pPlugin, SLAPI_PLUGIN_ARGV, (void *)ppPluginArgv );
|
||||
if ( rc != 0 ) {
|
||||
goto done;
|
||||
}
|
||||
|
||||
rc = slapi_pblock_set( pPlugin, SLAPI_X_CONFIG_ARGV, (void *)av2 );
|
||||
if ( rc != 0 ) {
|
||||
goto done;
|
||||
}
|
||||
slapi_pblock_set( pPlugin, SLAPI_PLUGIN_ARGV, (void *)ppPluginArgv );
|
||||
slapi_pblock_set( pPlugin, SLAPI_X_CONFIG_ARGV, (void *)av2 );
|
||||
|
||||
rc = slapi_int_load_plugin( pPlugin, path, initfunc, 1, NULL, &hdLoadHandle );
|
||||
if ( rc != 0 ) {
|
||||
|
@ -106,11 +106,18 @@ typedef enum slapi_pblock_class_e {
|
||||
#define PBLOCK_ERROR (-1)
|
||||
#define PBLOCK_MAX_PARAMS 100
|
||||
|
||||
union slapi_pblock_value {
|
||||
int pv_integer;
|
||||
long pv_long_integer;
|
||||
void *pv_pointer;
|
||||
void (*pv_function_pointer)(void *);
|
||||
};
|
||||
|
||||
struct slapi_pblock {
|
||||
ldap_pvt_thread_mutex_t pblockMutex;
|
||||
int numParams;
|
||||
int curParams[PBLOCK_MAX_PARAMS];
|
||||
void *curVals[PBLOCK_MAX_PARAMS];
|
||||
union slapi_pblock_value curVals[PBLOCK_MAX_PARAMS];
|
||||
/* native types */
|
||||
Connection *pconn;
|
||||
Operation *pop;
|
||||
|
@ -587,7 +587,7 @@ slapi_int_search_entry_callback( Slapi_Entry *entry, void *callback_data )
|
||||
tp[i] = NULL;
|
||||
|
||||
slapi_pblock_set( pb, SLAPI_PLUGIN_INTOP_SEARCH_ENTRIES, (void *)tp );
|
||||
slapi_pblock_set( pb, SLAPI_NENTRIES, (void *)i );
|
||||
slapi_pblock_set( pb, SLAPI_NENTRIES, (void *)&i );
|
||||
|
||||
return LDAP_SUCCESS;
|
||||
}
|
||||
@ -671,20 +671,23 @@ slapi_search_internal_set_pb( Slapi_PBlock *pb,
|
||||
Slapi_ComponentId *plugin_identity,
|
||||
int operation_flags )
|
||||
{
|
||||
int no_limit = SLAP_NO_LIMIT;
|
||||
int deref = LDAP_DEREF_NEVER;
|
||||
|
||||
slapi_int_connection_init_pb( pb, LDAP_REQ_SEARCH );
|
||||
slapi_pblock_set( pb, SLAPI_SEARCH_TARGET, (void *)base );
|
||||
slapi_pblock_set( pb, SLAPI_SEARCH_SCOPE, (void *)scope );
|
||||
slapi_pblock_set( pb, SLAPI_SEARCH_FILTER, NULL );
|
||||
slapi_pblock_set( pb, SLAPI_SEARCH_SCOPE, (void *)&scope );
|
||||
slapi_pblock_set( pb, SLAPI_SEARCH_FILTER, (void *)0 );
|
||||
slapi_pblock_set( pb, SLAPI_SEARCH_STRFILTER, (void *)filter );
|
||||
slapi_pblock_set( pb, SLAPI_SEARCH_ATTRS, (void *)attrs );
|
||||
slapi_pblock_set( pb, SLAPI_SEARCH_ATTRSONLY, (void *)attrsonly );
|
||||
slapi_pblock_set( pb, SLAPI_SEARCH_ATTRSONLY, (void *)&attrsonly );
|
||||
slapi_pblock_set( pb, SLAPI_REQCONTROLS, (void *)controls );
|
||||
slapi_pblock_set( pb, SLAPI_TARGET_UNIQUEID, (void *)uniqueid );
|
||||
slapi_pblock_set( pb, SLAPI_PLUGIN_IDENTITY, (void *)plugin_identity );
|
||||
slapi_pblock_set( pb, SLAPI_X_INTOP_FLAGS, (void *)operation_flags );
|
||||
slapi_pblock_set( pb, SLAPI_SEARCH_DEREF, (void *)0 );
|
||||
slapi_pblock_set( pb, SLAPI_SEARCH_SIZELIMIT, (void *)SLAP_NO_LIMIT );
|
||||
slapi_pblock_set( pb, SLAPI_SEARCH_TIMELIMIT, (void *)SLAP_NO_LIMIT );
|
||||
slapi_pblock_set( pb, SLAPI_X_INTOP_FLAGS, (void *)&operation_flags );
|
||||
slapi_pblock_set( pb, SLAPI_SEARCH_DEREF, (void *)&deref );
|
||||
slapi_pblock_set( pb, SLAPI_SEARCH_SIZELIMIT, (void *)&no_limit );
|
||||
slapi_pblock_set( pb, SLAPI_SEARCH_TIMELIMIT, (void *)&no_limit );
|
||||
|
||||
slapi_int_set_operation_dn( pb );
|
||||
}
|
||||
@ -726,7 +729,7 @@ slapi_modify_internal_set_pb( Slapi_PBlock *pb,
|
||||
slapi_pblock_set( pb, SLAPI_REQCONTROLS, (void *)controls );
|
||||
slapi_pblock_set( pb, SLAPI_TARGET_UNIQUEID, (void *)uniqueid );
|
||||
slapi_pblock_set( pb, SLAPI_PLUGIN_IDENTITY, (void *)plugin_identity );
|
||||
slapi_pblock_set( pb, SLAPI_X_INTOP_FLAGS, (void *)operation_flags );
|
||||
slapi_pblock_set( pb, SLAPI_X_INTOP_FLAGS, (void *)&operation_flags );
|
||||
slapi_int_set_operation_dn( pb );
|
||||
}
|
||||
|
||||
@ -752,7 +755,7 @@ slapi_modify_internal(
|
||||
pb = slapi_pblock_new();
|
||||
|
||||
slapi_modify_internal_set_pb( pb, ldn, mods, controls, NULL, NULL, 0 );
|
||||
slapi_pblock_set( pb, SLAPI_LOG_OPERATION, (void *)log_change );
|
||||
slapi_pblock_set( pb, SLAPI_LOG_OPERATION, (void *)&log_change );
|
||||
slapi_modify_internal_pb( pb );
|
||||
|
||||
return pb;
|
||||
@ -771,7 +774,7 @@ slapi_add_internal_set_pb( Slapi_PBlock *pb,
|
||||
slapi_pblock_set( pb, SLAPI_MODIFY_MODS, (void *)attrs );
|
||||
slapi_pblock_set( pb, SLAPI_REQCONTROLS, (void *)controls );
|
||||
slapi_pblock_set( pb, SLAPI_PLUGIN_IDENTITY, (void *)plugin_identity );
|
||||
slapi_pblock_set( pb, SLAPI_X_INTOP_FLAGS, (void *)operation_flags );
|
||||
slapi_pblock_set( pb, SLAPI_X_INTOP_FLAGS, (void *)&operation_flags );
|
||||
slapi_int_set_operation_dn( pb );
|
||||
|
||||
return 0;
|
||||
@ -789,7 +792,7 @@ slapi_add_internal(
|
||||
pb = slapi_pblock_new();
|
||||
|
||||
slapi_add_internal_set_pb( pb, dn, attrs, controls, NULL, 0);
|
||||
slapi_pblock_set( pb, SLAPI_LOG_OPERATION, (void *)log_change );
|
||||
slapi_pblock_set( pb, SLAPI_LOG_OPERATION, (void *)&log_change );
|
||||
slapi_add_internal_pb( pb );
|
||||
|
||||
return pb;
|
||||
@ -806,7 +809,7 @@ slapi_add_entry_internal_set_pb( Slapi_PBlock *pb,
|
||||
slapi_pblock_set( pb, SLAPI_ADD_ENTRY, (void *)e );
|
||||
slapi_pblock_set( pb, SLAPI_REQCONTROLS, (void *)controls );
|
||||
slapi_pblock_set( pb, SLAPI_PLUGIN_IDENTITY, (void *)plugin_identity );
|
||||
slapi_pblock_set( pb, SLAPI_X_INTOP_FLAGS, (void *)operation_flags );
|
||||
slapi_pblock_set( pb, SLAPI_X_INTOP_FLAGS, (void *)&operation_flags );
|
||||
slapi_int_set_operation_dn( pb );
|
||||
}
|
||||
|
||||
@ -821,7 +824,7 @@ slapi_add_entry_internal(
|
||||
pb = slapi_pblock_new();
|
||||
|
||||
slapi_add_entry_internal_set_pb( pb, e, controls, NULL, 0 );
|
||||
slapi_pblock_set( pb, SLAPI_LOG_OPERATION, (void *)log_change );
|
||||
slapi_pblock_set( pb, SLAPI_LOG_OPERATION, (void *)&log_change );
|
||||
slapi_add_internal_pb( pb );
|
||||
|
||||
return pb;
|
||||
@ -842,11 +845,11 @@ slapi_rename_internal_set_pb( Slapi_PBlock *pb,
|
||||
slapi_pblock_set( pb, SLAPI_MODRDN_TARGET, (void *)olddn );
|
||||
slapi_pblock_set( pb, SLAPI_MODRDN_NEWRDN, (void *)newrdn );
|
||||
slapi_pblock_set( pb, SLAPI_MODRDN_NEWSUPERIOR, (void *)newsuperior );
|
||||
slapi_pblock_set( pb, SLAPI_MODRDN_DELOLDRDN, (void *)deloldrdn );
|
||||
slapi_pblock_set( pb, SLAPI_MODRDN_DELOLDRDN, (void *)&deloldrdn );
|
||||
slapi_pblock_set( pb, SLAPI_REQCONTROLS, (void *)controls );
|
||||
slapi_pblock_set( pb, SLAPI_TARGET_UNIQUEID, (void *)uniqueid );
|
||||
slapi_pblock_set( pb, SLAPI_PLUGIN_IDENTITY, (void *)plugin_identity );
|
||||
slapi_pblock_set( pb, SLAPI_X_INTOP_FLAGS, (void *)operation_flags );
|
||||
slapi_pblock_set( pb, SLAPI_X_INTOP_FLAGS, (void *)&operation_flags );
|
||||
slapi_int_set_operation_dn( pb );
|
||||
}
|
||||
|
||||
@ -876,7 +879,7 @@ slapi_modrdn_internal(
|
||||
|
||||
slapi_rename_internal_set_pb( pb, olddn, lnewrdn, NULL,
|
||||
deloldrdn, controls, NULL, NULL, 0 );
|
||||
slapi_pblock_set( pb, SLAPI_LOG_OPERATION, (void *)log_change );
|
||||
slapi_pblock_set( pb, SLAPI_LOG_OPERATION, (void *)&log_change );
|
||||
slapi_modrdn_internal_pb( pb );
|
||||
|
||||
return pb;
|
||||
@ -895,7 +898,7 @@ slapi_delete_internal_set_pb( Slapi_PBlock *pb,
|
||||
slapi_pblock_set( pb, SLAPI_REQCONTROLS, (void *)controls );
|
||||
slapi_pblock_set( pb, SLAPI_TARGET_UNIQUEID, (void *)uniqueid );
|
||||
slapi_pblock_set( pb, SLAPI_PLUGIN_IDENTITY, (void *)plugin_identity );
|
||||
slapi_pblock_set( pb, SLAPI_X_INTOP_FLAGS, (void *)operation_flags );
|
||||
slapi_pblock_set( pb, SLAPI_X_INTOP_FLAGS, (void *)&operation_flags );
|
||||
slapi_int_set_operation_dn( pb );
|
||||
}
|
||||
|
||||
@ -920,7 +923,7 @@ slapi_delete_internal(
|
||||
pb = slapi_pblock_new();
|
||||
|
||||
slapi_delete_internal_set_pb( pb, ldn, controls, NULL, NULL, 0 );
|
||||
slapi_pblock_set( pb, SLAPI_LOG_OPERATION, (void *)log_change );
|
||||
slapi_pblock_set( pb, SLAPI_LOG_OPERATION, (void *)&log_change );
|
||||
slapi_delete_internal_pb( pb );
|
||||
|
||||
return pb;
|
||||
|
@ -65,10 +65,11 @@ pblock_get_param_class( int param )
|
||||
case SLAPI_DB2LDIF_PRINTKEY:
|
||||
case SLAPI_LDIF2DB_REMOVEDUPVALS:
|
||||
case SLAPI_MANAGEDSAIT:
|
||||
case SLAPI_REQUESTOR_ISUPDATEDN:
|
||||
case SLAPI_IS_REPLICATED_OPERATION:
|
||||
case SLAPI_X_CONN_IS_UDP:
|
||||
case SLAPI_X_CONN_SSF:
|
||||
case SLAPI_RESULT_CODE:
|
||||
case SLAPI_LOG_OPERATION:
|
||||
return PBLOCK_CLASS_INTEGER;
|
||||
break;
|
||||
|
||||
@ -268,7 +269,6 @@ pblock_get_param_class( int param )
|
||||
case SLAPI_SEARCH_RESULT_SET:
|
||||
case SLAPI_SEARCH_RESULT_ENTRY:
|
||||
case SLAPI_SEARCH_REFERRALS:
|
||||
case SLAPI_LOG_OPERATION:
|
||||
case SLAPI_RESULT_TEXT:
|
||||
case SLAPI_RESULT_MATCHED:
|
||||
case SLAPI_X_GROUP_ENTRY:
|
||||
@ -328,14 +328,16 @@ pblock_get_default( Slapi_PBlock *pb, int param, void **value )
|
||||
if ( pb->curParams[i] == param ) {
|
||||
switch ( pbClass ) {
|
||||
case PBLOCK_CLASS_INTEGER:
|
||||
*((int *)value) = (int)pb->curVals[i];
|
||||
*((int *)value) = pb->curVals[i].pv_integer;
|
||||
break;
|
||||
case PBLOCK_CLASS_LONG_INTEGER:
|
||||
*((long *)value) = (long)pb->curVals[i];
|
||||
*((long *)value) = pb->curVals[i].pv_long_integer;
|
||||
break;
|
||||
case PBLOCK_CLASS_POINTER:
|
||||
*value = pb->curVals[i].pv_pointer;
|
||||
break;
|
||||
case PBLOCK_CLASS_FUNCTION_POINTER:
|
||||
*value = pb->curVals[i];
|
||||
*value = pb->curVals[i].pv_function_pointer;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
@ -389,10 +391,26 @@ pblock_set_default( Slapi_PBlock *pb, int param, void *value )
|
||||
return PBLOCK_ERROR;
|
||||
}
|
||||
|
||||
for ( i = 0; i < pb->numParams; i++ ) {
|
||||
for ( i = 0; i < pb->numParams; i++ ) {
|
||||
if ( pb->curParams[i] == param ) {
|
||||
switch ( pbClass ) {
|
||||
case PBLOCK_CLASS_INTEGER:
|
||||
pb->curVals[i].pv_integer = (*((int *)value));
|
||||
break;
|
||||
case PBLOCK_CLASS_LONG_INTEGER:
|
||||
pb->curVals[i].pv_long_integer = (*((long *)value));
|
||||
break;
|
||||
case PBLOCK_CLASS_POINTER:
|
||||
pb->curVals[i].pv_pointer = value;
|
||||
break;
|
||||
case PBLOCK_CLASS_FUNCTION_POINTER:
|
||||
pb->curVals[i].pv_function_pointer = value;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ( i >= pb->numParams ) {
|
||||
@ -400,8 +418,6 @@ pblock_set_default( Slapi_PBlock *pb, int param, void *value )
|
||||
pb->numParams++;
|
||||
}
|
||||
|
||||
pb->curVals[i] = value;
|
||||
|
||||
return PBLOCK_SUCCESS;
|
||||
}
|
||||
|
||||
@ -418,11 +434,11 @@ pblock_get( Slapi_PBlock *pb, int param, void **value )
|
||||
break;
|
||||
case SLAPI_OPINITIATED_TIME:
|
||||
PBLOCK_ASSERT_OP( pb, 0 );
|
||||
*((time_t *)value) = pb->pop->o_time;
|
||||
*((long *)value) = pb->pop->o_time;
|
||||
break;
|
||||
case SLAPI_OPERATION_ID:
|
||||
PBLOCK_ASSERT_OP( pb, 0 );
|
||||
*((unsigned long *)value) = pb->pop->o_opid;
|
||||
*((long *)value) = pb->pop->o_opid;
|
||||
break;
|
||||
case SLAPI_OPERATION_TYPE:
|
||||
PBLOCK_ASSERT_OP( pb, 0 );
|
||||
@ -473,7 +489,7 @@ pblock_get( Slapi_PBlock *pb, int param, void **value )
|
||||
PBLOCK_ASSERT_OP( pb, 0 );
|
||||
*((int *)value) = be_isroot( pb->pop );
|
||||
break;
|
||||
case SLAPI_REQUESTOR_ISUPDATEDN:
|
||||
case SLAPI_IS_REPLICATED_OPERATION:
|
||||
PBLOCK_ASSERT_OP( pb, 0 );
|
||||
*((int *)value) = be_isupdate( pb->pop );
|
||||
break;
|
||||
@ -498,7 +514,7 @@ pblock_get( Slapi_PBlock *pb, int param, void **value )
|
||||
break;
|
||||
case SLAPI_CONN_ID:
|
||||
PBLOCK_ASSERT_CONN( pb );
|
||||
*((unsigned long *)value) = pb->pconn->c_connid;
|
||||
*((long *)value) = pb->pconn->c_connid;
|
||||
break;
|
||||
case SLAPI_CONN_DN:
|
||||
PBLOCK_ASSERT_CONN( pb );
|
||||
@ -762,15 +778,15 @@ pblock_set( Slapi_PBlock *pb, int param, void *value )
|
||||
break;
|
||||
case SLAPI_OPINITIATED_TIME:
|
||||
PBLOCK_ASSERT_OP( pb, 0 );
|
||||
pb->pop->o_time = (time_t)value;
|
||||
pb->pop->o_time = *((long *)value);
|
||||
break;
|
||||
case SLAPI_OPERATION_ID:
|
||||
PBLOCK_ASSERT_OP( pb, 0 );
|
||||
pb->pop->o_opid = (unsigned long)value;
|
||||
pb->pop->o_opid = *((long *)value);
|
||||
break;
|
||||
case SLAPI_OPERATION_TYPE:
|
||||
PBLOCK_ASSERT_OP( pb, 0 );
|
||||
pb->pop->o_tag = (ber_tag_t)value;
|
||||
pb->pop->o_tag = *((ber_tag_t *)value);
|
||||
break;
|
||||
case SLAPI_REQCONTROLS:
|
||||
PBLOCK_ASSERT_OP( pb, 0 );
|
||||
@ -797,7 +813,7 @@ pblock_set( Slapi_PBlock *pb, int param, void *value )
|
||||
break;
|
||||
case SLAPI_MANAGEDSAIT:
|
||||
PBLOCK_ASSERT_OP( pb, 0 );
|
||||
pb->pop->o_managedsait = (int)value;
|
||||
pb->pop->o_managedsait = *((int *)value);
|
||||
break;
|
||||
case SLAPI_BACKEND:
|
||||
PBLOCK_ASSERT_OP( pb, 0 );
|
||||
@ -825,7 +841,7 @@ pblock_set( Slapi_PBlock *pb, int param, void *value )
|
||||
case SLAPI_CONN_ID:
|
||||
PBLOCK_ASSERT_CONN( pb );
|
||||
PBLOCK_LOCK_CONN( pb );
|
||||
pb->pconn->c_connid = (unsigned long)value;
|
||||
pb->pconn->c_connid = *((long *)value);
|
||||
PBLOCK_UNLOCK_CONN( pb );
|
||||
break;
|
||||
case SLAPI_CONN_DN:
|
||||
@ -836,7 +852,7 @@ pblock_set( Slapi_PBlock *pb, int param, void *value )
|
||||
break;
|
||||
case SLAPI_RESULT_CODE:
|
||||
case SLAPI_PLUGIN_INTOP_RESULT:
|
||||
pb->rs.sr_err = (int)value;
|
||||
pb->rs.sr_err = *((int *)value);
|
||||
break;
|
||||
case SLAPI_RESULT_TEXT:
|
||||
snprintf( pb->textbuf, sizeof( pb->textbuf ), "%s", (char *)value );
|
||||
@ -922,21 +938,23 @@ pblock_set( Slapi_PBlock *pb, int param, void *value )
|
||||
PBLOCK_ASSERT_OP( pb, 0 );
|
||||
PBLOCK_VALIDATE_IS_INTOP( pb );
|
||||
if ( pb->pop->o_tag == LDAP_REQ_MODRDN )
|
||||
pb->pop->orr_deleteoldrdn = (int)value;
|
||||
pb->pop->orr_deleteoldrdn = *((int *)value);
|
||||
else
|
||||
rc = PBLOCK_ERROR;
|
||||
break;
|
||||
case SLAPI_SEARCH_SCOPE:
|
||||
case SLAPI_SEARCH_SCOPE: {
|
||||
int scope = *((int *)value);
|
||||
|
||||
PBLOCK_ASSERT_OP( pb, 0 );
|
||||
if ( pb->pop->o_tag == LDAP_REQ_SEARCH ) {
|
||||
switch ( (int)value ) {
|
||||
switch ( *((int *)value) ) {
|
||||
case LDAP_SCOPE_BASE:
|
||||
case LDAP_SCOPE_ONELEVEL:
|
||||
case LDAP_SCOPE_SUBTREE:
|
||||
#ifdef LDAP_SCOPE_SUBORDINATE
|
||||
case LDAP_SCOPE_SUBORDINATE:
|
||||
#endif
|
||||
pb->pop->ors_scope = (int)value;
|
||||
pb->pop->ors_scope = scope;
|
||||
break;
|
||||
default:
|
||||
rc = PBLOCK_ERROR;
|
||||
@ -946,24 +964,25 @@ pblock_set( Slapi_PBlock *pb, int param, void *value )
|
||||
rc = PBLOCK_ERROR;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case SLAPI_SEARCH_DEREF:
|
||||
PBLOCK_ASSERT_OP( pb, 0 );
|
||||
if ( pb->pop->o_tag == LDAP_REQ_SEARCH )
|
||||
pb->pop->ors_deref = (int)value;
|
||||
pb->pop->ors_deref = *((int *)value);
|
||||
else
|
||||
rc = PBLOCK_ERROR;
|
||||
break;
|
||||
case SLAPI_SEARCH_SIZELIMIT:
|
||||
PBLOCK_ASSERT_OP( pb, 0 );
|
||||
if ( pb->pop->o_tag == LDAP_REQ_SEARCH )
|
||||
pb->pop->ors_slimit = (int)value;
|
||||
pb->pop->ors_slimit = *((int *)value);
|
||||
else
|
||||
rc = PBLOCK_ERROR;
|
||||
break;
|
||||
case SLAPI_SEARCH_TIMELIMIT:
|
||||
PBLOCK_ASSERT_OP( pb, 0 );
|
||||
if ( pb->pop->o_tag == LDAP_REQ_SEARCH )
|
||||
pb->pop->ors_tlimit = (int)value;
|
||||
pb->pop->ors_tlimit = *((int *)value);
|
||||
else
|
||||
rc = PBLOCK_ERROR;
|
||||
break;
|
||||
@ -1030,7 +1049,7 @@ pblock_set( Slapi_PBlock *pb, int param, void *value )
|
||||
PBLOCK_VALIDATE_IS_INTOP( pb );
|
||||
|
||||
if ( pb->pop->o_tag == LDAP_REQ_SEARCH )
|
||||
pb->pop->ors_attrsonly = (int)value;
|
||||
pb->pop->ors_attrsonly = *((int *)value);
|
||||
else
|
||||
rc = PBLOCK_ERROR;
|
||||
break;
|
||||
@ -1072,7 +1091,7 @@ pblock_set( Slapi_PBlock *pb, int param, void *value )
|
||||
PBLOCK_VALIDATE_IS_INTOP( pb );
|
||||
|
||||
if ( pb->pop->o_tag == LDAP_REQ_BIND )
|
||||
pb->pop->orb_method = (int)value;
|
||||
pb->pop->orb_method = *((int *)value);
|
||||
else
|
||||
rc = PBLOCK_ERROR;
|
||||
break;
|
||||
@ -1117,7 +1136,7 @@ pblock_set( Slapi_PBlock *pb, int param, void *value )
|
||||
rc = PBLOCK_ERROR;
|
||||
break;
|
||||
case SLAPI_REQUESTOR_ISROOT:
|
||||
case SLAPI_REQUESTOR_ISUPDATEDN:
|
||||
case SLAPI_IS_REPLICATED_OPERATION:
|
||||
case SLAPI_CONN_AUTHTYPE:
|
||||
case SLAPI_CONN_AUTHMETHOD:
|
||||
case SLAPI_X_CONN_IS_UDP:
|
||||
@ -1185,7 +1204,7 @@ slapi_pblock_new(void)
|
||||
memset( pb->curParams, 0, sizeof(pb->curParams) );
|
||||
memset( pb->curVals, 0, sizeof(pb->curVals) );
|
||||
pb->curParams[0] = SLAPI_IBM_PBLOCK;
|
||||
pb->curVals[0] = NULL;
|
||||
pb->curVals[0].pv_pointer = NULL;
|
||||
pb->numParams = 1;
|
||||
pb->pconn = NULL;
|
||||
pb->pop = NULL;
|
||||
|
@ -2859,6 +2859,7 @@ int slapi_compute_add_evaluator(slapi_compute_callback_t function)
|
||||
{
|
||||
Slapi_PBlock *pPlugin = NULL;
|
||||
int rc;
|
||||
int type = SLAPI_PLUGIN_OBJECT;
|
||||
|
||||
pPlugin = slapi_pblock_new();
|
||||
if ( pPlugin == NULL ) {
|
||||
@ -2866,7 +2867,7 @@ int slapi_compute_add_evaluator(slapi_compute_callback_t function)
|
||||
goto done;
|
||||
}
|
||||
|
||||
rc = slapi_pblock_set( pPlugin, SLAPI_PLUGIN_TYPE, (void *)SLAPI_PLUGIN_OBJECT );
|
||||
rc = slapi_pblock_set( pPlugin, SLAPI_PLUGIN_TYPE, (void *)&type );
|
||||
if ( rc != LDAP_SUCCESS ) {
|
||||
goto done;
|
||||
}
|
||||
@ -2900,6 +2901,7 @@ int slapi_compute_add_search_rewriter(slapi_search_rewrite_callback_t function)
|
||||
{
|
||||
Slapi_PBlock *pPlugin = NULL;
|
||||
int rc;
|
||||
int type = SLAPI_PLUGIN_OBJECT;
|
||||
|
||||
pPlugin = slapi_pblock_new();
|
||||
if ( pPlugin == NULL ) {
|
||||
@ -2907,7 +2909,7 @@ int slapi_compute_add_search_rewriter(slapi_search_rewrite_callback_t function)
|
||||
goto done;
|
||||
}
|
||||
|
||||
rc = slapi_pblock_set( pPlugin, SLAPI_PLUGIN_TYPE, (void *)SLAPI_PLUGIN_OBJECT );
|
||||
rc = slapi_pblock_set( pPlugin, SLAPI_PLUGIN_TYPE, (void *)&type );
|
||||
if ( rc != LDAP_SUCCESS ) {
|
||||
goto done;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user