The branch, master has been updated
       via  0045a919b46 libcli:auth: Avoid explicit ZERO_STRUCT
       via  b451168d72e auth:gensec: Make sure we zero the checksum after use
       via  e9ee003b9e1 libcli:smb: Zero sensitive memory after use
       via  a89b0f3f4c7 rpc_server: Use dom_sid_str_buf
       via  908ef16567c libnet: Use dom_sid_str_buf
       via  54d2e88fc7d dsdb: Align integer types
       via  071af60d745 audit_log: Use dom_sid_str_buf
       via  7d9b7604180 winbind: Avoid a "==False"
       via  e8efe16b3cb winbind: Fix an error path memleak
       via  d48aa9a56b3 winbind: Align integer types
       via  d83741091fa winbindd: Fix typos
       via  f5cd535bf22 libads: Align integer types
       via  258d7d1ca97 libads: Use dom_sid_str_buf
       via  8284ed9cc84 pdbtest: Use dom_sid_str_buf
       via  e3902283f22 addns: Remove some unused defines
      from  09d281d69b6 ldb: version 1.6.2

https://git.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 0045a919b46f55e631040833220f357079857b34
Author: Andreas Schneider <[email protected]>
Date:   Fri Oct 26 14:50:29 2018 +0200

    libcli:auth: Avoid explicit ZERO_STRUCT
    
    Signed-off-by: Andreas Schneider <[email protected]>
    Reviewed-by: Jeremy Allison <[email protected]>
    
    Autobuild-User(master): Jeremy Allison <[email protected]>
    Autobuild-Date(master): Wed Feb 27 03:22:50 CET 2019 on sn-devel-144

commit b451168d72ec0026dd4ce36a3f2913a5842ba84d
Author: Andreas Schneider <[email protected]>
Date:   Tue Oct 30 17:08:35 2018 +0100

    auth:gensec: Make sure we zero the checksum after use
    
    Signed-off-by: Andreas Schneider <[email protected]>
    Reviewed-by: Jeremy Allison <[email protected]>

commit e9ee003b9e157270a8499c88721943d49a505d7f
Author: Andreas Schneider <[email protected]>
Date:   Thu Oct 11 14:33:52 2018 +0200

    libcli:smb: Zero sensitive memory after use
    
    Signed-off-by: Andreas Schneider <[email protected]>
    Reviewed-by: Jeremy Allison <[email protected]>

commit a89b0f3f4c7b4049893588d0e8d29e3854836619
Author: Volker Lendecke <[email protected]>
Date:   Thu Jan 10 21:13:36 2019 +0100

    rpc_server: Use dom_sid_str_buf
    
    Signed-off-by: Volker Lendecke <[email protected]>
    Reviewed-by: Jeremy Allison <[email protected]>

commit 908ef16567c603be6e16b385c7ab0ba07d9e9eaa
Author: Volker Lendecke <[email protected]>
Date:   Mon Jan 7 21:03:06 2019 +0100

    libnet: Use dom_sid_str_buf
    
    Signed-off-by: Volker Lendecke <[email protected]>
    Reviewed-by: Jeremy Allison <[email protected]>

commit 54d2e88fc7d3a5a06954d5f95a2b6347fd973b56
Author: Volker Lendecke <[email protected]>
Date:   Thu Oct 25 21:29:29 2018 +0200

    dsdb: Align integer types
    
    Signed-off-by: Volker Lendecke <[email protected]>
    Reviewed-by: Jeremy Allison <[email protected]>

commit 071af60d745b64dec880e094aa6c4d2654526fc3
Author: Volker Lendecke <[email protected]>
Date:   Tue Jan 8 09:47:40 2019 +0100

    audit_log: Use dom_sid_str_buf
    
    Signed-off-by: Volker Lendecke <[email protected]>
    Reviewed-by: Jeremy Allison <[email protected]>

