1 From d87f33bf42e3ee1ce47ea61fde809fe693eede87 Mon Sep 17 00:00:00 2001
2 From: babak sarashki <babak.sarashki@windriver.com>
3 Date: Sun, 3 Nov 2019 14:42:04 -0800
4 Subject: [PATCH 09/20] openldap syncrepl unset tls options
6 From Stx 1901: openldap-syncrepl-unset-tls-options.patch
8 allow unsetting of tls_* syncrepl options
10 Author: Patrick Monnerat <pm@datasphere.ch>
14 libraries/libldap/tls2.c | 16 ++++++++--------
15 1 file changed, 8 insertions(+), 8 deletions(-)
17 diff --git a/libraries/libldap/tls2.c b/libraries/libldap/tls2.c
18 index d25c190..46ccefa 100644
19 --- a/libraries/libldap/tls2.c
20 +++ b/libraries/libldap/tls2.c
21 @@ -747,27 +747,27 @@ ldap_pvt_tls_set_option( LDAP *ld, int option, void *arg )
23 case LDAP_OPT_X_TLS_CACERTFILE:
24 if ( lo->ldo_tls_cacertfile ) LDAP_FREE( lo->ldo_tls_cacertfile );
25 - lo->ldo_tls_cacertfile = arg ? LDAP_STRDUP( (char *) arg ) : NULL;
26 + lo->ldo_tls_cacertfile = (arg && *(char *)arg) ? LDAP_STRDUP( (char *) arg ) : NULL;
28 case LDAP_OPT_X_TLS_CACERTDIR:
29 if ( lo->ldo_tls_cacertdir ) LDAP_FREE( lo->ldo_tls_cacertdir );
30 - lo->ldo_tls_cacertdir = arg ? LDAP_STRDUP( (char *) arg ) : NULL;
31 + lo->ldo_tls_cacertdir = (arg && *(char *)arg) ? LDAP_STRDUP( (char *) arg ) : NULL;
33 case LDAP_OPT_X_TLS_CERTFILE:
34 if ( lo->ldo_tls_certfile ) LDAP_FREE( lo->ldo_tls_certfile );
35 - lo->ldo_tls_certfile = arg ? LDAP_STRDUP( (char *) arg ) : NULL;
36 + lo->ldo_tls_certfile = (arg && *(char *)arg) ? LDAP_STRDUP( (char *) arg ) : NULL;
38 case LDAP_OPT_X_TLS_KEYFILE:
39 if ( lo->ldo_tls_keyfile ) LDAP_FREE( lo->ldo_tls_keyfile );
40 - lo->ldo_tls_keyfile = arg ? LDAP_STRDUP( (char *) arg ) : NULL;
41 + lo->ldo_tls_keyfile = (arg && *(char *)arg) ? LDAP_STRDUP( (char *) arg ) : NULL;
43 case LDAP_OPT_X_TLS_DHFILE:
44 if ( lo->ldo_tls_dhfile ) LDAP_FREE( lo->ldo_tls_dhfile );
45 - lo->ldo_tls_dhfile = arg ? LDAP_STRDUP( (char *) arg ) : NULL;
46 + lo->ldo_tls_dhfile = (arg && *(char *)arg) ? LDAP_STRDUP( (char *) arg ) : NULL;
48 case LDAP_OPT_X_TLS_CRLFILE: /* GnuTLS only */
49 if ( lo->ldo_tls_crlfile ) LDAP_FREE( lo->ldo_tls_crlfile );
50 - lo->ldo_tls_crlfile = arg ? LDAP_STRDUP( (char *) arg ) : NULL;
51 + lo->ldo_tls_crlfile = (arg && *(char *)arg) ? LDAP_STRDUP( (char *) arg ) : NULL;
53 case LDAP_OPT_X_TLS_REQUIRE_CERT:
54 if ( !arg ) return -1;
55 @@ -795,7 +795,7 @@ ldap_pvt_tls_set_option( LDAP *ld, int option, void *arg )
57 case LDAP_OPT_X_TLS_CIPHER_SUITE:
58 if ( lo->ldo_tls_ciphersuite ) LDAP_FREE( lo->ldo_tls_ciphersuite );
59 - lo->ldo_tls_ciphersuite = arg ? LDAP_STRDUP( (char *) arg ) : NULL;
60 + lo->ldo_tls_ciphersuite = (arg && *(char *)arg) ? LDAP_STRDUP( (char *) arg ) : NULL;
63 case LDAP_OPT_X_TLS_PROTOCOL_MIN:
64 @@ -806,7 +806,7 @@ ldap_pvt_tls_set_option( LDAP *ld, int option, void *arg )
67 if ( lo->ldo_tls_randfile ) LDAP_FREE (lo->ldo_tls_randfile );
68 - lo->ldo_tls_randfile = arg ? LDAP_STRDUP( (char *) arg ) : NULL;
69 + lo->ldo_tls_randfile = (arg && *(char *)arg) ? LDAP_STRDUP( (char *) arg ) : NULL;
71 case LDAP_OPT_X_TLS_NEWCTX:
72 if ( !arg ) return -1;