in cli/image_cmds.go [136:173]
func runSignCmd(cmd *cobra.Command, args []string) {
if len(args) < 2 {
ImgmodUsage(cmd, nil)
}
inFilename := args[0]
outFilename, err := CalcOutFilename(inFilename)
if err != nil {
ImgmodUsage(cmd, err)
}
img, err := readImage(inFilename)
if err != nil {
ImgmodUsage(cmd, err)
}
keys, err := sec.ReadPrivSignKeys(args[1:])
if err != nil {
ImgmodUsage(cmd, err)
}
hash, err := img.Hash()
if err != nil {
ImgmodUsage(cmd, errors.Wrapf(err,
"failed to read hash from specified image"))
}
tlvs, err := image.BuildSigTlvs(keys, hash)
if err != nil {
ImgmodUsage(nil, err)
}
img.Tlvs = append(img.Tlvs, tlvs...)
if err := writeImage(img, outFilename); err != nil {
ImgmodUsage(nil, err)
}
}