in iimg/iimg.go [132:153]
func RecalcHash(img image.Image) (image.Image, error) {
hash, err := img.CalcHash(nil)
if err != nil {
return img, err
}
img.RemoveTlvsWithType(image.IMAGE_TLV_SHA256)
tlv := image.ImageTlv{
Header: image.ImageTlvHdr{
Type: image.IMAGE_TLV_SHA256,
Pad: 0,
Len: uint16(len(hash)),
},
Data: hash,
}
// The SHA256 TLV must come first.
img.Tlvs = append([]image.ImageTlv{tlv}, img.Tlvs...)
return img, nil
}