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

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