mirror of
https://git.openldap.org/openldap/openldap.git
synced 2025-03-07 14:18:15 +08:00
Add connection_fake_init()
This commit is contained in:
parent
829bc9969d
commit
2821d0bdd6
@ -1167,15 +1167,16 @@ operations_error:
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static const Listener dummy_list = { {0, ""}, {0, ""} };
|
||||
|
||||
int connection_client_setup(
|
||||
ber_socket_t s,
|
||||
Listener *l,
|
||||
ldap_pvt_thread_start_t *func,
|
||||
void *arg )
|
||||
{
|
||||
Connection *c;
|
||||
|
||||
if ( connection_init( s, l, "", "", CONN_IS_CLIENT, 0, NULL ) < 0 ) {
|
||||
if ( connection_init( s, &dummy_list, "", "", CONN_IS_CLIENT, 0, NULL ) < 0 ) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
@ -1858,3 +1859,26 @@ int connection_write(ber_socket_t s)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void
|
||||
connection_fake_init(
|
||||
Connection *conn,
|
||||
Operation *op,
|
||||
void *ctx )
|
||||
{
|
||||
conn->c_connid = -1;
|
||||
conn->c_send_ldap_result = slap_send_ldap_result;
|
||||
conn->c_send_search_entry = slap_send_search_entry;
|
||||
conn->c_send_search_reference = slap_send_search_reference;
|
||||
conn->c_listener = (Listener *)&dummy_list;
|
||||
conn->c_peer_name = slap_empty_bv;
|
||||
|
||||
/* set memory context */
|
||||
op->o_tmpmemctx = sl_mem_create( SLMALLOC_SLAB_SIZE, ctx );
|
||||
op->o_tmpmfuncs = &sl_mfuncs;
|
||||
op->o_threadctx = ctx;
|
||||
|
||||
op->o_conn = conn;
|
||||
op->o_connid = op->o_conn->c_connid;
|
||||
|
||||
op->o_time = slap_get_time();
|
||||
}
|
||||
|
@ -340,7 +340,6 @@ LDAP_SLAPD_F (int) connections_timeout_idle LDAP_P((time_t));
|
||||
|
||||
LDAP_SLAPD_F (int) connection_client_setup LDAP_P((
|
||||
ber_socket_t s,
|
||||
Listener *l,
|
||||
ldap_pvt_thread_start_t *func,
|
||||
void *arg ));
|
||||
LDAP_SLAPD_F (void) connection_client_enable LDAP_P(( ber_socket_t s ));
|
||||
@ -372,6 +371,10 @@ LDAP_SLAPD_F (Connection *) connection_next LDAP_P((
|
||||
LDAP_SLAPD_F (void) connection_done LDAP_P((Connection *));
|
||||
|
||||
LDAP_SLAPD_F (void) connection2anonymous LDAP_P((Connection *));
|
||||
LDAP_SLAPD_F (void) connection_fake_init LDAP_P((
|
||||
Connection *conn,
|
||||
Operation *op,
|
||||
void *threadctx ));
|
||||
|
||||
/*
|
||||
* cr.c
|
||||
|
@ -165,8 +165,6 @@ ldap_sync_search(
|
||||
return rc;
|
||||
}
|
||||
|
||||
static const Listener dummy_list = { {0, ""}, {0, ""} };
|
||||
|
||||
static int
|
||||
do_syncrep1(
|
||||
Operation *op,
|
||||
@ -809,25 +807,12 @@ do_syncrepl(
|
||||
return NULL;
|
||||
}
|
||||
|
||||
conn.c_connid = -1;
|
||||
conn.c_send_ldap_result = slap_send_ldap_result;
|
||||
conn.c_send_search_entry = slap_send_search_entry;
|
||||
conn.c_send_search_reference = slap_send_search_reference;
|
||||
conn.c_listener = (Listener *)&dummy_list;
|
||||
conn.c_peer_name = slap_empty_bv;
|
||||
|
||||
/* set memory context */
|
||||
op.o_tmpmemctx = sl_mem_create( SLMALLOC_SLAB_SIZE, ctx );
|
||||
op.o_tmpmfuncs = &sl_mfuncs;
|
||||
connection_fake_init( &conn, &op, ctx );
|
||||
|
||||
op.o_dn = si->si_updatedn;
|
||||
op.o_ndn = si->si_updatedn;
|
||||
op.o_time = slap_get_time();
|
||||
op.o_threadctx = ctx;
|
||||
op.o_managedsait = 1;
|
||||
op.o_bd = si->si_be;
|
||||
op.o_conn = &conn;
|
||||
op.o_connid = op.o_conn->c_connid;
|
||||
|
||||
op.o_sync_state.ctxcsn = NULL;
|
||||
op.o_sync_state.sid = -1;
|
||||
@ -854,7 +839,7 @@ do_syncrepl(
|
||||
*/
|
||||
if ( rc == LDAP_SUCCESS ) {
|
||||
if ( first ) {
|
||||
rc = connection_client_setup( s, (Listener *)&dummy_list, do_syncrepl,
|
||||
rc = connection_client_setup( s, do_syncrepl,
|
||||
arg );
|
||||
} else {
|
||||
connection_client_enable( s );
|
||||
|
Loading…
Reference in New Issue
Block a user