Change-Id: I84d8baa64df118855aa74afb54bcf28b4fec3afa
Signed-off-by: Paweł Szewczyk <p.szewczyk@samsung.com>
static int retrieve_last_boot_id(sd_id128_t *boot_id)
{
- /* stub */
- *boot_id = SD_ID128_NULL;
+ bson *b;
+ bson_oid_t oid;
+ bson_iterator i;
+ bson_type t;
+
+ bson_oid_from_string(&oid, LAST_BOOT_ID_OID);
+ b = database_get_by_oid(&oid);
+ if (!b) {
+ *boot_id = SD_ID128_NULL;
+ return 0;
+ }
+
+ bson_iterator_init(&i, b);
+ t = bson_find(&i, b, "boot_id");
+ if (t == BSON_EOO) {
+ log_error("Could not find boot_id key");
+ return -1;
+ }
+
+ *boot_id = *(sd_id128_t *)bson_iterator_bin_data(&i);
+
return 0;
}