Lines Matching refs:op
201 Operation *op,
213 ber_set_option( ber, LBER_OPT_BER_MEMCTX, &op->o_tmpmemctx );
233 ctrl = (LDAPControl *)op->o_tmpalloc( sizeof(LDAPControl)+
234 bv.bv_len, op->o_tmpmemctx );
252 Operation *op,
265 ber_set_option( ber, LBER_OPT_BER_MEMCTX, &op->o_tmpmemctx );
276 op->o_conn->c_pagedresults_state.ps_cookie = resp_cookie;
277 op->o_conn->c_pagedresults_state.ps_count
278 = ((PagedResultsState *)op->o_pagedresults_state)->ps_count
287 ctrl = (LDAPControl *)op->o_tmpalloc( sizeof(LDAPControl)+
288 bv.bv_len, op->o_tmpmemctx );
306 Operation *op,
317 ber_set_option( ber, LBER_OPT_BER_MEMCTX, &op->o_tmpmemctx );
326 ctrl = (LDAPControl *)op->o_tmpalloc( sizeof(LDAPControl)+
327 bv.bv_len, op->o_tmpmemctx );
428 Operation *op,
433 vlv_ctrl *vc = op->o_controls[vlv_cid];
439 rs->sr_attrs = op->ors_attrs;
466 pack_vlv_response_control( op, rs, so, ctrls );
468 slap_add_ctrls( op, rs, ctrls );
496 mr->smr_syntax, mr, &vc->vc_value, &bv, op->o_tmpmemctx );
499 pack_vlv_response_control( op, rs, so, ctrls );
501 slap_add_ctrls( op, rs, ctrls );
509 sn = op->o_tmpalloc( sizeof(sort_node) +
510 sc->sc_nkeys * sizeof(struct berval), op->o_tmpmemctx );
512 sn->sn_conn = op->o_conn->c_conn_idx;
513 sn->sn_session = find_session_by_so( so->so_info->svi_max_percon, op->o_conn->c_conn_idx, so );
524 op->o_tmpfree( sn, op->o_tmpmemctx );
544 op->o_tmpfree( bv.bv_val, op->o_tmpmemctx );
558 be = op->o_bd;
564 op->o_bd = select_backend( &sn->sn_dn, 0 );
566 rc = be_entry_get_rw( op, &sn->sn_dn, NULL, NULL, 0, &e );
571 rs->sr_err = send_search_entry( op, rs );
580 op->o_bd = be;
583 static void send_page( Operation *op, SlapReply *rs, sort_op *so )
587 BackendDB *be = op->o_bd;
591 rs->sr_attrs = op->ors_attrs;
600 op->o_bd = select_backend( &sn->sn_dn, 0 );
602 rc = be_entry_get_rw( op, &sn->sn_dn, NULL, NULL, 0, &e );
613 rs->sr_err = send_search_entry( op, rs );
622 op->o_bd = be;
626 Operation *op,
641 if ( (op->o_ctrlflag[sss_cid] != SLAP_CONTROL_CRITICAL) ||
645 send_list( op, rs, so );
659 send_page( op, rs, so );
665 Operation *op,
672 rc = pack_sss_response_control( op, rs, ctrls );
677 rc = pack_pagedresult_response_control( op, rs, so, ctrls+1 );
679 rc = pack_vlv_response_control( op, rs, so, ctrls+1 );
687 slap_add_ctrls( op, rs, ctrls );
688 send_ldap_result( op, rs );
692 free_sort_op( op->o_conn, so );
697 Operation *op,
700 sort_ctrl *sc = op->o_controls[sss_cid];
701 sort_op *so = op->o_callback->sc_private;
712 sn = op->o_tmpalloc( len, op->o_tmpmemctx );
753 op->o_tmpfree( sn, op->o_tmpmemctx );
755 sn->sn_conn = op->o_conn->c_conn_idx;
756 sn->sn_session = find_session_by_so( so->so_info->svi_max_percon, op->o_conn->c_conn_idx, so );
773 if ( op->o_callback->sc_response == sssvlv_op_response ) {
774 op->o_callback = op->o_callback->sc_next;
777 send_entry( op, rs, so );
778 send_result( op, rs, so );
785 Operation *op,
788 slap_overinst *on = (slap_overinst *)op->o_bd->bd_info;
798 if ( op->o_ctrlflag[sss_cid] <= SLAP_CONTROL_IGNORED ) {
799 if ( op->o_ctrlflag[vlv_cid] > SLAP_CONTROL_IGNORED ) {
805 so2.so_vlv = op->o_ctrlflag[vlv_cid];
806 rc = pack_vlv_response_control( op, rs, &so2, ctrls );
809 slap_add_ctrls( op, rs, ctrls );
821 op->o_req_dn.bv_val, op->ors_filterstr.bv_val,
822 op->o_ctrlflag[sss_cid]);
824 sc = op->o_controls[sss_cid];
831 ps = ( op->o_pagedresults > SLAP_CONTROL_IGNORED ) ?
832 (PagedResultsState*)(op->o_pagedresults_state) : NULL;
833 vc = op->o_ctrlflag[vlv_cid] > SLAP_CONTROL_IGNORED ?
834 op->o_controls[vlv_cid] : NULL;
845 sess_id = find_session_by_context( si->svi_max_percon, op->o_conn->c_conn_idx, vc ? vc->vc_context : NO_VC_CONTEXT, ps ? ps->ps_cookie : NO_PS_COOKIE );
847 so = sort_conns[op->o_conn->c_conn_idx][sess_id];
853 op->o_conn->c_pagedresults_state.ps_cookie != ps->ps_cookie ) {
872 } else if ( ( sess_id = find_next_session(si->svi_max_percon, op->o_conn->c_conn_idx ) ) < 0 ) {
877 sort_conns[op->o_conn->c_conn_idx][sess_id] = &so2;
878 sort_conns[op->o_conn->c_conn_idx][sess_id]->so_session = sess_id;
883 if ( !op->ors_limit && limits_check( op, rs ))
888 send_list( op, rs, so );
889 send_result( op, rs, so );
894 send_page( op, rs, so );
895 send_result( op, rs, so );
898 slap_callback *cb = op->o_tmpalloc( sizeof(slap_callback),
899 op->o_tmpmemctx );
904 so = op->o_tmpcalloc( 1, sizeof(sort_op), op->o_tmpmemctx );
906 sort_conns[op->o_conn->c_conn_idx][sess_id] = so;
910 cb->sc_next = op->o_callback;
917 so->so_paged = op->o_pagedresults;
919 op->o_pagedresults = SLAP_CONTROL_IGNORED;
924 so->so_vlv = op->o_ctrlflag[vlv_cid];
932 so->so_vlv = op->o_ctrlflag[vlv_cid];
936 op->o_callback = cb;
940 free_sort_op( op->o_conn, so );
947 send_ldap_result( op, rs );
1080 Operation *op,
1093 if ( op->o_ctrlflag[sss_cid] > SLAP_CONTROL_IGNORED ) {
1105 op->o_ctrlflag[sss_cid] = ctrl->ldctl_iscritical ?
1112 sc = op->o_tmpalloc( sizeof(sort_ctrl) +
1113 (i-1) * sizeof(sort_key), op->o_tmpmemctx );
1115 op->o_controls[sss_cid] = sc;
1132 Operation *op,
1145 if ( op->o_ctrlflag[vlv_cid] > SLAP_CONTROL_IGNORED ) {
1155 op->o_ctrlflag[vlv_cid] = ctrl->ldctl_iscritical ?
1192 vc = op->o_tmpalloc( sizeof(vlv_ctrl), op->o_tmpmemctx );
1194 op->o_controls[vlv_cid] = vc;