Lines Matching refs:pb

308 pblock_lock( Slapi_PBlock *pb )
310 ldap_pvt_thread_mutex_lock( &pb->pb_mutex );
314 pblock_unlock( Slapi_PBlock *pb )
316 ldap_pvt_thread_mutex_unlock( &pb->pb_mutex );
320 pblock_get_default( Slapi_PBlock *pb, int param, void **value )
345 for ( i = 0; i < pb->pb_nParams; i++ ) {
346 if ( pb->pb_params[i] == param ) {
349 *((int *)value) = pb->pb_values[i].pv_integer;
352 *((long *)value) = pb->pb_values[i].pv_long_integer;
355 *value = pb->pb_values[i].pv_pointer;
358 *value = pb->pb_values[i].pv_function_pointer;
398 pblock_set_default( Slapi_PBlock *pb, int param, void *value )
408 if ( pb->pb_nParams == PBLOCK_MAX_PARAMS ) {
412 for ( i = 0; i < pb->pb_nParams; i++ ) {
413 if ( pb->pb_params[i] == param )
416 if ( i >= pb->pb_nParams ) {
417 pb->pb_params[i] = param;
418 pb->pb_nParams++;
423 pb->pb_values[i].pv_integer = (*((int *)value));
426 pb->pb_values[i].pv_long_integer = (*((long *)value));
429 pb->pb_values[i].pv_pointer = value;
432 pb->pb_values[i].pv_function_pointer = value;
442 pblock_be_call( Slapi_PBlock *pb, int (*bep)(Operation *) )
448 PBLOCK_ASSERT_OP( pb, 0 );
449 op = pb->pb_op;
460 pblock_get( Slapi_PBlock *pb, int param, void **value )
464 pblock_lock( pb );
468 *value = pb->pb_op;
471 PBLOCK_ASSERT_OP( pb, 0 );
472 *((long *)value) = pb->pb_op->o_time;
475 PBLOCK_ASSERT_OP( pb, 0 );
476 *((long *)value) = pb->pb_op->o_opid;
479 PBLOCK_ASSERT_OP( pb, 0 );
480 *((ber_tag_t *)value) = pb->pb_op->o_tag;
483 PBLOCK_ASSERT_OP( pb, 0 );
484 *((long *)value) = pb->pb_op->o_msgid;
487 PBLOCK_ASSERT_OP( pb, 0 );
488 *((int *)value) = pb->pb_op->o_delete_glue_parent;
491 PBLOCK_ASSERT_OP( pb, 0 );
492 *((int *)value) = get_no_schema_check( pb->pb_op );
495 PBLOCK_ASSERT_OP( pb, 0 );
497 if ( pb->pb_op->o_tag == LDAP_REQ_ADD ) {
500 rc = mods_structural_class( pb->pb_op->ora_modlist,
501 &tmpval, &pb->pb_rs->sr_text,
502 pb->pb_textbuf, sizeof( pb->pb_textbuf ),
503 pb->pb_op->o_tmpmemctx );
510 PBLOCK_ASSERT_OP( pb, 0 );
511 *((int *)value) = pb->pb_op->o_no_subordinate_glue;
514 PBLOCK_ASSERT_OP( pb, 0 );
515 *((LDAPControl ***)value) = pb->pb_op->o_ctrls;
518 PBLOCK_ASSERT_OP( pb, 0 );
519 *((char **)value) = pb->pb_op->o_dn.bv_val;
522 PBLOCK_ASSERT_OP( pb, 0 );
523 *((int *)value) = get_manageDSAit( pb->pb_op );
526 PBLOCK_ASSERT_OP( pb, 0 );
527 *((int *)value) = get_relax( pb->pb_op );
530 PBLOCK_ASSERT_OP( pb, 0 );
531 *((BackendDB **)value) = select_backend( &pb->pb_op->o_req_ndn, 0 );
534 PBLOCK_ASSERT_OP( pb, 0 );
535 if ( pb->pb_op->o_bd != NULL )
536 *((char **)value) = pb->pb_op->o_bd->bd_info->bi_type;
541 *value = pb->pb_conn;
544 PBLOCK_ASSERT_OP( pb, 0 );
545 *((slap_ssf_t *)value) = pb->pb_conn->c_ssf;
548 PBLOCK_ASSERT_CONN( pb );
549 if ( pb->pb_conn->c_sasl_authctx != NULL )
550 *value = pb->pb_conn->c_sasl_authctx;
552 *value = pb->pb_conn->c_sasl_sockctx;
555 PBLOCK_ASSERT_OP( pb, 0 );
556 *((char **)value) = pb->pb_op->o_req_dn.bv_val;
559 *((int *)value) = pblock_be_call( pb, be_isroot );
562 *((int *)value) = pblock_be_call( pb, be_slurp_update );
566 PBLOCK_ASSERT_CONN( pb );
567 *((char **)value) = pblock_get_authtype( &pb->pb_conn->c_authz,
569 pb->pb_conn->c_is_tls
576 *((int *)value) = pb->pb_intop;
579 PBLOCK_ASSERT_CONN( pb );
581 *((int *)value) = pb->pb_conn->c_is_udp;
587 PBLOCK_ASSERT_CONN( pb );
588 *((long *)value) = pb->pb_conn->c_connid;
591 PBLOCK_ASSERT_CONN( pb );
594 if ( pb->pb_op->o_tag == LDAP_REQ_BIND && pb->pb_rs->sr_err == LDAP_SUCCESS )
595 *((char **)value) = pb->pb_op->orb_edn.bv_val;
598 *((char **)value) = pb->pb_conn->c_dn.bv_val;
601 PBLOCK_ASSERT_CONN( pb );
602 if ( strncmp( pb->pb_conn->c_peer_name.bv_val, "IP=", 3 ) == 0 )
603 *((char **)value) = &pb->pb_conn->c_peer_name.bv_val[3];
608 PBLOCK_ASSERT_CONN( pb );
609 if ( strncmp( pb->pb_conn->c_peer_name.bv_val, "PATH=", 3 ) == 0 )
610 *((char **)value) = &pb->pb_conn->c_peer_name.bv_val[5];
615 PBLOCK_ASSERT_CONN( pb );
616 if ( strncmp( pb->pb_conn->c_sock_name.bv_val, "IP=", 3 ) == 0 )
617 *((char **)value) = &pb->pb_conn->c_sock_name.bv_val[3];
622 PBLOCK_ASSERT_CONN( pb );
623 if ( strncmp( pb->pb_conn->c_sock_name.bv_val, "PATH=", 3 ) == 0 )
624 *((char **)value) = &pb->pb_conn->c_sock_name.bv_val[5];
630 PBLOCK_ASSERT_OP( pb, 0 );
631 *((int *)value) = pb->pb_rs->sr_err;
634 PBLOCK_ASSERT_OP( pb, 0 );
635 *((const char **)value) = pb->pb_rs->sr_text;
638 PBLOCK_ASSERT_OP( pb, 0 );
639 *((const char **)value) = pb->pb_rs->sr_matched;
642 PBLOCK_ASSERT_OP( pb, 0 );
643 if ( pb->pb_op->o_tag == LDAP_REQ_ADD )
644 *((Slapi_Entry **)value) = pb->pb_op->ora_e;
652 pblock_get_default( pb, param, (void **)&mods );
653 if ( mods == NULL && pb->pb_intop == 0 ) {
654 switch ( pb->pb_op->o_tag ) {
656 ml = pb->pb_op->orm_modlist;
659 ml = pb->pb_op->orr_modlist;
667 pblock_set_default( pb, param, (void *)mods );
674 PBLOCK_ASSERT_OP( pb, 0 );
675 if ( pb->pb_op->o_tag == LDAP_REQ_MODRDN )
676 *((char **)value) = pb->pb_op->orr_newrdn.bv_val;
681 PBLOCK_ASSERT_OP( pb, 0 );
682 if ( pb->pb_op->o_tag == LDAP_REQ_MODRDN && pb->pb_op->orr_newSup != NULL )
683 *((char **)value) = pb->pb_op->orr_newSup->bv_val;
688 PBLOCK_ASSERT_OP( pb, 0 );
689 if ( pb->pb_op->o_tag == LDAP_REQ_MODRDN )
690 *((int *)value) = pb->pb_op->orr_deleteoldrdn;
695 PBLOCK_ASSERT_OP( pb, 0 );
696 if ( pb->pb_op->o_tag == LDAP_REQ_SEARCH )
697 *((int *)value) = pb->pb_op->ors_scope;
702 PBLOCK_ASSERT_OP( pb, 0 );
703 if ( pb->pb_op->o_tag == LDAP_REQ_SEARCH )
704 *((int *)value) = pb->pb_op->ors_deref;
709 PBLOCK_ASSERT_OP( pb, 0 );
710 if ( pb->pb_op->o_tag == LDAP_REQ_SEARCH )
711 *((int *)value) = pb->pb_op->ors_slimit;
716 PBLOCK_ASSERT_OP( pb, 0 );
717 if ( pb->pb_op->o_tag == LDAP_REQ_SEARCH )
718 *((int *)value) = pb->pb_op->ors_tlimit;
723 PBLOCK_ASSERT_OP( pb, 0 );
724 if ( pb->pb_op->o_tag == LDAP_REQ_SEARCH )
725 *((Slapi_Filter **)value) = pb->pb_op->ors_filter;
730 PBLOCK_ASSERT_OP( pb, 0 );
731 if ( pb->pb_op->o_tag == LDAP_REQ_SEARCH )
732 *((char **)value) = pb->pb_op->ors_filterstr.bv_val;
739 PBLOCK_ASSERT_OP( pb, 0 );
740 if ( pb->pb_op->o_tag != LDAP_REQ_SEARCH ) {
744 pblock_get_default( pb, param, (void **)&attrs );
745 if ( attrs == NULL && pb->pb_intop == 0 ) {
746 attrs = anlist2charray_x( pb->pb_op->ors_attrs, 0, pb->pb_op->o_tmpmemctx );
747 pblock_set_default( pb, param, (void *)attrs );
753 PBLOCK_ASSERT_OP( pb, 0 );
754 if ( pb->pb_op->o_tag == LDAP_REQ_SEARCH )
755 *((int *)value) = pb->pb_op->ors_attrsonly;
760 PBLOCK_ASSERT_OP( pb, 0 );
761 *((Slapi_Entry **)value) = pb->pb_rs->sr_entry;
764 PBLOCK_ASSERT_OP( pb, 0 );
765 *((struct berval **)value) = pb->pb_rs->sr_sasldata;
768 *((const char **)value) = pb->pb_op->ore_reqoid.bv_val;
771 *((struct berval **)value) = pb->pb_op->ore_reqdata;
774 PBLOCK_ASSERT_OP( pb, 0 );
775 *((const char **)value) = pb->pb_rs->sr_rspoid;
778 PBLOCK_ASSERT_OP( pb, 0 );
779 *((struct berval **)value) = pb->pb_rs->sr_rspdata;
782 if ( pb->pb_op->o_tag == LDAP_REQ_BIND )
783 *((int *)value) = pb->pb_op->orb_method;
788 if ( pb->pb_op->o_tag == LDAP_REQ_BIND )
789 *((struct berval **)value) = &pb->pb_op->orb_cred;
794 if ( pb->pb_op->o_tag == LDAP_REQ_COMPARE )
795 *((char **)value) = pb->pb_op->orc_ava->aa_desc->ad_cname.bv_val;
800 if ( pb->pb_op->o_tag == LDAP_REQ_COMPARE )
801 *((struct berval **)value) = &pb->pb_op->orc_ava->aa_value;
806 if ( pb->pb_op->o_tag == LDAP_REQ_ABANDON )
807 *((int *)value) = pb->pb_op->orn_msgid;
812 rc = pblock_get_default( pb, param, value );
816 pblock_unlock( pb );
822 pblock_add_control( Slapi_PBlock *pb, LDAPControl *control )
827 pblock_get_default( pb, SLAPI_RESCONTROLS, (void **)&controls );
841 return pblock_set_default( pb, SLAPI_RESCONTROLS, (void *)controls );
865 pblock_set( Slapi_PBlock *pb, int param, void *value )
869 pblock_lock( pb );
873 pb->pb_op = (Operation *)value;
876 PBLOCK_ASSERT_OP( pb, 0 );
877 pb->pb_op->o_time = *((long *)value);
880 PBLOCK_ASSERT_OP( pb, 0 );
881 pb->pb_op->o_opid = *((long *)value);
884 PBLOCK_ASSERT_OP( pb, 0 );
885 pb->pb_op->o_tag = *((ber_tag_t *)value);
888 PBLOCK_ASSERT_OP( pb, 0 );
889 pb->pb_op->o_msgid = *((long *)value);
892 PBLOCK_ASSERT_OP( pb, 0 );
893 pb->pb_op->o_delete_glue_parent = *((int *)value);
896 PBLOCK_ASSERT_OP( pb, 0 );
897 pb->pb_op->o_no_schema_check = *((int *)value);
900 PBLOCK_ASSERT_OP( pb, 0 );
901 pb->pb_op->o_no_subordinate_glue = *((int *)value);
904 PBLOCK_ASSERT_OP( pb, 0 );
905 pb->pb_op->o_ctrls = (LDAPControl **)value;
910 pblock_get_default( pb, param, (void **)&ctrls );
915 rc = pblock_set_default( pb, param, value );
919 PBLOCK_ASSERT_OP( pb, 0 );
920 rc = pblock_add_control( pb, (LDAPControl *)value );
923 PBLOCK_ASSERT_OP( pb, 0 );
924 rc = pblock_set_dn( value, &pb->pb_op->o_dn, &pb->pb_op->o_ndn, pb->pb_op->o_tmpmemctx );
927 PBLOCK_ASSERT_OP( pb, 0 );
928 pb->pb_op->o_managedsait = *((int *)value);
931 PBLOCK_ASSERT_OP( pb, 0 );
932 pb->pb_op->o_relax = *((int *)value);
935 PBLOCK_ASSERT_OP( pb, 0 );
936 pb->pb_op->o_bd = (BackendDB *)value;
939 pb->pb_conn = (Connection *)value;
942 PBLOCK_ASSERT_CONN( pb );
943 PBLOCK_LOCK_CONN( pb );
944 pb->pb_conn->c_ssf = (slap_ssf_t)(long)value;
945 PBLOCK_UNLOCK_CONN( pb );
948 PBLOCK_ASSERT_CONN( pb );
949 PBLOCK_LOCK_CONN( pb );
950 pb->pb_conn->c_sasl_authctx = value;
951 PBLOCK_UNLOCK_CONN( pb );
954 PBLOCK_ASSERT_OP( pb, 0 );
955 rc = pblock_set_dn( value, &pb->pb_op->o_req_dn, &pb->pb_op->o_req_ndn, pb->pb_op->o_tmpmemctx );
958 PBLOCK_ASSERT_CONN( pb );
959 PBLOCK_LOCK_CONN( pb );
960 pb->pb_conn->c_connid = *((long *)value);
961 PBLOCK_UNLOCK_CONN( pb );
964 PBLOCK_ASSERT_CONN( pb );
965 PBLOCK_LOCK_CONN( pb );
966 rc = pblock_set_dn( value, &pb->pb_conn->c_dn, &pb->pb_conn->c_ndn, NULL );
967 PBLOCK_UNLOCK_CONN( pb );
971 PBLOCK_ASSERT_OP( pb, 0 );
972 pb->pb_rs->sr_err = *((int *)value);
975 PBLOCK_ASSERT_OP( pb, 0 );
976 snprintf( pb->pb_textbuf, sizeof( pb->pb_textbuf ), "%s", (char *)value );
977 pb->pb_rs->sr_text = pb->pb_textbuf;
980 PBLOCK_ASSERT_OP( pb, 0 );
981 pb->pb_rs->sr_matched = (char *)value; /* XXX should dup? */
984 PBLOCK_ASSERT_OP( pb, 0 );
985 if ( pb->pb_op->o_tag == LDAP_REQ_ADD )
986 pb->pb_op->ora_e = (Slapi_Entry *)value;
994 PBLOCK_ASSERT_OP( pb, 0 );
995 rc = pblock_set_default( pb, param, value );
1000 if ( pb->pb_op->o_tag == LDAP_REQ_MODIFY ) {
1001 mlp = &pb->pb_op->orm_modlist;
1002 } else if ( pb->pb_op->o_tag == LDAP_REQ_ADD ) {
1003 mlp = &pb->pb_op->ora_modlist;
1004 } else if ( pb->pb_op->o_tag == LDAP_REQ_MODRDN ) {
1005 mlp = &pb->pb_op->orr_modlist;
1010 newmods = slapi_int_ldapmods2modifications( pb->pb_op, (LDAPMod **)value );
1018 PBLOCK_ASSERT_OP( pb, 0 );
1019 PBLOCK_VALIDATE_IS_INTOP( pb );
1020 if ( pb->pb_op->o_tag == LDAP_REQ_MODRDN ) {
1021 rc = pblock_set_dn( value, &pb->pb_op->orr_newrdn, &pb->pb_op->orr_nnewrdn, pb->pb_op->o_tmpmemctx );
1023 rc = rdn_validate( &pb->pb_op->orr_nnewrdn );
1029 PBLOCK_ASSERT_OP( pb, 0 );
1030 PBLOCK_VALIDATE_IS_INTOP( pb );
1031 if ( pb->pb_op->o_tag == LDAP_REQ_MODRDN ) {
1033 if ( pb->pb_op->orr_newSup != NULL ) {
1034 pb->pb_op->o_tmpfree( pb->pb_op->orr_newSup, pb->pb_op->o_tmpmemctx );
1035 BER_BVZERO( pb->pb_op->orr_newSup );
1036 pb->pb_op->orr_newSup = NULL;
1038 if ( pb->pb_op->orr_newSup != NULL ) {
1039 pb->pb_op->o_tmpfree( pb->pb_op->orr_nnewSup, pb->pb_op->o_tmpmemctx );
1040 BER_BVZERO( pb->pb_op->orr_nnewSup );
1041 pb->pb_op->orr_nnewSup = NULL;
1044 if ( pb->pb_op->orr_newSup == NULL ) {
1045 pb->pb_op->orr_newSup = (struct berval *)pb->pb_op->o_tmpalloc(
1046 sizeof(struct berval), pb->pb_op->o_tmpmemctx );
1047 BER_BVZERO( pb->pb_op->orr_newSup );
1049 if ( pb->pb_op->orr_nnewSup == NULL ) {
1050 pb->pb_op->orr_nnewSup = (struct berval *)pb->pb_op->o_tmpalloc(
1051 sizeof(struct berval), pb->pb_op->o_tmpmemctx );
1052 BER_BVZERO( pb->pb_op->orr_nnewSup );
1054 rc = pblock_set_dn( value, pb->pb_op->orr_newSup, pb->pb_op->orr_nnewSup, pb->pb_op->o_tmpmemctx );
1061 PBLOCK_ASSERT_OP( pb, 0 );
1062 PBLOCK_VALIDATE_IS_INTOP( pb );
1063 if ( pb->pb_op->o_tag == LDAP_REQ_MODRDN )
1064 pb->pb_op->orr_deleteoldrdn = *((int *)value);
1071 PBLOCK_ASSERT_OP( pb, 0 );
1072 if ( pb->pb_op->o_tag == LDAP_REQ_SEARCH ) {
1078 pb->pb_op->ors_scope = scope;
1090 PBLOCK_ASSERT_OP( pb, 0 );
1091 if ( pb->pb_op->o_tag == LDAP_REQ_SEARCH )
1092 pb->pb_op->ors_deref = *((int *)value);
1097 PBLOCK_ASSERT_OP( pb, 0 );
1098 if ( pb->pb_op->o_tag == LDAP_REQ_SEARCH )
1099 pb->pb_op->ors_slimit = *((int *)value);
1104 PBLOCK_ASSERT_OP( pb, 0 );
1105 if ( pb->pb_op->o_tag == LDAP_REQ_SEARCH )
1106 pb->pb_op->ors_tlimit = *((int *)value);
1111 PBLOCK_ASSERT_OP( pb, 0 );
1112 if ( pb->pb_op->o_tag == LDAP_REQ_SEARCH )
1113 pb->pb_op->ors_filter = (Slapi_Filter *)value;
1118 PBLOCK_ASSERT_OP( pb, 0 );
1119 if ( pb->pb_op->o_tag == LDAP_REQ_SEARCH ) {
1120 pb->pb_op->ors_filterstr.bv_val = (char *)value;
1121 pb->pb_op->ors_filterstr.bv_len = strlen((char *)value);
1131 PBLOCK_ASSERT_OP( pb, 0 );
1132 PBLOCK_VALIDATE_IS_INTOP( pb );
1134 if ( pb->pb_op->o_tag != LDAP_REQ_SEARCH ) {
1139 rc = pblock_set_default( pb, param, value );
1143 if ( pb->pb_op->ors_attrs != NULL ) {
1144 pb->pb_op->o_tmpfree( pb->pb_op->ors_attrs, pb->pb_op->o_tmpmemctx );
1145 pb->pb_op->ors_attrs = NULL;
1152 an = (AttributeName *)pb->pb_op->o_tmpcalloc( i + 1,
1153 sizeof(AttributeName), pb->pb_op->o_tmpmemctx );
1160 if ( slap_bv2ad( &an[j].an_name, &an[j].an_desc, &pb->pb_rs->sr_text ) == LDAP_SUCCESS ) {
1167 pb->pb_op->ors_attrs = an;
1171 PBLOCK_ASSERT_OP( pb, 0 );
1172 PBLOCK_VALIDATE_IS_INTOP( pb );
1174 if ( pb->pb_op->o_tag == LDAP_REQ_SEARCH )
1175 pb->pb_op->ors_attrsonly = *((int *)value);
1180 PBLOCK_ASSERT_OP( pb, 0 );
1181 if ( pb->pb_rs->sr_flags & REP_ENTRY_MUSTBEFREED ) {
1182 entry_free( pb->pb_rs->sr_entry );
1183 } else if ( pb->pb_rs->sr_flags & REP_ENTRY_MUSTRELEASE ) {
1184 be_entry_release_r( pb->pb_op, pb->pb_rs->sr_entry );
1185 pb->pb_rs->sr_flags ^= REP_ENTRY_MUSTRELEASE;
1187 pb->pb_rs->sr_entry = (Slapi_Entry *)value;
1188 pb->pb_rs->sr_flags |= REP_ENTRY_MUSTBEFREED;
1191 PBLOCK_ASSERT_OP( pb, 0 );
1192 pb->pb_rs->sr_sasldata = (struct berval *)value;
1195 PBLOCK_ASSERT_OP( pb, 0 );
1196 PBLOCK_VALIDATE_IS_INTOP( pb );
1198 if ( pb->pb_op->o_tag == LDAP_REQ_EXTENDED ) {
1199 pb->pb_op->ore_reqoid.bv_val = (char *)value;
1200 pb->pb_op->ore_reqoid.bv_len = strlen((char *)value);
1206 PBLOCK_ASSERT_OP( pb, 0 );
1207 PBLOCK_VALIDATE_IS_INTOP( pb );
1209 if ( pb->pb_op->o_tag == LDAP_REQ_EXTENDED )
1210 pb->pb_op->ore_reqdata = (struct berval *)value;
1215 PBLOCK_ASSERT_OP( pb, 0 );
1216 pb->pb_rs->sr_rspoid = (char *)value;
1219 PBLOCK_ASSERT_OP( pb, 0 );
1220 pb->pb_rs->sr_rspdata = (struct berval *)value;
1223 PBLOCK_ASSERT_OP( pb, 0 );
1224 PBLOCK_VALIDATE_IS_INTOP( pb );
1226 if ( pb->pb_op->o_tag == LDAP_REQ_BIND )
1227 pb->pb_op->orb_method = *((int *)value);
1232 PBLOCK_ASSERT_OP( pb, 0 );
1233 PBLOCK_VALIDATE_IS_INTOP( pb );
1235 if ( pb->pb_op->o_tag == LDAP_REQ_BIND )
1236 pb->pb_op->orb_cred = *((struct berval *)value);
1241 PBLOCK_ASSERT_OP( pb, 0 );
1242 PBLOCK_VALIDATE_IS_INTOP( pb );
1244 if ( pb->pb_op->o_tag == LDAP_REQ_COMPARE ) {
1247 pb->pb_op->orc_ava->aa_desc = NULL;
1248 rc = slap_str2ad( (char *)value, &pb->pb_op->orc_ava->aa_desc, &text );
1254 PBLOCK_ASSERT_OP( pb, 0 );
1255 PBLOCK_VALIDATE_IS_INTOP( pb );
1257 if ( pb->pb_op->o_tag == LDAP_REQ_COMPARE )
1258 pb->pb_op->orc_ava->aa_value = *((struct berval *)value);
1263 PBLOCK_ASSERT_OP( pb, 0 );
1264 PBLOCK_VALIDATE_IS_INTOP( pb );
1266 if ( pb->pb_op->o_tag == LDAP_REQ_ABANDON)
1267 pb->pb_op->orn_msgid = *((int *)value);
1286 rc = pblock_set_default( pb, param, value );
1290 pblock_unlock( pb );
1296 pblock_clear( Slapi_PBlock *pb )
1298 pb->pb_nParams = 1;
1334 Slapi_PBlock *pb;
1336 pb = (Slapi_PBlock *) ch_calloc( 1, sizeof(Slapi_PBlock) );
1337 if ( pb != NULL ) {
1338 ldap_pvt_thread_mutex_init( &pb->pb_mutex );
1340 pb->pb_params[0] = SLAPI_IBM_PBLOCK;
1341 pb->pb_values[0].pv_pointer = NULL;
1342 pb->pb_nParams = 1;
1343 pb->pb_conn = NULL;
1344 pb->pb_op = NULL;
1345 pb->pb_rs = NULL;
1346 pb->pb_intop = 0;
1348 return pb;
1352 pblock_destroy( Slapi_PBlock *pb )
1358 assert( pb != NULL );
1360 pblock_get_default( pb, SLAPI_RESCONTROLS, (void **)&controls );
1365 if ( pb->pb_intop ) {
1366 slapi_int_connection_done_pb( pb );
1368 pblock_get_default( pb, SLAPI_MODIFY_MODS, (void **)&mods );
1371 pblock_get_default( pb, SLAPI_SEARCH_ATTRS, (void **)&attrs );
1373 pb->pb_op->o_tmpfree( attrs, pb->pb_op->o_tmpmemctx );
1376 ldap_pvt_thread_mutex_destroy( &pb->pb_mutex );
1377 slapi_ch_free( (void **)&pb );
1381 slapi_pblock_destroy( Slapi_PBlock *pb )
1383 if ( pb != NULL ) {
1384 pblock_destroy( pb );
1389 slapi_pblock_get( Slapi_PBlock *pb, int arg, void *value )
1391 return pblock_get( pb, arg, (void **)value );
1395 slapi_pblock_set( Slapi_PBlock *pb, int arg, void *value )
1397 return pblock_set( pb, arg, value );
1401 slapi_pblock_clear( Slapi_PBlock *pb )
1403 pblock_clear( pb );
1416 slapi_int_pblock_get_first( Backend *be, Slapi_PBlock **pb )
1418 assert( pb != NULL );
1419 *pb = SLAPI_BACKEND_PBLOCK( be );
1420 return (*pb == NULL ? LDAP_OTHER : LDAP_SUCCESS);
1427 slapi_int_pblock_get_next( Slapi_PBlock **pb )
1429 assert( pb != NULL );
1430 return slapi_pblock_get( *pb, SLAPI_IBM_PBLOCK, pb );