Changeset 862 for trunk/server/source4/librpc
- Timestamp:
- May 13, 2014, 11:39:04 AM (11 years ago)
- Location:
- trunk/server
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/server
- Property svn:mergeinfo changed
/vendor/current merged: 860
- Property svn:mergeinfo changed
-
trunk/server/source4/librpc/rpc/dcerpc.c
r745 r862 657 657 if (!NDR_ERR_CODE_IS_SUCCESS(ndr_err)) { 658 658 return ndr_map_error2ntstatus(ndr_err); 659 } 660 661 if (pkt->frag_length != blob->length) { 662 return NT_STATUS_RPC_PROTOCOL_ERROR; 659 663 } 660 664 -
trunk/server/source4/librpc/rpc/dcerpc_smb.c
r745 r862 161 161 uint32_t frag_length = blob->length>=16? 162 162 dcerpc_get_frag_length(blob):0x2000; 163 164 if (frag_length < state->data.length) { 165 talloc_free(state); 166 return NT_STATUS_RPC_PROTOCOL_ERROR; 167 } 168 163 169 state->received = blob->length; 164 170 state->data = data_blob_talloc(state, NULL, frag_length); -
trunk/server/source4/librpc/rpc/dcerpc_smb2.c
r745 r862 171 171 if (state->data.length >= 16) { 172 172 uint16_t frag_length = dcerpc_get_frag_length(&state->data); 173 174 if (frag_length < state->data.length) { 175 talloc_free(state); 176 return NT_STATUS_RPC_PROTOCOL_ERROR; 177 } 178 173 179 io.in.length = frag_length - state->data.length; 174 180 } else { -
trunk/server/source4/librpc/rpc/dcerpc_sock.c
r745 r862 103 103 } 104 104 *size = dcerpc_get_frag_length(&blob); 105 if (*size < blob.length) { 106 /* 107 * something is wrong, let the caller deal with it 108 */ 109 *size = blob.length; 110 } 105 111 if (*size > blob.length) { 106 112 return STATUS_MORE_ENTRIES;
Note:
See TracChangeset
for help on using the changeset viewer.