diff options
Diffstat (limited to 'source3/winbindd/wb_sids2xids.c')
-rw-r--r-- | source3/winbindd/wb_sids2xids.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/source3/winbindd/wb_sids2xids.c b/source3/winbindd/wb_sids2xids.c index 76149743f0..e3962de269 100644 --- a/source3/winbindd/wb_sids2xids.c +++ b/source3/winbindd/wb_sids2xids.c @@ -253,7 +253,7 @@ static void wb_sids2xids_done(struct tevent_req *subreq) } NTSTATUS wb_sids2xids_recv(struct tevent_req *req, - struct unixid *xids) + struct unixid xids[], uint32_t num_xids) { struct wb_sids2xids_state *state = tevent_req_data( req, struct wb_sids2xids_state); @@ -265,6 +265,12 @@ NTSTATUS wb_sids2xids_recv(struct tevent_req *req, return status; } + if (num_xids != state->num_sids) { + DEBUG(1, ("%s: Have %u xids, caller wants %u\n", __func__, + (unsigned)state->num_sids, num_xids)); + return NT_STATUS_INTERNAL_ERROR; + } + num_non_cached = 0; for (i=0; i<state->num_sids; i++) { |