Merge branch 'v3-2-test' of ssh://jra@git.samba.org/data/git/samba into v3-2-test
[kai/samba.git] / source3 / winbindd / winbindd_async.c
index 0971476f440c04db23f2dd6545bf9185cc48d88a..ab32ee0c761d59bdbed61fdff201d847fb564c82 100644 (file)
@@ -175,7 +175,7 @@ static void lookupsid_recv(TALLOC_CTX *mem_ctx, bool success,
 
                ZERO_STRUCT(request);
                request.cmd = WINBINDD_LOOKUPSID;
-               sid_to_string(request.data.sid, &s->sid);
+               sid_to_fstring(request.data.sid, &s->sid);
 
                do_async_domain(mem_ctx, root_domain, &request, lookupsid_recv2,
                                (void *)cont, s);
@@ -209,7 +209,7 @@ void winbindd_lookupsid_async(TALLOC_CTX *mem_ctx, const DOM_SID *sid,
 
        ZERO_STRUCT(request);
        request.cmd = WINBINDD_LOOKUPSID;
-       sid_to_string(request.data.sid, sid);
+       sid_to_fstring(request.data.sid, sid);
 
        if ( (s = TALLOC_ZERO_P(mem_ctx, struct lookupsid_state)) == NULL ) {
                DEBUG(0, ("winbindd_lookupsid_async: talloc failed\n"));
@@ -443,7 +443,7 @@ enum winbindd_result winbindd_dual_lookupname(struct winbindd_domain *domain,
                return WINBINDD_ERROR;
        }
 
-       sid_to_string(state->response.data.sid.sid, &sid);
+       sid_to_fstring(state->response.data.sid.sid, &sid);
        state->response.data.sid.type = type;
 
        return WINBINDD_OK;
@@ -460,7 +460,7 @@ bool print_sidlist(TALLOC_CTX *mem_ctx, const DOM_SID *sids,
        for (i=0; i<num_sids; i++) {
                fstring tmp;
                sprintf_append(mem_ctx, result, len, &buflen,
-                              "%s\n", sid_to_string(tmp, &sids[i]));
+                              "%s\n", sid_to_fstring(tmp, &sids[i]));
        }
 
        if ((num_sids != 0) && (*result == NULL)) {
@@ -492,7 +492,9 @@ static bool parse_sidlist(TALLOC_CTX *mem_ctx, char *sidstr,
                        DEBUG(0, ("Could not parse sid %s\n", p));
                        return False;
                }
-               if (!add_sid_to_array(mem_ctx, &sid, sids, num_sids)) {
+               if (!NT_STATUS_IS_OK(add_sid_to_array(mem_ctx, &sid, sids,
+                                                     num_sids)))
+               {
                        return False;
                }
                p = q;
@@ -714,7 +716,9 @@ enum winbindd_result winbindd_dual_getsidaliases(struct winbindd_domain *domain,
                DEBUGADD(10, (" rid %d\n", alias_rids[i]));
                sid_copy(&sid, &domain->sid);
                sid_append_rid(&sid, alias_rids[i]);
-               if (!add_sid_to_array(state->mem_ctx, &sid, &sids, &num_sids)) {
+               result = add_sid_to_array(state->mem_ctx, &sid, &sids,
+                                         &num_sids);
+               if (!NT_STATUS_IS_OK(result)) {
                        return WINBINDD_ERROR;
                }
        }
@@ -796,7 +800,7 @@ void winbindd_gettoken_async(TALLOC_CTX *mem_ctx, const DOM_SID *user_sid,
 
        ZERO_STRUCT(request);
        request.cmd = WINBINDD_GETUSERDOMGROUPS;
-       sid_to_string(request.data.sid, user_sid);
+       sid_to_fstring(request.data.sid, user_sid);
 
        do_async_domain(mem_ctx, domain, &request, gettoken_recvdomgroups,
                        NULL, state);
@@ -832,8 +836,9 @@ static void gettoken_recvdomgroups(TALLOC_CTX *mem_ctx, bool success,
        state->sids = NULL;
        state->num_sids = 0;
 
-       if (!add_sid_to_array(mem_ctx, &state->user_sid, &state->sids,
-                        &state->num_sids)) {
+       if (!NT_STATUS_IS_OK(add_sid_to_array(mem_ctx, &state->user_sid,
+                                             &state->sids, &state->num_sids)))
+       {
                DEBUG(0, ("Out of memory\n"));
                state->cont(state->private_data, False, NULL, 0);
                return;
@@ -874,8 +879,11 @@ static void gettoken_recvaliases(void *private_data, bool success,
        }
 
        for (i=0; i<num_aliases; i++) {
-               if (!add_sid_to_array(state->mem_ctx, &aliases[i],
-                                &state->sids, &state->num_sids)) {
+               if (!NT_STATUS_IS_OK(add_sid_to_array(state->mem_ctx,
+                                                     &aliases[i],
+                                                     &state->sids,
+                                                     &state->num_sids)))
+               {
                        DEBUG(0, ("Out of memory\n"));
                        state->cont(state->private_data, False, NULL, 0);
                        return;
@@ -949,7 +957,7 @@ void query_user_async(TALLOC_CTX *mem_ctx, struct winbindd_domain *domain,
        struct winbindd_request request;
        ZERO_STRUCT(request);
        request.cmd = WINBINDD_DUAL_USERINFO;
-       sid_to_string(request.data.sid, sid);
+       sid_to_fstring(request.data.sid, sid);
        do_async_domain(mem_ctx, domain, &request, query_user_recv,
                        (void *)cont, private_data);
 }