From: Luca Olivetti Date: Fri, 5 Feb 2016 11:02:51 +0000 (+0100) Subject: pdb: Fix segfault in pdb_ldap for missing gecos X-Git-Tag: tevent-0.9.27~67 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=5d759bd0d4bf7cae8b54b69af5ecacb7987c2a0f;p=thirdparty%2Fsamba.git pdb: Fix segfault in pdb_ldap for missing gecos Bug: https://bugzilla.samba.org/show_bug.cgi?id=11530 Signed-off-by: Luca Olivetti Reviewed-by: Volker Lendecke Reviewed-by: Alexander Bokovoy Autobuild-User(master): Volker Lendecke Autobuild-Date(master): Fri Feb 5 16:47:00 CET 2016 on sn-devel-144 --- diff --git a/source3/passdb/pdb_ldap.c b/source3/passdb/pdb_ldap.c index c65fb0877a1..50ab3a7a03a 100644 --- a/source3/passdb/pdb_ldap.c +++ b/source3/passdb/pdb_ldap.c @@ -1005,7 +1005,7 @@ static bool init_sam_from_ldap(struct ldapsam_privates *ldap_state, entry, "gecos", ctx); - if (unix_pw.pw_gecos) { + if (unix_pw.pw_gecos == NULL) { unix_pw.pw_gecos = fullname; } unix_pw.pw_dir = smbldap_talloc_single_attribute( @@ -1013,7 +1013,7 @@ static bool init_sam_from_ldap(struct ldapsam_privates *ldap_state, entry, "homeDirectory", ctx); - if (unix_pw.pw_dir) { + if (unix_pw.pw_dir == NULL) { unix_pw.pw_dir = discard_const_p(char, ""); } unix_pw.pw_shell = smbldap_talloc_single_attribute( @@ -1021,7 +1021,7 @@ static bool init_sam_from_ldap(struct ldapsam_privates *ldap_state, entry, "loginShell", ctx); - if (unix_pw.pw_shell) { + if (unix_pw.pw_shell == NULL) { unix_pw.pw_shell = discard_const_p(char, ""); }