summaryrefslogtreecommitdiffstats
path: root/ldap/servers/slapd/conntable.c
diff options
context:
space:
mode:
Diffstat (limited to 'ldap/servers/slapd/conntable.c')
-rw-r--r--ldap/servers/slapd/conntable.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/ldap/servers/slapd/conntable.c b/ldap/servers/slapd/conntable.c
index 3a0a86ce..29c6f8e7 100644
--- a/ldap/servers/slapd/conntable.c
+++ b/ldap/servers/slapd/conntable.c
@@ -67,10 +67,17 @@ connection_table_new(int table_size)
/* DBDB---move this out of here once everything works */
ct->c[i].c_sb = ber_sockbuf_alloc();
invalid_socket = SLAPD_INVALID_SOCKET;
- ber_sockbuf_set_option( ct->c[i].c_sb, LBER_SOCKBUF_OPT_DESC, &invalid_socket );
ct->c[i].c_sd = SLAPD_INVALID_SOCKET;
+#if defined(USE_OPENLDAP)
+ ber_sockbuf_ctrl( ct->c[i].c_sb, LBER_SB_OPT_SET_FD, &invalid_socket );
+ ber_sockbuf_ctrl( ct->c[i].c_sb, LBER_SB_OPT_SET_MAX_INCOMING, &maxbersize );
+#else
+ ber_sockbuf_set_option( ct->c[i].c_sb, LBER_SOCKBUF_OPT_DESC, &invalid_socket );
+ /* openldap by default does not use readahead - the implementation is
+ via a sockbuf_io layer */
ber_sockbuf_set_option( ct->c[i].c_sb, LBER_SOCKBUF_OPT_NO_READ_AHEAD, LBER_OPT_ON );
ber_sockbuf_set_option( ct->c[i].c_sb, LBER_SOCKBUF_OPT_MAX_INCOMING_SIZE, &maxbersize );
+#endif /* !USE_OPENLDAP */
#ifndef _WIN32
/* all connections start out invalid */
ct->fd[i].fd = SLAPD_INVALID_SOCKET;