Add c_conn_idx, to simplify external modules managing per-connection state

This commit is contained in:
Howard Chu 2004-03-12 18:22:37 +00:00
parent 95459fef7f
commit cdeda34029
2 changed files with 5 additions and 0 deletions

View File

@ -92,6 +92,8 @@ static ldap_pvt_thread_start_t connection_operation;
*/ */
int connections_init(void) int connections_init(void)
{ {
int i;
assert( connections == NULL ); assert( connections == NULL );
if( connections != NULL) { if( connections != NULL) {
@ -126,6 +128,8 @@ int connections_init(void)
assert( connections[0].c_struct_state == SLAP_C_UNINITIALIZED ); assert( connections[0].c_struct_state == SLAP_C_UNINITIALIZED );
assert( connections[dtblsize-1].c_struct_state == SLAP_C_UNINITIALIZED ); assert( connections[dtblsize-1].c_struct_state == SLAP_C_UNINITIALIZED );
for (i=0; i<dtblsize; i++) connections[i].c_conn_idx = i;
/* /*
* per entry initialization of the Connection array initialization * per entry initialization of the Connection array initialization
* will be done by connection_init() * will be done by connection_init()

View File

@ -2148,6 +2148,7 @@ typedef struct slap_listener Listener;
typedef struct slap_conn { typedef struct slap_conn {
int c_struct_state; /* structure management state */ int c_struct_state; /* structure management state */
int c_conn_state; /* connection state */ int c_conn_state; /* connection state */
int c_conn_idx; /* slot in connections array */
ldap_pvt_thread_mutex_t c_mutex; /* protect the connection */ ldap_pvt_thread_mutex_t c_mutex; /* protect the connection */
Sockbuf *c_sb; /* ber connection stuff */ Sockbuf *c_sb; /* ber connection stuff */