mirror of
https://github.com/minio/minio.git
synced 2025-02-28 05:49:16 -05:00
Add crc checks for Object Get()
This commit is contained in:
parent
b3af234ee2
commit
1166557da1
@ -68,12 +68,20 @@ func (storage *appendStorage) Get(objectPath string) (io.Reader, error) {
|
|||||||
|
|
||||||
offset := header.Offset
|
offset := header.Offset
|
||||||
length := header.Length
|
length := header.Length
|
||||||
|
crc := header.Crc
|
||||||
|
|
||||||
object := make([]byte, length)
|
object := make([]byte, length)
|
||||||
_, err := storage.file.ReadAt(object, offset)
|
_, err := storage.file.ReadAt(object, offset)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
newcrc, err := crc32c.Crc32c(object)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
if newcrc != crc {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
return bytes.NewBuffer(object), nil
|
return bytes.NewBuffer(object), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user