Ignore:
Timestamp:
Mar 11, 2009, 9:14:55 AM (16 years ago)
Author:
Paul Smedley
Message:

Add 'missing' 3.0.34 diffs

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/samba-3.0/source/nsswitch/winbindd_pam.c

    r140 r165  
    17631763        if (state->request.data.auth_crap.lm_resp_len > sizeof(state->request.data.auth_crap.lm_resp)
    17641764                || state->request.data.auth_crap.nt_resp_len > sizeof(state->request.data.auth_crap.nt_resp)) {
    1765                 DEBUG(0, ("winbindd_pam_auth_crap: invalid password length %u/%u\n",
    1766                           state->request.data.auth_crap.lm_resp_len,
    1767                           state->request.data.auth_crap.nt_resp_len));
    1768                 result = NT_STATUS_INVALID_PARAMETER;
    1769                 goto done;
     1765                if (!state->request.flags & WBFLAG_BIG_NTLMV2_BLOB ||
     1766                     state->request.extra_len != state->request.data.auth_crap.nt_resp_len) {
     1767                        DEBUG(0, ("winbindd_pam_auth_crap: invalid password length %u/%u\n",
     1768                                  state->request.data.auth_crap.lm_resp_len,
     1769                                  state->request.data.auth_crap.nt_resp_len));
     1770                                  result = NT_STATUS_INVALID_PARAMETER;
     1771                        goto done;
     1772                }
    17701773        }
    17711774
    17721775        lm_resp = data_blob_talloc(state->mem_ctx, state->request.data.auth_crap.lm_resp,
    17731776                                        state->request.data.auth_crap.lm_resp_len);
    1774         nt_resp = data_blob_talloc(state->mem_ctx, state->request.data.auth_crap.nt_resp,
    1775                                         state->request.data.auth_crap.nt_resp_len);
     1777        if (state->request.flags & WBFLAG_BIG_NTLMV2_BLOB) {
     1778                nt_resp = data_blob_talloc(state->mem_ctx,
     1779                                           state->request.extra_data.data,
     1780                                           state->request.data.auth_crap.nt_resp_len);
     1781        } else {
     1782                nt_resp = data_blob_talloc(state->mem_ctx,
     1783                                           state->request.data.auth_crap.nt_resp,
     1784                                           state->request.data.auth_crap.nt_resp_len);
     1785        }
    17761786
    17771787        /* what domain should we contact? */
Note: See TracChangeset for help on using the changeset viewer.