commit 7d9b760418057c372f8e17739613a30e6b756823
Author: Volker Lendecke <[email protected]>
Date:   Mon Nov 12 12:54:58 2018 +0100

    winbind: Avoid a "==False"
    
    Signed-off-by: Volker Lendecke <[email protected]>
    Reviewed-by: Jeremy Allison <[email protected]>

commit e8efe16b3cb1bb6a5bae3b684deea63c8b4e8102
Author: Volker Lendecke <[email protected]>
Date:   Mon Oct 15 08:32:33 2018 +0200

    winbind: Fix an error path memleak
    
    Signed-off-by: Volker Lendecke <[email protected]>
    Reviewed-by: Jeremy Allison <[email protected]>

commit d48aa9a56b39f598a30ea29ef4b090cd48503cb8
Author: Volker Lendecke <[email protected]>
Date:   Fri Nov 9 21:17:57 2018 +0100

    winbind: Align integer types
    
    Signed-off-by: Volker Lendecke <[email protected]>
    Reviewed-by: Jeremy Allison <[email protected]>

commit d83741091fad3cf343106900d328c09b12e18346
Author: Volker Lendecke <[email protected]>
Date:   Tue Oct 30 14:55:35 2018 +0100

    winbindd: Fix typos
    
    Signed-off-by: Volker Lendecke <[email protected]>
    Reviewed-by: Jeremy Allison <[email protected]>

commit f5cd535bf22ebff94eb19d903fef78d13d61486a
Author: Volker Lendecke <[email protected]>
Date:   Sat Jan 12 14:59:58 2019 +0100

    libads: Align integer types
    
    Signed-off-by: Volker Lendecke <[email protected]>
    Reviewed-by: Jeremy Allison <[email protected]>

commit 258d7d1ca97ffa1780400f463b0d93cb5ecb0f15
Author: Volker Lendecke <[email protected]>
Date:   Fri Nov 9 21:12:51 2018 +0100

    libads: Use dom_sid_str_buf
    
    Signed-off-by: Volker Lendecke <[email protected]>
    Reviewed-by: Jeremy Allison <[email protected]>

commit 8284ed9cc843ad07c9db5d113fef40919ed57ddc
Author: Volker Lendecke <[email protected]>
Date:   Thu Jan 10 21:04:33 2019 +0100

    pdbtest: Use dom_sid_str_buf
    
    Signed-off-by: Volker Lendecke <[email protected]>
    Reviewed-by: Jeremy Allison <[email protected]>

commit e3902283f226002add45bc3ad7033ccb46ee75ce
Author: Volker Lendecke <[email protected]>
Date:   Wed Jan 3 16:25:41 2018 +0100

    addns: Remove some unused defines
    
    Signed-off-by: Volker Lendecke <[email protected]>
    Reviewed-by: Jeremy Allison <[email protected]>

-----------------------------------------------------------------------

Summary of changes:
 auth/gensec/schannel.c                      |  2 ++
 lib/addns/dnsquery.c                        | 50 -----------------------------
 libcli/auth/credentials.c                   |  4 +--
 libcli/smb/smb2_signing.c                   |  4 +++
 source3/libads/ldap.c                       | 10 +++---
 source3/torture/pdbtest.c                   | 13 +++++---
 source3/winbindd/wb_dsgetdcname.c           |  1 +
 source3/winbindd/winbindd_ads.c             |  6 ++--
 source3/winbindd/winbindd_cm.c              |  6 ++--
 source4/dsdb/samdb/ldb_modules/audit_log.c  | 10 +++---
 source4/dsdb/samdb/ldb_modules/audit_util.c |  2 +-
 source4/libnet/libnet_samsync_ldb.c         | 40 +++++++++++++++--------
 source4/rpc_server/handles.c                |  7 ++--
 13 files changed, 64 insertions(+), 91 deletions(-)


Changeset truncated at 500 lines:

