Ignore:
Timestamp:
Nov 12, 2012, 5:09:31 PM (13 years ago)
Author:
Silvan Scherrer
Message:

Samba Server 3.5: update branche to 3.5.13

Location:
branches/samba-3.5.x/source3/libsmb
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/samba-3.5.x/source3/libsmb/clikrb5.c

    r596 r733  
    20892089        }
    20902090
    2091         ret = krb5_cc_store_cred(context, ccache, creds);
    2092         if (ret) {
    2093                 goto done;
    2094         }
    2095 
    20962091        if (out_creds) {
    20972092                *out_creds = creds;
  • branches/samba-3.5.x/source3/libsmb/clireadwrite.c

    r668 r733  
    200200        state->buf = (uint8_t *)smb_base(inbuf) + SVAL(vwv+6, 0);
    201201
    202         if (trans_oob(smb_len(inbuf), SVAL(vwv+6, 0), state->received)
     202        if (trans_oob(smb_len_large(inbuf), SVAL(vwv+6, 0), state->received)
    203203            || ((state->received != 0) && (state->buf < bytes))) {
    204204                DEBUG(5, ("server returned invalid read&x data offset\n"));
     
    945945        }
    946946
    947         size = MIN(size, max_write);
     947        state->size = MIN(size, max_write);
    948948
    949949        vwv = state->vwv;
     
    957957        SSVAL(vwv+7, 0, mode);
    958958        SSVAL(vwv+8, 0, 0);
    959         SSVAL(vwv+9, 0, (size>>16));
    960         SSVAL(vwv+10, 0, size);
     959        SSVAL(vwv+9, 0, (state->size>>16));
     960        SSVAL(vwv+10, 0, state->size);
    961961
    962962        SSVAL(vwv+11, 0,
     
    975975        state->iov[0].iov_len = 1;
    976976        state->iov[1].iov_base = CONST_DISCARD(void *, buf);
    977         state->iov[1].iov_len = size;
     977        state->iov[1].iov_len = state->size;
    978978
    979979        subreq = cli_smb_req_create(state, ev, cli, SMBwriteX, 0, wct, vwv,
     
    10271027        }
    10281028        state->written = SVAL(vwv+2, 0);
    1029         state->written |= SVAL(vwv+4, 0)<<16;
     1029        if (state->size > UINT16_MAX) {
     1030                /*
     1031                 * It is important that we only set the
     1032                 * high bits only if we asked for a large write.
     1033                 *
     1034                 * OS/2 print shares get this wrong and may send
     1035                 * invalid values.
     1036                 *
     1037                 * See bug #5326.
     1038                 */
     1039                state->written |= SVAL(vwv+4, 0)<<16;
     1040        }
    10301041        tevent_req_done(req);
    10311042}
Note: See TracChangeset for help on using the changeset viewer.