Index: include/ac/fdset.h --- include/ac/fdset.h.orig 2015-11-30 18:02:00.000000000 +0100 +++ include/ac/fdset.h 2015-12-19 15:07:21.709790780 +0100 @@ -22,6 +22,13 @@ #ifndef _AC_FDSET_H #define _AC_FDSET_H +#if defined(HAVE_SYS_TYPES_H) +#include +#endif +#if defined(HAVE_SYS_SELECT_H) +#include +#endif + #if !defined( OPENLDAP_FD_SETSIZE ) && !defined( FD_SETSIZE ) # define OPENLDAP_FD_SETSIZE 4096 #endif Index: include/ldap_int_thread.h --- include/ldap_int_thread.h.orig 2015-11-30 18:02:00.000000000 +0100 +++ include/ldap_int_thread.h 2015-12-19 15:07:21.709790780 +0100 @@ -110,6 +110,7 @@ * * ***********************************/ +#define _POSIX_PTHREAD_SEMANTICS #define PTH_SYSCALL_SOFT 1 #include Index: libraries/libldap_r/tpool.c --- libraries/libldap_r/tpool.c.orig 2015-11-30 18:02:00.000000000 +0100 +++ libraries/libldap_r/tpool.c 2015-12-19 15:07:21.709790780 +0100 @@ -1027,6 +1027,6 @@ { ldap_int_thread_userctx_t *ctx = vctx; - return ctx->ltu_id; + return ctx != NULL ? ctx->ltu_id : 0; } #endif /* LDAP_THREAD_HAVE_TPOOL */ Index: servers/slapd/back-perl/config.c --- servers/slapd/back-perl/config.c.orig 2015-11-30 18:02:00.000000000 +0100 +++ servers/slapd/back-perl/config.c 2015-12-19 15:07:21.718902483 +0100 @@ -173,6 +173,9 @@ } else { switch( c->type ) { case PERL_MODULE: + if (c->argc > 2) + snprintf( eval_str, EVAL_BUF_SIZE, "require \"%s\";", c->argv[2] ); + else snprintf( eval_str, EVAL_BUF_SIZE, "use %s;", c->argv[1] ); eval_pv( eval_str, 0 );