test-efivar: Update to latest lib/efi routines
authorSamuel Mendoza-Jonas <sam@mendozajonas.com>
Thu, 2 Aug 2018 17:29:37 +0000 (17:29 +0000)
committerSamuel Mendoza-Jonas <sam@mendozajonas.com>
Tue, 7 Aug 2018 01:30:36 +0000 (11:30 +1000)
From: Samuel Mendoza-Jonas <sam@mendozajonas.com>
Signed-off-by: Geoff Levand <geoff@infradead.org>
Signed-off-by: Samuel Mendoza-Jonas <sam@mendozajonas.com>
test/lib/Makefile.am
test/lib/test-efivar.c

index 047fcb237ea3becbdb1042f541d6f846a6b6d496..65991a55d54a0a32256f4fe8d011e45e31bf81eb 100644 (file)
@@ -23,7 +23,8 @@ lib_TESTS = \
        test/lib/test-process-parent-stdout \
        test/lib/test-process-both \
        test/lib/test-process-stdout-eintr \
-       test/lib/test-fold
+       test/lib/test-fold \
+       test/lib/test-efivar
 
 if WITH_OPENSSL
 lib_TESTS += \
index 8ceb8f50cae9c15ba03d2ec93b40facdb82d8e62..a85b73ccb2c6db603418a423985be507a30313ca 100644 (file)
@@ -87,33 +87,38 @@ int main(void)
 {
        void *ctx = NULL;
        int rc, errno_value;
-       size_t size;
-       uint8_t *data = NULL;
        uint32_t attr = DEF_ATTR;
        char *path = NULL;
+       struct efi_data *efi_data;
 
        if(!probe())
                return ENOENT;
 
        talloc_new(ctx);
-       size = strlen(test_data) + 1;
-       rc = efi_set_variable(ctx, test_efivar_guid, test_varname,
-                               (uint8_t *)test_data, size, attr);
 
+       efi_data = talloc_zero(ctx, struct efi_data);
+       efi_data->attributes = attr;
+       efi_data->data = talloc_strdup(efi_data, test_data);
+       efi_data->data_size = strlen(test_data) + 1;
+
+       rc = efi_set_variable(test_efivar_guid, test_varname,
+                               efi_data);
+
+       talloc_free(efi_data);
        rc = efi_get_variable(ctx, test_efivar_guid, test_varname,
-                               &data, &size, &attr);
+                               &efi_data);
 
-       assert(data != NULL);
-       rc = strcmp((char *)data, test_data);
+       assert(efi_data->data != NULL);
+       rc = strcmp((char *)efi_data->data, test_data);
        if (rc) {
                talloc_free(ctx);
                assert(0);
        }
 
-       rc = efi_del_variable(ctx, test_efivar_guid, test_varname);
+       rc = efi_del_variable(test_efivar_guid, test_varname);
 
        rc = efi_get_variable(ctx, test_efivar_guid, test_varname,
-                               &data, &size, &attr);
+                               &efi_data);
 
        errno_value = errno;
        talloc_free(ctx);