Changeset 468
- Timestamp:
 - Jun 17, 2010, 11:11:36 AM (15 years ago)
 - File:
 - 
      
- 1 edited
 
- 
          
  branches/samba-3.0/source/smbd/process.c (modified) (3 diffs)
 
 
Legend:
- Unmodified
 - Added
 - Removed
 
- 
      
branches/samba-3.0/source/smbd/process.c
r336 r468 1160 1160 static char *orig_inbuf; 1161 1161 static char *orig_outbuf; 1162 static int orig_size; 1162 1163 int smb_com1, smb_com2 = CVAL(inbuf,smb_vwv0); 1163 1164 unsigned smb_off2 = SVAL(inbuf,smb_vwv1); … … 1179 1180 orig_inbuf = inbuf; 1180 1181 orig_outbuf = outbuf; 1182 orig_size = size; 1183 } 1184 1185 /* Validate smb_off2 */ 1186 if ((smb_off2 < smb_wct - 4) || orig_size < (smb_off2 + 4 - smb_wct)) { 1187 exit_server_cleanly("Bad chained packet"); 1188 return -1; 1181 1189 } 1182 1190 … … 1192 1200 SSVAL(outbuf,smb_vwv1,smb_offset(outbuf+outsize,outbuf)); 1193 1201 SCVAL(outbuf,smb_vwv0,smb_com2); 1202 1203 if (outsize <= smb_wct) { 1204 exit_server_cleanly("Bad chained packet"); 1205 return -1; 1206 } 1194 1207 1195 1208 /* remember how much the caller added to the chain, only counting stuff  
  Note:
 See   TracChangeset
 for help on using the changeset viewer.
  