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/utils/ntlm_auth.c

    r134 r165  
    351351
    352352        if (nt_response && nt_response->length) {
    353                 memcpy(request.data.auth_crap.nt_resp,
    354                        nt_response->data,
    355                        MIN(nt_response->length, sizeof(request.data.auth_crap.nt_resp)));
     353                if (nt_response->length > sizeof(request.data.auth_crap.nt_resp)) {
     354                        request.flags = request.flags | WBFLAG_BIG_NTLMV2_BLOB;
     355                        request.extra_len = nt_response->length;
     356                        request.extra_data.data = SMB_MALLOC_ARRAY(char, request.extra_len);
     357                        if (request.extra_data.data == NULL) {
     358                                return NT_STATUS_NO_MEMORY;
     359                        }
     360                        memcpy(request.extra_data.data, nt_response->data,
     361                               nt_response->length);
     362
     363                } else {
     364                        memcpy(request.data.auth_crap.nt_resp,
     365                               nt_response->data, nt_response->length);
     366                }
    356367                request.data.auth_crap.nt_resp_len = nt_response->length;
    357368        }
    358        
     369
    359370        result = winbindd_request_response(WINBINDD_PAM_AUTH_CRAP, &request, &response);
     371        SAFE_FREE(request.extra_data.data);
    360372
    361373        /* Display response */
Note: See TracChangeset for help on using the changeset viewer.