image-host.c (e7f9350525d73233d4eaf1793f8fe618e9fd4910) image-host.c (a9468115699de562f08796bf2eabd832435bedec)
1/*
2 * Copyright (c) 2013, Google Inc.
3 *
4 * (C) Copyright 2008 Semihalf
5 *
6 * (C) Copyright 2000-2006
7 * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
8 *

--- 210 unchanged lines hidden (view full) ---

219 if (ret == -ENOENT)
220 return 0;
221 return -1;
222 }
223
224 ret = fit_image_write_sig(fit, noffset, value, value_len, comment,
225 NULL, 0);
226 if (ret) {
1/*
2 * Copyright (c) 2013, Google Inc.
3 *
4 * (C) Copyright 2008 Semihalf
5 *
6 * (C) Copyright 2000-2006
7 * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
8 *

--- 210 unchanged lines hidden (view full) ---

219 if (ret == -ENOENT)
220 return 0;
221 return -1;
222 }
223
224 ret = fit_image_write_sig(fit, noffset, value, value_len, comment,
225 NULL, 0);
226 if (ret) {
227 printf("Can't write signature for '%s' signature node in '%s' image node: %s\n",
227 if (ret == -FDT_ERR_NOSPACE)
228 return -ENOSPC;
229 printf("Can't write signature for '%s' signature node in '%s' conf node: %s\n",
228 node_name, image_name, fdt_strerror(ret));
229 return -1;
230 }
231 free(value);
232
233 /* Get keyname again, as FDT has changed and invalidated our pointer */
234 info.keyname = fdt_getprop(fit, noffset, "key-name-hint", NULL);
235

--- 348 unchanged lines hidden (view full) ---

584 node_name, conf_name);
585
586 /* We allow keys to be missing */
587 if (ret == -ENOENT)
588 return 0;
589 return -1;
590 }
591
230 node_name, image_name, fdt_strerror(ret));
231 return -1;
232 }
233 free(value);
234
235 /* Get keyname again, as FDT has changed and invalidated our pointer */
236 info.keyname = fdt_getprop(fit, noffset, "key-name-hint", NULL);
237

--- 348 unchanged lines hidden (view full) ---

586 node_name, conf_name);
587
588 /* We allow keys to be missing */
589 if (ret == -ENOENT)
590 return 0;
591 return -1;
592 }
593
592 if (fit_image_write_sig(fit, noffset, value, value_len, comment,
593 region_prop, region_proplen)) {
594 printf("Can't write signature for '%s' signature node in '%s' conf node\n",
595 node_name, conf_name);
594 ret = fit_image_write_sig(fit, noffset, value, value_len, comment,
595 region_prop, region_proplen);
596 if (ret) {
597 if (ret == -FDT_ERR_NOSPACE)
598 return -ENOSPC;
599 printf("Can't write signature for '%s' signature node in '%s' conf node: %s\n",
600 node_name, conf_name, fdt_strerror(ret));
596 return -1;
597 }
598 free(value);
599 free(region_prop);
600
601 /* Get keyname again, as FDT has changed and invalidated our pointer */
602 info.keyname = fdt_getprop(fit, noffset, "key-name-hint", NULL);
603
604 /* Write the public key into the supplied FDT file */
601 return -1;
602 }
603 free(value);
604 free(region_prop);
605
606 /* Get keyname again, as FDT has changed and invalidated our pointer */
607 info.keyname = fdt_getprop(fit, noffset, "key-name-hint", NULL);
608
609 /* Write the public key into the supplied FDT file */
605 if (keydest && info.algo->add_verify_data(&info, keydest)) {
606 printf("Failed to add verification data for '%s' signature node in '%s' image node\n",
607 node_name, conf_name);
608 return -1;
610 if (keydest) {
611 ret = info.algo->add_verify_data(&info, keydest);
612 if (ret) {
613 printf("Failed to add verification data for '%s' signature node in '%s' image node\n",
614 node_name, conf_name);
615 return ret == FDT_ERR_NOSPACE ? -ENOSPC : -EIO;
616 }
609 }
610
611 return 0;
612}
613
614static int fit_config_add_verification_data(const char *keydir, void *keydest,
615 void *fit, int conf_noffset, const char *comment,
616 int require_keys)

--- 96 unchanged lines hidden ---
617 }
618
619 return 0;
620}
621
622static int fit_config_add_verification_data(const char *keydir, void *keydest,
623 void *fit, int conf_noffset, const char *comment,
624 int require_keys)

--- 96 unchanged lines hidden ---