Ignore:
Timestamp:
Apr 25, 2007, 9:44:55 AM (14 years ago)
Author:
Paul Smedley
Message:

Code updated to Samba 3.0.25rc2 level

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/samba/source/smbd/reply.c

    r26 r30  
    470470        if (global_encrypted_passwords_negotiated) {
    471471                password = data_blob(smb_buf(inbuf),passlen);
     472                if (lp_security() == SEC_SHARE) {
     473                        /*
     474                         * Security = share always has a pad byte
     475                         * after the password.
     476                         */
     477                        p = smb_buf(inbuf) + passlen + 1;
     478                } else {
     479                        p = smb_buf(inbuf) + passlen;
     480                }
    472481        } else {
    473482                password = data_blob(smb_buf(inbuf),passlen+1);
    474483                /* Ensure correct termination */
    475                 password.data[passlen]=0;   
    476         }
    477 
    478         p = smb_buf(inbuf) + passlen;
     484                password.data[passlen]=0;
     485                p = smb_buf(inbuf) + passlen + 1;
     486        }
     487
    479488        p += srvstr_pull_buf(inbuf, path, p, sizeof(path), STR_TERMINATE);
    480489
     
    27072716
    27082717        nread = send_file_readX(conn, inbuf, outbuf, length, bufsize, fsp, startpos, smb_maxcnt);
    2709         if (nread != -1)
     2718        /* Only call chain_reply if not an error. */
     2719        if (nread != -1 && SVAL(outbuf,smb_rcls) == 0) {
    27102720                nread = chain_reply(inbuf,outbuf,length,bufsize);
     2721        }
    27112722
    27122723        END_PROFILE(SMBreadX);
Note: See TracChangeset for help on using the changeset viewer.