diff --git a/auth/gensec/schannel.c b/auth/gensec/schannel.c
index 364a0fcc186..441801bac47 100644
--- a/auth/gensec/schannel.c
+++ b/auth/gensec/schannel.c
@@ -347,6 +347,8 @@ static NTSTATUS netsec_incoming_packet(struct 
schannel_state *state,
 
        netsec_do_seq_num(state, checksum, checksum_length, seq_num);
 
+       ZERO_ARRAY(checksum);
+
        ret = memcmp(seq_num, sig->data+8, 8);
        if (ret != 0) {
                dump_data_pw("calc seq num:", seq_num, 8);
diff --git a/lib/addns/dnsquery.c b/lib/addns/dnsquery.c
index e5600367c4b..87ae97e3d0b 100644
--- a/lib/addns/dnsquery.c
+++ b/lib/addns/dnsquery.c
@@ -26,56 +26,6 @@
 #include "lib/util/tevent_ntstatus.h"
 #include "dnsquery.h"
 
-/* AIX resolv.h uses 'class' in struct ns_rr */
-
-#if defined(AIX)
-#  if defined(class)
-#    undef class
-#  endif
-#endif /* AIX */
-
-/* resolver headers */
-
-#include <sys/types.h>
-#include <netinet/in.h>
-#include <arpa/nameser.h>
-#include <resolv.h>
-#include <netdb.h>
-
-#define MAX_DNS_PACKET_SIZE 0xffff
-
-#ifdef NS_HFIXEDSZ     /* Bind 8/9 interface */
-#if !defined(C_IN)     /* AIX 5.3 already defines C_IN */
-#  define C_IN         ns_c_in
-#endif
-#if !defined(T_A)      /* AIX 5.3 already defines T_A */
-#  define T_A          ns_t_a
-#endif
-
-#if defined(HAVE_IPV6)
-#if !defined(T_AAAA)
-#  define T_AAAA       ns_t_aaaa
-#endif
-#endif
-
-#  define T_SRV        ns_t_srv
-#if !defined(T_NS)     /* AIX 5.3 already defines T_NS */
-#  define T_NS                 ns_t_ns
-#endif
-#else
-#  ifdef HFIXEDSZ
-#    define NS_HFIXEDSZ HFIXEDSZ
-#  else
-#    define NS_HFIXEDSZ sizeof(HEADER)
-#  endif       /* HFIXEDSZ */
-#  ifdef PACKETSZ
-#    define NS_PACKETSZ        PACKETSZ
-#  else        /* 512 is usually the default */
-#    define NS_PACKETSZ        512
-#  endif       /* PACKETSZ */
-#  define T_SRV        33
-#endif
-
 /*********************************************************************
  Sort SRV record list based on weight and priority.  See RFC 2782.
 *********************************************************************/
diff --git a/libcli/auth/credentials.c b/libcli/auth/credentials.c
index b6c8ba281ba..fcd5e34cc9b 100644
--- a/libcli/auth/credentials.c
+++ b/libcli/auth/credentials.c
@@ -76,14 +76,12 @@ static void netlogon_creds_init_128bit(struct 
netlogon_creds_CredentialState *cr
                                       const struct netr_Credential 
*server_challenge,
                                       const struct samr_Password 
*machine_password)
 {
-       unsigned char zero[4], tmp[16];
+       uint8_t zero[4] = {0}, tmp[16];
        HMACMD5Context ctx;
        MD5_CTX md5;
 
        ZERO_ARRAY(creds->session_key);
 
-       memset(zero, 0, sizeof(zero));
-
        hmac_md5_init_rfc2104(machine_password->hash, 
sizeof(machine_password->hash), &ctx);
        MD5Init(&md5);
        MD5Update(&md5, zero, sizeof(zero));
diff --git a/libcli/smb/smb2_signing.c b/libcli/smb/smb2_signing.c
index 614a2b32dc0..18f5911ad5e 100644
--- a/libcli/smb/smb2_signing.c
+++ b/libcli/smb/smb2_signing.c
@@ -76,6 +76,8 @@ NTSTATUS smb2_signing_sign_pdu(DATA_BLOB signing_key,
                                        vector[i].iov_len);
                }
                aes_cmac_128_final(&ctx, res);
+
+               ZERO_ARRAY(key);
        } else {
                struct HMACSHA256Context m;
                uint8_t digest[SHA256_DIGEST_LENGTH];
@@ -149,6 +151,8 @@ NTSTATUS smb2_signing_check_pdu(DATA_BLOB signing_key,
                                        vector[i].iov_len);
                }
                aes_cmac_128_final(&ctx, res);
+
+               ZERO_ARRAY(key);
        } else {
                struct HMACSHA256Context m;
                uint8_t digest[SHA256_DIGEST_LENGTH];
diff --git a/source3/libads/ldap.c b/source3/libads/ldap.c
index 6b5f271272a..728c821f32d 100644
--- a/source3/libads/ldap.c
+++ b/source3/libads/ldap.c
@@ -2229,8 +2229,9 @@ done:
 */
 static void dump_binary(ADS_STRUCT *ads, const char *field, struct berval 
**values)
 {
-       int i, j;
+       size_t i;
        for (i=0; values[i]; i++) {
+               ber_len_t j;
                printf("%s: ", field);
                for (j=0; j<values[i]->bv_len; j++) {
                        printf("%02X", (unsigned char)values[i]->bv_val[j]);
@@ -2264,12 +2265,12 @@ static void dump_sid(ADS_STRUCT *ads, const char 
*field, struct berval **values)
        int i;
        for (i=0; values[i]; i++) {
                struct dom_sid sid;
-               fstring tmp;
+               struct dom_sid_buf tmp;
                if (!sid_parse((const uint8_t *)values[i]->bv_val,
                               values[i]->bv_len, &sid)) {
                        return;
                }
-               printf("%s: %s\n", field, sid_to_fstring(tmp, &sid));
+               printf("%s: %s\n", field, dom_sid_str_buf(&sid, &tmp));
        }
 }
 
@@ -2540,8 +2541,7 @@ int ads_count_replies(ADS_STRUCT *ads, void *res)
 {
        char **values;
        char **ret = NULL;
-       int i;
-       size_t converted_size;
+       size_t i, converted_size;
 
        values = ldap_get_values(ads->ldap.ld, msg, field);
        if (!values)
diff --git a/source3/torture/pdbtest.c b/source3/torture/pdbtest.c
index 64bc45e6a7c..fdf72187b6c 100644
--- a/source3/torture/pdbtest.c
+++ b/source3/torture/pdbtest.c
@@ -358,9 +358,11 @@ static bool test_auth(TALLOC_CTX *mem_ctx, struct samu 
*pdb_entry)
        }
 
        if (!dom_sid_equal(info3_sam->base.domain_sid, 
info3_auth->base.domain_sid)) {
+               struct dom_sid_buf buf1, buf2;
                DEBUG(0, ("domain_sid in SAM info3 %s does not match domain_sid 
in AUTH info3 %s\n", 
-                         dom_sid_string(NULL, info3_sam->base.domain_sid),
-                         dom_sid_string(NULL, info3_auth->base.domain_sid)));
+                         dom_sid_str_buf(info3_sam->base.domain_sid, &buf1),
+                         dom_sid_str_buf(info3_auth->base.domain_sid,
+                                         &buf2)));
                return False;
        }
        
@@ -429,9 +431,12 @@ static bool test_auth(TALLOC_CTX *mem_ctx, struct samu 
*pdb_entry)
                }
 
                if (!dom_sid_equal(info3_sam->base.domain_sid, 
info6_wbc->base.domain_sid)) {
+                       struct dom_sid_buf buf1, buf2;
                        DEBUG(0, ("domain_sid in SAM info3 %s does not match 
domain_sid in AUTH info3 %s\n",
-                                 dom_sid_string(NULL, 
info3_sam->base.domain_sid),
-                                 dom_sid_string(NULL, 
info6_wbc->base.domain_sid)));
+                                 dom_sid_str_buf(info3_sam->base.domain_sid,
+                                                 &buf1),
+                                 dom_sid_str_buf(info6_wbc->base.domain_sid,
+                                                 &buf2)));
                        return false;
                }
        }
