Blob verify (#4951)
* Ensure signable data is not out of range * Add a broadcast stage that puts bad sizes in blobs * Resign blob after modifyign size * Remove assertions that fail when size != meta.size
This commit is contained in:
@@ -414,7 +414,7 @@ impl Blob {
|
||||
|
||||
let bytes = &data[..data_len];
|
||||
blob.data[..data_len].copy_from_slice(bytes);
|
||||
blob.meta.size = blob.data_size() as usize;
|
||||
blob.meta.size = data_len;
|
||||
blob
|
||||
}
|
||||
|
||||
@@ -504,7 +504,10 @@ impl Blob {
|
||||
}
|
||||
|
||||
pub fn data_size(&self) -> u64 {
|
||||
LittleEndian::read_u64(&self.data[SIZE_RANGE])
|
||||
cmp::min(
|
||||
LittleEndian::read_u64(&self.data[SIZE_RANGE]),
|
||||
BLOB_SIZE as u64,
|
||||
)
|
||||
}
|
||||
|
||||
pub fn set_data_size(&mut self, size: u64) {
|
||||
|
||||
Reference in New Issue
Block a user