Module Name: src
Committed By: christos
Date: Thu Aug 8 13:50:58 UTC 2019
Modified Files:
src/external/bsd/openldap/dist/build: mkversion
src/external/bsd/openldap/dist/clients/tools: common.c
src/external/bsd/openldap/dist/include: Makefile.in ldap_pvt.h
ldap_queue.h portable.hin
src/external/bsd/openldap/dist/libraries/libldap: os-ip.c os-local.c
tls_o.c
src/external/bsd/openldap/dist/libraries/liblutil: detach.c md5.c
passwd.c
src/external/bsd/openldap/dist/libraries/librewrite: session.c
src/external/bsd/openldap/dist/servers/slapd: filter.c
src/external/bsd/openldap/dist/servers/slapd/overlays: deref.c
src/external/bsd/openldap/include: ldap_features.h portable.h
Removed Files:
src/external/bsd/openldap/dist/doc/man/man5: slapd-ldbm.5
src/external/bsd/openldap/dist/tests/scripts:
test058-syncrepl-asymmetric
Log Message:
merge conflicts.
To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 src/external/bsd/openldap/dist/build/mkversion
cvs rdiff -u -r1.7 -r1.8 \
src/external/bsd/openldap/dist/clients/tools/common.c
cvs rdiff -u -r1.1.1.6 -r0 \
src/external/bsd/openldap/dist/doc/man/man5/slapd-ldbm.5
cvs rdiff -u -r1.7 -r1.8 src/external/bsd/openldap/dist/include/Makefile.in \
src/external/bsd/openldap/dist/include/portable.hin
cvs rdiff -u -r1.1.1.7 -r1.2 \
src/external/bsd/openldap/dist/include/ldap_pvt.h
cvs rdiff -u -r1.5 -r1.6 src/external/bsd/openldap/dist/include/ldap_queue.h
cvs rdiff -u -r1.8 -r1.9 \
src/external/bsd/openldap/dist/libraries/libldap/os-ip.c
cvs rdiff -u -r1.9 -r1.10 \
src/external/bsd/openldap/dist/libraries/libldap/os-local.c
cvs rdiff -u -r1.6 -r1.7 \
src/external/bsd/openldap/dist/libraries/libldap/tls_o.c
cvs rdiff -u -r1.5 -r1.6 \
src/external/bsd/openldap/dist/libraries/liblutil/detach.c \
src/external/bsd/openldap/dist/libraries/liblutil/md5.c
cvs rdiff -u -r1.6 -r1.7 \
src/external/bsd/openldap/dist/libraries/liblutil/passwd.c
cvs rdiff -u -r1.4 -r1.5 \
src/external/bsd/openldap/dist/libraries/librewrite/session.c
cvs rdiff -u -r1.5 -r1.6 \
src/external/bsd/openldap/dist/servers/slapd/filter.c
cvs rdiff -u -r1.4 -r1.5 \
src/external/bsd/openldap/dist/servers/slapd/overlays/deref.c
cvs rdiff -u -r1.1.1.5 -r0 \
src/external/bsd/openldap/dist/tests/scripts/test058-syncrepl-asymmetric
cvs rdiff -u -r1.5 -r1.6 src/external/bsd/openldap/include/ldap_features.h
cvs rdiff -u -r1.7 -r1.8 src/external/bsd/openldap/include/portable.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/external/bsd/openldap/dist/build/mkversion
diff -u src/external/bsd/openldap/dist/build/mkversion:1.7 src/external/bsd/openldap/dist/build/mkversion:1.8
--- src/external/bsd/openldap/dist/build/mkversion:1.7 Mon Feb 5 20:57:23 2018
+++ src/external/bsd/openldap/dist/build/mkversion Thu Aug 8 09:50:56 2019
@@ -3,7 +3,7 @@
# $OpenLDAP$
## This work is part of OpenLDAP Software <http://www.openldap.org/>.
##
-## Copyright 1998-2017 The OpenLDAP Foundation.
+## Copyright 1998-2019 The OpenLDAP Foundation.
## All rights reserved.
##
## Redistribution and use in source and binary forms, with or without
@@ -50,11 +50,16 @@ if test $# != 1 ; then
fi
APPLICATION=$1
+#if [ -n "${SOURCE_DATE_EPOCH}" ]; then
+ WHOWHERE="openldap"
+#else
+# WHOWHERE="$USER@$(uname -n):$(pwd)"
+#fi
cat << __EOF__
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
*
- * Copyright 1998-2017 The OpenLDAP Foundation.
+ * Copyright 1998-2019 The OpenLDAP Foundation.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -67,7 +72,7 @@ cat << __EOF__
*/
static const char copyright[] =
-"Copyright 1998-2017 The OpenLDAP Foundation. All rights reserved.\n"
+"Copyright 1998-2019 The OpenLDAP Foundation. All rights reserved.\n"
"COPYING RESTRICTIONS APPLY\n";
$static $const char $SYMBOL[] =
Index: src/external/bsd/openldap/dist/clients/tools/common.c
diff -u src/external/bsd/openldap/dist/clients/tools/common.c:1.7 src/external/bsd/openldap/dist/clients/tools/common.c:1.8
--- src/external/bsd/openldap/dist/clients/tools/common.c:1.7 Mon Feb 5 20:57:23 2018
+++ src/external/bsd/openldap/dist/clients/tools/common.c Thu Aug 8 09:50:56 2019
@@ -1,10 +1,10 @@
-/* $NetBSD: common.c,v 1.7 2018/02/06 01:57:23 christos Exp $ */
+/* $NetBSD: common.c,v 1.8 2019/08/08 13:50:56 christos Exp $ */
/* common.c - common routines for the ldap client tools */
/* $OpenLDAP$ */
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
*
- * Copyright 1998-2017 The OpenLDAP Foundation.
+ * Copyright 1998-2019 The OpenLDAP Foundation.
* Portions Copyright 2003 Kurt D. Zeilenga.
* Portions Copyright 2003 IBM Corporation.
* All rights reserved.
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__RCSID("$NetBSD: common.c,v 1.7 2018/02/06 01:57:23 christos Exp $");
+__RCSID("$NetBSD: common.c,v 1.8 2019/08/08 13:50:56 christos Exp $");
#include "portable.h"
Index: src/external/bsd/openldap/dist/include/Makefile.in
diff -u src/external/bsd/openldap/dist/include/Makefile.in:1.7 src/external/bsd/openldap/dist/include/Makefile.in:1.8
--- src/external/bsd/openldap/dist/include/Makefile.in:1.7 Mon Feb 5 20:57:23 2018
+++ src/external/bsd/openldap/dist/include/Makefile.in Thu Aug 8 09:50:57 2019
@@ -2,7 +2,7 @@
# $OpenLDAP$
## This work is part of OpenLDAP Software <http://www.openldap.org/>.
##
-## Copyright 1998-2017 The OpenLDAP Foundation.
+## Copyright 1998-2019 The OpenLDAP Foundation.
## All rights reserved.
##
## Redistribution and use in source and binary forms, with or without
@@ -21,7 +21,7 @@ install-local: FORCE
$(srcdir)/ldap.h $(srcdir)/ldap_cdefs.h \
$(srcdir)/ldap_schema.h $(srcdir)/ldap_utf8.h \
$(srcdir)/slapi-plugin.h ldap_features.h \
- $(srcdir)/ldif.h ; \
+ $(srcdir)/ldif.h $(srcdir)/openldap.h ; \
do \
$(INSTALL) $(INSTALLFLAGS) -m 644 $$header $(DESTDIR)$(includedir); \
done
Index: src/external/bsd/openldap/dist/include/portable.hin
diff -u src/external/bsd/openldap/dist/include/portable.hin:1.7 src/external/bsd/openldap/dist/include/portable.hin:1.8
--- src/external/bsd/openldap/dist/include/portable.hin:1.7 Mon Feb 5 20:57:23 2018
+++ src/external/bsd/openldap/dist/include/portable.hin Thu Aug 8 09:50:57 2019
@@ -4,7 +4,7 @@
/* begin of portable.h.pre */
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
*
- * Copyright 1998-2017 The OpenLDAP Foundation
+ * Copyright 1998-2019 The OpenLDAP Foundation
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -1006,7 +1006,7 @@
/* define for Referential Integrity overlay */
#undef SLAPD_OVER_REFINT
-/* define for Referential Integrity overlay */
+/* define for Return Code Integrity overlay */
#undef SLAPD_OVER_RETCODE
/* define for Rewrite/Remap overlay */
Index: src/external/bsd/openldap/dist/include/ldap_pvt.h
diff -u src/external/bsd/openldap/dist/include/ldap_pvt.h:1.1.1.7 src/external/bsd/openldap/dist/include/ldap_pvt.h:1.2
--- src/external/bsd/openldap/dist/include/ldap_pvt.h:1.1.1.7 Thu Aug 8 09:31:03 2019
+++ src/external/bsd/openldap/dist/include/ldap_pvt.h Thu Aug 8 09:50:57 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: ldap_pvt.h,v 1.1.1.7 2019/08/08 13:31:03 christos Exp $ */
+/* $NetBSD: ldap_pvt.h,v 1.2 2019/08/08 13:50:57 christos Exp $ */
/* $OpenLDAP$ */
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
@@ -270,6 +270,9 @@ struct sockbuf; /* avoid pulling in <lbe
LDAP_F (int) ldap_pvt_sasl_install LDAP_P(( struct sockbuf *, void * ));
LDAP_F (void) ldap_pvt_sasl_remove LDAP_P(( struct sockbuf * ));
+LDAP_F (int) ldap_pvt_tls_check_hostname LDAP_P(( LDAP *, void *, const char *));
+
+
/*
* SASL encryption support for LBER Sockbufs
*/
Index: src/external/bsd/openldap/dist/include/ldap_queue.h
diff -u src/external/bsd/openldap/dist/include/ldap_queue.h:1.5 src/external/bsd/openldap/dist/include/ldap_queue.h:1.6
--- src/external/bsd/openldap/dist/include/ldap_queue.h:1.5 Mon Feb 5 20:57:23 2018
+++ src/external/bsd/openldap/dist/include/ldap_queue.h Thu Aug 8 09:50:57 2019
@@ -1,10 +1,10 @@
-/* $NetBSD: ldap_queue.h,v 1.5 2018/02/06 01:57:23 christos Exp $ */
+/* $NetBSD: ldap_queue.h,v 1.6 2019/08/08 13:50:57 christos Exp $ */
/* ldap_queue.h -- queue macros */
/* $OpenLDAP$ */
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
*
- * Copyright 2001-2017 The OpenLDAP Foundation.
+ * Copyright 2001-2019 The OpenLDAP Foundation.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
Index: src/external/bsd/openldap/dist/libraries/libldap/os-ip.c
diff -u src/external/bsd/openldap/dist/libraries/libldap/os-ip.c:1.8 src/external/bsd/openldap/dist/libraries/libldap/os-ip.c:1.9
--- src/external/bsd/openldap/dist/libraries/libldap/os-ip.c:1.8 Mon Feb 5 20:57:23 2018
+++ src/external/bsd/openldap/dist/libraries/libldap/os-ip.c Thu Aug 8 09:50:57 2019
@@ -1,10 +1,10 @@
-/* $NetBSD: os-ip.c,v 1.8 2018/02/06 01:57:23 christos Exp $ */
+/* $NetBSD: os-ip.c,v 1.9 2019/08/08 13:50:57 christos Exp $ */
/* os-ip.c -- platform-specific TCP & UDP related code */
/* $OpenLDAP$ */
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
*
- * Copyright 1998-2017 The OpenLDAP Foundation.
+ * Copyright 1998-2019 The OpenLDAP Foundation.
* Portions Copyright 1999 Lars Uffmann.
* All rights reserved.
*
@@ -24,7 +24,7 @@
*/
#include <sys/cdefs.h>
-__RCSID("$NetBSD: os-ip.c,v 1.8 2018/02/06 01:57:23 christos Exp $");
+__RCSID("$NetBSD: os-ip.c,v 1.9 2019/08/08 13:50:57 christos Exp $");
#include "portable.h"
@@ -448,7 +448,7 @@ ldap_pvt_connect(LDAP *ld, ber_socket_t
if ( connect(s, sin, addrlen) != AC_SOCKET_ERROR ) {
osip_debug(ld, "connect success\n", 0, 0, 0);
- if ( opt_tv && ldap_pvt_ndelay_off(ld, s) == -1 )
+ if ( !async && opt_tv && ldap_pvt_ndelay_off(ld, s) == -1 )
return ( -1 );
return ( 0 );
}
@@ -628,6 +628,9 @@ ldap_connect_to_host(LDAP *ld, Sockbuf *
continue;
}
+#ifndef LDAP_PF_INET6
+ if ( sai->ai_family == AF_INET6 ) continue;
+#endif
/* we assume AF_x and PF_x are equal for all x */
s = ldap_int_socket( ld, sai->ai_family, socktype );
if ( s == AC_SOCKET_INVALID ) {
Index: src/external/bsd/openldap/dist/libraries/libldap/os-local.c
diff -u src/external/bsd/openldap/dist/libraries/libldap/os-local.c:1.9 src/external/bsd/openldap/dist/libraries/libldap/os-local.c:1.10
--- src/external/bsd/openldap/dist/libraries/libldap/os-local.c:1.9 Mon Feb 5 20:57:23 2018
+++ src/external/bsd/openldap/dist/libraries/libldap/os-local.c Thu Aug 8 09:50:57 2019
@@ -1,10 +1,10 @@
-/* $NetBSD: os-local.c,v 1.9 2018/02/06 01:57:23 christos Exp $ */
+/* $NetBSD: os-local.c,v 1.10 2019/08/08 13:50:57 christos Exp $ */
/* os-local.c -- platform-specific domain socket code */
/* $OpenLDAP$ */
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
*
- * Copyright 1998-2017 The OpenLDAP Foundation.
+ * Copyright 1998-2019 The OpenLDAP Foundation.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -26,7 +26,7 @@
*/
#include <sys/cdefs.h>
-__RCSID("$NetBSD: os-local.c,v 1.9 2018/02/06 01:57:23 christos Exp $");
+__RCSID("$NetBSD: os-local.c,v 1.10 2019/08/08 13:50:57 christos Exp $");
#include "portable.h"
@@ -114,7 +114,7 @@ ldap_pvt_close_socket(LDAP *ld, int s)
#define TRACE do { \
char ebuf[128]; \
oslocal_debug(ld, \
- "ldap_is_socket_ready: errror on socket %d: errno: %d (%s)\n", \
+ "ldap_is_socket_ready: error on socket %d: errno: %d (%s)\n", \
s, \
errno, \
AC_STRERROR_R(errno, ebuf, sizeof ebuf)); \
@@ -364,5 +364,5 @@ ldap_connect_to_path(LDAP *ld, Sockbuf *
return rc;
}
#else
-static int dummy;
+static int dummy; /* generate also a warning: 'dummy' defined but not used (at least here) */
#endif /* LDAP_PF_LOCAL */
Index: src/external/bsd/openldap/dist/libraries/libldap/tls_o.c
diff -u src/external/bsd/openldap/dist/libraries/libldap/tls_o.c:1.6 src/external/bsd/openldap/dist/libraries/libldap/tls_o.c:1.7
--- src/external/bsd/openldap/dist/libraries/libldap/tls_o.c:1.6 Mon Feb 5 20:57:23 2018
+++ src/external/bsd/openldap/dist/libraries/libldap/tls_o.c Thu Aug 8 09:50:57 2019
@@ -1,10 +1,10 @@
-/* $NetBSD: tls_o.c,v 1.6 2018/02/06 01:57:23 christos Exp $ */
+/* $NetBSD: tls_o.c,v 1.7 2019/08/08 13:50:57 christos Exp $ */
/* tls_o.c - Handle tls/ssl using OpenSSL */
/* $OpenLDAP$ */
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
*
- * Copyright 2008-2017 The OpenLDAP Foundation.
+ * Copyright 2008-2019 The OpenLDAP Foundation.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -19,7 +19,7 @@
*/
#include <sys/cdefs.h>
-__RCSID("$NetBSD: tls_o.c,v 1.6 2018/02/06 01:57:23 christos Exp $");
+__RCSID("$NetBSD: tls_o.c,v 1.7 2019/08/08 13:50:57 christos Exp $");
#include "portable.h"
@@ -48,6 +48,9 @@ __RCSID("$NetBSD: tls_o.c,v 1.6 2018/02/
#include <openssl/err.h>
#include <openssl/rand.h>
#include <openssl/safestack.h>
+#include <openssl/bn.h>
+#include <openssl/rsa.h>
+#include <openssl/dh.h>
#elif defined( HAVE_SSL_H )
#include <ssl.h>
#endif
@@ -59,6 +62,9 @@ __RCSID("$NetBSD: tls_o.c,v 1.6 2018/02/
typedef SSL_CTX tlso_ctx;
typedef SSL tlso_session;
+static BIO_METHOD * tlso_bio_method = NULL;
+static BIO_METHOD * tlso_bio_setup( void );
+
static int tlso_opt_trace = 1;
static void tlso_report_error( void );
@@ -88,6 +94,13 @@ static void tlso_locking_cb( int mode, i
}
}
+#if OPENSSL_VERSION_NUMBER >= 0x0909000
+static void tlso_thread_self( CRYPTO_THREADID *id )
+{
+ CRYPTO_THREADID_set_pointer( id, (void *)ldap_pvt_thread_self() );
+}
+#define CRYPTO_set_id_callback(foo) CRYPTO_THREADID_set_callback(foo)
+#else
static unsigned long tlso_thread_self( void )
{
/* FIXME: CRYPTO_set_id_callback only works when ldap_pvt_thread_t
@@ -100,6 +113,7 @@ static unsigned long tlso_thread_self( v
return (unsigned long) ldap_pvt_thread_self();
}
+#endif
static void tlso_thr_init( void )
{
@@ -118,6 +132,43 @@ static void tlso_thr_init( void ) {}
#endif
#endif /* OpenSSL 1.1 */
+#if OPENSSL_VERSION_NUMBER < 0x10100000
+/*
+ * OpenSSL 1.1 API and later makes the BIO method concrete types internal.
+ */
+
+static BIO_METHOD *
+BIO_meth_new( int type, const char *name )
+{
+ BIO_METHOD *method = LDAP_MALLOC( sizeof(BIO_METHOD) );
+ memset( method, 0, sizeof(BIO_METHOD) );
+
+ method->type = type;
+ method->name = name;
+
+ return method;
+}
+
+static void
+BIO_meth_free( BIO_METHOD *meth )
+{
+ if ( meth == NULL ) {
+ return;
+ }
+
+ LDAP_FREE( meth );
+}
+
+#define BIO_meth_set_write(m, f) (m)->bwrite = (f)
+#define BIO_meth_set_read(m, f) (m)->bread = (f)
+#define BIO_meth_set_puts(m, f) (m)->bputs = (f)
+#define BIO_meth_set_gets(m, f) (m)->bgets = (f)
+#define BIO_meth_set_ctrl(m, f) (m)->ctrl = (f)
+#define BIO_meth_set_create(m, f) (m)->create = (f)
+#define BIO_meth_set_destroy(m, f) (m)->destroy = (f)
+
+#endif /* OpenSSL 1.1 */
+
static STACK_OF(X509_NAME) *
tlso_ca_list( char * bundle, char * dir )
{
@@ -173,6 +224,8 @@ tlso_init( void )
/* FIXME: mod_ssl does this */
X509V3_add_standard_extensions();
+ tlso_bio_method = tlso_bio_setup();
+
return 0;
}
@@ -184,6 +237,8 @@ tlso_destroy( void )
{
struct ldapoptions *lo = LDAP_INT_GLOBAL_OPT();
+ BIO_meth_free( tlso_bio_method );
+
#if OPENSSL_VERSION_NUMBER < 0x10100000
EVP_cleanup();
#if OPENSSL_VERSION_NUMBER < 0x10000000
@@ -332,10 +387,9 @@ tlso_ctx_init( struct ldapoptions *lo, s
return -1;
}
- if ( lo->ldo_tls_dhfile ) {
- DH *dh = NULL;
+ if ( is_server && lo->ldo_tls_dhfile ) {
+ DH *dh;
BIO *bio;
- SSL_CTX_set_options( ctx, SSL_OP_SINGLE_DH_USE );
if (( bio=BIO_new_file( lt->lt_dhfile,"r" )) == NULL ) {
Debug( LDAP_DEBUG_ANY,
@@ -354,6 +408,38 @@ tlso_ctx_init( struct ldapoptions *lo, s
}
BIO_free( bio );
SSL_CTX_set_tmp_dh( ctx, dh );
+ SSL_CTX_set_options( ctx, SSL_OP_SINGLE_DH_USE );
+ DH_free( dh );
+ }
+
+ if ( is_server && lo->ldo_tls_ecname ) {
+#ifdef OPENSSL_NO_EC
+ Debug( LDAP_DEBUG_ANY,
+ "TLS: Elliptic Curves not supported.\n", 0,0,0 );
+ return -1;
+#else
+ EC_KEY *ecdh;
+
+ int nid = OBJ_sn2nid( lt->lt_ecname );
+ if ( nid == NID_undef ) {
+ Debug( LDAP_DEBUG_ANY,
+ "TLS: could not use EC name `%s'.\n",
+ lo->ldo_tls_ecname,0,0);
+ tlso_report_error();
+ return -1;
+ }
+ ecdh = EC_KEY_new_by_curve_name( nid );
+ if ( ecdh == NULL ) {
+ Debug( LDAP_DEBUG_ANY,
+ "TLS: could not generate key for EC name `%s'.\n",
+ lo->ldo_tls_ecname,0,0);
+ tlso_report_error();
+ return -1;
+ }
+ SSL_CTX_set_tmp_ecdh( ctx, ecdh );
+ SSL_CTX_set_options( ctx, SSL_OP_SINGLE_ECDH_USE );
+ EC_KEY_free( ecdh );
+#endif
}
if ( tlso_opt_trace ) {
@@ -402,7 +488,20 @@ tlso_session_connect( LDAP *ld, tls_sess
tlso_session *s = (tlso_session *)sess;
/* Caller expects 0 = success, OpenSSL returns 1 = success */
- return SSL_connect( s ) - 1;
+ int rc = SSL_connect( s ) - 1;
+#ifdef LDAP_USE_NON_BLOCKING_TLS
+ if ( rc < 0 ) {
+ int sockerr = sock_errno();
+ int sslerr = SSL_get_error( s, rc+1 );
+ if ( sslerr == SSL_ERROR_WANT_READ || sslerr == SSL_ERROR_WANT_WRITE ) {
+ rc = 0;
+ } else if ( sslerr == SSL_ERROR_SYSCALL &&
+ ( sockerr == EAGAIN || sockerr == ENOTCONN )) {
+ rc = 0;
+ }
+ }
+#endif /* LDAP_USE_NON_BLOCKING_TLS */
+ return rc;
}
static int
@@ -827,33 +926,21 @@ tlso_bio_puts( BIO *b, const char *str )
return tlso_bio_write( b, str, strlen( str ) );
}
-#if OPENSSL_VERSION_NUMBER >= 0x10100000
-struct bio_method_st {
- int type;
- const char *name;
- int (*bwrite) (BIO *, const char *, int);
- int (*bread) (BIO *, char *, int);
- int (*bputs) (BIO *, const char *);
- int (*bgets) (BIO *, char *, int);
- long (*ctrl) (BIO *, int, long, void *);
- int (*create) (BIO *);
- int (*destroy) (BIO *);
- long (*callback_ctrl) (BIO *, int, bio_info_cb *);
-};
-#endif
-
-static BIO_METHOD tlso_bio_method =
+static BIO_METHOD *
+tlso_bio_setup( void )
{
- ( 100 | 0x400 ), /* it's a source/sink BIO */
- "sockbuf glue",
- tlso_bio_write,
- tlso_bio_read,
- tlso_bio_puts,
- tlso_bio_gets,
- tlso_bio_ctrl,
- tlso_bio_create,
- tlso_bio_destroy
-};
+ /* it's a source/sink BIO */
+ BIO_METHOD * method = BIO_meth_new( 100 | 0x400, "sockbuf glue" );
+ BIO_meth_set_write( method, tlso_bio_write );
+ BIO_meth_set_read( method, tlso_bio_read );
+ BIO_meth_set_puts( method, tlso_bio_puts );
+ BIO_meth_set_gets( method, tlso_bio_gets );
+ BIO_meth_set_ctrl( method, tlso_bio_ctrl );
+ BIO_meth_set_create( method, tlso_bio_create );
+ BIO_meth_set_destroy( method, tlso_bio_destroy );
+
+ return method;
+}
static int
tlso_sb_setup( Sockbuf_IO_Desc *sbiod, void *arg )
@@ -870,7 +957,7 @@ tlso_sb_setup( Sockbuf_IO_Desc *sbiod, v
p->session = arg;
p->sbiod = sbiod;
- bio = BIO_new( &tlso_bio_method );
+ bio = BIO_new( tlso_bio_method );
BIO_set_data( bio, p );
SSL_set_bio( p->session, bio, bio );
sbiod->sbiod_pvt = p;
@@ -1191,11 +1278,13 @@ tlso_seed_PRNG( const char *randfile )
* The fact is that when $HOME is NULL, .rnd is used.
*/
randfile = RAND_file_name( buffer, sizeof( buffer ) );
-
- } else if (RAND_egd(randfile) > 0) {
+ }
+#ifndef OPENSSL_NO_EGD
+ else if (RAND_egd(randfile) > 0) {
/* EGD socket */
return 0;
}
+#endif
if (randfile == NULL) {
Debug( LDAP_DEBUG_ANY,
Index: src/external/bsd/openldap/dist/libraries/liblutil/detach.c
diff -u src/external/bsd/openldap/dist/libraries/liblutil/detach.c:1.5 src/external/bsd/openldap/dist/libraries/liblutil/detach.c:1.6
--- src/external/bsd/openldap/dist/libraries/liblutil/detach.c:1.5 Mon Feb 5 20:57:23 2018
+++ src/external/bsd/openldap/dist/libraries/liblutil/detach.c Thu Aug 8 09:50:57 2019
@@ -1,10 +1,10 @@
-/* $NetBSD: detach.c,v 1.5 2018/02/06 01:57:23 christos Exp $ */
+/* $NetBSD: detach.c,v 1.6 2019/08/08 13:50:57 christos Exp $ */
/* detach.c -- routines to daemonize a process */
/* $OpenLDAP$ */
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
*
- * Copyright 1998-2017 The OpenLDAP Foundation.
+ * Copyright 1998-2019 The OpenLDAP Foundation.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -31,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__RCSID("$NetBSD: detach.c,v 1.5 2018/02/06 01:57:23 christos Exp $");
+__RCSID("$NetBSD: detach.c,v 1.6 2019/08/08 13:50:57 christos Exp $");
#include "portable.h"
Index: src/external/bsd/openldap/dist/libraries/liblutil/md5.c
diff -u src/external/bsd/openldap/dist/libraries/liblutil/md5.c:1.5 src/external/bsd/openldap/dist/libraries/liblutil/md5.c:1.6
--- src/external/bsd/openldap/dist/libraries/liblutil/md5.c:1.5 Mon Feb 5 20:57:23 2018
+++ src/external/bsd/openldap/dist/libraries/liblutil/md5.c Thu Aug 8 09:50:57 2019
@@ -1,10 +1,10 @@
-/* $NetBSD: md5.c,v 1.5 2018/02/06 01:57:23 christos Exp $ */
+/* $NetBSD: md5.c,v 1.6 2019/08/08 13:50:57 christos Exp $ */
/* md5.c -- MD5 message-digest algorithm */
/* $OpenLDAP$ */
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
*
- * Copyright 1998-2017 The OpenLDAP Foundation.
+ * Copyright 1998-2019 The OpenLDAP Foundation.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -46,7 +46,7 @@
public domain. */
#include <sys/cdefs.h>
-__RCSID("$NetBSD: md5.c,v 1.5 2018/02/06 01:57:23 christos Exp $");
+__RCSID("$NetBSD: md5.c,v 1.6 2019/08/08 13:50:57 christos Exp $");
#include "portable.h"
Index: src/external/bsd/openldap/dist/libraries/liblutil/passwd.c
diff -u src/external/bsd/openldap/dist/libraries/liblutil/passwd.c:1.6 src/external/bsd/openldap/dist/libraries/liblutil/passwd.c:1.7
--- src/external/bsd/openldap/dist/libraries/liblutil/passwd.c:1.6 Mon Feb 5 20:57:23 2018
+++ src/external/bsd/openldap/dist/libraries/liblutil/passwd.c Thu Aug 8 09:50:57 2019
@@ -1,9 +1,9 @@
-/* $NetBSD: passwd.c,v 1.6 2018/02/06 01:57:23 christos Exp $ */
+/* $NetBSD: passwd.c,v 1.7 2019/08/08 13:50:57 christos Exp $ */
/* $OpenLDAP$ */
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
*
- * Copyright 1998-2017 The OpenLDAP Foundation.
+ * Copyright 1998-2019 The OpenLDAP Foundation.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -29,7 +29,7 @@
*/
#include <sys/cdefs.h>
-__RCSID("$NetBSD: passwd.c,v 1.6 2018/02/06 01:57:23 christos Exp $");
+__RCSID("$NetBSD: passwd.c,v 1.7 2019/08/08 13:50:57 christos Exp $");
#include "portable.h"
Index: src/external/bsd/openldap/dist/libraries/librewrite/session.c
diff -u src/external/bsd/openldap/dist/libraries/librewrite/session.c:1.4 src/external/bsd/openldap/dist/libraries/librewrite/session.c:1.5
--- src/external/bsd/openldap/dist/libraries/librewrite/session.c:1.4 Mon Feb 5 20:57:23 2018
+++ src/external/bsd/openldap/dist/libraries/librewrite/session.c Thu Aug 8 09:50:57 2019
@@ -1,9 +1,9 @@
-/* $NetBSD: session.c,v 1.4 2018/02/06 01:57:23 christos Exp $ */
+/* $NetBSD: session.c,v 1.5 2019/08/08 13:50:57 christos Exp $ */
/* $OpenLDAP$ */
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
*
- * Copyright 2000-2017 The OpenLDAP Foundation.
+ * Copyright 2000-2019 The OpenLDAP Foundation.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
Index: src/external/bsd/openldap/dist/servers/slapd/filter.c
diff -u src/external/bsd/openldap/dist/servers/slapd/filter.c:1.5 src/external/bsd/openldap/dist/servers/slapd/filter.c:1.6
--- src/external/bsd/openldap/dist/servers/slapd/filter.c:1.5 Mon Feb 5 20:57:23 2018
+++ src/external/bsd/openldap/dist/servers/slapd/filter.c Thu Aug 8 09:50:57 2019
@@ -1,10 +1,10 @@
-/* $NetBSD: filter.c,v 1.5 2018/02/06 01:57:23 christos Exp $ */
+/* $NetBSD: filter.c,v 1.6 2019/08/08 13:50:57 christos Exp $ */
/* filter.c - routines for parsing and dealing with filters */
/* $OpenLDAP$ */
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
*
- * Copyright 1998-2017 The OpenLDAP Foundation.
+ * Copyright 1998-2019 The OpenLDAP Foundation.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__RCSID("$NetBSD: filter.c,v 1.5 2018/02/06 01:57:23 christos Exp $");
+__RCSID("$NetBSD: filter.c,v 1.6 2019/08/08 13:50:57 christos Exp $");
#include "portable.h"
Index: src/external/bsd/openldap/dist/servers/slapd/overlays/deref.c
diff -u src/external/bsd/openldap/dist/servers/slapd/overlays/deref.c:1.4 src/external/bsd/openldap/dist/servers/slapd/overlays/deref.c:1.5
--- src/external/bsd/openldap/dist/servers/slapd/overlays/deref.c:1.4 Mon Feb 5 20:57:23 2018
+++ src/external/bsd/openldap/dist/servers/slapd/overlays/deref.c Thu Aug 8 09:50:57 2019
@@ -1,10 +1,10 @@
-/* $NetBSD: deref.c,v 1.4 2018/02/06 01:57:23 christos Exp $ */
+/* $NetBSD: deref.c,v 1.5 2019/08/08 13:50:57 christos Exp $ */
/* deref.c - dereference overlay */
/* $OpenLDAP$ */
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
*
- * Copyright 1998-2017 The OpenLDAP Foundation.
+ * Copyright 1998-2019 The OpenLDAP Foundation.
* Portions Copyright 2008 Pierangelo Masarati.
* All rights reserved.
*
@@ -22,7 +22,7 @@
*/
#include <sys/cdefs.h>
-__RCSID("$NetBSD: deref.c,v 1.4 2018/02/06 01:57:23 christos Exp $");
+__RCSID("$NetBSD: deref.c,v 1.5 2019/08/08 13:50:57 christos Exp $");
#include "portable.h"
Index: src/external/bsd/openldap/include/ldap_features.h
diff -u src/external/bsd/openldap/include/ldap_features.h:1.5 src/external/bsd/openldap/include/ldap_features.h:1.6
--- src/external/bsd/openldap/include/ldap_features.h:1.5 Wed May 28 07:09:18 2014
+++ src/external/bsd/openldap/include/ldap_features.h Thu Aug 8 09:50:57 2019
@@ -22,10 +22,10 @@
#define _LDAP_FEATURES_H 1
/* OpenLDAP API version macros */
-#define LDAP_VENDOR_VERSION 20439
+#define LDAP_VENDOR_VERSION 20448
#define LDAP_VENDOR_VERSION_MAJOR 2
#define LDAP_VENDOR_VERSION_MINOR 4
-#define LDAP_VENDOR_VERSION_PATCH 39
+#define LDAP_VENDOR_VERSION_PATCH 48
/*
** WORK IN PROGRESS!
Index: src/external/bsd/openldap/include/portable.h
diff -u src/external/bsd/openldap/include/portable.h:1.7 src/external/bsd/openldap/include/portable.h:1.8
--- src/external/bsd/openldap/include/portable.h:1.7 Thu Jan 12 18:03:49 2017
+++ src/external/bsd/openldap/include/portable.h Thu Aug 8 09:50:57 2019
@@ -5,7 +5,7 @@
/* begin of portable.h.pre */
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
*
- * Copyright 1998-2014 The OpenLDAP Foundation
+ * Copyright 1998-2019 The OpenLDAP Foundation
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -852,7 +852,7 @@
#define LDAP_SYSLOG 1
/* Version */
-#define LDAP_VENDOR_VERSION 20439
+#define LDAP_VENDOR_VERSION 20448
/* Major */
#define LDAP_VENDOR_VERSION_MAJOR 2
@@ -861,7 +861,7 @@
#define LDAP_VENDOR_VERSION_MINOR 4
/* Patch */
-#define LDAP_VENDOR_VERSION_PATCH 39
+#define LDAP_VENDOR_VERSION_PATCH 48
/* define if memcmp is not 8-bit clean or is otherwise broken */
/* #undef NEED_MEMCMP_REPLACEMENT */
@@ -876,7 +876,7 @@
#define OPENLDAP_PACKAGE "OpenLDAP"
/* Version */
-#define OPENLDAP_VERSION "2.4.39"
+#define OPENLDAP_VERSION "2.4.48"
/* Define to the address where bug reports for this package should be sent. */
#define PACKAGE_BUGREPORT ""