diff --git a/source3/winbindd/wb_dsgetdcname.c 
b/source3/winbindd/wb_dsgetdcname.c
index d2aaa8068ea..95a75a9cbc5 100644
--- a/source3/winbindd/wb_dsgetdcname.c
+++ b/source3/winbindd/wb_dsgetdcname.c
@@ -196,6 +196,7 @@ static void dcinfo_parser(const struct gencache_timeout 
*timeout,
        if (!NDR_ERR_CODE_IS_SUCCESS(ndr_err)) {
                DBG_ERR("ndr_pull_struct_blob failed\n");
                state->status = ndr_map_error2ntstatus(ndr_err);
+               TALLOC_FREE(state->dcinfo);
                return;
        }
 
diff --git a/source3/winbindd/winbindd_ads.c b/source3/winbindd/winbindd_ads.c
index 4076f8227cb..4b5966dc237 100644
--- a/source3/winbindd/winbindd_ads.c
+++ b/source3/winbindd/winbindd_ads.c
@@ -718,7 +718,7 @@ static NTSTATUS lookup_usergroups_memberof(struct 
winbindd_domain *domain,
        const char *attrs[] = {"memberOf", NULL};
        uint32_t num_groups = 0;
        struct dom_sid *group_sids = NULL;
-       int i;
+       size_t i;
        char **strings = NULL;
        size_t num_strings = 0, num_sids = 0;
 
@@ -1080,7 +1080,7 @@ static NTSTATUS lookup_groupmem(struct winbindd_domain 
*domain,
        NTSTATUS status = NT_STATUS_UNSUCCESSFUL;
        char *sidbinstr;
        char **members = NULL;
-       int i;
+       size_t i;
        size_t num_members = 0;
        ads_control args;
        struct dom_sid *sid_mem_nocache = NULL;
@@ -1390,7 +1390,7 @@ static NTSTATUS trusted_domains(struct winbindd_domain 
*domain,
 {
        NTSTATUS                result = NT_STATUS_UNSUCCESSFUL;
        WERROR werr;
-       int                     i;
+       uint32_t                i;
        uint32_t                flags;
        struct rpc_pipe_client *cli;
        int ret_count;
diff --git a/source3/winbindd/winbindd_cm.c b/source3/winbindd/winbindd_cm.c
index 22d3dcaa92b..b9a1c1eda7b 100644
--- a/source3/winbindd/winbindd_cm.c
+++ b/source3/winbindd/winbindd_cm.c
@@ -1166,7 +1166,7 @@ static NTSTATUS cm_prepare_connection(struct 
winbindd_domain *domain,
                  nt_errstr(result)));
 
        /*
-        * If we are not going to validiate the conneciton
+        * If we are not going to validate the connection
         * with SMB signing, then allow us to fall back to
         * anonymous
         */
@@ -1219,7 +1219,7 @@ static NTSTATUS cm_prepare_connection(struct 
winbindd_domain *domain,
                  nt_errstr(result)));
 
        /*
-        * If we are not going to validiate the conneciton
+        * If we are not going to validate the connection
         * with SMB signing, then allow us to fall back to
         * anonymous
         */
@@ -2149,7 +2149,7 @@ static bool connection_ok(struct winbindd_domain *domain)
                return False;
        }
 
-       if (domain->online == False) {
+       if (!domain->online) {
                DEBUG(3, ("connection_ok: Domain %s is offline\n", 
domain->name));
                return False;
        }
diff --git a/source4/dsdb/samdb/ldb_modules/audit_log.c 
b/source4/dsdb/samdb/ldb_modules/audit_log.c
index 28d824acfff..931147efc72 100644
--- a/source4/dsdb/samdb/ldb_modules/audit_log.c
+++ b/source4/dsdb/samdb/ldb_modules/audit_log.c
@@ -778,7 +778,7 @@ static char *password_change_human_readable(
        struct ldb_context *ldb = NULL;
        const char *remote_host = NULL;
        const struct dom_sid *sid = NULL;
-       const char *user_sid = NULL;
+       struct dom_sid_buf user_sid;
        const char *timestamp = NULL;
        char *log_entry = NULL;
        const char *action = NULL;
@@ -790,7 +790,6 @@ static char *password_change_human_readable(
 
        remote_host = dsdb_audit_get_remote_host(ldb, ctx);
        sid = dsdb_audit_get_user_sid(module);
-       user_sid = dom_sid_string(ctx, sid);
        timestamp = audit_get_timestamp(ctx);
        action = get_password_action(request, reply);
        dn = dsdb_audit_get_primary_dn(request);
@@ -803,7 +802,7 @@ static char *password_change_human_readable(
                timestamp,
                ldb_strerror(reply->error),
                remote_host,
-               user_sid,
+               dom_sid_str_buf(sid, &user_sid),
                dn);
        TALLOC_FREE(ctx);
        return log_entry;
@@ -930,7 +929,7 @@ static char *operation_human_readable(
        struct ldb_context *ldb = NULL;
        const char *remote_host = NULL;
        const struct dom_sid *sid = NULL;
-       const char *user_sid = NULL;
+       struct dom_sid_buf user_sid;
        const char *timestamp = NULL;
        const char *op_name = NULL;
        char *log_entry = NULL;
@@ -948,7 +947,6 @@ static char *operation_human_readable(
        } else {
                sid = dsdb_audit_get_user_sid(module);
        }
-       user_sid = dom_sid_string(ctx, sid);
        timestamp = audit_get_timestamp(ctx);
        op_name = dsdb_audit_get_operation_name(request);
        dn = dsdb_audit_get_primary_dn(request);
@@ -964,7 +962,7 @@ static char *operation_human_readable(
                timestamp,
                ldb_strerror(reply->error),
                remote_host,
-               user_sid,
+               dom_sid_str_buf(sid, &user_sid),
                dn);
        if (new_dn != NULL) {
                log_entry = talloc_asprintf_append_buffer(
diff --git a/source4/dsdb/samdb/ldb_modules/audit_util.c 
b/source4/dsdb/samdb/ldb_modules/audit_util.c
index edf3c5e4b46..f25102585f8 100644
--- a/source4/dsdb/samdb/ldb_modules/audit_util.c
+++ b/source4/dsdb/samdb/ldb_modules/audit_util.c
@@ -586,7 +586,7 @@ struct json_object dsdb_audit_attributes_json(
        const struct ldb_message* message)
 {
 
-       int i, j;
+       unsigned int i, j;
        struct json_object attributes = json_new_object();
 
        if (json_is_invalid(&attributes)) {
diff --git a/source4/libnet/libnet_samsync_ldb.c 
b/source4/libnet/libnet_samsync_ldb.c
index 3171138886c..68e9cd110a6 100644
--- a/source4/libnet/libnet_samsync_ldb.c
+++ b/source4/libnet/libnet_samsync_ldb.c
@@ -259,6 +259,7 @@ static NTSTATUS samsync_ldb_handle_user(TALLOC_CTX *mem_ctx,
        char *cn_name;
        int cn_name_len;
        const struct dom_sid *user_sid;
+       struct dom_sid_buf buf;
        struct ldb_message *msg;
        struct ldb_message **msgs;
        struct ldb_message **remote_msgs = NULL;
@@ -288,15 +289,19 @@ static NTSTATUS samsync_ldb_handle_user(TALLOC_CTX 
*mem_ctx,
                           ldap_encode_ndr_dom_sid(mem_ctx, user_sid));
 
        if (ret == -1) {
-               *error_string = talloc_asprintf(mem_ctx, "LDB for user %s 
failed: %s", 
-                                               dom_sid_string(mem_ctx, 
user_sid),
-                                               ldb_errstring(state->sam_ldb));
+               *error_string = talloc_asprintf(
+                       mem_ctx,
+                       "LDB for user %s failed: %s",
+                       dom_sid_str_buf(user_sid, &buf),
+                       ldb_errstring(state->sam_ldb));
                return NT_STATUS_INTERNAL_DB_CORRUPTION;
        } else if (ret == 0) {
                add = true;
        } else if (ret > 1) {
-               *error_string = talloc_asprintf(mem_ctx, "More than one user 
with SID: %s in local LDB", 
-                                               dom_sid_string(mem_ctx, 
user_sid));
+               *error_string = talloc_asprintf(
+                       mem_ctx,
+                       "More than one user with SID: %s in local LDB",
+                       dom_sid_str_buf(user_sid, &buf));
                return NT_STATUS_INTERNAL_DB_CORRUPTION;
        } else {
                msg->dn = msgs[0]->dn;
@@ -310,18 +315,27 @@ static NTSTATUS samsync_ldb_handle_user(TALLOC_CTX 
*mem_ctx,
                                   ldap_encode_ndr_dom_sid(mem_ctx, user_sid));
                
                if (ret == -1) {
-                       *error_string = talloc_asprintf(mem_ctx, "remote LDAP 
for user %s failed: %s", 
-                                                       dom_sid_string(mem_ctx, 
user_sid),
-                                                       
ldb_errstring(state->remote_ldb));
+                       *error_string = talloc_asprintf(
+                               mem_ctx,
+                               "remote LDAP for user %s failed: %s",
+                               dom_sid_str_buf(user_sid, &buf),
+                               ldb_errstring(state->remote_ldb));
                        return NT_STATUS_INTERNAL_DB_CORRUPTION;
                } else if (ret == 0) {
-                       *error_string = talloc_asprintf(mem_ctx, "User exists 
in samsync but not in remote LDAP domain! (base: %s, SID: %s)", 
-                                                       
ldb_dn_get_linearized(state->base_dn[database]),
-                                                       dom_sid_string(mem_ctx, 
user_sid));
+                       *error_string = talloc_asprintf(
+                               mem_ctx,
+                               "User exists in samsync but not in remote "
+                               "LDAP domain! (base: %s, SID: %s)",
+                               ldb_dn_get_linearized(
+                                       state->base_dn[database]),
+                               dom_sid_str_buf(user_sid, &buf));
                        return NT_STATUS_NO_SUCH_USER;
                } else if (ret > 1) {
-                       *error_string = talloc_asprintf(mem_ctx, "More than one 
user in remote LDAP domain with SID: %s", 
-                                                       dom_sid_string(mem_ctx, 
user_sid));
+                       *error_string = talloc_asprintf(
+                               mem_ctx,
+                               "More than one user in remote LDAP domain "
+                               "with SID: %s",
+                               dom_sid_str_buf(user_sid, &buf));
                        return NT_STATUS_INTERNAL_DB_CORRUPTION;
                        
                        /* Try to put things in the same location as the remote 
server */
diff --git a/source4/rpc_server/handles.c b/source4/rpc_server/handles.c
index 91bfaf9c62c..15d0c3d6e09 100644
--- a/source4/rpc_server/handles.c
+++ b/source4/rpc_server/handles.c
@@ -116,9 +116,10 @@ struct dcesrv_handle *dcesrv_handle_lookup(struct 
dcesrv_call_state *call,
                                return NULL;
                        }
                        if (!dom_sid_equal(h->sid, sid)) {
-                               DEBUG(0,(__location__ ": Attempt to use invalid 
sid %s - %s\n",
-                                        dom_sid_string(context, h->sid),
-                                        dom_sid_string(context, sid)));
+                               struct dom_sid_buf buf1, buf2;
+                               DBG_ERR("Attempt to use invalid sid %s - %s\n",
+                                       dom_sid_str_buf(h->sid, &buf1),
+                                       dom_sid_str_buf(sid, &buf2));
                                return NULL;
                        }
                        if (call->auth_state->auth_level < h->min_auth_level) {


-- 
Samba Shared Repository

Reply via email to