Blame SOURCES/0018-Add-efi_get_libefivar_version-and-efi_get_libefiboot.patch

b15ea1
From 2763ad732781c9e8b36bdab25d04ca632c9b77fe Mon Sep 17 00:00:00 2001
b15ea1
From: Peter Jones <pjones@redhat.com>
b15ea1
Date: Tue, 28 May 2019 16:08:25 -0400
b15ea1
Subject: [PATCH 18/86] Add efi_get_libefivar_version() and
b15ea1
 efi_get_libefiboot_version()
b15ea1
b15ea1
Signed-off-by: Peter Jones <pjones@redhat.com>
b15ea1
---
b15ea1
 Make.defaults                | 2 +-
b15ea1
 src/Android.mk               | 4 +++-
b15ea1
 src/creator.c                | 6 ++++++
b15ea1
 src/include/efivar/efiboot.h | 3 +++
b15ea1
 src/include/efivar/efivar.h  | 3 +++
b15ea1
 src/lib.c                    | 6 ++++++
b15ea1
 src/libefiboot.map.in        | 4 ++++
b15ea1
 src/libefivar.map.in         | 1 +
b15ea1
 8 files changed, 27 insertions(+), 2 deletions(-)
b15ea1
b15ea1
diff --git a/Make.defaults b/Make.defaults
b15ea1
index 57cee6e82b5..6c575846687 100644
b15ea1
--- a/Make.defaults
b15ea1
+++ b/Make.defaults
b15ea1
@@ -18,7 +18,7 @@ CCLD_FOR_BUILD	?= $(CC_FOR_BUILD)
b15ea1
 CCLD	:= $(if $(filter undefined,$(origin CCLD)),$(CC),$(CCLD))
b15ea1
 OPTIMIZE ?= -O2 -flto
b15ea1
 CFLAGS	?= $(OPTIMIZE) -g3
b15ea1
-CFLAGS	:= $(CFLAGS)
b15ea1
+CFLAGS	:= $(CFLAGS) -DLIBEFIVAR_VERSION=$(VERSION)
b15ea1
 LDFLAGS ?=
b15ea1
 LDFLAGS := $(LDFLAGS)
b15ea1
 AR	:= $(CROSS_COMPILE)$(COMPILER)-ar
b15ea1
diff --git a/src/Android.mk b/src/Android.mk
b15ea1
index b3410e1f3e7..bf6cfb2e91b 100644
b15ea1
--- a/src/Android.mk
b15ea1
+++ b/src/Android.mk
b15ea1
@@ -46,8 +46,10 @@ LIBEFIVAR_SOURCES := \
b15ea1
 	lib.c \
b15ea1
 	vars.c
b15ea1
 
b15ea1
+include $(LOCAL_PATH)/../Make.version
b15ea1
+
b15ea1
 LOCAL_SRC_FILES := $(LIBEFIBOOT_SOURCES) $(LIBEFIVAR_SOURCES)
b15ea1
-LOCAL_CFLAGS := -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -std=gnu11
b15ea1
+LOCAL_CFLAGS := -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -std=gnu11 -DLIBEFIVAR_VERSION=$(VERSION)
b15ea1
 LOCAL_C_INCLUDES := $(LOCAL_PATH)/include
b15ea1
 LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_C_INCLUDES) $(LOCAL_C_INCLUDES)/efivar $(local-generated-sources-dir)
b15ea1
 LIBEFIVAR_GUIDS_H := $(local-generated-sources-dir)/efivar/efivar-guids.h
b15ea1
diff --git a/src/creator.c b/src/creator.c
b15ea1
index 987fa033e5b..f4bb01bc4a6 100644
b15ea1
--- a/src/creator.c
b15ea1
+++ b/src/creator.c
b15ea1
@@ -511,3 +511,9 @@ efi_generate_ipv4_device_path(uint8_t *buf, ssize_t size,
b15ea1
 
b15ea1
 	return off;
b15ea1
 }
b15ea1
+
b15ea1
+uint32_t PUBLIC
b15ea1
+efi_get_libefiboot_version(void)
b15ea1
+{
b15ea1
+        return LIBEFIVAR_VERSION;
b15ea1
+}
b15ea1
diff --git a/src/include/efivar/efiboot.h b/src/include/efivar/efiboot.h
b15ea1
index c2af55fbf45..2aee86d661e 100644
b15ea1
--- a/src/include/efivar/efiboot.h
b15ea1
+++ b/src/include/efivar/efiboot.h
b15ea1
@@ -35,4 +35,7 @@
b15ea1
 #include <efivar/efiboot-creator.h>
b15ea1
 #include <efivar/efiboot-loadopt.h>
b15ea1
 
b15ea1
+extern uint32_t efi_get_libefiboot_version(void)
b15ea1
+        __attribute__((__visibility__("default")));
b15ea1
+
b15ea1
 #endif /* EFIBOOT_H */
b15ea1
diff --git a/src/include/efivar/efivar.h b/src/include/efivar/efivar.h
b15ea1
index 343d1c557da..ff95cb10791 100644
b15ea1
--- a/src/include/efivar/efivar.h
b15ea1
+++ b/src/include/efivar/efivar.h
b15ea1
@@ -249,6 +249,9 @@ extern int efi_get_verbose(void)
b15ea1
 extern FILE * efi_get_logfile(void)
b15ea1
         __attribute__((__visibility__("default")));
b15ea1
 
b15ea1
+extern uint32_t efi_get_libefivar_version(void)
b15ea1
+        __attribute__((__visibility__("default")));
b15ea1
+
b15ea1
 #include <efivar/efivar-dp.h>
b15ea1
 
b15ea1
 #endif /* EFIVAR_H */
b15ea1
diff --git a/src/lib.c b/src/lib.c
b15ea1
index dc06fdb3c15..457a8604d5d 100644
b15ea1
--- a/src/lib.c
b15ea1
+++ b/src/lib.c
b15ea1
@@ -265,3 +265,9 @@ libefivar_init(void)
b15ea1
 		}
b15ea1
 	}
b15ea1
 }
b15ea1
+
b15ea1
+uint32_t PUBLIC
b15ea1
+efi_get_libefivar_version(void)
b15ea1
+{
b15ea1
+	return LIBEFIVAR_VERSION;
b15ea1
+}
b15ea1
diff --git a/src/libefiboot.map.in b/src/libefiboot.map.in
b15ea1
index cb19d65d0e4..0771eac5639 100644
b15ea1
--- a/src/libefiboot.map.in
b15ea1
+++ b/src/libefiboot.map.in
b15ea1
@@ -33,3 +33,7 @@ LIBEFIBOOT_1.29 {
b15ea1
 
b15ea1
 LIBEFIBOOT_1.30 {
b15ea1
 } LIBEFIBOOT_1.29;
b15ea1
+
b15ea1
+LIBEFIBOOT_1.31 {
b15ea1
+	global:	efi_get_libefiboot_version;
b15ea1
+} LIBEFIBOOT_1.30;
b15ea1
diff --git a/src/libefivar.map.in b/src/libefivar.map.in
b15ea1
index 8965b729917..33196fefc64 100644
b15ea1
--- a/src/libefivar.map.in
b15ea1
+++ b/src/libefivar.map.in
b15ea1
@@ -134,4 +134,5 @@ LIBEFIVAR_1.37 {
b15ea1
 LIBEFIVAR_1.38 {
b15ea1
 	global: efi_error_pop;
b15ea1
 		efi_stash_loglevel_;
b15ea1
+		efi_get_libefivar_version;
b15ea1
 } LIBEFIVAR_1.37;
b15ea1
-- 
b15ea1
2.24.1
b15ea1