public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
To: git-commits@fedoraproject.org
Subject: [rpms/linux-sgx] main: Rebase to SGX 2.29 / DCAP 1.26
Date: Wed, 29 Jul 2026 13:55:19 GMT	[thread overview]
Message-ID: <178533331953.1.2365997309324691046.rpms-linux-sgx-c9b7e0cc838b@fedoraproject.org> (raw)

            A new commit has been pushed.

            Repo   : rpms/linux-sgx
            Branch : main
            Commit : c9b7e0cc838b311757d7886b1a0a0dc144c8a59d
            Author : Daniel P. Berrangé <berrange@redhat.com>
            Date   : 2026-07-29T14:55:00+01:00
            Stats  : +2670/-3090 in 77 file(s)
            URL    : https://src.fedoraproject.org/rpms/linux-sgx/c/c9b7e0cc838b311757d7886b1a0a0dc144c8a59d?branch=main

            Log:
            Rebase to SGX 2.29 / DCAP 1.26

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

---
diff --git a/0000-Add-support-for-building-against-host-openssl-crypto.patch b/0000-Add-support-for-building-against-host-openssl-crypto.patch
index 2224d27..9b0c367 100644
--- a/0000-Add-support-for-building-against-host-openssl-crypto.patch
+++ b/0000-Add-support-for-building-against-host-openssl-crypto.patch
@@ -1,7 +1,7 @@
-From f3d15471fc97351df73b6d7af95561c9ecfa3a6c Mon Sep 17 00:00:00 2001
+From 76aff83d24325be463e48d3e0253b813f6b94573 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
 Date: Thu, 13 Feb 2025 14:12:38 +0000
-Subject: [PATCH 00/17] Add support for building against host openssl crypto
+Subject: [PATCH 00/16] Add support for building against host openssl crypto
  lib
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
@@ -28,10 +28,10 @@ Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  7 files changed, 27 insertions(+), 22 deletions(-)
 
 diff --git a/buildenv.mk b/buildenv.mk
-index 379b87ce..b9f625cb 100644
+index 0d0ce69e..43ea32af 100644
 --- a/buildenv.mk
 +++ b/buildenv.mk
-@@ -356,3 +356,16 @@ else
+@@ -336,3 +336,16 @@ else
      SGX_LIB_DIR := $(SGX_SDK)/lib64/$(MITIGATION_LIB_PATH)
      SGX_BIN_DIR := $(SGX_SDK)/bin/x64
  endif
@@ -49,10 +49,10 @@ index 379b87ce..b9f625cb 100644
 +OPENSSL_CRYPTO_LIBS = $(OPENSSL_CRYPTO_PREBUILT_DIR)/lib/linux64/libcrypto.a
 +endif
 diff --git a/psw/ae/aesm_service/Makefile b/psw/ae/aesm_service/Makefile
-index 350addeb..24613afe 100644
+index 85a1b686..59c18263 100644
 --- a/psw/ae/aesm_service/Makefile
 +++ b/psw/ae/aesm_service/Makefile
-@@ -42,6 +42,9 @@ else
+@@ -17,6 +17,9 @@ else
       AESM_CONFIG += -DCMAKE_BUILD_TYPE=Release
  endif
  
@@ -116,10 +116,10 @@ index 2e291857..275a9d45 100644
  INTERNAL_LDFLAGS += -Wl,--version-script=urts_internal.lds -Wl,--gc-sections
  
 diff --git a/sdk/sign_tool/SignTool/Makefile b/sdk/sign_tool/SignTool/Makefile
-index 1ed9f286..ed177c86 100644
+index 4084e855..1aa75246 100644
 --- a/sdk/sign_tool/SignTool/Makefile
 +++ b/sdk/sign_tool/SignTool/Makefile
-@@ -42,9 +42,6 @@ CFLAGS += $(FLAGS)
+@@ -17,9 +17,6 @@ CFLAGS += $(FLAGS)
  CXXFLAGS += $(FLAGS)
  LDFLAGS := -pie $(COMMON_LDFLAGS) -Wno-odr
  
@@ -129,7 +129,7 @@ index 1ed9f286..ed177c86 100644
  INC += $(ADDED_INC)
  INC +=  -I$(COMMON_DIR)/inc                         \
          -I$(COMMON_DIR)/inc/internal                \
-@@ -54,7 +51,7 @@ INC +=  -I$(COMMON_DIR)/inc                         \
+@@ -29,7 +26,7 @@ INC +=  -I$(COMMON_DIR)/inc                         \
          -I$(LINUX_PSW_DIR)/urts/linux               \
          -I$(LINUX_EXTERNAL_DIR)/tinyxml2            \
          -I$(LINUX_PSW_DIR)/urts/parser              \
@@ -138,7 +138,7 @@ index 1ed9f286..ed177c86 100644
  
  DIR1 := $(LINUX_EXTERNAL_DIR)/tinyxml2/
  DIR2 := $(COMMON_DIR)/src/
-@@ -90,7 +87,7 @@ all: sgx_sign | $(BUILD_DIR)
+@@ -65,7 +62,7 @@ all: sgx_sign | $(BUILD_DIR)
  $(BUILD_DIR):
  	@$(MKDIR) $@
  
@@ -148,7 +148,7 @@ index 1ed9f286..ed177c86 100644
  
  sgx_sign: $(OBJS) enclaveparser
 diff --git a/sdk/simulation/uae_service_sim/linux/Makefile b/sdk/simulation/uae_service_sim/linux/Makefile
-index d80a3d06..3d5b5628 100644
+index a79f7688..f73e230f 100644
 --- a/sdk/simulation/uae_service_sim/linux/Makefile
 +++ b/sdk/simulation/uae_service_sim/linux/Makefile
 @@ -34,9 +34,6 @@ include $(TOP_DIR)/buildenv.mk
@@ -167,10 +167,10 @@ index d80a3d06..3d5b5628 100644
              -I$(LINUX_PSW_DIR)/ae/common                           \
 -            -I$(PREBUILT_OPENSSL_DIR)/inc                          \
 +            $(OPENSSL_CRYPTO_CFLAGS)                               \
-             -I$(DCAP_DIR)/QuoteGeneration/quote_wrapper/common/inc \
-             -I$(DCAP_DIR)/QuoteGeneration/pce_wrapper/inc
+             -I$(DCAP_DIR)/QuoteGeneration/quote_wrapper/common/inc
  
-@@ -61,7 +58,7 @@ RDRAND_MAKEFILE := $(RDRAND_LIBDIR)/Makefile
+ 
+@@ -60,7 +57,7 @@ RDRAND_MAKEFILE := $(RDRAND_LIBDIR)/Makefile
  
  EXTERNAL_LIB += -L$(RDRAND_LIBDIR) -lrdrand
  EXTERNAL_LIB += -L$(RDRAND_LIBDIR) -lrt

diff --git a/0001-Add-support-for-building-against-host-tinyxml2-lib.patch b/0001-Add-support-for-building-against-host-tinyxml2-lib.patch
index 861c0d7..5130699 100644
--- a/0001-Add-support-for-building-against-host-tinyxml2-lib.patch
+++ b/0001-Add-support-for-building-against-host-tinyxml2-lib.patch
@@ -1,7 +1,7 @@
-From 79bc4b56fd25fbf49927be31513556ec9d86e6ec Mon Sep 17 00:00:00 2001
+From 931eb17e91aa3ae0b2cb7f3a20243dbdc3fabf69 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
 Date: Thu, 13 Feb 2025 14:01:10 +0000
-Subject: [PATCH 01/17] Add support for building against host tinyxml2 lib
+Subject: [PATCH 01/16] Add support for building against host tinyxml2 lib
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
@@ -22,10 +22,10 @@ Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  2 files changed, 18 insertions(+), 4 deletions(-)
 
 diff --git a/buildenv.mk b/buildenv.mk
-index b9f625cb..86d30af6 100644
+index 43ea32af..47f3125e 100644
 --- a/buildenv.mk
 +++ b/buildenv.mk
-@@ -369,3 +369,17 @@ OPENSSL_CRYPTO_CFLAGS = -I$(OPENSSL_CRYPTO_PREBUILT_DIR)/inc
+@@ -349,3 +349,17 @@ OPENSSL_CRYPTO_CFLAGS = -I$(OPENSSL_CRYPTO_PREBUILT_DIR)/inc
  OPENSSL_CRYPTO_LDFLAGS = -L$(OPENSSL_CRYPTO_PREBUILT_DIR)/lib/linux64 -lcrypto
  OPENSSL_CRYPTO_LIBS = $(OPENSSL_CRYPTO_PREBUILT_DIR)/lib/linux64/libcrypto.a
  endif
@@ -44,10 +44,10 @@ index b9f625cb..86d30af6 100644
 +TINYXML2_DIR = $(LINUX_EXTERNAL_DIR)/tinyxml2/
 +endif
 diff --git a/sdk/sign_tool/SignTool/Makefile b/sdk/sign_tool/SignTool/Makefile
-index ed177c86..1dcb6f51 100644
+index 1aa75246..712e3771 100644
 --- a/sdk/sign_tool/SignTool/Makefile
 +++ b/sdk/sign_tool/SignTool/Makefile
-@@ -49,11 +49,11 @@ INC +=  -I$(COMMON_DIR)/inc                         \
+@@ -24,11 +24,11 @@ INC +=  -I$(COMMON_DIR)/inc                         \
          -I$(LINUX_PSW_DIR)/enclave_common           \
          -I$(LINUX_PSW_DIR)/urts                     \
          -I$(LINUX_PSW_DIR)/urts/linux               \
@@ -61,7 +61,7 @@ index ed177c86..1dcb6f51 100644
  DIR2 := $(COMMON_DIR)/src/
  DIR3 := $(LINUX_PSW_DIR)/urts/
  DIR4 := $(LINUX_PSW_DIR)/urts/linux
-@@ -68,7 +68,7 @@ OBJ1 := manage_metadata.o      \
+@@ -43,7 +43,7 @@ OBJ1 := manage_metadata.o      \
  
  OBJ2 := sgx_memset_s.o crypto_evp_digest.o crypto_rsa_key.o crypto_rsa3072.o
  
@@ -70,7 +70,7 @@ index ed177c86..1dcb6f51 100644
  
  OBJ4 := loader.o     \
          se_detect.o  \
-@@ -87,7 +87,7 @@ all: sgx_sign | $(BUILD_DIR)
+@@ -62,7 +62,7 @@ all: sgx_sign | $(BUILD_DIR)
  $(BUILD_DIR):
  	@$(MKDIR) $@
  

diff --git a/0002-Add-support-for-building-against-host-CppMicroServic.patch b/0002-Add-support-for-building-against-host-CppMicroServic.patch
index 3b23572..b2d2f16 100644
--- a/0002-Add-support-for-building-against-host-CppMicroServic.patch
+++ b/0002-Add-support-for-building-against-host-CppMicroServic.patch
@@ -1,7 +1,7 @@
-From b59cf0e4fb227486ba743f4d02b9cede4b2e08ec Mon Sep 17 00:00:00 2001
+From d8ef5d50d7ed9fdc910516dd61066bde759e1d84 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
 Date: Thu, 13 Feb 2025 14:01:10 +0000
-Subject: [PATCH 02/17] Add support for building against host CppMicroServices
+Subject: [PATCH 02/16] Add support for building against host CppMicroServices
  lib
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
@@ -29,10 +29,10 @@ Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  3 files changed, 28 insertions(+), 11 deletions(-)
 
 diff --git a/buildenv.mk b/buildenv.mk
-index 86d30af6..8aafa610 100644
+index 47f3125e..727d6f09 100644
 --- a/buildenv.mk
 +++ b/buildenv.mk
-@@ -383,3 +383,13 @@ TINYXML2_LDFLAGS =
+@@ -363,3 +363,13 @@ TINYXML2_LDFLAGS =
  TINYXML2_OBJ = tinyxml2.o
  TINYXML2_DIR = $(LINUX_EXTERNAL_DIR)/tinyxml2/
  endif
@@ -47,22 +47,22 @@ index 86d30af6..8aafa610 100644
 +CPPMICROSERVICES_CMAKE_DIR = $(CPPMICROSERVICES_INSTALL_DIR)/share/cppmicroservices4/cmake
 +endif
 diff --git a/psw/ae/aesm_service/Makefile b/psw/ae/aesm_service/Makefile
-index 24613afe..b469bffb 100644
+index 59c18263..f3585bbb 100644
 --- a/psw/ae/aesm_service/Makefile
 +++ b/psw/ae/aesm_service/Makefile
-@@ -32,10 +32,8 @@
+@@ -7,10 +7,8 @@
  TOP_DIR  = ../../..
  include $(TOP_DIR)/buildenv.mk
  
 -CPPMICROSERVICES_DIR := $(LINUX_EXTERNAL_DIR)/CppMicroServices
 -CPPMICROSERVICES_INSTALL := $(CPPMICROSERVICES_DIR)/local-install
  AESM_CONFIG := -DBUILD_SHARED_LIBS=ON -DUS_BUILD_SHARED_LIBS=ON
--CPPMICROSERVICES_CONFIG := -DCMAKE_INSTALL_PREFIX=$(CPPMICROSERVICES_INSTALL) -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_C_FLAGS= -DCMAKE_CXX_FLAGS= -DFORTIFY_SOURCE_VAL=$(FORTIFY_SOURCE_VAL)
-+CPPMICROSERVICES_CONFIG := -DCMAKE_INSTALL_PREFIX=$(CPPMICROSERVICES_INSTALL_DIR) -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_C_FLAGS= -DCMAKE_CXX_FLAGS= -DFORTIFY_SOURCE_VAL=$(FORTIFY_SOURCE_VAL)
+-CPPMICROSERVICES_CONFIG := -DCMAKE_INSTALL_PREFIX=$(CPPMICROSERVICES_INSTALL) -DCMAKE_BUILD_TYPE=RelWithDebInfo -DFORTIFY_SOURCE_VAL=$(FORTIFY_SOURCE_VAL)
++CPPMICROSERVICES_CONFIG := -DCMAKE_INSTALL_PREFIX=$(CPPMICROSERVICES_INSTALL_DIR) -DCMAKE_BUILD_TYPE=RelWithDebInfo -DFORTIFY_SOURCE_VAL=$(FORTIFY_SOURCE_VAL)
  ifdef DEBUG
      AESM_CONFIG += -DCMAKE_BUILD_TYPE=Debug
  else
-@@ -44,6 +42,7 @@ endif
+@@ -19,6 +17,7 @@ endif
  
  AESM_CONFIG += -DOPENSSL_CRYPTO_CFLAGS=$(OPENSSL_CRYPTO_CFLAGS)
  AESM_CONFIG += -DOPENSSL_CRYPTO_LIBS=$(OPENSSL_CRYPTO_LIBS)
@@ -70,8 +70,8 @@ index 24613afe..b469bffb 100644
  
  ifeq ($(ARCH), x86)
      SQLITECFLAGS += -m32
-@@ -61,7 +60,9 @@ CFLAGS += -fpie
- CFLAGS := $(filter-out -Werror, $(CFLAGS))
+@@ -40,7 +39,9 @@ AESM_CONFIG += -DCMAKE_C_FLAGS="$(CFLAGS)" -DCMAKE_CXX_FLAGS="$(CXXFLAGS)" 	\
+                	-DCMAKE_SHARED_LINKER_FLAGS="$(COMMON_LDFLAGS)"
  
  APPNAME         := source/build/bin/aesm_service
 -CPPMICROSERVICES:= $(CPPMICROSERVICES_DIR)/build/lib/libCppMicroServices.so.4.0.0
@@ -81,7 +81,7 @@ index 24613afe..b469bffb 100644
  RDRAND_LIBDIR :=$(LINUX_EXTERNAL_DIR)/rdrand/src
  RDRAND_MAKEFILE := $(RDRAND_LIBDIR)/Makefile
  
-@@ -71,21 +72,25 @@ all: $(APPNAME) $(APPNAME_DEBUG) | $(BUILD_DIR)
+@@ -50,21 +51,25 @@ all: $(APPNAME) $(APPNAME_DEBUG) | $(BUILD_DIR)
  
  $(APPNAME): $(CPPMICROSERVICES) source/build/CMakeCache.txt urts RDRAND
  	$(MAKE) -C source/build
@@ -111,7 +111,7 @@ index 24613afe..b469bffb 100644
  endif
  
  source/build/CMakeCache.txt: $(CPPMICROSERVICES)
-@@ -115,8 +120,10 @@ $(BUILD_DIR):
+@@ -94,8 +99,10 @@ $(BUILD_DIR):
  .PHONY: clean
  clean:
  	@$(RM) -r source/build
@@ -125,7 +125,7 @@ index 24613afe..b469bffb 100644
  ifeq ($(RDRAND_MAKEFILE), $(wildcard $(RDRAND_MAKEFILE)))
  	@$(MAKE) distclean -C $(RDRAND_LIBDIR)
 diff --git a/psw/ae/aesm_service/source/CMakeLists.txt b/psw/ae/aesm_service/source/CMakeLists.txt
-index 735c5fa5..065b7527 100644
+index 8e511f64..a388ee3e 100644
 --- a/psw/ae/aesm_service/source/CMakeLists.txt
 +++ b/psw/ae/aesm_service/source/CMakeLists.txt
 @@ -46,7 +46,7 @@ else()

diff --git a/0003-Improve-make-debuggability.patch b/0003-Improve-make-debuggability.patch
index 2ef0694..a60ba93 100644
--- a/0003-Improve-make-debuggability.patch
+++ b/0003-Improve-make-debuggability.patch
@@ -1,7 +1,7 @@
-From 572c92dac5c5a27fa76d611703e25a341bb610aa Mon Sep 17 00:00:00 2001
+From e33633d1d9e666c1852b564c4d62361846a3d11f Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
 Date: Fri, 1 Mar 2024 12:53:26 +0000
-Subject: [PATCH 03/17] Improve make debuggability
+Subject: [PATCH 03/16] Improve make debuggability
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
@@ -17,7 +17,7 @@ Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  2 files changed, 5 insertions(+), 5 deletions(-)
 
 diff --git a/sdk/Makefile.source b/sdk/Makefile.source
-index 7dbbb09d..37fb7dc4 100644
+index dfbc8c89..7b09375c 100644
 --- a/sdk/Makefile.source
 +++ b/sdk/Makefile.source
 @@ -75,7 +75,7 @@ tstdc: $(LIBTLIBC)
@@ -57,10 +57,10 @@ index 7dbbb09d..37fb7dc4 100644
  
  # ---------------------------------------------------
 diff --git a/sdk/cpprt/Makefile b/sdk/cpprt/Makefile
-index 1d382c5b..91156a75 100644
+index 8d927482..3b8da3e5 100644
 --- a/sdk/cpprt/Makefile
 +++ b/sdk/cpprt/Makefile
-@@ -102,7 +102,7 @@ $(CPPRT): $(OBJS) $(LIBCXXRT_STAMP) prepare-libunwind libunwind
+@@ -77,7 +77,7 @@ $(CPPRT): $(OBJS) $(LIBCXXRT_STAMP) prepare-libunwind libunwind
  libunwind:
  	cd $(LIBUNWIND_DIR)/ && \
  		( test -f Makefile || CFLAGS="$(CFLAGS)" ./autogen.sh ) && \

diff --git a/0004-Support-disabling-use-of-git-for-ippcp-code.patch b/0004-Support-disabling-use-of-git-for-ippcp-code.patch
index d49e26d..b03aaf8 100644
--- a/0004-Support-disabling-use-of-git-for-ippcp-code.patch
+++ b/0004-Support-disabling-use-of-git-for-ippcp-code.patch
@@ -1,7 +1,7 @@
-From f11e29272736b152f7365febf8e157a410d4818b Mon Sep 17 00:00:00 2001
+From 35ac6c924b1909516f27662c0b208385b68505ac Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
 Date: Thu, 13 Feb 2025 14:37:24 +0000
-Subject: [PATCH 04/17] Support disabling use of git for ippcp code
+Subject: [PATCH 04/16] Support disabling use of git for ippcp code
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit

diff --git a/0005-disable-openmp-protobuf-sample_crypto-builds.patch b/0005-disable-openmp-protobuf-sample_crypto-builds.patch
index 9b84f6b..800de10 100644
--- a/0005-disable-openmp-protobuf-sample_crypto-builds.patch
+++ b/0005-disable-openmp-protobuf-sample_crypto-builds.patch
@@ -1,7 +1,7 @@
-From ea9950ebf08d3899c345176ab24d7b3b8b39067d Mon Sep 17 00:00:00 2001
+From 9a7d74b0bc8f5566daf56f747dab2f0412a36898 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
 Date: Tue, 18 Jun 2024 15:57:22 +0100
-Subject: [PATCH 05/17] disable openmp, protobuf & sample_crypto builds
+Subject: [PATCH 05/16] disable openmp, protobuf & sample_crypto builds
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
@@ -11,18 +11,18 @@ important, so skip them to reduce amount of bundled package code.
 
 Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
 ---
- linux/installer/common/sdk/BOMs/sdk_base.txt  | 296 ------------------
+ linux/installer/common/sdk/BOMs/sdk_base.txt  | 482 ------------------
  .../common/sdk/BOMs/sdk_cve_2020_0551_cf.txt  |   2 -
  .../sdk/BOMs/sdk_cve_2020_0551_load.txt       |   2 -
  linux/installer/common/sdk/BOMs/sdk_x64.txt   |   3 -
  sdk/Makefile.source                           |  24 +-
- 5 files changed, 1 insertion(+), 326 deletions(-)
+ 5 files changed, 1 insertion(+), 512 deletions(-)
 
 diff --git a/linux/installer/common/sdk/BOMs/sdk_base.txt b/linux/installer/common/sdk/BOMs/sdk_base.txt
-index b9189f7b..858be8fd 100644
+index 06512906..27029651 100644
 --- a/linux/installer/common/sdk/BOMs/sdk_base.txt
 +++ b/linux/installer/common/sdk/BOMs/sdk_base.txt
-@@ -365,16 +365,6 @@ DeliveryName	InstallName	FileCheckSum	FileFeature	FileOwner
+@@ -357,16 +357,6 @@ DeliveryName	InstallName	FileCheckSum	FileFeature	FileOwner
  <deliverydir>/SampleCode/SealUnseal/Enclave_Unseal/Enclave_Unseal.cpp	<installdir>/package/SampleCode/SealUnseal/Enclave_Unseal/Enclave_Unseal.cpp	0	N/A	N/A
  <deliverydir>/SampleCode/SealUnseal/Enclave_Unseal/Enclave_Unseal.edl	<installdir>/package/SampleCode/SealUnseal/Enclave_Unseal/Enclave_Unseal.edl	0	N/A	N/A
  <deliverydir>/SampleCode/SealUnseal/Enclave_Unseal/Enclave_Unseal.lds	<installdir>/package/SampleCode/SealUnseal/Enclave_Unseal/Enclave_Unseal.lds	0	N/A	N/A
@@ -39,7 +39,7 @@ index b9189f7b..858be8fd 100644
  <deliverydir>/SampleCode/SampleAEXNotify/Enclave/Enclave.config.xml	<installdir>/package/SampleCode/SampleAEXNotify/Enclave/Enclave.config.xml	0	N/A	N/A
  <deliverydir>/SampleCode/SampleAEXNotify/Enclave/Enclave.cpp	<installdir>/package/SampleCode/SampleAEXNotify/Enclave/Enclave.cpp	0	N/A	N/A
  <deliverydir>/SampleCode/SampleAEXNotify/Enclave/Enclave.edl	<installdir>/package/SampleCode/SampleAEXNotify/Enclave/Enclave.edl	0	N/A	N/A
-@@ -570,290 +560,4 @@ DeliveryName	InstallName	FileCheckSum	FileFeature	FileOwner
+@@ -562,476 +552,4 @@ DeliveryName	InstallName	FileCheckSum	FileFeature	FileOwner
  <deliverydir>/sdk/tlibcxx/include/variant	<installdir>/package/include/libcxx/variant	0	main	STP
  <deliverydir>/sdk/tlibcxx/include/vector	<installdir>/package/include/libcxx/vector	0	main	STP
  <deliverydir>/sdk/tlibcxx/include/version	<installdir>/package/include/libcxx/version	0	main	STP
@@ -48,18 +48,25 @@ index b9189f7b..858be8fd 100644
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/any.proto	<installdir>/package/include/tprotobuf/google/protobuf/any.proto	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/api.pb.h	<installdir>/package/include/tprotobuf/google/protobuf/api.pb.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/api.proto	<installdir>/package/include/tprotobuf/google/protobuf/api.proto	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/arena.h	<installdir>/package/include/tprotobuf/google/protobuf/arena.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/arena_align.h	<installdir>/package/include/tprotobuf/google/protobuf/arena_align.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/arena_allocation_policy.h	<installdir>/package/include/tprotobuf/google/protobuf/arena_allocation_policy.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/arena_cleanup.h	<installdir>/package/include/tprotobuf/google/protobuf/arena_cleanup.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/arena_config.h	<installdir>/package/include/tprotobuf/google/protobuf/arena_config.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/arena.h	<installdir>/package/include/tprotobuf/google/protobuf/arena.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/arenastring.h	<installdir>/package/include/tprotobuf/google/protobuf/arenastring.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/arenaz_sampler.h	<installdir>/package/include/tprotobuf/google/protobuf/arenaz_sampler.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/bridge/message_set.proto	<installdir>/package/include/tprotobuf/google/protobuf/bridge/message_set.proto	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/cpp_edition_defaults.h	<installdir>/package/include/tprotobuf/google/protobuf/cpp_edition_defaults.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/cpp_features.pb.h	<installdir>/package/include/tprotobuf/google/protobuf/cpp_features.pb.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/cpp_features.proto	<installdir>/package/include/tprotobuf/google/protobuf/cpp_features.proto	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/descriptor_database.h	<installdir>/package/include/tprotobuf/google/protobuf/descriptor_database.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/descriptor.h	<installdir>/package/include/tprotobuf/google/protobuf/descriptor.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/descriptor_legacy.h	<installdir>/package/include/tprotobuf/google/protobuf/descriptor_legacy.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/descriptor_lite.h	<installdir>/package/include/tprotobuf/google/protobuf/descriptor_lite.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/descriptor.pb.h	<installdir>/package/include/tprotobuf/google/protobuf/descriptor.pb.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/descriptor.proto	<installdir>/package/include/tprotobuf/google/protobuf/descriptor.proto	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/descriptor_database.h	<installdir>/package/include/tprotobuf/google/protobuf/descriptor_database.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/descriptor_legacy.h	<installdir>/package/include/tprotobuf/google/protobuf/descriptor_legacy.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/descriptor_visitor.h	<installdir>/package/include/tprotobuf/google/protobuf/descriptor_visitor.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/duration.pb.h	<installdir>/package/include/tprotobuf/google/protobuf/duration.pb.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/duration.proto	<installdir>/package/include/tprotobuf/google/protobuf/duration.proto	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/dynamic_message.h	<installdir>/package/include/tprotobuf/google/protobuf/dynamic_message.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/empty.pb.h	<installdir>/package/include/tprotobuf/google/protobuf/empty.pb.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/empty.proto	<installdir>/package/include/tprotobuf/google/protobuf/empty.proto	0	main	STP
@@ -67,6 +74,7 @@ index b9189f7b..858be8fd 100644
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/explicitly_constructed.h	<installdir>/package/include/tprotobuf/google/protobuf/explicitly_constructed.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/extension_set.h	<installdir>/package/include/tprotobuf/google/protobuf/extension_set.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/extension_set_inl.h	<installdir>/package/include/tprotobuf/google/protobuf/extension_set_inl.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/feature_resolver.h	<installdir>/package/include/tprotobuf/google/protobuf/feature_resolver.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/field_access_listener.h	<installdir>/package/include/tprotobuf/google/protobuf/field_access_listener.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/field_mask.pb.h	<installdir>/package/include/tprotobuf/google/protobuf/field_mask.pb.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/field_mask.proto	<installdir>/package/include/tprotobuf/google/protobuf/field_mask.proto	0	main	STP
@@ -75,37 +83,65 @@ index b9189f7b..858be8fd 100644
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/generated_message_bases.h	<installdir>/package/include/tprotobuf/google/protobuf/generated_message_bases.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/generated_message_reflection.h	<installdir>/package/include/tprotobuf/google/protobuf/generated_message_reflection.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/generated_message_tctable_decl.h	<installdir>/package/include/tprotobuf/google/protobuf/generated_message_tctable_decl.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/generated_message_tctable_gen.h	<installdir>/package/include/tprotobuf/google/protobuf/generated_message_tctable_gen.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/generated_message_tctable_impl.h	<installdir>/package/include/tprotobuf/google/protobuf/generated_message_tctable_impl.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/generated_message_util.h	<installdir>/package/include/tprotobuf/google/protobuf/generated_message_util.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/has_bits.h	<installdir>/package/include/tprotobuf/google/protobuf/has_bits.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/implicit_weak_message.h	<installdir>/package/include/tprotobuf/google/protobuf/implicit_weak_message.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/inlined_string_field.h	<installdir>/package/include/tprotobuf/google/protobuf/inlined_string_field.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/internal_feature_helper.h	<installdir>/package/include/tprotobuf/google/protobuf/internal_feature_helper.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/internal_options.proto	<installdir>/package/include/tprotobuf/google/protobuf/internal_options.proto	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/internal_visibility.h	<installdir>/package/include/tprotobuf/google/protobuf/internal_visibility.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/io/coded_stream.h	<installdir>/package/include/tprotobuf/google/protobuf/io/coded_stream.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/io/gzip_stream.h	<installdir>/package/include/tprotobuf/google/protobuf/io/gzip_stream.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/io/io_win32.h	<installdir>/package/include/tprotobuf/google/protobuf/io/io_win32.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/io/package_info.h	<installdir>/package/include/tprotobuf/google/protobuf/io/package_info.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/io/printer.h	<installdir>/package/include/tprotobuf/google/protobuf/io/printer.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/io/strtod.h	<installdir>/package/include/tprotobuf/google/protobuf/io/strtod.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/io/tokenizer.h	<installdir>/package/include/tprotobuf/google/protobuf/io/tokenizer.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/io/zero_copy_sink.h	<installdir>/package/include/tprotobuf/google/protobuf/io/zero_copy_sink.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/io/zero_copy_stream.h	<installdir>/package/include/tprotobuf/google/protobuf/io/zero_copy_stream.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/io/zero_copy_stream_impl.h	<installdir>/package/include/tprotobuf/google/protobuf/io/zero_copy_stream_impl.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/io/zero_copy_stream_impl_lite.h	<installdir>/package/include/tprotobuf/google/protobuf/io/zero_copy_stream_impl_lite.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/map.h	<installdir>/package/include/tprotobuf/google/protobuf/map.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/json/internal/descriptor_traits.h	<installdir>/package/include/tprotobuf/google/protobuf/json/internal/descriptor_traits.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/json/internal/lexer.h	<installdir>/package/include/tprotobuf/google/protobuf/json/internal/lexer.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/json/internal/message_path.h	<installdir>/package/include/tprotobuf/google/protobuf/json/internal/message_path.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/json/internal/parser.h	<installdir>/package/include/tprotobuf/google/protobuf/json/internal/parser.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/json/internal/parser_traits.h	<installdir>/package/include/tprotobuf/google/protobuf/json/internal/parser_traits.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/json/internal/unparser.h	<installdir>/package/include/tprotobuf/google/protobuf/json/internal/unparser.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/json/internal/unparser_traits.h	<installdir>/package/include/tprotobuf/google/protobuf/json/internal/unparser_traits.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/json/internal/untyped_message.h	<installdir>/package/include/tprotobuf/google/protobuf/json/internal/untyped_message.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/json/internal/writer.h	<installdir>/package/include/tprotobuf/google/protobuf/json/internal/writer.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/json/internal/zero_copy_buffered_stream.h	<installdir>/package/include/tprotobuf/google/protobuf/json/internal/zero_copy_buffered_stream.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/json/json.h	<installdir>/package/include/tprotobuf/google/protobuf/json/json.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/late_loaded_option.proto	<installdir>/package/include/tprotobuf/google/protobuf/late_loaded_option.proto	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/late_loaded_option_user.proto	<installdir>/package/include/tprotobuf/google/protobuf/late_loaded_option_user.proto	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/map_entry.h	<installdir>/package/include/tprotobuf/google/protobuf/map_entry.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/map_entry_lite.h	<installdir>/package/include/tprotobuf/google/protobuf/map_entry_lite.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/map_field.h	<installdir>/package/include/tprotobuf/google/protobuf/map_field.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/map_field_inl.h	<installdir>/package/include/tprotobuf/google/protobuf/map_field_inl.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/map_field_lite.h	<installdir>/package/include/tprotobuf/google/protobuf/map_field_lite.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/map.h	<installdir>/package/include/tprotobuf/google/protobuf/map.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/map_type_handler.h	<installdir>/package/include/tprotobuf/google/protobuf/map_type_handler.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/message.h	<installdir>/package/include/tprotobuf/google/protobuf/message.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/message_lite.h	<installdir>/package/include/tprotobuf/google/protobuf/message_lite.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/metadata.h	<installdir>/package/include/tprotobuf/google/protobuf/metadata.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/metadata_lite.h	<installdir>/package/include/tprotobuf/google/protobuf/metadata_lite.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/micro_string.h	<installdir>/package/include/tprotobuf/google/protobuf/micro_string.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/package_info.h	<installdir>/package/include/tprotobuf/google/protobuf/package_info.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/parse_context.h	<installdir>/package/include/tprotobuf/google/protobuf/parse_context.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/port.h	<installdir>/package/include/tprotobuf/google/protobuf/port.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/port_def.inc	<installdir>/package/include/tprotobuf/google/protobuf/port_def.inc	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/port_undef.inc	<installdir>/package/include/tprotobuf/google/protobuf/port_undef.inc	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/raw_ptr.h	<installdir>/package/include/tprotobuf/google/protobuf/raw_ptr.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/reflection.h	<installdir>/package/include/tprotobuf/google/protobuf/reflection.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/reflection_internal.h	<installdir>/package/include/tprotobuf/google/protobuf/reflection_internal.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/reflection_mode.h	<installdir>/package/include/tprotobuf/google/protobuf/reflection_mode.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/reflection_ops.h	<installdir>/package/include/tprotobuf/google/protobuf/reflection_ops.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/reflection_visit_field_info.h	<installdir>/package/include/tprotobuf/google/protobuf/reflection_visit_field_info.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/reflection_visit_fields.h	<installdir>/package/include/tprotobuf/google/protobuf/reflection_visit_fields.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/repeated_field.h	<installdir>/package/include/tprotobuf/google/protobuf/repeated_field.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/repeated_ptr_field.h	<installdir>/package/include/tprotobuf/google/protobuf/repeated_ptr_field.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/runtime_version.h	<installdir>/package/include/tprotobuf/google/protobuf/runtime_version.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/sample_messages_edition.proto	<installdir>/package/include/tprotobuf/google/protobuf/sample_messages_edition.proto	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/serial_arena.h	<installdir>/package/include/tprotobuf/google/protobuf/serial_arena.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/service.h	<installdir>/package/include/tprotobuf/google/protobuf/service.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/source_context.pb.h	<installdir>/package/include/tprotobuf/google/protobuf/source_context.pb.h	0	main	STP
@@ -121,214 +157,364 @@ index b9189f7b..858be8fd 100644
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/stubs/status_macros.h	<installdir>/package/include/tprotobuf/google/protobuf/stubs/status_macros.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/text_format.h	<installdir>/package/include/tprotobuf/google/protobuf/text_format.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/thread_safe_arena.h	<installdir>/package/include/tprotobuf/google/protobuf/thread_safe_arena.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/timestamp.pb.h	<installdir>/package/include/tprotobuf/google/protobuf/timestamp.pb.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/timestamp.proto	<installdir>/package/include/tprotobuf/google/protobuf/timestamp.proto	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/type.pb.h	<installdir>/package/include/tprotobuf/google/protobuf/type.pb.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/type.proto	<installdir>/package/include/tprotobuf/google/protobuf/type.proto	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/os_macros_undef.inc	<installdir>/package/include/tprotobuf/google/protobuf/os_macros_undef.inc	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/os_macros_restore.inc	<installdir>/package/include/tprotobuf/google/protobuf/os_macros_restore.inc	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/message_unittest_legacy_apis.inc	<installdir>/package/include/tprotobuf/google/protobuf/message_unittest_legacy_apis.inc	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/unknown_field_set.h	<installdir>/package/include/tprotobuf/google/protobuf/unknown_field_set.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/util/delimited_message_util.h	<installdir>/package/include/tprotobuf/google/protobuf/util/delimited_message_util.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/util/field_comparator.h	<installdir>/package/include/tprotobuf/google/protobuf/util/field_comparator.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/util/field_mask_util.h	<installdir>/package/include/tprotobuf/google/protobuf/util/field_mask_util.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/util/internal_timeval.h	<installdir>/package/include/tprotobuf/google/protobuf/util/internal_timeval.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/util/json_format.proto	<installdir>/package/include/tprotobuf/google/protobuf/util/json_format.proto	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/util/json_format_proto3.proto	<installdir>/package/include/tprotobuf/google/protobuf/util/json_format_proto3.proto	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/util/json_util.h	<installdir>/package/include/tprotobuf/google/protobuf/util/json_util.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/util/message_differencer.h	<installdir>/package/include/tprotobuf/google/protobuf/util/message_differencer.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/util/package_info.h	<installdir>/package/include/tprotobuf/google/protobuf/util/package_info.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/util/python/field_mask_util_clif_aux.h	<installdir>/package/include/tprotobuf/google/protobuf/util/python/field_mask_util_clif_aux.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/util/time_util.h	<installdir>/package/include/tprotobuf/google/protobuf/util/time_util.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/util/type_resolver.h	<installdir>/package/include/tprotobuf/google/protobuf/util/type_resolver.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/util/type_resolver_util.h	<installdir>/package/include/tprotobuf/google/protobuf/util/type_resolver_util.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/varint_shuffle.h	<installdir>/package/include/tprotobuf/google/protobuf/varint_shuffle.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/wire_format.h	<installdir>/package/include/tprotobuf/google/protobuf/wire_format.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/wire_format_lite.h	<installdir>/package/include/tprotobuf/google/protobuf/wire_format_lite.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/wrappers.pb.h	<installdir>/package/include/tprotobuf/google/protobuf/wrappers.pb.h	0	main	STP
 -<deliverydir>/external/protobuf/protobuf_code/src/google/protobuf/wrappers.proto	<installdir>/package/include/tprotobuf/google/protobuf/wrappers.proto	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/algorithm/algorithm.h	<installdir>/package/include/tprotobuf/absl/algorithm/algorithm.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/algorithm/container.h	<installdir>/package/include/tprotobuf/absl/algorithm/container.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/attributes.h	<installdir>/package/include/tprotobuf/absl/base/attributes.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/call_once.h	<installdir>/package/include/tprotobuf/absl/base/call_once.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/casts.h	<installdir>/package/include/tprotobuf/absl/base/casts.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/config.h	<installdir>/package/include/tprotobuf/absl/base/config.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/const_init.h	<installdir>/package/include/tprotobuf/absl/base/const_init.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/dynamic_annotations.h	<installdir>/package/include/tprotobuf/absl/base/dynamic_annotations.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/internal/atomic_hook.h	<installdir>/package/include/tprotobuf/absl/base/internal/atomic_hook.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/internal/dynamic_annotations.h	<installdir>/package/include/tprotobuf/absl/base/internal/dynamic_annotations.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/internal/endian.h	<installdir>/package/include/tprotobuf/absl/base/internal/endian.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/internal/errno_saver.h	<installdir>/package/include/tprotobuf/absl/base/internal/errno_saver.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/internal/identity.h	<installdir>/package/include/tprotobuf/absl/base/internal/identity.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/internal/inline_variable.h	<installdir>/package/include/tprotobuf/absl/base/internal/inline_variable.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/internal/invoke.h	<installdir>/package/include/tprotobuf/absl/base/internal/invoke.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/internal/low_level_alloc.h	<installdir>/package/include/tprotobuf/absl/base/internal/low_level_alloc.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/internal/low_level_scheduling.h	<installdir>/package/include/tprotobuf/absl/base/internal/low_level_scheduling.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/internal/per_thread_tls.h	<installdir>/package/include/tprotobuf/absl/base/internal/per_thread_tls.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/internal/prefetch.h	<installdir>/package/include/tprotobuf/absl/base/internal/prefetch.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/internal/raw_logging.h	<installdir>/package/include/tprotobuf/absl/base/internal/raw_logging.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/internal/scheduling_mode.h	<installdir>/package/include/tprotobuf/absl/base/internal/scheduling_mode.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/internal/spinlock.h	<installdir>/package/include/tprotobuf/absl/base/internal/spinlock.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/internal/spinlock_wait.h	<installdir>/package/include/tprotobuf/absl/base/internal/spinlock_wait.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/internal/thread_annotations.h	<installdir>/package/include/tprotobuf/absl/base/internal/thread_annotations.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/internal/thread_identity.h	<installdir>/package/include/tprotobuf/absl/base/internal/thread_identity.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/internal/throw_delegate.h	<installdir>/package/include/tprotobuf/absl/base/internal/throw_delegate.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/internal/tsan_mutex_interface.h	<installdir>/package/include/tprotobuf/absl/base/internal/tsan_mutex_interface.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/internal/unaligned_access.h	<installdir>/package/include/tprotobuf/absl/base/internal/unaligned_access.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/log_severity.h	<installdir>/package/include/tprotobuf/absl/base/log_severity.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/macros.h	<installdir>/package/include/tprotobuf/absl/base/macros.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/optimization.h	<installdir>/package/include/tprotobuf/absl/base/optimization.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/options.h	<installdir>/package/include/tprotobuf/absl/base/options.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/policy_checks.h	<installdir>/package/include/tprotobuf/absl/base/policy_checks.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/port.h	<installdir>/package/include/tprotobuf/absl/base/port.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/base/thread_annotations.h	<installdir>/package/include/tprotobuf/absl/base/thread_annotations.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/cleanup/cleanup.h	<installdir>/package/include/tprotobuf/absl/cleanup/cleanup.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/container/btree_map.h	<installdir>/package/include/tprotobuf/absl/container/btree_map.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/container/btree_set.h	<installdir>/package/include/tprotobuf/absl/container/btree_set.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/container/fixed_array.h	<installdir>/package/include/tprotobuf/absl/container/fixed_array.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/container/flat_hash_map.h	<installdir>/package/include/tprotobuf/absl/container/flat_hash_map.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/container/flat_hash_set.h	<installdir>/package/include/tprotobuf/absl/container/flat_hash_set.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/container/inlined_vector.h	<installdir>/package/include/tprotobuf/absl/container/inlined_vector.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/container/internal/btree.h	<installdir>/package/include/tprotobuf/absl/container/internal/btree.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/container/internal/btree_container.h	<installdir>/package/include/tprotobuf/absl/container/internal/btree_container.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/container/internal/common.h	<installdir>/package/include/tprotobuf/absl/container/internal/common.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/container/internal/common_policy_traits.h	<installdir>/package/include/tprotobuf/absl/container/internal/common_policy_traits.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/container/internal/compressed_tuple.h	<installdir>/package/include/tprotobuf/absl/container/internal/compressed_tuple.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/container/internal/container_memory.h	<installdir>/package/include/tprotobuf/absl/container/internal/container_memory.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/container/internal/hash_function_defaults.h	<installdir>/package/include/tprotobuf/absl/container/internal/hash_function_defaults.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/container/internal/hash_policy_traits.h	<installdir>/package/include/tprotobuf/absl/container/internal/hash_policy_traits.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/container/internal/hashtable_debug_hooks.h	<installdir>/package/include/tprotobuf/absl/container/internal/hashtable_debug_hooks.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.h	<installdir>/package/include/tprotobuf/absl/container/internal/hashtablez_sampler.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/container/internal/inlined_vector.h	<installdir>/package/include/tprotobuf/absl/container/internal/inlined_vector.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/container/internal/layout.h	<installdir>/package/include/tprotobuf/absl/container/internal/layout.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/container/internal/raw_hash_map.h	<installdir>/package/include/tprotobuf/absl/container/internal/raw_hash_map.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/container/internal/raw_hash_set.h	<installdir>/package/include/tprotobuf/absl/container/internal/raw_hash_set.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/container/node_hash_map.h	<installdir>/package/include/tprotobuf/absl/container/node_hash_map.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/container/node_hash_set.h	<installdir>/package/include/tprotobuf/absl/container/node_hash_set.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/crc/crc32c.h	<installdir>/package/include/tprotobuf/absl/crc/crc32c.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/crc/internal/crc32_x86_arm_combined_simd.h	<installdir>/package/include/tprotobuf/absl/crc/internal/crc32_x86_arm_combined_simd.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/crc/internal/crc32c_inline.h	<installdir>/package/include/tprotobuf/absl/crc/internal/crc32c_inline.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/crc/internal/crc_cord_state.h	<installdir>/package/include/tprotobuf/absl/crc/internal/crc_cord_state.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/debugging/failure_signal_handler.h	<installdir>/package/include/tprotobuf/absl/debugging/failure_signal_handler.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/debugging/leak_check.h	<installdir>/package/include/tprotobuf/absl/debugging/leak_check.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/debugging/stacktrace.h	<installdir>/package/include/tprotobuf/absl/debugging/stacktrace.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/debugging/symbolize.h	<installdir>/package/include/tprotobuf/absl/debugging/symbolize.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/debugging/symbolize_darwin.inc	<installdir>/package/include/tprotobuf/absl/debugging/symbolize_darwin.inc	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/debugging/symbolize_elf.inc	<installdir>/package/include/tprotobuf/absl/debugging/symbolize_elf.inc	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/debugging/symbolize_emscripten.inc	<installdir>/package/include/tprotobuf/absl/debugging/symbolize_emscripten.inc	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/debugging/symbolize_unimplemented.inc	<installdir>/package/include/tprotobuf/absl/debugging/symbolize_unimplemented.inc	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/debugging/symbolize_win32.inc	<installdir>/package/include/tprotobuf/absl/debugging/symbolize_win32.inc	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/flags/commandlineflag.h	<installdir>/package/include/tprotobuf/absl/flags/commandlineflag.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/flags/config.h	<installdir>/package/include/tprotobuf/absl/flags/config.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/flags/declare.h	<installdir>/package/include/tprotobuf/absl/flags/declare.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/flags/flag.h	<installdir>/package/include/tprotobuf/absl/flags/flag.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/flags/flag_benchmark.lds	<installdir>/package/include/tprotobuf/absl/flags/flag_benchmark.lds	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/flags/marshalling.h	<installdir>/package/include/tprotobuf/absl/flags/marshalling.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/flags/parse.h	<installdir>/package/include/tprotobuf/absl/flags/parse.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/flags/reflection.h	<installdir>/package/include/tprotobuf/absl/flags/reflection.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/flags/usage.h	<installdir>/package/include/tprotobuf/absl/flags/usage.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/flags/usage_config.h	<installdir>/package/include/tprotobuf/absl/flags/usage_config.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/functional/any_invocable.h	<installdir>/package/include/tprotobuf/absl/functional/any_invocable.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/functional/bind_front.h	<installdir>/package/include/tprotobuf/absl/functional/bind_front.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/functional/function_ref.h	<installdir>/package/include/tprotobuf/absl/functional/function_ref.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/functional/internal/function_ref.h	<installdir>/package/include/tprotobuf/absl/functional/internal/function_ref.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/hash/hash.h	<installdir>/package/include/tprotobuf/absl/hash/hash.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/hash/internal/city.h	<installdir>/package/include/tprotobuf/absl/hash/internal/city.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/hash/internal/hash.h	<installdir>/package/include/tprotobuf/absl/hash/internal/hash.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/hash/internal/low_level_hash.h	<installdir>/package/include/tprotobuf/absl/hash/internal/low_level_hash.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/absl_check.h	<installdir>/package/include/tprotobuf/absl/log/absl_check.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/absl_log.h	<installdir>/package/include/tprotobuf/absl/log/absl_log.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/check.h	<installdir>/package/include/tprotobuf/absl/log/check.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/die_if_null.h	<installdir>/package/include/tprotobuf/absl/log/die_if_null.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/flags.h	<installdir>/package/include/tprotobuf/absl/log/flags.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/globals.h	<installdir>/package/include/tprotobuf/absl/log/globals.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/initialize.h	<installdir>/package/include/tprotobuf/absl/log/initialize.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/internal/check_impl.h	<installdir>/package/include/tprotobuf/absl/log/internal/check_impl.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/internal/check_op.h	<installdir>/package/include/tprotobuf/absl/log/internal/check_op.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/internal/conditions.h	<installdir>/package/include/tprotobuf/absl/log/internal/conditions.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/internal/config.h	<installdir>/package/include/tprotobuf/absl/log/internal/config.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/internal/log_impl.h	<installdir>/package/include/tprotobuf/absl/log/internal/log_impl.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/internal/log_message.h	<installdir>/package/include/tprotobuf/absl/log/internal/log_message.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/internal/nullguard.h	<installdir>/package/include/tprotobuf/absl/log/internal/nullguard.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/internal/nullstream.h	<installdir>/package/include/tprotobuf/absl/log/internal/nullstream.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/internal/strip.h	<installdir>/package/include/tprotobuf/absl/log/internal/strip.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/internal/voidify.h	<installdir>/package/include/tprotobuf/absl/log/internal/voidify.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/log.h	<installdir>/package/include/tprotobuf/absl/log/log.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/log_entry.h	<installdir>/package/include/tprotobuf/absl/log/log_entry.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/log_sink.h	<installdir>/package/include/tprotobuf/absl/log/log_sink.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/log_sink_registry.h	<installdir>/package/include/tprotobuf/absl/log/log_sink_registry.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/log_streamer.h	<installdir>/package/include/tprotobuf/absl/log/log_streamer.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/scoped_mock_log.h	<installdir>/package/include/tprotobuf/absl/log/scoped_mock_log.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/log/structured.h	<installdir>/package/include/tprotobuf/absl/log/structured.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/memory/memory.h	<installdir>/package/include/tprotobuf/absl/memory/memory.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/meta/type_traits.h	<installdir>/package/include/tprotobuf/absl/meta/type_traits.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/numeric/bits.h	<installdir>/package/include/tprotobuf/absl/numeric/bits.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/numeric/int128.h	<installdir>/package/include/tprotobuf/absl/numeric/int128.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/numeric/int128_have_intrinsic.inc	<installdir>/package/include/tprotobuf/absl/numeric/int128_have_intrinsic.inc	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/numeric/int128_no_intrinsic.inc	<installdir>/package/include/tprotobuf/absl/numeric/int128_no_intrinsic.inc	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/numeric/internal/bits.h	<installdir>/package/include/tprotobuf/absl/numeric/internal/bits.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/profiling/internal/sample_recorder.h	<installdir>/package/include/tprotobuf/absl/profiling/internal/sample_recorder.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/random/bernoulli_distribution.h	<installdir>/package/include/tprotobuf/absl/random/bernoulli_distribution.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/random/beta_distribution.h	<installdir>/package/include/tprotobuf/absl/random/beta_distribution.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/random/bit_gen_ref.h	<installdir>/package/include/tprotobuf/absl/random/bit_gen_ref.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/random/discrete_distribution.h	<installdir>/package/include/tprotobuf/absl/random/discrete_distribution.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/random/distributions.h	<installdir>/package/include/tprotobuf/absl/random/distributions.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/random/exponential_distribution.h	<installdir>/package/include/tprotobuf/absl/random/exponential_distribution.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/random/gaussian_distribution.h	<installdir>/package/include/tprotobuf/absl/random/gaussian_distribution.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/random/log_uniform_int_distribution.h	<installdir>/package/include/tprotobuf/absl/random/log_uniform_int_distribution.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/random/mock_distributions.h	<installdir>/package/include/tprotobuf/absl/random/mock_distributions.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/random/mocking_bit_gen.h	<installdir>/package/include/tprotobuf/absl/random/mocking_bit_gen.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/random/poisson_distribution.h	<installdir>/package/include/tprotobuf/absl/random/poisson_distribution.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/random/random.h	<installdir>/package/include/tprotobuf/absl/random/random.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/random/seed_gen_exception.h	<installdir>/package/include/tprotobuf/absl/random/seed_gen_exception.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/random/seed_sequences.h	<installdir>/package/include/tprotobuf/absl/random/seed_sequences.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/random/uniform_int_distribution.h	<installdir>/package/include/tprotobuf/absl/random/uniform_int_distribution.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/random/uniform_real_distribution.h	<installdir>/package/include/tprotobuf/absl/random/uniform_real_distribution.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/random/zipf_distribution.h	<installdir>/package/include/tprotobuf/absl/random/zipf_distribution.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/status/status.h	<installdir>/package/include/tprotobuf/absl/status/status.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/status/status_payload_printer.h	<installdir>/package/include/tprotobuf/absl/status/status_payload_printer.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/status/statusor.h	<installdir>/package/include/tprotobuf/absl/status/statusor.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/ascii.h	<installdir>/package/include/tprotobuf/absl/strings/ascii.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/charconv.h	<installdir>/package/include/tprotobuf/absl/strings/charconv.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/cord.h	<installdir>/package/include/tprotobuf/absl/strings/cord.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/cord_analysis.h	<installdir>/package/include/tprotobuf/absl/strings/cord_analysis.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/cord_buffer.h	<installdir>/package/include/tprotobuf/absl/strings/cord_buffer.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/escaping.h	<installdir>/package/include/tprotobuf/absl/strings/escaping.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/internal/cord_data_edge.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cord_data_edge.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/internal/cord_internal.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cord_internal.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cord_rep_btree.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_navigator.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cord_rep_btree_navigator.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_reader.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cord_rep_btree_reader.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/internal/cord_rep_crc.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cord_rep_crc.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/internal/cord_rep_flat.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cord_rep_flat.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cord_rep_ring.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/internal/cordz_functions.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cordz_functions.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/internal/cordz_handle.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cordz_handle.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/internal/cordz_info.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cordz_info.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/internal/cordz_statistics.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cordz_statistics.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/internal/cordz_update_scope.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cordz_update_scope.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/internal/cordz_update_tracker.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cordz_update_tracker.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/internal/has_absl_stringify.h	<installdir>/package/include/tprotobuf/absl/strings/internal/has_absl_stringify.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/internal/resize_uninitialized.h	<installdir>/package/include/tprotobuf/absl/strings/internal/resize_uninitialized.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/internal/string_constant.h	<installdir>/package/include/tprotobuf/absl/strings/internal/string_constant.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/internal/stringify_sink.h	<installdir>/package/include/tprotobuf/absl/strings/internal/stringify_sink.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/match.h	<installdir>/package/include/tprotobuf/absl/strings/match.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/numbers.h	<installdir>/package/include/tprotobuf/absl/strings/numbers.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/str_cat.h	<installdir>/package/include/tprotobuf/absl/strings/str_cat.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/str_format.h	<installdir>/package/include/tprotobuf/absl/strings/str_format.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/str_join.h	<installdir>/package/include/tprotobuf/absl/strings/str_join.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/str_replace.h	<installdir>/package/include/tprotobuf/absl/strings/str_replace.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/str_split.h	<installdir>/package/include/tprotobuf/absl/strings/str_split.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/string_view.h	<installdir>/package/include/tprotobuf/absl/strings/string_view.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/strip.h	<installdir>/package/include/tprotobuf/absl/strings/strip.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/strings/substitute.h	<installdir>/package/include/tprotobuf/absl/strings/substitute.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/synchronization/barrier.h	<installdir>/package/include/tprotobuf/absl/synchronization/barrier.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/synchronization/blocking_counter.h	<installdir>/package/include/tprotobuf/absl/synchronization/blocking_counter.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/synchronization/internal/create_thread_identity.h	<installdir>/package/include/tprotobuf/absl/synchronization/internal/create_thread_identity.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/synchronization/internal/kernel_timeout.h	<installdir>/package/include/tprotobuf/absl/synchronization/internal/kernel_timeout.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.h	<installdir>/package/include/tprotobuf/absl/synchronization/internal/per_thread_sem.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/synchronization/mutex.h	<installdir>/package/include/tprotobuf/absl/synchronization/mutex.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/synchronization/notification.h	<installdir>/package/include/tprotobuf/absl/synchronization/notification.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/time/civil_time.h	<installdir>/package/include/tprotobuf/absl/time/civil_time.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/time/clock.h	<installdir>/package/include/tprotobuf/absl/time/clock.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/civil_time.h	<installdir>/package/include/tprotobuf/absl/time/internal/cctz/include/cctz/civil_time.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/civil_time_detail.h	<installdir>/package/include/tprotobuf/absl/time/internal/cctz/include/cctz/civil_time_detail.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/time_zone.h	<installdir>/package/include/tprotobuf/absl/time/internal/cctz/include/cctz/time_zone.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/time/time.h	<installdir>/package/include/tprotobuf/absl/time/time.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/types/any.h	<installdir>/package/include/tprotobuf/absl/types/any.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/types/bad_any_cast.h	<installdir>/package/include/tprotobuf/absl/types/bad_any_cast.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/types/bad_optional_access.h	<installdir>/package/include/tprotobuf/absl/types/bad_optional_access.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/types/bad_variant_access.h	<installdir>/package/include/tprotobuf/absl/types/bad_variant_access.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/types/compare.h	<installdir>/package/include/tprotobuf/absl/types/compare.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/types/internal/span.h	<installdir>/package/include/tprotobuf/absl/types/internal/span.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/types/internal/variant.h	<installdir>/package/include/tprotobuf/absl/types/internal/variant.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/types/internal/optional.h	<installdir>/package/include/tprotobuf/absl/types/internal/optional.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/types/optional.h	<installdir>/package/include/tprotobuf/absl/types/optional.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/types/span.h	<installdir>/package/include/tprotobuf/absl/types/span.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/types/variant.h	<installdir>/package/include/tprotobuf/absl/types/variant.h	0	main	STP
--<deliverydir>/external/protobuf/protobuf_code/third_party/abseil-cpp/absl/utility/utility.h	<installdir>/package/include/tprotobuf/absl/utility/utility.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/third_party/utf8_range/utf8_range.h	<installdir>/package/include/tprotobuf/utf8_range.h	0	main	STP
+-<deliverydir>/external/protobuf/protobuf_code/third_party/utf8_range/utf8_validity.h	<installdir>/package/include/tprotobuf/utf8_validity.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/algorithm/algorithm.h	<installdir>/package/include/tprotobuf/absl/algorithm/algorithm.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/algorithm/container.h	<installdir>/package/include/tprotobuf/absl/algorithm/container.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/attributes.h	<installdir>/package/include/tprotobuf/absl/base/attributes.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/call_once.h	<installdir>/package/include/tprotobuf/absl/base/call_once.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/casts.h	<installdir>/package/include/tprotobuf/absl/base/casts.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/config.h	<installdir>/package/include/tprotobuf/absl/base/config.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/const_init.h	<installdir>/package/include/tprotobuf/absl/base/const_init.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/dynamic_annotations.h	<installdir>/package/include/tprotobuf/absl/base/dynamic_annotations.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/fast_type_id.h	<installdir>/package/include/tprotobuf/absl/base/fast_type_id.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/atomic_hook.h	<installdir>/package/include/tprotobuf/absl/base/internal/atomic_hook.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/cycleclock_config.h	<installdir>/package/include/tprotobuf/absl/base/internal/cycleclock_config.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/cycleclock.h	<installdir>/package/include/tprotobuf/absl/base/internal/cycleclock.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/direct_mmap.h	<installdir>/package/include/tprotobuf/absl/base/internal/direct_mmap.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/dynamic_annotations.h	<installdir>/package/include/tprotobuf/absl/base/internal/dynamic_annotations.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/endian.h	<installdir>/package/include/tprotobuf/absl/base/internal/endian.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/errno_saver.h	<installdir>/package/include/tprotobuf/absl/base/internal/errno_saver.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/hide_ptr.h	<installdir>/package/include/tprotobuf/absl/base/internal/hide_ptr.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/identity.h	<installdir>/package/include/tprotobuf/absl/base/internal/identity.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/iterator_traits.h	<installdir>/package/include/tprotobuf/absl/base/internal/iterator_traits.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/low_level_alloc.h	<installdir>/package/include/tprotobuf/absl/base/internal/low_level_alloc.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/low_level_scheduling.h	<installdir>/package/include/tprotobuf/absl/base/internal/low_level_scheduling.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/nullability_deprecated.h	<installdir>/package/include/tprotobuf/absl/base/internal/nullability_deprecated.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/per_thread_tls.h	<installdir>/package/include/tprotobuf/absl/base/internal/per_thread_tls.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/poison.h	<installdir>/package/include/tprotobuf/absl/base/internal/poison.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/pretty_function.h	<installdir>/package/include/tprotobuf/absl/base/internal/pretty_function.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/raw_logging.h	<installdir>/package/include/tprotobuf/absl/base/internal/raw_logging.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/scheduling_mode.h	<installdir>/package/include/tprotobuf/absl/base/internal/scheduling_mode.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/scoped_set_env.h	<installdir>/package/include/tprotobuf/absl/base/internal/scoped_set_env.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/spinlock.h	<installdir>/package/include/tprotobuf/absl/base/internal/spinlock.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/spinlock_wait.h	<installdir>/package/include/tprotobuf/absl/base/internal/spinlock_wait.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/strerror.h	<installdir>/package/include/tprotobuf/absl/base/internal/strerror.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/sysinfo.h	<installdir>/package/include/tprotobuf/absl/base/internal/sysinfo.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/thread_identity.h	<installdir>/package/include/tprotobuf/absl/base/internal/thread_identity.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/throw_delegate.h	<installdir>/package/include/tprotobuf/absl/base/internal/throw_delegate.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/tracing.h	<installdir>/package/include/tprotobuf/absl/base/internal/tracing.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/tsan_mutex_interface.h	<installdir>/package/include/tprotobuf/absl/base/internal/tsan_mutex_interface.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/unaligned_access.h	<installdir>/package/include/tprotobuf/absl/base/internal/unaligned_access.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/unscaledcycleclock_config.h	<installdir>/package/include/tprotobuf/absl/base/internal/unscaledcycleclock_config.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/internal/unscaledcycleclock.h	<installdir>/package/include/tprotobuf/absl/base/internal/unscaledcycleclock.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/log_severity.h	<installdir>/package/include/tprotobuf/absl/base/log_severity.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/macros.h	<installdir>/package/include/tprotobuf/absl/base/macros.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/no_destructor.h	<installdir>/package/include/tprotobuf/absl/base/no_destructor.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/nullability.h	<installdir>/package/include/tprotobuf/absl/base/nullability.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/optimization.h	<installdir>/package/include/tprotobuf/absl/base/optimization.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/options.h	<installdir>/package/include/tprotobuf/absl/base/options.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/policy_checks.h	<installdir>/package/include/tprotobuf/absl/base/policy_checks.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/port.h	<installdir>/package/include/tprotobuf/absl/base/port.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/prefetch.h	<installdir>/package/include/tprotobuf/absl/base/prefetch.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/base/thread_annotations.h	<installdir>/package/include/tprotobuf/absl/base/thread_annotations.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/cleanup/cleanup.h	<installdir>/package/include/tprotobuf/absl/cleanup/cleanup.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/cleanup/internal/cleanup.h	<installdir>/package/include/tprotobuf/absl/cleanup/internal/cleanup.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/btree_map.h	<installdir>/package/include/tprotobuf/absl/container/btree_map.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/btree_set.h	<installdir>/package/include/tprotobuf/absl/container/btree_set.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/fixed_array.h	<installdir>/package/include/tprotobuf/absl/container/fixed_array.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/flat_hash_map.h	<installdir>/package/include/tprotobuf/absl/container/flat_hash_map.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/flat_hash_set.h	<installdir>/package/include/tprotobuf/absl/container/flat_hash_set.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/hash_container_defaults.h	<installdir>/package/include/tprotobuf/absl/container/hash_container_defaults.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/inlined_vector.h	<installdir>/package/include/tprotobuf/absl/container/inlined_vector.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/internal/btree_container.h	<installdir>/package/include/tprotobuf/absl/container/internal/btree_container.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/internal/btree.h	<installdir>/package/include/tprotobuf/absl/container/internal/btree.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/internal/common.h	<installdir>/package/include/tprotobuf/absl/container/internal/common.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/internal/common_policy_traits.h	<installdir>/package/include/tprotobuf/absl/container/internal/common_policy_traits.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/internal/compressed_tuple.h	<installdir>/package/include/tprotobuf/absl/container/internal/compressed_tuple.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/internal/container_memory.h	<installdir>/package/include/tprotobuf/absl/container/internal/container_memory.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/internal/hash_function_defaults.h	<installdir>/package/include/tprotobuf/absl/container/internal/hash_function_defaults.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/internal/hash_policy_traits.h	<installdir>/package/include/tprotobuf/absl/container/internal/hash_policy_traits.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/internal/hashtable_control_bytes.h	<installdir>/package/include/tprotobuf/absl/container/internal/hashtable_control_bytes.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/internal/hashtable_debug.h	<installdir>/package/include/tprotobuf/absl/container/internal/hashtable_debug.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/internal/hashtable_debug_hooks.h	<installdir>/package/include/tprotobuf/absl/container/internal/hashtable_debug_hooks.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/internal/hashtablez_sampler.h	<installdir>/package/include/tprotobuf/absl/container/internal/hashtablez_sampler.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/internal/inlined_vector.h	<installdir>/package/include/tprotobuf/absl/container/internal/inlined_vector.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/internal/layout.h	<installdir>/package/include/tprotobuf/absl/container/internal/layout.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/internal/node_slot_policy.h	<installdir>/package/include/tprotobuf/absl/container/internal/node_slot_policy.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/internal/raw_hash_map.h	<installdir>/package/include/tprotobuf/absl/container/internal/raw_hash_map.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/internal/raw_hash_set.h	<installdir>/package/include/tprotobuf/absl/container/internal/raw_hash_set.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/internal/raw_hash_set_resize_impl.h	<installdir>/package/include/tprotobuf/absl/container/internal/raw_hash_set_resize_impl.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/internal/tracked.h	<installdir>/package/include/tprotobuf/absl/container/internal/tracked.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/node_hash_map.h	<installdir>/package/include/tprotobuf/absl/container/node_hash_map.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/container/node_hash_set.h	<installdir>/package/include/tprotobuf/absl/container/node_hash_set.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/crc/crc32c.h	<installdir>/package/include/tprotobuf/absl/crc/crc32c.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/crc/internal/cpu_detect.h	<installdir>/package/include/tprotobuf/absl/crc/internal/cpu_detect.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/crc/internal/crc32c.h	<installdir>/package/include/tprotobuf/absl/crc/internal/crc32c.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/crc/internal/crc32c_inline.h	<installdir>/package/include/tprotobuf/absl/crc/internal/crc32c_inline.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/crc/internal/crc32_x86_arm_combined_simd.h	<installdir>/package/include/tprotobuf/absl/crc/internal/crc32_x86_arm_combined_simd.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/crc/internal/crc_cord_state.h	<installdir>/package/include/tprotobuf/absl/crc/internal/crc_cord_state.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/crc/internal/crc.h	<installdir>/package/include/tprotobuf/absl/crc/internal/crc.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/crc/internal/crc_internal.h	<installdir>/package/include/tprotobuf/absl/crc/internal/crc_internal.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/crc/internal/crc_memcpy.h	<installdir>/package/include/tprotobuf/absl/crc/internal/crc_memcpy.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/crc/internal/non_temporal_arm_intrinsics.h	<installdir>/package/include/tprotobuf/absl/crc/internal/non_temporal_arm_intrinsics.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/crc/internal/non_temporal_memcpy.h	<installdir>/package/include/tprotobuf/absl/crc/internal/non_temporal_memcpy.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/debugging/failure_signal_handler.h	<installdir>/package/include/tprotobuf/absl/debugging/failure_signal_handler.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/debugging/internal/addresses.h	<installdir>/package/include/tprotobuf/absl/debugging/internal/addresses.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/debugging/internal/address_is_readable.h	<installdir>/package/include/tprotobuf/absl/debugging/internal/address_is_readable.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/debugging/internal/bounded_utf8_length_sequence.h	<installdir>/package/include/tprotobuf/absl/debugging/internal/bounded_utf8_length_sequence.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/debugging/internal/decode_rust_punycode.h	<installdir>/package/include/tprotobuf/absl/debugging/internal/decode_rust_punycode.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/debugging/internal/demangle.h	<installdir>/package/include/tprotobuf/absl/debugging/internal/demangle.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/debugging/internal/demangle_rust.h	<installdir>/package/include/tprotobuf/absl/debugging/internal/demangle_rust.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/debugging/internal/elf_mem_image.h	<installdir>/package/include/tprotobuf/absl/debugging/internal/elf_mem_image.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/debugging/internal/examine_stack.h	<installdir>/package/include/tprotobuf/absl/debugging/internal/examine_stack.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/debugging/internal/stack_consumption.h	<installdir>/package/include/tprotobuf/absl/debugging/internal/stack_consumption.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/debugging/internal/stacktrace_config.h	<installdir>/package/include/tprotobuf/absl/debugging/internal/stacktrace_config.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/debugging/internal/symbolize.h	<installdir>/package/include/tprotobuf/absl/debugging/internal/symbolize.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/debugging/internal/utf8_for_code_point.h	<installdir>/package/include/tprotobuf/absl/debugging/internal/utf8_for_code_point.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/debugging/internal/vdso_support.h	<installdir>/package/include/tprotobuf/absl/debugging/internal/vdso_support.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/debugging/leak_check.h	<installdir>/package/include/tprotobuf/absl/debugging/leak_check.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/debugging/stacktrace.h	<installdir>/package/include/tprotobuf/absl/debugging/stacktrace.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/debugging/symbolize.h	<installdir>/package/include/tprotobuf/absl/debugging/symbolize.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/flags/commandlineflag.h	<installdir>/package/include/tprotobuf/absl/flags/commandlineflag.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/flags/config.h	<installdir>/package/include/tprotobuf/absl/flags/config.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/flags/declare.h	<installdir>/package/include/tprotobuf/absl/flags/declare.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/flags/flag.h	<installdir>/package/include/tprotobuf/absl/flags/flag.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/flags/internal/commandlineflag.h	<installdir>/package/include/tprotobuf/absl/flags/internal/commandlineflag.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/flags/internal/flag.h	<installdir>/package/include/tprotobuf/absl/flags/internal/flag.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/flags/internal/parse.h	<installdir>/package/include/tprotobuf/absl/flags/internal/parse.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/flags/internal/path_util.h	<installdir>/package/include/tprotobuf/absl/flags/internal/path_util.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/flags/internal/private_handle_accessor.h	<installdir>/package/include/tprotobuf/absl/flags/internal/private_handle_accessor.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/flags/internal/program_name.h	<installdir>/package/include/tprotobuf/absl/flags/internal/program_name.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/flags/internal/registry.h	<installdir>/package/include/tprotobuf/absl/flags/internal/registry.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/flags/internal/sequence_lock.h	<installdir>/package/include/tprotobuf/absl/flags/internal/sequence_lock.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/flags/internal/usage.h	<installdir>/package/include/tprotobuf/absl/flags/internal/usage.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/flags/marshalling.h	<installdir>/package/include/tprotobuf/absl/flags/marshalling.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/flags/parse.h	<installdir>/package/include/tprotobuf/absl/flags/parse.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/flags/reflection.h	<installdir>/package/include/tprotobuf/absl/flags/reflection.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/flags/usage_config.h	<installdir>/package/include/tprotobuf/absl/flags/usage_config.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/flags/usage.h	<installdir>/package/include/tprotobuf/absl/flags/usage.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/functional/any_invocable.h	<installdir>/package/include/tprotobuf/absl/functional/any_invocable.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/functional/bind_front.h	<installdir>/package/include/tprotobuf/absl/functional/bind_front.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/functional/function_ref.h	<installdir>/package/include/tprotobuf/absl/functional/function_ref.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/functional/internal/any_invocable.h	<installdir>/package/include/tprotobuf/absl/functional/internal/any_invocable.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/functional/internal/front_binder.h	<installdir>/package/include/tprotobuf/absl/functional/internal/front_binder.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/functional/internal/function_ref.h	<installdir>/package/include/tprotobuf/absl/functional/internal/function_ref.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/functional/overload.h	<installdir>/package/include/tprotobuf/absl/functional/overload.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/hash/hash.h	<installdir>/package/include/tprotobuf/absl/hash/hash.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/hash/internal/city.h	<installdir>/package/include/tprotobuf/absl/hash/internal/city.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/hash/internal/hash.h	<installdir>/package/include/tprotobuf/absl/hash/internal/hash.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/hash/internal/low_level_hash.h	<installdir>/package/include/tprotobuf/absl/hash/internal/low_level_hash.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/hash/internal/spy_hash_state.h	<installdir>/package/include/tprotobuf/absl/hash/internal/spy_hash_state.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/hash/internal/weakly_mixed_integer.h	<installdir>/package/include/tprotobuf/absl/hash/internal/weakly_mixed_integer.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/absl_check.h	<installdir>/package/include/tprotobuf/absl/log/absl_check.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/absl_log.h	<installdir>/package/include/tprotobuf/absl/log/absl_log.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/absl_vlog_is_on.h	<installdir>/package/include/tprotobuf/absl/log/absl_vlog_is_on.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/check.h	<installdir>/package/include/tprotobuf/absl/log/check.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/die_if_null.h	<installdir>/package/include/tprotobuf/absl/log/die_if_null.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/flags.h	<installdir>/package/include/tprotobuf/absl/log/flags.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/globals.h	<installdir>/package/include/tprotobuf/absl/log/globals.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/initialize.h	<installdir>/package/include/tprotobuf/absl/log/initialize.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/internal/append_truncated.h	<installdir>/package/include/tprotobuf/absl/log/internal/append_truncated.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/internal/check_impl.h	<installdir>/package/include/tprotobuf/absl/log/internal/check_impl.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/internal/check_op.h	<installdir>/package/include/tprotobuf/absl/log/internal/check_op.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/internal/conditions.h	<installdir>/package/include/tprotobuf/absl/log/internal/conditions.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/internal/config.h	<installdir>/package/include/tprotobuf/absl/log/internal/config.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/internal/flags.h	<installdir>/package/include/tprotobuf/absl/log/internal/flags.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/internal/fnmatch.h	<installdir>/package/include/tprotobuf/absl/log/internal/fnmatch.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/internal/globals.h	<installdir>/package/include/tprotobuf/absl/log/internal/globals.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/internal/log_format.h	<installdir>/package/include/tprotobuf/absl/log/internal/log_format.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/internal/log_impl.h	<installdir>/package/include/tprotobuf/absl/log/internal/log_impl.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/internal/log_message.h	<installdir>/package/include/tprotobuf/absl/log/internal/log_message.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/internal/log_sink_set.h	<installdir>/package/include/tprotobuf/absl/log/internal/log_sink_set.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/internal/nullguard.h	<installdir>/package/include/tprotobuf/absl/log/internal/nullguard.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/internal/nullstream.h	<installdir>/package/include/tprotobuf/absl/log/internal/nullstream.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/internal/proto.h	<installdir>/package/include/tprotobuf/absl/log/internal/proto.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/internal/strip.h	<installdir>/package/include/tprotobuf/absl/log/internal/strip.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/internal/structured.h	<installdir>/package/include/tprotobuf/absl/log/internal/structured.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/internal/structured_proto.h	<installdir>/package/include/tprotobuf/absl/log/internal/structured_proto.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/internal/vlog_config.h	<installdir>/package/include/tprotobuf/absl/log/internal/vlog_config.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/internal/voidify.h	<installdir>/package/include/tprotobuf/absl/log/internal/voidify.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/log_entry.h	<installdir>/package/include/tprotobuf/absl/log/log_entry.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/log.h	<installdir>/package/include/tprotobuf/absl/log/log.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/log_sink.h	<installdir>/package/include/tprotobuf/absl/log/log_sink.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/log_sink_registry.h	<installdir>/package/include/tprotobuf/absl/log/log_sink_registry.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/log_streamer.h	<installdir>/package/include/tprotobuf/absl/log/log_streamer.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/scoped_mock_log.h	<installdir>/package/include/tprotobuf/absl/log/scoped_mock_log.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/structured.h	<installdir>/package/include/tprotobuf/absl/log/structured.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/log/vlog_is_on.h	<installdir>/package/include/tprotobuf/absl/log/vlog_is_on.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/memory/memory.h	<installdir>/package/include/tprotobuf/absl/memory/memory.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/meta/type_traits.h	<installdir>/package/include/tprotobuf/absl/meta/type_traits.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/numeric/bits.h	<installdir>/package/include/tprotobuf/absl/numeric/bits.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/numeric/int128.h	<installdir>/package/include/tprotobuf/absl/numeric/int128.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/numeric/int128_have_intrinsic.inc	<installdir>/package/include/tprotobuf/absl/numeric/int128_have_intrinsic.inc	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/numeric/int128_no_intrinsic.inc	<installdir>/package/include/tprotobuf/absl/numeric/int128_no_intrinsic.inc	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/numeric/internal/bits.h	<installdir>/package/include/tprotobuf/absl/numeric/internal/bits.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/numeric/internal/representation.h	<installdir>/package/include/tprotobuf/absl/numeric/internal/representation.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/profiling/internal/exponential_biased.h	<installdir>/package/include/tprotobuf/absl/profiling/internal/exponential_biased.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/profiling/internal/periodic_sampler.h	<installdir>/package/include/tprotobuf/absl/profiling/internal/periodic_sampler.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/profiling/internal/sample_recorder.h	<installdir>/package/include/tprotobuf/absl/profiling/internal/sample_recorder.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/bernoulli_distribution.h	<installdir>/package/include/tprotobuf/absl/random/bernoulli_distribution.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/beta_distribution.h	<installdir>/package/include/tprotobuf/absl/random/beta_distribution.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/bit_gen_ref.h	<installdir>/package/include/tprotobuf/absl/random/bit_gen_ref.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/discrete_distribution.h	<installdir>/package/include/tprotobuf/absl/random/discrete_distribution.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/distributions.h	<installdir>/package/include/tprotobuf/absl/random/distributions.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/exponential_distribution.h	<installdir>/package/include/tprotobuf/absl/random/exponential_distribution.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/gaussian_distribution.h	<installdir>/package/include/tprotobuf/absl/random/gaussian_distribution.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/chi_square.h	<installdir>/package/include/tprotobuf/absl/random/internal/chi_square.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/distribution_caller.h	<installdir>/package/include/tprotobuf/absl/random/internal/distribution_caller.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/entropy_pool.h	<installdir>/package/include/tprotobuf/absl/random/internal/entropy_pool.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/explicit_seed_seq.h	<installdir>/package/include/tprotobuf/absl/random/internal/explicit_seed_seq.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/fastmath.h	<installdir>/package/include/tprotobuf/absl/random/internal/fastmath.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/fast_uniform_bits.h	<installdir>/package/include/tprotobuf/absl/random/internal/fast_uniform_bits.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/generate_real.h	<installdir>/package/include/tprotobuf/absl/random/internal/generate_real.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/iostream_state_saver.h	<installdir>/package/include/tprotobuf/absl/random/internal/iostream_state_saver.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/mock_helpers.h	<installdir>/package/include/tprotobuf/absl/random/internal/mock_helpers.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/mock_overload_set.h	<installdir>/package/include/tprotobuf/absl/random/internal/mock_overload_set.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/mock_validators.h	<installdir>/package/include/tprotobuf/absl/random/internal/mock_validators.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/nanobenchmark.h	<installdir>/package/include/tprotobuf/absl/random/internal/nanobenchmark.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/nonsecure_base.h	<installdir>/package/include/tprotobuf/absl/random/internal/nonsecure_base.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/pcg_engine.h	<installdir>/package/include/tprotobuf/absl/random/internal/pcg_engine.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/platform.h	<installdir>/package/include/tprotobuf/absl/random/internal/platform.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/randen_detect.h	<installdir>/package/include/tprotobuf/absl/random/internal/randen_detect.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/randen_engine.h	<installdir>/package/include/tprotobuf/absl/random/internal/randen_engine.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/randen.h	<installdir>/package/include/tprotobuf/absl/random/internal/randen.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/randen_hwaes.h	<installdir>/package/include/tprotobuf/absl/random/internal/randen_hwaes.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/randen_slow.h	<installdir>/package/include/tprotobuf/absl/random/internal/randen_slow.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/randen_traits.h	<installdir>/package/include/tprotobuf/absl/random/internal/randen_traits.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/salted_seed_seq.h	<installdir>/package/include/tprotobuf/absl/random/internal/salted_seed_seq.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/seed_material.h	<installdir>/package/include/tprotobuf/absl/random/internal/seed_material.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/sequence_urbg.h	<installdir>/package/include/tprotobuf/absl/random/internal/sequence_urbg.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/traits.h	<installdir>/package/include/tprotobuf/absl/random/internal/traits.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/uniform_helper.h	<installdir>/package/include/tprotobuf/absl/random/internal/uniform_helper.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/internal/wide_multiply.h	<installdir>/package/include/tprotobuf/absl/random/internal/wide_multiply.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/log_uniform_int_distribution.h	<installdir>/package/include/tprotobuf/absl/random/log_uniform_int_distribution.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/mock_distributions.h	<installdir>/package/include/tprotobuf/absl/random/mock_distributions.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/mocking_bit_gen.h	<installdir>/package/include/tprotobuf/absl/random/mocking_bit_gen.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/poisson_distribution.h	<installdir>/package/include/tprotobuf/absl/random/poisson_distribution.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/random.h	<installdir>/package/include/tprotobuf/absl/random/random.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/seed_gen_exception.h	<installdir>/package/include/tprotobuf/absl/random/seed_gen_exception.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/seed_sequences.h	<installdir>/package/include/tprotobuf/absl/random/seed_sequences.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/uniform_int_distribution.h	<installdir>/package/include/tprotobuf/absl/random/uniform_int_distribution.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/uniform_real_distribution.h	<installdir>/package/include/tprotobuf/absl/random/uniform_real_distribution.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/random/zipf_distribution.h	<installdir>/package/include/tprotobuf/absl/random/zipf_distribution.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/status/internal/status_internal.h	<installdir>/package/include/tprotobuf/absl/status/internal/status_internal.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/status/internal/status_matchers.h	<installdir>/package/include/tprotobuf/absl/status/internal/status_matchers.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/status/internal/statusor_internal.h	<installdir>/package/include/tprotobuf/absl/status/internal/statusor_internal.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/status/status.h	<installdir>/package/include/tprotobuf/absl/status/status.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/status/status_matchers.h	<installdir>/package/include/tprotobuf/absl/status/status_matchers.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/status/statusor.h	<installdir>/package/include/tprotobuf/absl/status/statusor.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/status/status_payload_printer.h	<installdir>/package/include/tprotobuf/absl/status/status_payload_printer.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/ascii.h	<installdir>/package/include/tprotobuf/absl/strings/ascii.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/charconv.h	<installdir>/package/include/tprotobuf/absl/strings/charconv.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/charset.h	<installdir>/package/include/tprotobuf/absl/strings/charset.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/cord_analysis.h	<installdir>/package/include/tprotobuf/absl/strings/cord_analysis.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/cord_buffer.h	<installdir>/package/include/tprotobuf/absl/strings/cord_buffer.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/cord.h	<installdir>/package/include/tprotobuf/absl/strings/cord.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/escaping.h	<installdir>/package/include/tprotobuf/absl/strings/escaping.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/has_absl_stringify.h	<installdir>/package/include/tprotobuf/absl/strings/has_absl_stringify.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/has_ostream_operator.h	<installdir>/package/include/tprotobuf/absl/strings/has_ostream_operator.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/charconv_bigint.h	<installdir>/package/include/tprotobuf/absl/strings/internal/charconv_bigint.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/charconv_parse.h	<installdir>/package/include/tprotobuf/absl/strings/internal/charconv_parse.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/cord_data_edge.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cord_data_edge.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/cord_internal.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cord_internal.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/cord_rep_btree.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cord_rep_btree.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/cord_rep_btree_navigator.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cord_rep_btree_navigator.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/cord_rep_btree_reader.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cord_rep_btree_reader.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/cord_rep_consume.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cord_rep_consume.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/cord_rep_crc.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cord_rep_crc.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/cord_rep_flat.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cord_rep_flat.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/cordz_functions.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cordz_functions.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/cordz_handle.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cordz_handle.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/cordz_info.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cordz_info.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/cordz_sample_token.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cordz_sample_token.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/cordz_statistics.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cordz_statistics.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/cordz_update_scope.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cordz_update_scope.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/cordz_update_tracker.h	<installdir>/package/include/tprotobuf/absl/strings/internal/cordz_update_tracker.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/damerau_levenshtein_distance.h	<installdir>/package/include/tprotobuf/absl/strings/internal/damerau_levenshtein_distance.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/escaping.h	<installdir>/package/include/tprotobuf/absl/strings/internal/escaping.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/memutil.h	<installdir>/package/include/tprotobuf/absl/strings/internal/memutil.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/ostringstream.h	<installdir>/package/include/tprotobuf/absl/strings/internal/ostringstream.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/pow10_helper.h	<installdir>/package/include/tprotobuf/absl/strings/internal/pow10_helper.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/resize_uninitialized.h	<installdir>/package/include/tprotobuf/absl/strings/internal/resize_uninitialized.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/stl_type_traits.h	<installdir>/package/include/tprotobuf/absl/strings/internal/stl_type_traits.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/str_format/arg.h	<installdir>/package/include/tprotobuf/absl/strings/internal/str_format/arg.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/str_format/bind.h	<installdir>/package/include/tprotobuf/absl/strings/internal/str_format/bind.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/str_format/checker.h	<installdir>/package/include/tprotobuf/absl/strings/internal/str_format/checker.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/str_format/constexpr_parser.h	<installdir>/package/include/tprotobuf/absl/strings/internal/str_format/constexpr_parser.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/str_format/extension.h	<installdir>/package/include/tprotobuf/absl/strings/internal/str_format/extension.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/str_format/float_conversion.h	<installdir>/package/include/tprotobuf/absl/strings/internal/str_format/float_conversion.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/str_format/output.h	<installdir>/package/include/tprotobuf/absl/strings/internal/str_format/output.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/str_format/parser.h	<installdir>/package/include/tprotobuf/absl/strings/internal/str_format/parser.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/string_constant.h	<installdir>/package/include/tprotobuf/absl/strings/internal/string_constant.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/stringify_sink.h	<installdir>/package/include/tprotobuf/absl/strings/internal/stringify_sink.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/str_join_internal.h	<installdir>/package/include/tprotobuf/absl/strings/internal/str_join_internal.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/str_split_internal.h	<installdir>/package/include/tprotobuf/absl/strings/internal/str_split_internal.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/internal/utf8.h	<installdir>/package/include/tprotobuf/absl/strings/internal/utf8.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/match.h	<installdir>/package/include/tprotobuf/absl/strings/match.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/numbers.h	<installdir>/package/include/tprotobuf/absl/strings/numbers.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/str_cat.h	<installdir>/package/include/tprotobuf/absl/strings/str_cat.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/str_format.h	<installdir>/package/include/tprotobuf/absl/strings/str_format.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/string_view.h	<installdir>/package/include/tprotobuf/absl/strings/string_view.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/strip.h	<installdir>/package/include/tprotobuf/absl/strings/strip.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/str_join.h	<installdir>/package/include/tprotobuf/absl/strings/str_join.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/str_replace.h	<installdir>/package/include/tprotobuf/absl/strings/str_replace.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/str_split.h	<installdir>/package/include/tprotobuf/absl/strings/str_split.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/strings/substitute.h	<installdir>/package/include/tprotobuf/absl/strings/substitute.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/synchronization/barrier.h	<installdir>/package/include/tprotobuf/absl/synchronization/barrier.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/synchronization/blocking_counter.h	<installdir>/package/include/tprotobuf/absl/synchronization/blocking_counter.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/synchronization/internal/create_thread_identity.h	<installdir>/package/include/tprotobuf/absl/synchronization/internal/create_thread_identity.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/synchronization/internal/futex.h	<installdir>/package/include/tprotobuf/absl/synchronization/internal/futex.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/synchronization/internal/futex_waiter.h	<installdir>/package/include/tprotobuf/absl/synchronization/internal/futex_waiter.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/synchronization/internal/graphcycles.h	<installdir>/package/include/tprotobuf/absl/synchronization/internal/graphcycles.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/synchronization/internal/kernel_timeout.h	<installdir>/package/include/tprotobuf/absl/synchronization/internal/kernel_timeout.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/synchronization/internal/per_thread_sem.h	<installdir>/package/include/tprotobuf/absl/synchronization/internal/per_thread_sem.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/synchronization/internal/pthread_waiter.h	<installdir>/package/include/tprotobuf/absl/synchronization/internal/pthread_waiter.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/synchronization/internal/sem_waiter.h	<installdir>/package/include/tprotobuf/absl/synchronization/internal/sem_waiter.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/synchronization/internal/stdcpp_waiter.h	<installdir>/package/include/tprotobuf/absl/synchronization/internal/stdcpp_waiter.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/synchronization/internal/thread_pool.h	<installdir>/package/include/tprotobuf/absl/synchronization/internal/thread_pool.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/synchronization/internal/waiter_base.h	<installdir>/package/include/tprotobuf/absl/synchronization/internal/waiter_base.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/synchronization/internal/waiter.h	<installdir>/package/include/tprotobuf/absl/synchronization/internal/waiter.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/synchronization/internal/win32_waiter.h	<installdir>/package/include/tprotobuf/absl/synchronization/internal/win32_waiter.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/synchronization/mutex.h	<installdir>/package/include/tprotobuf/absl/synchronization/mutex.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/synchronization/notification.h	<installdir>/package/include/tprotobuf/absl/synchronization/notification.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/time/civil_time.h	<installdir>/package/include/tprotobuf/absl/time/civil_time.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/time/clock.h	<installdir>/package/include/tprotobuf/absl/time/clock.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/time/internal/cctz/include/cctz/civil_time_detail.h	<installdir>/package/include/tprotobuf/absl/time/internal/cctz/include/cctz/civil_time_detail.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/time/internal/cctz/include/cctz/civil_time.h	<installdir>/package/include/tprotobuf/absl/time/internal/cctz/include/cctz/civil_time.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/time/internal/cctz/include/cctz/time_zone.h	<installdir>/package/include/tprotobuf/absl/time/internal/cctz/include/cctz/time_zone.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/time/internal/cctz/include/cctz/zone_info_source.h	<installdir>/package/include/tprotobuf/absl/time/internal/cctz/include/cctz/zone_info_source.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/time/internal/cctz/src/time_zone_fixed.h	<installdir>/package/include/tprotobuf/absl/time/internal/cctz/src/time_zone_fixed.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/time/internal/cctz/src/time_zone_if.h	<installdir>/package/include/tprotobuf/absl/time/internal/cctz/src/time_zone_if.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/time/internal/cctz/src/time_zone_impl.h	<installdir>/package/include/tprotobuf/absl/time/internal/cctz/src/time_zone_impl.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.h	<installdir>/package/include/tprotobuf/absl/time/internal/cctz/src/time_zone_info.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/time/internal/cctz/src/time_zone_libc.h	<installdir>/package/include/tprotobuf/absl/time/internal/cctz/src/time_zone_libc.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/time/internal/cctz/src/time_zone_posix.h	<installdir>/package/include/tprotobuf/absl/time/internal/cctz/src/time_zone_posix.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/time/internal/cctz/src/tzfile.h	<installdir>/package/include/tprotobuf/absl/time/internal/cctz/src/tzfile.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/time/time.h	<installdir>/package/include/tprotobuf/absl/time/time.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/types/any.h	<installdir>/package/include/tprotobuf/absl/types/any.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/types/compare.h	<installdir>/package/include/tprotobuf/absl/types/compare.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/types/internal/span.h	<installdir>/package/include/tprotobuf/absl/types/internal/span.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/types/optional.h	<installdir>/package/include/tprotobuf/absl/types/optional.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/types/span.h	<installdir>/package/include/tprotobuf/absl/types/span.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/types/variant.h	<installdir>/package/include/tprotobuf/absl/types/variant.h	0	main	STP
+-<deliverydir>/external/protobuf/abseil-cpp/absl/utility/utility.h	<installdir>/package/include/tprotobuf/absl/utility/utility.h	0	main	STP
  <deliverydir>/common/buildenv.mk	<installdir>/package/buildenv.mk	0	main	STP
 diff --git a/linux/installer/common/sdk/BOMs/sdk_cve_2020_0551_cf.txt b/linux/installer/common/sdk/BOMs/sdk_cve_2020_0551_cf.txt
 index 7bd918da..144e2066 100644
@@ -374,7 +560,7 @@ index 4066ad1a..a8f07678 100644
  <deliverydir>/build/linux/libtdx_tls.a	<installdir>/package/lib64/libtdx_tls.a	0	main	STP
  <deliverydir>/build/linux/libsgx_utls.a	<installdir>/package/lib64/libsgx_utls.a	0	main	STP
 diff --git a/sdk/Makefile.source b/sdk/Makefile.source
-index 37fb7dc4..59c5f8ea 100644
+index 7b09375c..57c750fa 100644
 --- a/sdk/Makefile.source
 +++ b/sdk/Makefile.source
 @@ -40,13 +40,10 @@
@@ -395,8 +581,8 @@ index 37fb7dc4..59c5f8ea 100644
  LIBTSE     := $(BUILD_DIR)/libsgx_tservice.a
  
  .PHONY: components
--components: tstdc tcxx tservice trts tcrypto tprotected_fs uprotected_fs ptrace sample_crypto libcapable simulation signtool edger8r tcmalloc sgx_pcl sgx_encrypt sgx_tswitchless sgx_uswitchless pthread openmp protobuf ttls utls
-+components: tstdc tcxx tservice trts tcrypto tprotected_fs uprotected_fs ptrace libcapable simulation signtool edger8r tcmalloc sgx_pcl sgx_encrypt sgx_tswitchless sgx_uswitchless pthread ttls utls
+-components: tstdc tcxx tservice trts tcrypto tprotected_fs uprotected_fs ptrace sample_crypto libcapable simulation signtool edger8r tcmalloc sgx_pcl sgx_encrypt sgx_tswitchless sgx_uswitchless pthread openmp protobuf ttls utls tvl
++components: tstdc tcxx tservice trts tcrypto tprotected_fs uprotected_fs ptrace libcapable simulation signtool edger8r tcmalloc sgx_pcl sgx_encrypt sgx_tswitchless sgx_uswitchless pthread ttls utls tvl
  
  # ---------------------------------------------------
  #  tstdc
@@ -430,7 +616,7 @@ index 37fb7dc4..59c5f8ea 100644
  .PHONY: utls
  utls: cbor_untrusted
  	$(MAKE) -C utls
-@@ -321,7 +302,6 @@ clean:
+@@ -328,7 +309,6 @@ clean:
  	$(MAKE) -C protected_fs/sgx_tprotected_fs/     clean
  	$(MAKE) -C protected_fs/sgx_uprotected_fs/     clean
  	$(MAKE) -C debugger_interface/linux/           clean
@@ -438,7 +624,7 @@ index 37fb7dc4..59c5f8ea 100644
  	$(MAKE) -C libcapable/linux/                   clean
  	$(MAKE) -C simulation/                         clean
  	$(MAKE) -C sign_tool/SignTool                  clean
-@@ -332,8 +312,6 @@ clean:
+@@ -339,8 +319,6 @@ clean:
  	$(MAKE) -C switchless/sgx_uswitchless          clean
  	$(MAKE) -C tmm_rsrv/                           clean
  	$(MAKE) -C pthread                             clean

diff --git a/0006-psw-prefer-dev-sgx_provision-dev-sgx_enclave.patch b/0006-psw-prefer-dev-sgx_provision-dev-sgx_enclave.patch
index 3eaa315..6bcd41a 100644
--- a/0006-psw-prefer-dev-sgx_provision-dev-sgx_enclave.patch
+++ b/0006-psw-prefer-dev-sgx_provision-dev-sgx_enclave.patch
@@ -1,7 +1,7 @@
-From b6781ffdf7993718ddc232b27a0eac4d2ef2dddf Mon Sep 17 00:00:00 2001
+From d84bd5dc92f0fae52a3bffe3d60fb92b6f801c09 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
 Date: Fri, 4 Oct 2024 16:33:20 +0100
-Subject: [PATCH 06/17] psw: prefer /dev/sgx_provision & /dev/sgx_enclave
+Subject: [PATCH 06/16] psw: prefer /dev/sgx_provision & /dev/sgx_enclave
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit

diff --git a/0007-psw-fix-soname-for-libuae_service.so-library.patch b/0007-psw-fix-soname-for-libuae_service.so-library.patch
index 618fa52..0658ea1 100644
--- a/0007-psw-fix-soname-for-libuae_service.so-library.patch
+++ b/0007-psw-fix-soname-for-libuae_service.so-library.patch
@@ -1,7 +1,7 @@
-From e39bf7eef92faee1f6096d4ca7da0e2571a94cba Mon Sep 17 00:00:00 2001
+From 9018be7afd611543d2eb410f909ace4eef054ae9 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
 Date: Fri, 17 Jan 2025 15:38:56 +0000
-Subject: [PATCH 07/17] psw: fix soname for libuae_service.so library
+Subject: [PATCH 07/16] psw: fix soname for libuae_service.so library
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit

diff --git a/0008-pcl-remove-redundant-use-of-bool-type.patch b/0008-pcl-remove-redundant-use-of-bool-type.patch
deleted file mode 100644
index 099f8bf..0000000
--- a/0008-pcl-remove-redundant-use-of-bool-type.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 30c235fb42a26be114a50bc07b82a4700747df25 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Thu, 6 Feb 2025 09:54:33 +0000
-Subject: [PATCH 08/17] pcl: remove redundant use of 'bool' type
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The 'typedef unsigned int bool' statement is a compile error with
-GCC 15, since c23 defaults 'bool' as a built-in type / reserved
-keyword.
-
-The original openssl code from which pcl_vpaes_cbc_encrypt is
-copied simply used 'int', the actual method impl is asm code
-which just expects an int, and the only callers just pass the
-integer value 1. Remove use of the bool typedef since it is
-serving no purpose.
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- sdk/protected_code_loader/crypto/pcl_crypto_internal.h | 5 +----
- 1 file changed, 1 insertion(+), 4 deletions(-)
-
-diff --git a/sdk/protected_code_loader/crypto/pcl_crypto_internal.h b/sdk/protected_code_loader/crypto/pcl_crypto_internal.h
-index 5ad6efde..b78ca907 100644
---- a/sdk/protected_code_loader/crypto/pcl_crypto_internal.h
-+++ b/sdk/protected_code_loader/crypto/pcl_crypto_internal.h
-@@ -36,9 +36,6 @@
- 
- extern "C" 
- {	
--#else // Not C++, must define bool:
--
--typedef unsigned int bool;
- 
- #endif // #ifdef __cplusplus
- 
-@@ -106,7 +103,7 @@ void pcl_vpaes_cbc_encrypt(
-             size_t len, 
-             AES_KEY* wide_key_p, 
-             uint8_t* iv, 
--            bool encrypt);
-+            int encrypt);
- 
- #endif // #ifdef SE_SIM 
- 
--- 
-2.55.0
-

diff --git a/0008-sdk-honour-CFLAGS-LDFLAGS-set-from-environment.patch b/0008-sdk-honour-CFLAGS-LDFLAGS-set-from-environment.patch
new file mode 100644
index 0000000..b5ca049
--- /dev/null
+++ b/0008-sdk-honour-CFLAGS-LDFLAGS-set-from-environment.patch
@@ -0,0 +1,106 @@
+From 34d06dc761cce9ef4e50a9595e81b03d3f766844 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Thu, 27 Mar 2025 14:17:01 +0000
+Subject: [PATCH 08/16] sdk: honour CFLAGS/LDFLAGS set from environment
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ sdk/encrypt_enclave/Makefile                    | 2 +-
+ sdk/sign_tool/SignTool/Makefile                 | 2 +-
+ sdk/simulation/SEConfigureCPUSVN/linux/Makefile | 2 +-
+ sdk/simulation/uae_service_sim/linux/Makefile   | 2 +-
+ sdk/simulation/urtssim/linux/Makefile           | 8 ++++----
+ 5 files changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/sdk/encrypt_enclave/Makefile b/sdk/encrypt_enclave/Makefile
+index 2a023b68..1f331d9a 100644
+--- a/sdk/encrypt_enclave/Makefile
++++ b/sdk/encrypt_enclave/Makefile
+@@ -13,7 +13,7 @@ endif
+ 
+ INC_DIR	:= -I$(COMMON_DIR)/inc -I$(COMMON_DIR)/inc/internal -I.
+ CXXFLAGS += $(INC_DIR) -Wno-attributes -g -mrdrnd -fpie -Werror=format-security
+-LDFLAGS := -pie $(COMMON_LDFLAGS)
++LDFLAGS += -pie $(COMMON_LDFLAGS)
+ 
+ LINK_FLAGS := -lcrypto -L$(BUILD_DIR) -lsgx_tservice
+ CPP_FILES := encryptip.cpp
+diff --git a/sdk/sign_tool/SignTool/Makefile b/sdk/sign_tool/SignTool/Makefile
+index 712e3771..928619d6 100644
+--- a/sdk/sign_tool/SignTool/Makefile
++++ b/sdk/sign_tool/SignTool/Makefile
+@@ -15,7 +15,7 @@ FLAGS += -DSE_DEBUG_LEVEL=SE_TRACE_ERROR
+ endif
+ CFLAGS += $(FLAGS)
+ CXXFLAGS += $(FLAGS)
+-LDFLAGS := -pie $(COMMON_LDFLAGS) -Wno-odr
++LDFLAGS += -pie $(COMMON_LDFLAGS) -Wno-odr
+ 
+ INC += $(ADDED_INC)
+ INC +=  -I$(COMMON_DIR)/inc                         \
+diff --git a/sdk/simulation/SEConfigureCPUSVN/linux/Makefile b/sdk/simulation/SEConfigureCPUSVN/linux/Makefile
+index fce3a59e..5fd8548e 100644
+--- a/sdk/simulation/SEConfigureCPUSVN/linux/Makefile
++++ b/sdk/simulation/SEConfigureCPUSVN/linux/Makefile
+@@ -45,7 +45,7 @@ SRCS += $(SIM_DIR)/urtssim/cpusvn_util.cpp
+ OBJS := $(sort $(SRCS:.cpp=.o))
+ 
+ WRAPPER_LIB_DIR := $(COMMON_DIR)/se_wrapper
+-LDFLAGS := -L$(WRAPPER_LIB_DIR)
++LDFLAGS += -L$(WRAPPER_LIB_DIR)
+ CXXFLAGS += -fpie $(CET_FLAGS)
+ LDFLAGS += -pie $(COMMON_LDFLAGS)
+ LDLIBS  := -lwrapper
+diff --git a/sdk/simulation/uae_service_sim/linux/Makefile b/sdk/simulation/uae_service_sim/linux/Makefile
+index f73e230f..00c2346e 100644
+--- a/sdk/simulation/uae_service_sim/linux/Makefile
++++ b/sdk/simulation/uae_service_sim/linux/Makefile
+@@ -50,7 +50,7 @@ INCLUDES := -I..                                                   \
+ 
+ CXXFLAGS += -Wall -fPIC $(INCLUDES) -Werror -g $(CET_FLAGS)
+ CFLAGS := $(filter-out -fPIC -Werror, $(CFLAGS)) -Wall $(INCLUDES) $(CET_FLAGS)
+-
++LDUFLAGS += $(LDFLAGS)
+ 
+ RDRAND_LIBDIR := $(LINUX_EXTERNAL_DIR)/rdrand/src
+ RDRAND_MAKEFILE := $(RDRAND_LIBDIR)/Makefile
+diff --git a/sdk/simulation/urtssim/linux/Makefile b/sdk/simulation/urtssim/linux/Makefile
+index 8af19905..78f53484 100644
+--- a/sdk/simulation/urtssim/linux/Makefile
++++ b/sdk/simulation/urtssim/linux/Makefile
+@@ -65,9 +65,9 @@ DIR5 := $(LINUX_PSW_DIR)/../common/src/linux
+ DIR6 := $(LINUX_PSW_DIR)/../common/src
+ 
+ 
+-LDFLAGS += -L$(COMMON_DIR)/se_wrapper \
++LDUFLAGS += -L$(COMMON_DIR)/se_wrapper \
+            -L$(SIM_DIR)/uae_service_sim/linux
+-LDFLAGS += -L$(VTUNE_DIR)/sdk/src/ittnotify/ -littnotify -ldl -lpthread
++LDUFLAGS += -L$(VTUNE_DIR)/sdk/src/ittnotify/ -littnotify -ldl -lpthread
+ 
+ OBJ1 := enclave.o         \
+         tcs.o             \
+@@ -119,7 +119,7 @@ vpath %.cpp .:$(DIR1):$(DIR2):$(DIR3):$(DIR4):$(DIR6)
+ vpath %.S   .:$(DIR2):$(DIR5)
+ vpath %.c .:$(DIR6)
+ 
+-LDFLAGS += $(COMMON_LDFLAGS) -Wl,--version-script=$(LINUX_PSW_DIR)/urts/linux/urts.lds
++LDUFLAGS += $(COMMON_LDFLAGS) -Wl,--version-script=$(LINUX_PSW_DIR)/urts/linux/urts.lds
+ 
+ LIBURTSSIM_SHARED := libsgx_urts_sim.so
+ LIBURTS_DEPLOY := libsgx_urts_deploy.so
+@@ -133,7 +133,7 @@ all: $(LIBURTSSIM_SHARED) $(LIBURTS_DEPLOY)| $(BUILD_DIR)
+ 	$(CP) $(LIBURTS_DEPLOY) $|
+ 
+ $(LIBURTSSIM_SHARED): simasm uinst driver_api wrapper uae_service_sim $(OBJ) $(OBJ6) ittnotify
+-	$(CXX) $(CXXFLAGS) -shared -Wl,-soname=$(SONAME) $(OBJ) $(OBJ6) $(LDFLAGS) $(LDLIBS) -o $@
++	$(CXX) $(CXXFLAGS) -shared -Wl,-soname=$(SONAME) $(OBJ) $(OBJ6) $(LDUFLAGS) $(LDLIBS) -o $@
+ 
+ $(BUILD_DIR):
+ 	@$(MKDIR) $@
+-- 
+2.55.0
+

diff --git a/0009-psw-make-aesm_service-build-verbose.patch b/0009-psw-make-aesm_service-build-verbose.patch
new file mode 100644
index 0000000..befe40a
--- /dev/null
+++ b/0009-psw-make-aesm_service-build-verbose.patch
@@ -0,0 +1,29 @@
+From 5e344996dc7cf67992da1110779c150b5ed63573 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Thu, 27 Mar 2025 16:07:10 +0000
+Subject: [PATCH 09/16] psw: make aesm_service build verbose.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ psw/ae/aesm_service/Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/psw/ae/aesm_service/Makefile b/psw/ae/aesm_service/Makefile
+index f3585bbb..6e01cff9 100644
+--- a/psw/ae/aesm_service/Makefile
++++ b/psw/ae/aesm_service/Makefile
+@@ -50,7 +50,7 @@ all: $(APPNAME) $(APPNAME_DEBUG) | $(BUILD_DIR)
+ 	$(CP) -r source/build/bin/* $|
+ 
+ $(APPNAME): $(CPPMICROSERVICES) source/build/CMakeCache.txt urts RDRAND
+-	$(MAKE) -C source/build
++	$(MAKE) -C source/build VERBOSE=1
+ ifeq ($(USE_HOST_CPPMICROSERVICES), 0)
+ 	$(CP) $(CPPMICROSERVICES) source/build/bin/
+ endif
+-- 
+2.55.0
+

diff --git a/0009-sdk-honour-CFLAGS-LDFLAGS-set-from-environment.patch b/0009-sdk-honour-CFLAGS-LDFLAGS-set-from-environment.patch
deleted file mode 100644
index 36fa76b..0000000
--- a/0009-sdk-honour-CFLAGS-LDFLAGS-set-from-environment.patch
+++ /dev/null
@@ -1,126 +0,0 @@
-From f5703f8320b8fb6f4a5f227bb522ea8e1d7721e9 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Thu, 27 Mar 2025 14:17:01 +0000
-Subject: [PATCH 09/17] sdk: honour CFLAGS/LDFLAGS set from environment
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- sdk/debugger_interface/linux/Makefile           | 5 +----
- sdk/encrypt_enclave/Makefile                    | 2 +-
- sdk/sign_tool/SignTool/Makefile                 | 2 +-
- sdk/simulation/SEConfigureCPUSVN/linux/Makefile | 2 +-
- sdk/simulation/uae_service_sim/linux/Makefile   | 2 +-
- sdk/simulation/urtssim/linux/Makefile           | 8 ++++----
- 6 files changed, 9 insertions(+), 12 deletions(-)
-
-diff --git a/sdk/debugger_interface/linux/Makefile b/sdk/debugger_interface/linux/Makefile
-index 018b8a31..a86b6085 100644
---- a/sdk/debugger_interface/linux/Makefile
-+++ b/sdk/debugger_interface/linux/Makefile
-@@ -31,13 +31,10 @@
- 
- include ../../../buildenv.mk
- 
--#Don't CFLAGS +=, because it depend on gdb is m32 or m64
--CFLAGS :=
--
- CPPFLAGS += -I$(COMMON_DIR)/inc/           \
-             -I$(COMMON_DIR)/inc/internal/
- 
--CFLAGS += -W -Wall -Werror -D_GNU_SOURCE -fpic -fstack-protector-strong
-+CFLAGS += -W -Wall -Werror -D_GNU_SOURCE -fpic -fstack-protector-strong -Wno-conversion -Wno-redundant-decls
- LDLIBS += -ldl
- 
- ifdef DEBUG
-diff --git a/sdk/encrypt_enclave/Makefile b/sdk/encrypt_enclave/Makefile
-index d388dc1d..867de978 100644
---- a/sdk/encrypt_enclave/Makefile
-+++ b/sdk/encrypt_enclave/Makefile
-@@ -39,7 +39,7 @@ endif
- 
- INC_DIR	:= -I$(COMMON_DIR)/inc -I$(COMMON_DIR)/inc/internal -I.
- CXXFLAGS += $(INC_DIR) -Wno-attributes -g -mrdrnd -fpie
--LDFLAGS := -pie $(COMMON_LDFLAGS)
-+LDFLAGS += -pie $(COMMON_LDFLAGS)
- 
- LINK_FLAGS := -lcrypto -L$(BUILD_DIR) -lsgx_tservice
- CPP_FILES := encryptip.cpp
-diff --git a/sdk/sign_tool/SignTool/Makefile b/sdk/sign_tool/SignTool/Makefile
-index 1dcb6f51..1601de09 100644
---- a/sdk/sign_tool/SignTool/Makefile
-+++ b/sdk/sign_tool/SignTool/Makefile
-@@ -40,7 +40,7 @@ FLAGS += -DSE_DEBUG_LEVEL=SE_TRACE_ERROR
- endif
- CFLAGS += $(FLAGS)
- CXXFLAGS += $(FLAGS)
--LDFLAGS := -pie $(COMMON_LDFLAGS) -Wno-odr
-+LDFLAGS += -pie $(COMMON_LDFLAGS) -Wno-odr
- 
- INC += $(ADDED_INC)
- INC +=  -I$(COMMON_DIR)/inc                         \
-diff --git a/sdk/simulation/SEConfigureCPUSVN/linux/Makefile b/sdk/simulation/SEConfigureCPUSVN/linux/Makefile
-index fce3a59e..5fd8548e 100644
---- a/sdk/simulation/SEConfigureCPUSVN/linux/Makefile
-+++ b/sdk/simulation/SEConfigureCPUSVN/linux/Makefile
-@@ -45,7 +45,7 @@ SRCS += $(SIM_DIR)/urtssim/cpusvn_util.cpp
- OBJS := $(sort $(SRCS:.cpp=.o))
- 
- WRAPPER_LIB_DIR := $(COMMON_DIR)/se_wrapper
--LDFLAGS := -L$(WRAPPER_LIB_DIR)
-+LDFLAGS += -L$(WRAPPER_LIB_DIR)
- CXXFLAGS += -fpie $(CET_FLAGS)
- LDFLAGS += -pie $(COMMON_LDFLAGS)
- LDLIBS  := -lwrapper
-diff --git a/sdk/simulation/uae_service_sim/linux/Makefile b/sdk/simulation/uae_service_sim/linux/Makefile
-index 3d5b5628..6a50f7eb 100644
---- a/sdk/simulation/uae_service_sim/linux/Makefile
-+++ b/sdk/simulation/uae_service_sim/linux/Makefile
-@@ -51,7 +51,7 @@ INCLUDES := -I..                                                   \
- 
- CXXFLAGS += -Wall -fPIC $(INCLUDES) -Werror -g $(CET_FLAGS)
- CFLAGS := $(filter-out -fPIC -Werror, $(CFLAGS)) -Wall $(INCLUDES) $(CET_FLAGS)
--
-+LDUFLAGS += $(LDFLAGS)
- 
- RDRAND_LIBDIR := $(LINUX_EXTERNAL_DIR)/rdrand/src
- RDRAND_MAKEFILE := $(RDRAND_LIBDIR)/Makefile
-diff --git a/sdk/simulation/urtssim/linux/Makefile b/sdk/simulation/urtssim/linux/Makefile
-index 8af19905..78f53484 100644
---- a/sdk/simulation/urtssim/linux/Makefile
-+++ b/sdk/simulation/urtssim/linux/Makefile
-@@ -65,9 +65,9 @@ DIR5 := $(LINUX_PSW_DIR)/../common/src/linux
- DIR6 := $(LINUX_PSW_DIR)/../common/src
- 
- 
--LDFLAGS += -L$(COMMON_DIR)/se_wrapper \
-+LDUFLAGS += -L$(COMMON_DIR)/se_wrapper \
-            -L$(SIM_DIR)/uae_service_sim/linux
--LDFLAGS += -L$(VTUNE_DIR)/sdk/src/ittnotify/ -littnotify -ldl -lpthread
-+LDUFLAGS += -L$(VTUNE_DIR)/sdk/src/ittnotify/ -littnotify -ldl -lpthread
- 
- OBJ1 := enclave.o         \
-         tcs.o             \
-@@ -119,7 +119,7 @@ vpath %.cpp .:$(DIR1):$(DIR2):$(DIR3):$(DIR4):$(DIR6)
- vpath %.S   .:$(DIR2):$(DIR5)
- vpath %.c .:$(DIR6)
- 
--LDFLAGS += $(COMMON_LDFLAGS) -Wl,--version-script=$(LINUX_PSW_DIR)/urts/linux/urts.lds
-+LDUFLAGS += $(COMMON_LDFLAGS) -Wl,--version-script=$(LINUX_PSW_DIR)/urts/linux/urts.lds
- 
- LIBURTSSIM_SHARED := libsgx_urts_sim.so
- LIBURTS_DEPLOY := libsgx_urts_deploy.so
-@@ -133,7 +133,7 @@ all: $(LIBURTSSIM_SHARED) $(LIBURTS_DEPLOY)| $(BUILD_DIR)
- 	$(CP) $(LIBURTS_DEPLOY) $|
- 
- $(LIBURTSSIM_SHARED): simasm uinst driver_api wrapper uae_service_sim $(OBJ) $(OBJ6) ittnotify
--	$(CXX) $(CXXFLAGS) -shared -Wl,-soname=$(SONAME) $(OBJ) $(OBJ6) $(LDFLAGS) $(LDLIBS) -o $@
-+	$(CXX) $(CXXFLAGS) -shared -Wl,-soname=$(SONAME) $(OBJ) $(OBJ6) $(LDUFLAGS) $(LDLIBS) -o $@
- 
- $(BUILD_DIR):
- 	@$(MKDIR) $@
--- 
-2.55.0
-

diff --git a/0010-Fix-modern-C-function-prototype-compliance.patch b/0010-Fix-modern-C-function-prototype-compliance.patch
new file mode 100644
index 0000000..212d3c1
--- /dev/null
+++ b/0010-Fix-modern-C-function-prototype-compliance.patch
@@ -0,0 +1,43 @@
+From ccdc57bd8a98b677b0ed2008f5a8bfb42ceb03a4 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Mon, 31 Mar 2025 10:55:25 +0100
+Subject: [PATCH 10/16] Fix modern C function prototype compliance
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ common/inc/internal/se_cdefs.h           | 2 +-
+ sdk/debugger_interface/linux/se_ptrace.c | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/common/inc/internal/se_cdefs.h b/common/inc/internal/se_cdefs.h
+index edbe25fa..76083b02 100644
+--- a/common/inc/internal/se_cdefs.h
++++ b/common/inc/internal/se_cdefs.h
+@@ -94,7 +94,7 @@
+ 
+ #define SGX_ACCESS_VERSION(libname, num)                    \
+     MY_EXTERN char sgx_##libname##_version[];          \
+-    MY_EXTERN char * __attribute__((destructor)) libname##_access_version_dummy##num()      \
++    MY_EXTERN char * __attribute__((destructor)) libname##_access_version_dummy##num(void)  \
+     {                                                                                       \
+         sgx_##libname##_version[0] = 's';                                                   \
+         return sgx_##libname##_version;                                                     \
+diff --git a/sdk/debugger_interface/linux/se_ptrace.c b/sdk/debugger_interface/linux/se_ptrace.c
+index 8e4e7600..8c38bb68 100644
+--- a/sdk/debugger_interface/linux/se_ptrace.c
++++ b/sdk/debugger_interface/linux/se_ptrace.c
+@@ -76,7 +76,7 @@ typedef pid_t (*waitpid_t)(pid_t pid, int *status, int options);
+ 
+ static ptrace_t g_sys_ptrace = NULL;
+ static waitpid_t g_sys_waitpid = NULL;
+-__attribute__((constructor)) void init()
++__attribute__((constructor)) void init(void)
+ {
+     g_sys_ptrace = (ptrace_t)dlsym(RTLD_NEXT, "ptrace");
+     g_sys_waitpid = (waitpid_t)dlsym(RTLD_NEXT, "waitpid");
+-- 
+2.55.0
+

diff --git a/0010-psw-make-aesm_service-build-verbose.patch b/0010-psw-make-aesm_service-build-verbose.patch
deleted file mode 100644
index 7fdd26f..0000000
--- a/0010-psw-make-aesm_service-build-verbose.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 693ee7cf08bf06c9de402fd3df5fb8d44c40e903 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Thu, 27 Mar 2025 16:07:10 +0000
-Subject: [PATCH 10/17] psw: make aesm_service build verbose.
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- psw/ae/aesm_service/Makefile | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/psw/ae/aesm_service/Makefile b/psw/ae/aesm_service/Makefile
-index b469bffb..b150044e 100644
---- a/psw/ae/aesm_service/Makefile
-+++ b/psw/ae/aesm_service/Makefile
-@@ -71,7 +71,7 @@ all: $(APPNAME) $(APPNAME_DEBUG) | $(BUILD_DIR)
- 	$(CP) -r source/build/bin/* $|
- 
- $(APPNAME): $(CPPMICROSERVICES) source/build/CMakeCache.txt urts RDRAND
--	$(MAKE) -C source/build
-+	$(MAKE) -C source/build VERBOSE=1
- ifeq ($(USE_HOST_CPPMICROSERVICES), 0)
- 	$(CP) $(CPPMICROSERVICES) source/build/bin/
- endif
--- 
-2.55.0
-

diff --git a/0011-Add-wrapper-for-nasm-to-fix-cmake-compat.patch b/0011-Add-wrapper-for-nasm-to-fix-cmake-compat.patch
new file mode 100644
index 0000000..2a3575d
--- /dev/null
+++ b/0011-Add-wrapper-for-nasm-to-fix-cmake-compat.patch
@@ -0,0 +1,69 @@
+From 12a97883373577c3c7e07f3d7f4a214af15bcc89 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Wed, 2 Apr 2025 17:11:25 +0100
+Subject: [PATCH 11/16] Add wrapper for nasm to fix cmake compat
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+cmake needs to detect nasm by running with the '-v' arg, but it
+cannot cope with the nasm command being anything other than a
+single binary name - it won't accept & pass on args during the
+detection phase. Thus a further wrapper is needed.
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ build-scripts/sgx-nasm.sh        | 12 ++++++++++++
+ external/ippcp_internal/Makefile |  8 +++++---
+ 2 files changed, 17 insertions(+), 3 deletions(-)
+ create mode 100755 build-scripts/sgx-nasm.sh
+
+diff --git a/build-scripts/sgx-nasm.sh b/build-scripts/sgx-nasm.sh
+new file mode 100755
+index 00000000..a2c3fd74
+--- /dev/null
++++ b/build-scripts/sgx-nasm.sh
+@@ -0,0 +1,12 @@
++#!/bin/sh
++
++set -e
++
++if test "$1" == "-v"
++then
++    exec nasm -v
++else
++    here=$(dirname $0)
++    echo python3 ${here}/sgx-asm-pp.py --assembler=nasm --MITIGATION-CVE-2020-0551=${MITIGATION} "$@"
++    exec python3 ${here}/sgx-asm-pp.py --assembler=nasm --MITIGATION-CVE-2020-0551=${MITIGATION} "$@"
++fi
+diff --git a/external/ippcp_internal/Makefile b/external/ippcp_internal/Makefile
+index d78ba90e..71a40247 100644
+--- a/external/ippcp_internal/Makefile
++++ b/external/ippcp_internal/Makefile
+@@ -58,10 +58,12 @@ IPP_CONFIG += -DIPPCP_FIPS_MODE=on  -DFIPS_CUSTOM_IPPCP_API_HEADER=$(CURDIR)/inc
+ SUB_DIR = no_mitigation
+ ifeq ($(MITIGATION-CVE-2020-0551), LOAD)
+ 	SUB_DIR = cve_2020_0551_load
+-	PRE_CONFIG= ASM_NASM="python $(DIR)/../../build-scripts/sgx-asm-pp.py --assembler=nasm --MITIGATION-CVE-2020-0551=LOAD"
++	PRE_CONFIG = ASM_NASM="$(DIR)/../../build-scripts/sgx-nasm.sh"
++        POST_CONFIG = MITIGATION=LOAD
+ else ifeq ($(MITIGATION-CVE-2020-0551), CF)
+ 	SUB_DIR = cve_2020_0551_cf
+-	PRE_CONFIG= ASM_NASM="python $(DIR)/../../build-scripts/sgx-asm-pp.py --assembler=nasm --MITIGATION-CVE-2020-0551=CF"
++	PRE_CONFIG = ASM_NASM="$(DIR)/../../build-scripts/sgx-nasm.sh"
++	POST_CONFIG = MITIGATION=CF
+ endif
+ OUT_DIR = lib/linux/$(ARCH)/$(SUB_DIR)/
+ 
+@@ -84,7 +86,7 @@ all: build_ipp
+ 	$(CP) ipp-crypto/LICENSE ./license/
+ 
+ build_ipp: $(CHECK_SOURCE)
+-	cd $(IPP_SOURCE) && $(PRE_CONFIG) cmake CMakeLists.txt $(IPP_CONFIG) && cd build && make ippcp_s
++	cd $(IPP_SOURCE) && $(PRE_CONFIG) cmake CMakeLists.txt $(IPP_CONFIG) && cd build && $(POST_CONFIG) make ippcp_s
+ 
+ $(IPP_SOURCE)/build:
+ ifeq ($(IPP_USE_GIT), 1)
+-- 
+2.55.0
+

diff --git a/0011-Fix-modern-C-function-prototype-compliance.patch b/0011-Fix-modern-C-function-prototype-compliance.patch
deleted file mode 100644
index 2cd6fbd..0000000
--- a/0011-Fix-modern-C-function-prototype-compliance.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From acd8d8671bc163a078c189b90244a521d1c4ac5a Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Mon, 31 Mar 2025 10:55:25 +0100
-Subject: [PATCH 11/17] Fix modern C function prototype compliance
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- common/inc/internal/se_cdefs.h           | 2 +-
- sdk/debugger_interface/linux/se_ptrace.c | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/common/inc/internal/se_cdefs.h b/common/inc/internal/se_cdefs.h
-index edbe25fa..76083b02 100644
---- a/common/inc/internal/se_cdefs.h
-+++ b/common/inc/internal/se_cdefs.h
-@@ -94,7 +94,7 @@
- 
- #define SGX_ACCESS_VERSION(libname, num)                    \
-     MY_EXTERN char sgx_##libname##_version[];          \
--    MY_EXTERN char * __attribute__((destructor)) libname##_access_version_dummy##num()      \
-+    MY_EXTERN char * __attribute__((destructor)) libname##_access_version_dummy##num(void)  \
-     {                                                                                       \
-         sgx_##libname##_version[0] = 's';                                                   \
-         return sgx_##libname##_version;                                                     \
-diff --git a/sdk/debugger_interface/linux/se_ptrace.c b/sdk/debugger_interface/linux/se_ptrace.c
-index 8e4e7600..8c38bb68 100644
---- a/sdk/debugger_interface/linux/se_ptrace.c
-+++ b/sdk/debugger_interface/linux/se_ptrace.c
-@@ -76,7 +76,7 @@ typedef pid_t (*waitpid_t)(pid_t pid, int *status, int options);
- 
- static ptrace_t g_sys_ptrace = NULL;
- static waitpid_t g_sys_waitpid = NULL;
--__attribute__((constructor)) void init()
-+__attribute__((constructor)) void init(void)
- {
-     g_sys_ptrace = (ptrace_t)dlsym(RTLD_NEXT, "ptrace");
-     g_sys_waitpid = (waitpid_t)dlsym(RTLD_NEXT, "waitpid");
--- 
-2.55.0
-

diff --git a/0012-Add-wrapper-for-nasm-to-fix-cmake-compat.patch b/0012-Add-wrapper-for-nasm-to-fix-cmake-compat.patch
deleted file mode 100644
index e3ef33c..0000000
--- a/0012-Add-wrapper-for-nasm-to-fix-cmake-compat.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-From 258dfa3df79b8286549856003e8234975434fbb3 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Wed, 2 Apr 2025 17:11:25 +0100
-Subject: [PATCH 12/17] Add wrapper for nasm to fix cmake compat
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-cmake needs to detect nasm by running with the '-v' arg, but it
-cannot cope with the nasm command being anything other than a
-single binary name - it won't accept & pass on args during the
-detection phase. Thus a further wrapper is needed.
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- build-scripts/sgx-nasm.sh        | 12 ++++++++++++
- external/ippcp_internal/Makefile |  8 +++++---
- 2 files changed, 17 insertions(+), 3 deletions(-)
- create mode 100755 build-scripts/sgx-nasm.sh
-
-diff --git a/build-scripts/sgx-nasm.sh b/build-scripts/sgx-nasm.sh
-new file mode 100755
-index 00000000..a2c3fd74
---- /dev/null
-+++ b/build-scripts/sgx-nasm.sh
-@@ -0,0 +1,12 @@
-+#!/bin/sh
-+
-+set -e
-+
-+if test "$1" == "-v"
-+then
-+    exec nasm -v
-+else
-+    here=$(dirname $0)
-+    echo python3 ${here}/sgx-asm-pp.py --assembler=nasm --MITIGATION-CVE-2020-0551=${MITIGATION} "$@"
-+    exec python3 ${here}/sgx-asm-pp.py --assembler=nasm --MITIGATION-CVE-2020-0551=${MITIGATION} "$@"
-+fi
-diff --git a/external/ippcp_internal/Makefile b/external/ippcp_internal/Makefile
-index d78ba90e..71a40247 100644
---- a/external/ippcp_internal/Makefile
-+++ b/external/ippcp_internal/Makefile
-@@ -58,10 +58,12 @@ IPP_CONFIG += -DIPPCP_FIPS_MODE=on  -DFIPS_CUSTOM_IPPCP_API_HEADER=$(CURDIR)/inc
- SUB_DIR = no_mitigation
- ifeq ($(MITIGATION-CVE-2020-0551), LOAD)
- 	SUB_DIR = cve_2020_0551_load
--	PRE_CONFIG= ASM_NASM="python $(DIR)/../../build-scripts/sgx-asm-pp.py --assembler=nasm --MITIGATION-CVE-2020-0551=LOAD"
-+	PRE_CONFIG = ASM_NASM="$(DIR)/../../build-scripts/sgx-nasm.sh"
-+        POST_CONFIG = MITIGATION=LOAD
- else ifeq ($(MITIGATION-CVE-2020-0551), CF)
- 	SUB_DIR = cve_2020_0551_cf
--	PRE_CONFIG= ASM_NASM="python $(DIR)/../../build-scripts/sgx-asm-pp.py --assembler=nasm --MITIGATION-CVE-2020-0551=CF"
-+	PRE_CONFIG = ASM_NASM="$(DIR)/../../build-scripts/sgx-nasm.sh"
-+	POST_CONFIG = MITIGATION=CF
- endif
- OUT_DIR = lib/linux/$(ARCH)/$(SUB_DIR)/
- 
-@@ -84,7 +86,7 @@ all: build_ipp
- 	$(CP) ipp-crypto/LICENSE ./license/
- 
- build_ipp: $(CHECK_SOURCE)
--	cd $(IPP_SOURCE) && $(PRE_CONFIG) cmake CMakeLists.txt $(IPP_CONFIG) && cd build && make ippcp_s
-+	cd $(IPP_SOURCE) && $(PRE_CONFIG) cmake CMakeLists.txt $(IPP_CONFIG) && cd build && $(POST_CONFIG) make ippcp_s
- 
- $(IPP_SOURCE)/build:
- ifeq ($(IPP_USE_GIT), 1)
--- 
-2.55.0
-

diff --git a/0012-linux-installer-drop-PCCS-package-from-BOM.patch b/0012-linux-installer-drop-PCCS-package-from-BOM.patch
new file mode 100644
index 0000000..f8d196c
--- /dev/null
+++ b/0012-linux-installer-drop-PCCS-package-from-BOM.patch
@@ -0,0 +1,301 @@
+From d055288d180391798cb8b97bf52bc21261cead88 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Fri, 27 Jun 2025 11:37:26 +0100
+Subject: [PATCH 12/16] linux/installer: drop PCCS package from BOM
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+PCCS will now be distributed as a standalone RPM package.
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ .../psw-dcap/BOM_install/sgx-dcap-pccs.txt    | 74 -------------------
+ linux/installer/common/psw-dcap/Makefile      | 14 +---
+ linux/installer/common/psw-dcap/installConfig |  1 -
+ .../psw-tdx/BOM_install/sgx-dcap-pccs.txt     | 74 -------------------
+ linux/installer/common/psw-tdx/Makefile       | 14 +---
+ linux/installer/common/psw-tdx/installConfig  |  1 -
+ 6 files changed, 2 insertions(+), 176 deletions(-)
+ delete mode 100644 linux/installer/common/psw-dcap/BOM_install/sgx-dcap-pccs.txt
+ delete mode 100644 linux/installer/common/psw-tdx/BOM_install/sgx-dcap-pccs.txt
+
+diff --git a/linux/installer/common/psw-dcap/BOM_install/sgx-dcap-pccs.txt b/linux/installer/common/psw-dcap/BOM_install/sgx-dcap-pccs.txt
+deleted file mode 100644
+index 4d16e883..00000000
+--- a/linux/installer/common/psw-dcap/BOM_install/sgx-dcap-pccs.txt
++++ /dev/null
+@@ -1,74 +0,0 @@
+-DeliveryName	InstallName	FileCheckSum	FileFeature	FileOwner
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/config/default.json	<installdir>/config/default.json	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/constants/index.js	<installdir>/constants/index.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/constants/pccs_status_code.js	<installdir>/constants/pccs_status_code.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/identityController.js	<installdir>/controllers/identityController.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/index.js	<installdir>/controllers/index.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/pckcertController.js	<installdir>/controllers/pckcertController.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/pckcrlController.js	<installdir>/controllers/pckcrlController.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/platformCollateralController.js	<installdir>/controllers/platformCollateralController.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/platformsController.js	<installdir>/controllers/platformsController.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/refreshController.js	<installdir>/controllers/refreshController.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/rootcacrlController.js	<installdir>/controllers/rootcacrlController.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/tcbinfoController.js	<installdir>/controllers/tcbinfoController.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/crlController.js	<installdir>/controllers/crlController.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/fmspc_tcbs.js	<installdir>/dao/models/fmspc_tcbs.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/index.js	<installdir>/dao/models/index.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/pck_cert.js	<installdir>/dao/models/pck_cert.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/pck_certchain.js	<installdir>/dao/models/pck_certchain.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/pck_crl.js	<installdir>/dao/models/pck_crl.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/pcs_certificates.js	<installdir>/dao/models/pcs_certificates.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/pcs_version.js	<installdir>/dao/models/pcs_version.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/platform_tcbs.js	<installdir>/dao/models/platform_tcbs.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/platforms_registered.js	<installdir>/dao/models/platforms_registered.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/platforms.js	<installdir>/dao/models/platforms.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/enclave_identities.js	<installdir>/dao/models/enclave_identities.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/crl_cache.js	<installdir>/dao/models/crl_cache.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/fmspcTcbDao.js	<installdir>/dao/fmspcTcbDao.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/pckCertchainDao.js	<installdir>/dao/pckCertchainDao.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/pckcertDao.js	<installdir>/dao/pckcertDao.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/pckcrlDao.js	<installdir>/dao/pckcrlDao.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/pcsCertificatesDao.js	<installdir>/dao/pcsCertificatesDao.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/pcsVersionDao.js	<installdir>/dao/pcsVersionDao.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/platformsDao.js	<installdir>/dao/platformsDao.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/platformsRegDao.js	<installdir>/dao/platformsRegDao.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/platformTcbsDao.js	<installdir>/dao/platformTcbsDao.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/enclaveIdentityDao.js	<installdir>/dao/enclaveIdentityDao.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/crlCacheDao.js	<installdir>/dao/crlCacheDao.js	0	main	STP
+-<deliverydir>/external/dcap_source/tools/PCKCertSelection/out/libPCKCertSelection.so	<installdir>/lib/libPCKCertSelection.so	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/lib_wrapper/pcklib_wrapper.js	<installdir>/lib_wrapper/pcklib_wrapper.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/middleware/auth.js	<installdir>/middleware/auth.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/middleware/error.js	<installdir>/middleware/error.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/middleware/addRequestId.js	<installdir>/middleware/addRequestId.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/migrations/00_db_initialize.up.sql	<installdir>/migrations/00_db_initialize.up.sql	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/migrations/01_db_version_1.js	<installdir>/migrations/01_db_version_1.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/migrations/02_db_version_2.js	<installdir>/migrations/02_db_version_2.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/pcs_client/pcs_client.js	<installdir>/pcs_client/pcs_client.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/routes/index.js	<installdir>/routes/index.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/identityService.js	<installdir>/services/identityService.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/index.js	<installdir>/services/index.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/pccs_schemas.js	<installdir>/services/pccs_schemas.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/pckcertService.js	<installdir>/services/pckcertService.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/pckcrlService.js	<installdir>/services/pckcrlService.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/platformCollateralService.js	<installdir>/services/platformCollateralService.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/platformsRegService.js	<installdir>/services/platformsRegService.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/platformsService.js	<installdir>/services/platformsService.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/refreshService.js	<installdir>/services/refreshService.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/rootcacrlService.js	<installdir>/services/rootcacrlService.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/tcbinfoService.js	<installdir>/services/tcbinfoService.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/crlService.js	<installdir>/services/crlService.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/caching_modes/cachingMode.js	<installdir>/services/caching_modes/cachingMode.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/caching_modes/cachingModeManager.js	<installdir>/services/caching_modes/cachingModeManager.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/logic/commonCacheLogic.js	<installdir>/services/logic/commonCacheLogic.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/logic/qvCollateralLogic.js	<installdir>/services/logic/qvCollateralLogic.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/utils/Logger.js	<installdir>/utils/Logger.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/utils/PccsError.js	<installdir>/utils/PccsError.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/utils/apputil.js	<installdir>/utils/apputil.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/x509/x509.js	<installdir>/x509/x509.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/install.sh	<installdir>/install.sh	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/package.json	<installdir>/package.json	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/pccs_server.js	<installdir>/pccs_server.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/pccs.service	<installdir>/pccs.service	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/startup.sh	<installdir>/startup.sh	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/cleanup.sh	<installdir>/cleanup.sh	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/README.md	<installdir>/README.md	0	main	STP
+diff --git a/linux/installer/common/psw-dcap/Makefile b/linux/installer/common/psw-dcap/Makefile
+index 9236de6a..1ae7a292 100644
+--- a/linux/installer/common/psw-dcap/Makefile
++++ b/linux/installer/common/psw-dcap/Makefile
+@@ -59,9 +59,6 @@ AESMD_CONF=aesmd.service
+ AESMD_CONF_DEL=aesmd.conf
+ AESMD_CONF_PATH=$(if $(wildcard /lib/systemd/system/.),/lib/systemd/system,/usr/lib/systemd/system)
+ 
+-PCCS_CONF=pccs.service
+-PCCS_CONF_PATH=$(if $(wildcard /lib/systemd/system/.),/lib/systemd/system,/usr/lib/systemd/system)
+-
+ RAD_CONF=mpa_registration_tool.service
+ RAD_CONF_DEL=mpa_registration_tool.conf
+ RAD_CONF_PATH=$(if $(wildcard /lib/systemd/system/.),/lib/systemd/system,/usr/lib/systemd/system)
+@@ -148,7 +145,7 @@ ALL_PKGS:= $(AESM_SERVICE_PKGS) $(AE_PKGS) $(DEV_LIB_PKGS)
+ 
+ $(foreach PKG,$(AESM_SERVICE_PKGS) $(AE_PKGS),$(eval $(call INSTALL_AESM_SERVICE_TEMPLATE,$(PKG))))
+ $(foreach PKG,$(DEV_LIB_PKGS),$(eval $(call INSTALL_DEV_LIB_TEMPLATE,$(PKG))))
+-$(foreach PKG,$(ALL_PKGS) $(DCAP_PCCS_PACKAGE) $(RA_SERVICE_PACKAGE) $(PCK_ID_RETRIEVAL_TOOL_PACKAGE),$(eval $(call PRE_INSTALL_TEMPLATE,$(PKG))))
++$(foreach PKG,$(ALL_PKGS) $(RA_SERVICE_PACKAGE) $(PCK_ID_RETRIEVAL_TOOL_PACKAGE),$(eval $(call PRE_INSTALL_TEMPLATE,$(PKG))))
+ 
+ PHONY+=$(ALL_PKGS)
+ PHONY+=$(foreach PKG,$(ALL_PKGS),pre_$(PKG))
+@@ -176,14 +173,6 @@ install_$(AESM_SERVICE_PACKAGE): $(foreach PKG,$(AESM_SERVICE_PKGS),post_$(PKG))
+ 	ln -fs $(shell readlink -m $(USR_LIB_PATH)/libsgx_pce.signed.so)                                          && \
+ 	ln -fs liburts_internal.so libsgx_urts.so.$(URTS_MAJOR_VER)
+ 
+-PHONY+=install_$(DCAP_PCCS_PACKAGE)
+-install_$(DCAP_PCCS_PACKAGE): pre_$(DCAP_PCCS_PACKAGE) | $(PACKAGE_ROOT_PATH)
+-	install -d $(shell readlink -m $(DESTDIR)/$(DCAP_PCCS_PACKAGE)/$(PCCS_CONF_PATH))                        && \
+-	cp -f $|/$(DCAP_PCCS_PACKAGE)/$(PCCS_CONF) $(DESTDIR)/$(DCAP_PCCS_PACKAGE)/$(PCCS_CONF_PATH)             && \
+-	rm -f $|/$(DCAP_PCCS_PACKAGE)/$(PCCS_CONF)
+-	install -d $(shell readlink -m $(DESTDIR)/$(DCAP_PCCS_PACKAGE)/$(SGX_INSTALL_PATH)/$(DCAP_PCCS_PACKAGE)) && \
+-	cp -fr $|/$(DCAP_PCCS_PACKAGE)/* $(DESTDIR)/$(DCAP_PCCS_PACKAGE)/$(SGX_INSTALL_PATH)/$(DCAP_PCCS_PACKAGE)
+-
+ PHONY+=$(RA_SERVICE_PACKAGE)
+ $(RA_SERVICE_PACKAGE): pre_$(RA_SERVICE_PACKAGE) | $(PACKAGE_ROOT_PATH)
+ 	install -d $(shell readlink -m $(DESTDIR)/$@/$(SGX_INSTALL_PATH)/$@) && \
+@@ -286,7 +275,6 @@ install_dev_lib: $(foreach PKG,$(DEV_LIB_PKGS),post_$(PKG))
+ 
+ PHONY+=install
+ install: install_$(AESM_SERVICE_PACKAGE)         \
+-	install_$(DCAP_PCCS_PACKAGE)             \
+ 	install_$(RA_SERVICE_PACKAGE)            \
+ 	install_$(PCK_ID_RETRIEVAL_TOOL_PACKAGE) \
+ 	install_ae                               \
+diff --git a/linux/installer/common/psw-dcap/installConfig b/linux/installer/common/psw-dcap/installConfig
+index 5ef949cd..7145f148 100644
+--- a/linux/installer/common/psw-dcap/installConfig
++++ b/linux/installer/common/psw-dcap/installConfig
+@@ -22,7 +22,6 @@ DCAP_QL_PACKAGE=libsgx-dcap-ql
+ DCAP_QL_DEV_PACKAGE=libsgx-dcap-ql-devel
+ DCAP_QVL_PACKAGE=libsgx-dcap-quote-verify
+ DCAP_QVL_DEV_PACKAGE=libsgx-dcap-quote-verify-devel
+-DCAP_PCCS_PACKAGE=sgx-dcap-pccs
+ 
+ PCK_ID_RETRIEVAL_TOOL_PACKAGE=sgx-pck-id-retrieval-tool
+ RA_NETWORK_PACKAGE=libsgx-ra-network
+diff --git a/linux/installer/common/psw-tdx/BOM_install/sgx-dcap-pccs.txt b/linux/installer/common/psw-tdx/BOM_install/sgx-dcap-pccs.txt
+deleted file mode 100644
+index 4d16e883..00000000
+--- a/linux/installer/common/psw-tdx/BOM_install/sgx-dcap-pccs.txt
++++ /dev/null
+@@ -1,74 +0,0 @@
+-DeliveryName	InstallName	FileCheckSum	FileFeature	FileOwner
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/config/default.json	<installdir>/config/default.json	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/constants/index.js	<installdir>/constants/index.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/constants/pccs_status_code.js	<installdir>/constants/pccs_status_code.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/identityController.js	<installdir>/controllers/identityController.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/index.js	<installdir>/controllers/index.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/pckcertController.js	<installdir>/controllers/pckcertController.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/pckcrlController.js	<installdir>/controllers/pckcrlController.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/platformCollateralController.js	<installdir>/controllers/platformCollateralController.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/platformsController.js	<installdir>/controllers/platformsController.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/refreshController.js	<installdir>/controllers/refreshController.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/rootcacrlController.js	<installdir>/controllers/rootcacrlController.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/tcbinfoController.js	<installdir>/controllers/tcbinfoController.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/crlController.js	<installdir>/controllers/crlController.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/fmspc_tcbs.js	<installdir>/dao/models/fmspc_tcbs.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/index.js	<installdir>/dao/models/index.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/pck_cert.js	<installdir>/dao/models/pck_cert.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/pck_certchain.js	<installdir>/dao/models/pck_certchain.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/pck_crl.js	<installdir>/dao/models/pck_crl.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/pcs_certificates.js	<installdir>/dao/models/pcs_certificates.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/pcs_version.js	<installdir>/dao/models/pcs_version.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/platform_tcbs.js	<installdir>/dao/models/platform_tcbs.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/platforms_registered.js	<installdir>/dao/models/platforms_registered.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/platforms.js	<installdir>/dao/models/platforms.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/enclave_identities.js	<installdir>/dao/models/enclave_identities.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/crl_cache.js	<installdir>/dao/models/crl_cache.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/fmspcTcbDao.js	<installdir>/dao/fmspcTcbDao.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/pckCertchainDao.js	<installdir>/dao/pckCertchainDao.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/pckcertDao.js	<installdir>/dao/pckcertDao.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/pckcrlDao.js	<installdir>/dao/pckcrlDao.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/pcsCertificatesDao.js	<installdir>/dao/pcsCertificatesDao.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/pcsVersionDao.js	<installdir>/dao/pcsVersionDao.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/platformsDao.js	<installdir>/dao/platformsDao.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/platformsRegDao.js	<installdir>/dao/platformsRegDao.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/platformTcbsDao.js	<installdir>/dao/platformTcbsDao.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/enclaveIdentityDao.js	<installdir>/dao/enclaveIdentityDao.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/crlCacheDao.js	<installdir>/dao/crlCacheDao.js	0	main	STP
+-<deliverydir>/external/dcap_source/tools/PCKCertSelection/out/libPCKCertSelection.so	<installdir>/lib/libPCKCertSelection.so	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/lib_wrapper/pcklib_wrapper.js	<installdir>/lib_wrapper/pcklib_wrapper.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/middleware/auth.js	<installdir>/middleware/auth.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/middleware/error.js	<installdir>/middleware/error.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/middleware/addRequestId.js	<installdir>/middleware/addRequestId.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/migrations/00_db_initialize.up.sql	<installdir>/migrations/00_db_initialize.up.sql	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/migrations/01_db_version_1.js	<installdir>/migrations/01_db_version_1.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/migrations/02_db_version_2.js	<installdir>/migrations/02_db_version_2.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/pcs_client/pcs_client.js	<installdir>/pcs_client/pcs_client.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/routes/index.js	<installdir>/routes/index.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/identityService.js	<installdir>/services/identityService.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/index.js	<installdir>/services/index.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/pccs_schemas.js	<installdir>/services/pccs_schemas.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/pckcertService.js	<installdir>/services/pckcertService.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/pckcrlService.js	<installdir>/services/pckcrlService.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/platformCollateralService.js	<installdir>/services/platformCollateralService.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/platformsRegService.js	<installdir>/services/platformsRegService.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/platformsService.js	<installdir>/services/platformsService.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/refreshService.js	<installdir>/services/refreshService.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/rootcacrlService.js	<installdir>/services/rootcacrlService.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/tcbinfoService.js	<installdir>/services/tcbinfoService.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/crlService.js	<installdir>/services/crlService.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/caching_modes/cachingMode.js	<installdir>/services/caching_modes/cachingMode.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/caching_modes/cachingModeManager.js	<installdir>/services/caching_modes/cachingModeManager.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/logic/commonCacheLogic.js	<installdir>/services/logic/commonCacheLogic.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/logic/qvCollateralLogic.js	<installdir>/services/logic/qvCollateralLogic.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/utils/Logger.js	<installdir>/utils/Logger.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/utils/PccsError.js	<installdir>/utils/PccsError.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/utils/apputil.js	<installdir>/utils/apputil.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/x509/x509.js	<installdir>/x509/x509.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/install.sh	<installdir>/install.sh	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/package.json	<installdir>/package.json	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/pccs_server.js	<installdir>/pccs_server.js	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/pccs.service	<installdir>/pccs.service	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/startup.sh	<installdir>/startup.sh	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/cleanup.sh	<installdir>/cleanup.sh	0	main	STP
+-<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/README.md	<installdir>/README.md	0	main	STP
+diff --git a/linux/installer/common/psw-tdx/Makefile b/linux/installer/common/psw-tdx/Makefile
+index 4f50ee49..0e8cb3e7 100644
+--- a/linux/installer/common/psw-tdx/Makefile
++++ b/linux/installer/common/psw-tdx/Makefile
+@@ -80,9 +80,6 @@ QGSD_CONF=qgsd.service
+ QGSD_CONF_DEL=qgsd.conf
+ QGSD_CONF_PATH=$(if $(wildcard /lib/systemd/system/.),/lib/systemd/system,/usr/lib/systemd/system)
+ 
+-PCCS_CONF=pccs.service
+-PCCS_CONF_PATH=$(if $(wildcard /lib/systemd/system/.),/lib/systemd/system,/usr/lib/systemd/system)
+-
+ RAD_CONF=mpa_registration_tool.service
+ RAD_CONF_DEL=mpa_registration_tool.conf
+ RAD_CONF_PATH=$(if $(wildcard /lib/systemd/system/.),/lib/systemd/system,/usr/lib/systemd/system)
+@@ -160,7 +157,7 @@ ALL_PKGS:= $(TDX_QGS_PKGS) $(AE_PKGS) $(DEV_LIB_PKGS)
+ 
+ $(foreach PKG,$(TDX_QGS_PKGS) $(AE_PKGS),$(eval $(call INSTALL_AESM_SERVICE_TEMPLATE,$(PKG))))
+ $(foreach PKG,$(DEV_LIB_PKGS),$(eval $(call INSTALL_DEV_LIB_TEMPLATE,$(PKG))))
+-$(foreach PKG,$(ALL_PKGS) $(DCAP_PCCS_PACKAGE) $(RA_SERVICE_PACKAGE) $(PCK_ID_RETRIEVAL_TOOL_PACKAGE),$(eval $(call PRE_INSTALL_TEMPLATE,$(PKG))))
++$(foreach PKG,$(ALL_PKGS) $(RA_SERVICE_PACKAGE) $(PCK_ID_RETRIEVAL_TOOL_PACKAGE),$(eval $(call PRE_INSTALL_TEMPLATE,$(PKG))))
+ 
+ PHONY+=$(ALL_PKGS)
+ PHONY+=$(foreach PKG,$(ALL_PKGS),pre_$(PKG))
+@@ -184,14 +181,6 @@ install_$(TDX_QGS_PACKAGE): $(foreach PKG,$(TDX_QGS_PKGS),post_$(PKG))
+ 				$(DESTDIR)/$(TDX_QGS_PACKAGE)/$(ETC_DIR) &&                                                         \
+ 		rm -fr $(DESTDIR)/$(TDX_QGS_PACKAGE)/$(SGX_INSTALL_PATH)/$(TDX_QGS_PACKAGE)/conf))
+ 
+-PHONY+=install_$(DCAP_PCCS_PACKAGE)
+-install_$(DCAP_PCCS_PACKAGE): pre_$(DCAP_PCCS_PACKAGE) | $(PACKAGE_ROOT_PATH)
+-	install -d $(shell readlink -m $(DESTDIR)/$(DCAP_PCCS_PACKAGE)/$(PCCS_CONF_PATH))                        && \
+-	cp -f $|/$(DCAP_PCCS_PACKAGE)/$(PCCS_CONF) $(DESTDIR)/$(DCAP_PCCS_PACKAGE)/$(PCCS_CONF_PATH)             && \
+-	rm -f $|/$(DCAP_PCCS_PACKAGE)/$(PCCS_CONF)
+-	install -d $(shell readlink -m $(DESTDIR)/$(DCAP_PCCS_PACKAGE)/$(SGX_INSTALL_PATH)/$(DCAP_PCCS_PACKAGE)) && \
+-	cp -fr $|/$(DCAP_PCCS_PACKAGE)/* $(DESTDIR)/$(DCAP_PCCS_PACKAGE)/$(SGX_INSTALL_PATH)/$(DCAP_PCCS_PACKAGE)
+-
+ PHONY+=$(RA_SERVICE_PACKAGE)
+ $(RA_SERVICE_PACKAGE): pre_$(RA_SERVICE_PACKAGE) | $(PACKAGE_ROOT_PATH)
+ 	install -d $(shell readlink -m $(DESTDIR)/$@/$(SGX_INSTALL_PATH)/$@) && \
+@@ -291,7 +280,6 @@ install_dev_lib: $(foreach PKG,$(DEV_LIB_PKGS),post_$(PKG))
+ 
+ PHONY+=install
+ install: install_$(TDX_QGS_PACKAGE)          \
+-	install_$(DCAP_PCCS_PACKAGE)             \
+ 	install_$(RA_SERVICE_PACKAGE)            \
+ 	install_$(PCK_ID_RETRIEVAL_TOOL_PACKAGE) \
+ 	install_ae                               \
+diff --git a/linux/installer/common/psw-tdx/installConfig b/linux/installer/common/psw-tdx/installConfig
+index 7129b71d..c55a8ada 100644
+--- a/linux/installer/common/psw-tdx/installConfig
++++ b/linux/installer/common/psw-tdx/installConfig
+@@ -16,7 +16,6 @@ TDX_ATTEST_PACKAGE=libtdx-attest
+ TDX_ATTEST_DEV_PACKAGE=libtdx-attest-devel
+ DCAP_QVL_PACKAGE=libsgx-dcap-quote-verify
+ DCAP_QVL_DEV_PACKAGE=libsgx-dcap-quote-verify-devel
+-DCAP_PCCS_PACKAGE=sgx-dcap-pccs
+ PCK_ID_RETRIEVAL_TOOL_PACKAGE=sgx-pck-id-retrieval-tool
+ RA_NETWORK_PACKAGE=libsgx-ra-network
+ RA_NETWORK_DEV_PACKAGE=libsgx-ra-network-devel
+-- 
+2.55.0
+

diff --git a/0013-linux-installer-drop-PCCS-package-from-BOM.patch b/0013-linux-installer-drop-PCCS-package-from-BOM.patch
deleted file mode 100644
index d9dccdc..0000000
--- a/0013-linux-installer-drop-PCCS-package-from-BOM.patch
+++ /dev/null
@@ -1,301 +0,0 @@
-From 9291f1ccc657b814bcb4094633a911061726f8dc Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Fri, 27 Jun 2025 11:37:26 +0100
-Subject: [PATCH 13/17] linux/installer: drop PCCS package from BOM
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-PCCS will now be distributed as a standalone RPM package.
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- .../psw-dcap/BOM_install/sgx-dcap-pccs.txt    | 74 -------------------
- linux/installer/common/psw-dcap/Makefile      | 14 +---
- linux/installer/common/psw-dcap/installConfig |  1 -
- .../psw-tdx/BOM_install/sgx-dcap-pccs.txt     | 74 -------------------
- linux/installer/common/psw-tdx/Makefile       | 14 +---
- linux/installer/common/psw-tdx/installConfig  |  1 -
- 6 files changed, 2 insertions(+), 176 deletions(-)
- delete mode 100644 linux/installer/common/psw-dcap/BOM_install/sgx-dcap-pccs.txt
- delete mode 100644 linux/installer/common/psw-tdx/BOM_install/sgx-dcap-pccs.txt
-
-diff --git a/linux/installer/common/psw-dcap/BOM_install/sgx-dcap-pccs.txt b/linux/installer/common/psw-dcap/BOM_install/sgx-dcap-pccs.txt
-deleted file mode 100644
-index 4d16e883..00000000
---- a/linux/installer/common/psw-dcap/BOM_install/sgx-dcap-pccs.txt
-+++ /dev/null
-@@ -1,74 +0,0 @@
--DeliveryName	InstallName	FileCheckSum	FileFeature	FileOwner
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/config/default.json	<installdir>/config/default.json	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/constants/index.js	<installdir>/constants/index.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/constants/pccs_status_code.js	<installdir>/constants/pccs_status_code.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/identityController.js	<installdir>/controllers/identityController.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/index.js	<installdir>/controllers/index.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/pckcertController.js	<installdir>/controllers/pckcertController.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/pckcrlController.js	<installdir>/controllers/pckcrlController.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/platformCollateralController.js	<installdir>/controllers/platformCollateralController.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/platformsController.js	<installdir>/controllers/platformsController.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/refreshController.js	<installdir>/controllers/refreshController.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/rootcacrlController.js	<installdir>/controllers/rootcacrlController.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/tcbinfoController.js	<installdir>/controllers/tcbinfoController.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/crlController.js	<installdir>/controllers/crlController.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/fmspc_tcbs.js	<installdir>/dao/models/fmspc_tcbs.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/index.js	<installdir>/dao/models/index.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/pck_cert.js	<installdir>/dao/models/pck_cert.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/pck_certchain.js	<installdir>/dao/models/pck_certchain.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/pck_crl.js	<installdir>/dao/models/pck_crl.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/pcs_certificates.js	<installdir>/dao/models/pcs_certificates.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/pcs_version.js	<installdir>/dao/models/pcs_version.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/platform_tcbs.js	<installdir>/dao/models/platform_tcbs.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/platforms_registered.js	<installdir>/dao/models/platforms_registered.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/platforms.js	<installdir>/dao/models/platforms.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/enclave_identities.js	<installdir>/dao/models/enclave_identities.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/crl_cache.js	<installdir>/dao/models/crl_cache.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/fmspcTcbDao.js	<installdir>/dao/fmspcTcbDao.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/pckCertchainDao.js	<installdir>/dao/pckCertchainDao.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/pckcertDao.js	<installdir>/dao/pckcertDao.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/pckcrlDao.js	<installdir>/dao/pckcrlDao.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/pcsCertificatesDao.js	<installdir>/dao/pcsCertificatesDao.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/pcsVersionDao.js	<installdir>/dao/pcsVersionDao.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/platformsDao.js	<installdir>/dao/platformsDao.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/platformsRegDao.js	<installdir>/dao/platformsRegDao.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/platformTcbsDao.js	<installdir>/dao/platformTcbsDao.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/enclaveIdentityDao.js	<installdir>/dao/enclaveIdentityDao.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/crlCacheDao.js	<installdir>/dao/crlCacheDao.js	0	main	STP
--<deliverydir>/external/dcap_source/tools/PCKCertSelection/out/libPCKCertSelection.so	<installdir>/lib/libPCKCertSelection.so	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/lib_wrapper/pcklib_wrapper.js	<installdir>/lib_wrapper/pcklib_wrapper.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/middleware/auth.js	<installdir>/middleware/auth.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/middleware/error.js	<installdir>/middleware/error.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/middleware/addRequestId.js	<installdir>/middleware/addRequestId.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/migrations/00_db_initialize.up.sql	<installdir>/migrations/00_db_initialize.up.sql	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/migrations/01_db_version_1.js	<installdir>/migrations/01_db_version_1.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/migrations/02_db_version_2.js	<installdir>/migrations/02_db_version_2.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/pcs_client/pcs_client.js	<installdir>/pcs_client/pcs_client.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/routes/index.js	<installdir>/routes/index.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/identityService.js	<installdir>/services/identityService.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/index.js	<installdir>/services/index.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/pccs_schemas.js	<installdir>/services/pccs_schemas.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/pckcertService.js	<installdir>/services/pckcertService.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/pckcrlService.js	<installdir>/services/pckcrlService.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/platformCollateralService.js	<installdir>/services/platformCollateralService.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/platformsRegService.js	<installdir>/services/platformsRegService.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/platformsService.js	<installdir>/services/platformsService.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/refreshService.js	<installdir>/services/refreshService.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/rootcacrlService.js	<installdir>/services/rootcacrlService.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/tcbinfoService.js	<installdir>/services/tcbinfoService.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/crlService.js	<installdir>/services/crlService.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/caching_modes/cachingMode.js	<installdir>/services/caching_modes/cachingMode.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/caching_modes/cachingModeManager.js	<installdir>/services/caching_modes/cachingModeManager.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/logic/commonCacheLogic.js	<installdir>/services/logic/commonCacheLogic.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/logic/qvCollateralLogic.js	<installdir>/services/logic/qvCollateralLogic.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/utils/Logger.js	<installdir>/utils/Logger.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/utils/PccsError.js	<installdir>/utils/PccsError.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/utils/apputil.js	<installdir>/utils/apputil.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/x509/x509.js	<installdir>/x509/x509.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/install.sh	<installdir>/install.sh	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/package.json	<installdir>/package.json	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/pccs_server.js	<installdir>/pccs_server.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/pccs.service	<installdir>/pccs.service	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/startup.sh	<installdir>/startup.sh	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/cleanup.sh	<installdir>/cleanup.sh	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/README.md	<installdir>/README.md	0	main	STP
-diff --git a/linux/installer/common/psw-dcap/Makefile b/linux/installer/common/psw-dcap/Makefile
-index 9236de6a..1ae7a292 100644
---- a/linux/installer/common/psw-dcap/Makefile
-+++ b/linux/installer/common/psw-dcap/Makefile
-@@ -59,9 +59,6 @@ AESMD_CONF=aesmd.service
- AESMD_CONF_DEL=aesmd.conf
- AESMD_CONF_PATH=$(if $(wildcard /lib/systemd/system/.),/lib/systemd/system,/usr/lib/systemd/system)
- 
--PCCS_CONF=pccs.service
--PCCS_CONF_PATH=$(if $(wildcard /lib/systemd/system/.),/lib/systemd/system,/usr/lib/systemd/system)
--
- RAD_CONF=mpa_registration_tool.service
- RAD_CONF_DEL=mpa_registration_tool.conf
- RAD_CONF_PATH=$(if $(wildcard /lib/systemd/system/.),/lib/systemd/system,/usr/lib/systemd/system)
-@@ -148,7 +145,7 @@ ALL_PKGS:= $(AESM_SERVICE_PKGS) $(AE_PKGS) $(DEV_LIB_PKGS)
- 
- $(foreach PKG,$(AESM_SERVICE_PKGS) $(AE_PKGS),$(eval $(call INSTALL_AESM_SERVICE_TEMPLATE,$(PKG))))
- $(foreach PKG,$(DEV_LIB_PKGS),$(eval $(call INSTALL_DEV_LIB_TEMPLATE,$(PKG))))
--$(foreach PKG,$(ALL_PKGS) $(DCAP_PCCS_PACKAGE) $(RA_SERVICE_PACKAGE) $(PCK_ID_RETRIEVAL_TOOL_PACKAGE),$(eval $(call PRE_INSTALL_TEMPLATE,$(PKG))))
-+$(foreach PKG,$(ALL_PKGS) $(RA_SERVICE_PACKAGE) $(PCK_ID_RETRIEVAL_TOOL_PACKAGE),$(eval $(call PRE_INSTALL_TEMPLATE,$(PKG))))
- 
- PHONY+=$(ALL_PKGS)
- PHONY+=$(foreach PKG,$(ALL_PKGS),pre_$(PKG))
-@@ -176,14 +173,6 @@ install_$(AESM_SERVICE_PACKAGE): $(foreach PKG,$(AESM_SERVICE_PKGS),post_$(PKG))
- 	ln -fs $(shell readlink -m $(USR_LIB_PATH)/libsgx_pce.signed.so)                                          && \
- 	ln -fs liburts_internal.so libsgx_urts.so.$(URTS_MAJOR_VER)
- 
--PHONY+=install_$(DCAP_PCCS_PACKAGE)
--install_$(DCAP_PCCS_PACKAGE): pre_$(DCAP_PCCS_PACKAGE) | $(PACKAGE_ROOT_PATH)
--	install -d $(shell readlink -m $(DESTDIR)/$(DCAP_PCCS_PACKAGE)/$(PCCS_CONF_PATH))                        && \
--	cp -f $|/$(DCAP_PCCS_PACKAGE)/$(PCCS_CONF) $(DESTDIR)/$(DCAP_PCCS_PACKAGE)/$(PCCS_CONF_PATH)             && \
--	rm -f $|/$(DCAP_PCCS_PACKAGE)/$(PCCS_CONF)
--	install -d $(shell readlink -m $(DESTDIR)/$(DCAP_PCCS_PACKAGE)/$(SGX_INSTALL_PATH)/$(DCAP_PCCS_PACKAGE)) && \
--	cp -fr $|/$(DCAP_PCCS_PACKAGE)/* $(DESTDIR)/$(DCAP_PCCS_PACKAGE)/$(SGX_INSTALL_PATH)/$(DCAP_PCCS_PACKAGE)
--
- PHONY+=$(RA_SERVICE_PACKAGE)
- $(RA_SERVICE_PACKAGE): pre_$(RA_SERVICE_PACKAGE) | $(PACKAGE_ROOT_PATH)
- 	install -d $(shell readlink -m $(DESTDIR)/$@/$(SGX_INSTALL_PATH)/$@) && \
-@@ -286,7 +275,6 @@ install_dev_lib: $(foreach PKG,$(DEV_LIB_PKGS),post_$(PKG))
- 
- PHONY+=install
- install: install_$(AESM_SERVICE_PACKAGE)         \
--	install_$(DCAP_PCCS_PACKAGE)             \
- 	install_$(RA_SERVICE_PACKAGE)            \
- 	install_$(PCK_ID_RETRIEVAL_TOOL_PACKAGE) \
- 	install_ae                               \
-diff --git a/linux/installer/common/psw-dcap/installConfig b/linux/installer/common/psw-dcap/installConfig
-index 5ef949cd..7145f148 100644
---- a/linux/installer/common/psw-dcap/installConfig
-+++ b/linux/installer/common/psw-dcap/installConfig
-@@ -22,7 +22,6 @@ DCAP_QL_PACKAGE=libsgx-dcap-ql
- DCAP_QL_DEV_PACKAGE=libsgx-dcap-ql-devel
- DCAP_QVL_PACKAGE=libsgx-dcap-quote-verify
- DCAP_QVL_DEV_PACKAGE=libsgx-dcap-quote-verify-devel
--DCAP_PCCS_PACKAGE=sgx-dcap-pccs
- 
- PCK_ID_RETRIEVAL_TOOL_PACKAGE=sgx-pck-id-retrieval-tool
- RA_NETWORK_PACKAGE=libsgx-ra-network
-diff --git a/linux/installer/common/psw-tdx/BOM_install/sgx-dcap-pccs.txt b/linux/installer/common/psw-tdx/BOM_install/sgx-dcap-pccs.txt
-deleted file mode 100644
-index 4d16e883..00000000
---- a/linux/installer/common/psw-tdx/BOM_install/sgx-dcap-pccs.txt
-+++ /dev/null
-@@ -1,74 +0,0 @@
--DeliveryName	InstallName	FileCheckSum	FileFeature	FileOwner
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/config/default.json	<installdir>/config/default.json	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/constants/index.js	<installdir>/constants/index.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/constants/pccs_status_code.js	<installdir>/constants/pccs_status_code.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/identityController.js	<installdir>/controllers/identityController.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/index.js	<installdir>/controllers/index.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/pckcertController.js	<installdir>/controllers/pckcertController.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/pckcrlController.js	<installdir>/controllers/pckcrlController.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/platformCollateralController.js	<installdir>/controllers/platformCollateralController.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/platformsController.js	<installdir>/controllers/platformsController.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/refreshController.js	<installdir>/controllers/refreshController.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/rootcacrlController.js	<installdir>/controllers/rootcacrlController.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/tcbinfoController.js	<installdir>/controllers/tcbinfoController.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/controllers/crlController.js	<installdir>/controllers/crlController.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/fmspc_tcbs.js	<installdir>/dao/models/fmspc_tcbs.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/index.js	<installdir>/dao/models/index.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/pck_cert.js	<installdir>/dao/models/pck_cert.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/pck_certchain.js	<installdir>/dao/models/pck_certchain.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/pck_crl.js	<installdir>/dao/models/pck_crl.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/pcs_certificates.js	<installdir>/dao/models/pcs_certificates.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/pcs_version.js	<installdir>/dao/models/pcs_version.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/platform_tcbs.js	<installdir>/dao/models/platform_tcbs.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/platforms_registered.js	<installdir>/dao/models/platforms_registered.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/platforms.js	<installdir>/dao/models/platforms.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/enclave_identities.js	<installdir>/dao/models/enclave_identities.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/models/crl_cache.js	<installdir>/dao/models/crl_cache.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/fmspcTcbDao.js	<installdir>/dao/fmspcTcbDao.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/pckCertchainDao.js	<installdir>/dao/pckCertchainDao.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/pckcertDao.js	<installdir>/dao/pckcertDao.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/pckcrlDao.js	<installdir>/dao/pckcrlDao.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/pcsCertificatesDao.js	<installdir>/dao/pcsCertificatesDao.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/pcsVersionDao.js	<installdir>/dao/pcsVersionDao.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/platformsDao.js	<installdir>/dao/platformsDao.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/platformsRegDao.js	<installdir>/dao/platformsRegDao.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/platformTcbsDao.js	<installdir>/dao/platformTcbsDao.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/enclaveIdentityDao.js	<installdir>/dao/enclaveIdentityDao.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/dao/crlCacheDao.js	<installdir>/dao/crlCacheDao.js	0	main	STP
--<deliverydir>/external/dcap_source/tools/PCKCertSelection/out/libPCKCertSelection.so	<installdir>/lib/libPCKCertSelection.so	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/lib_wrapper/pcklib_wrapper.js	<installdir>/lib_wrapper/pcklib_wrapper.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/middleware/auth.js	<installdir>/middleware/auth.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/middleware/error.js	<installdir>/middleware/error.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/middleware/addRequestId.js	<installdir>/middleware/addRequestId.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/migrations/00_db_initialize.up.sql	<installdir>/migrations/00_db_initialize.up.sql	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/migrations/01_db_version_1.js	<installdir>/migrations/01_db_version_1.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/migrations/02_db_version_2.js	<installdir>/migrations/02_db_version_2.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/pcs_client/pcs_client.js	<installdir>/pcs_client/pcs_client.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/routes/index.js	<installdir>/routes/index.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/identityService.js	<installdir>/services/identityService.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/index.js	<installdir>/services/index.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/pccs_schemas.js	<installdir>/services/pccs_schemas.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/pckcertService.js	<installdir>/services/pckcertService.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/pckcrlService.js	<installdir>/services/pckcrlService.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/platformCollateralService.js	<installdir>/services/platformCollateralService.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/platformsRegService.js	<installdir>/services/platformsRegService.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/platformsService.js	<installdir>/services/platformsService.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/refreshService.js	<installdir>/services/refreshService.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/rootcacrlService.js	<installdir>/services/rootcacrlService.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/tcbinfoService.js	<installdir>/services/tcbinfoService.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/crlService.js	<installdir>/services/crlService.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/caching_modes/cachingMode.js	<installdir>/services/caching_modes/cachingMode.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/caching_modes/cachingModeManager.js	<installdir>/services/caching_modes/cachingModeManager.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/logic/commonCacheLogic.js	<installdir>/services/logic/commonCacheLogic.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/services/logic/qvCollateralLogic.js	<installdir>/services/logic/qvCollateralLogic.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/utils/Logger.js	<installdir>/utils/Logger.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/utils/PccsError.js	<installdir>/utils/PccsError.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/utils/apputil.js	<installdir>/utils/apputil.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/x509/x509.js	<installdir>/x509/x509.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/install.sh	<installdir>/install.sh	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/package.json	<installdir>/package.json	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/pccs_server.js	<installdir>/pccs_server.js	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/pccs.service	<installdir>/pccs.service	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/startup.sh	<installdir>/startup.sh	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/cleanup.sh	<installdir>/cleanup.sh	0	main	STP
--<deliverydir>/external/dcap_source/QuoteGeneration/pccs/service/README.md	<installdir>/README.md	0	main	STP
-diff --git a/linux/installer/common/psw-tdx/Makefile b/linux/installer/common/psw-tdx/Makefile
-index 4f50ee49..0e8cb3e7 100644
---- a/linux/installer/common/psw-tdx/Makefile
-+++ b/linux/installer/common/psw-tdx/Makefile
-@@ -80,9 +80,6 @@ QGSD_CONF=qgsd.service
- QGSD_CONF_DEL=qgsd.conf
- QGSD_CONF_PATH=$(if $(wildcard /lib/systemd/system/.),/lib/systemd/system,/usr/lib/systemd/system)
- 
--PCCS_CONF=pccs.service
--PCCS_CONF_PATH=$(if $(wildcard /lib/systemd/system/.),/lib/systemd/system,/usr/lib/systemd/system)
--
- RAD_CONF=mpa_registration_tool.service
- RAD_CONF_DEL=mpa_registration_tool.conf
- RAD_CONF_PATH=$(if $(wildcard /lib/systemd/system/.),/lib/systemd/system,/usr/lib/systemd/system)
-@@ -160,7 +157,7 @@ ALL_PKGS:= $(TDX_QGS_PKGS) $(AE_PKGS) $(DEV_LIB_PKGS)
- 
- $(foreach PKG,$(TDX_QGS_PKGS) $(AE_PKGS),$(eval $(call INSTALL_AESM_SERVICE_TEMPLATE,$(PKG))))
- $(foreach PKG,$(DEV_LIB_PKGS),$(eval $(call INSTALL_DEV_LIB_TEMPLATE,$(PKG))))
--$(foreach PKG,$(ALL_PKGS) $(DCAP_PCCS_PACKAGE) $(RA_SERVICE_PACKAGE) $(PCK_ID_RETRIEVAL_TOOL_PACKAGE),$(eval $(call PRE_INSTALL_TEMPLATE,$(PKG))))
-+$(foreach PKG,$(ALL_PKGS) $(RA_SERVICE_PACKAGE) $(PCK_ID_RETRIEVAL_TOOL_PACKAGE),$(eval $(call PRE_INSTALL_TEMPLATE,$(PKG))))
- 
- PHONY+=$(ALL_PKGS)
- PHONY+=$(foreach PKG,$(ALL_PKGS),pre_$(PKG))
-@@ -184,14 +181,6 @@ install_$(TDX_QGS_PACKAGE): $(foreach PKG,$(TDX_QGS_PKGS),post_$(PKG))
- 				$(DESTDIR)/$(TDX_QGS_PACKAGE)/$(ETC_DIR) &&                                                         \
- 		rm -fr $(DESTDIR)/$(TDX_QGS_PACKAGE)/$(SGX_INSTALL_PATH)/$(TDX_QGS_PACKAGE)/conf))
- 
--PHONY+=install_$(DCAP_PCCS_PACKAGE)
--install_$(DCAP_PCCS_PACKAGE): pre_$(DCAP_PCCS_PACKAGE) | $(PACKAGE_ROOT_PATH)
--	install -d $(shell readlink -m $(DESTDIR)/$(DCAP_PCCS_PACKAGE)/$(PCCS_CONF_PATH))                        && \
--	cp -f $|/$(DCAP_PCCS_PACKAGE)/$(PCCS_CONF) $(DESTDIR)/$(DCAP_PCCS_PACKAGE)/$(PCCS_CONF_PATH)             && \
--	rm -f $|/$(DCAP_PCCS_PACKAGE)/$(PCCS_CONF)
--	install -d $(shell readlink -m $(DESTDIR)/$(DCAP_PCCS_PACKAGE)/$(SGX_INSTALL_PATH)/$(DCAP_PCCS_PACKAGE)) && \
--	cp -fr $|/$(DCAP_PCCS_PACKAGE)/* $(DESTDIR)/$(DCAP_PCCS_PACKAGE)/$(SGX_INSTALL_PATH)/$(DCAP_PCCS_PACKAGE)
--
- PHONY+=$(RA_SERVICE_PACKAGE)
- $(RA_SERVICE_PACKAGE): pre_$(RA_SERVICE_PACKAGE) | $(PACKAGE_ROOT_PATH)
- 	install -d $(shell readlink -m $(DESTDIR)/$@/$(SGX_INSTALL_PATH)/$@) && \
-@@ -291,7 +280,6 @@ install_dev_lib: $(foreach PKG,$(DEV_LIB_PKGS),post_$(PKG))
- 
- PHONY+=install
- install: install_$(TDX_QGS_PACKAGE)          \
--	install_$(DCAP_PCCS_PACKAGE)             \
- 	install_$(RA_SERVICE_PACKAGE)            \
- 	install_$(PCK_ID_RETRIEVAL_TOOL_PACKAGE) \
- 	install_ae                               \
-diff --git a/linux/installer/common/psw-tdx/installConfig b/linux/installer/common/psw-tdx/installConfig
-index 7129b71d..c55a8ada 100644
---- a/linux/installer/common/psw-tdx/installConfig
-+++ b/linux/installer/common/psw-tdx/installConfig
-@@ -16,7 +16,6 @@ TDX_ATTEST_PACKAGE=libtdx-attest
- TDX_ATTEST_DEV_PACKAGE=libtdx-attest-devel
- DCAP_QVL_PACKAGE=libsgx-dcap-quote-verify
- DCAP_QVL_DEV_PACKAGE=libsgx-dcap-quote-verify-devel
--DCAP_PCCS_PACKAGE=sgx-dcap-pccs
- PCK_ID_RETRIEVAL_TOOL_PACKAGE=sgx-pck-id-retrieval-tool
- RA_NETWORK_PACKAGE=libsgx-ra-network
- RA_NETWORK_DEV_PACKAGE=libsgx-ra-network-devel
--- 
-2.55.0
-

diff --git a/0013-sdk-avoid-failure-due-to-attribute-regparam-with-GCC.patch b/0013-sdk-avoid-failure-due-to-attribute-regparam-with-GCC.patch
new file mode 100644
index 0000000..64909c1
--- /dev/null
+++ b/0013-sdk-avoid-failure-due-to-attribute-regparam-with-GCC.patch
@@ -0,0 +1,83 @@
+From b9fcd6a0d680ee70bef09b074d70f3572263f1cc Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Tue, 6 Jan 2026 18:31:32 +0000
+Subject: [PATCH 13/16] sdk: avoid failure due to attribute(regparam) with GCC
+ 16
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+GCC >= 16 now warns about use of attribute(regparam) on x86_64 targets.
+The attribute was always ignored on x86_64, so only had effect on i686
+and thus the warning can be safely ignored.
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ psw/urts/linux/Makefile               | 4 ++--
+ sdk/simulation/trtssim/linux/Makefile | 4 ++--
+ sdk/simulation/urtssim/linux/Makefile | 4 ++--
+ sdk/trts/Makefile                     | 1 +
+ 4 files changed, 7 insertions(+), 6 deletions(-)
+
+diff --git a/psw/urts/linux/Makefile b/psw/urts/linux/Makefile
+index 275a9d45..94a0aacb 100644
+--- a/psw/urts/linux/Makefile
++++ b/psw/urts/linux/Makefile
+@@ -36,10 +36,10 @@ CXXFLAGS += -DDISABLE_TRACE
+ CFLAGS += -DDISABLE_TRACE
+ endif
+ 
+-CXXFLAGS += -fPIC -Werror -g
++CXXFLAGS += -fPIC -Werror -Wno-attributes -g
+ CXXFLAGS += $(ADDED_INC)
+ 
+-CFLAGS += -fPIC -Werror -g
++CFLAGS += -fPIC -Werror -Wno-attributes -g
+ CFLAGS += $(ADDED_INC)
+ 
+ VTUNE_DIR = $(LINUX_EXTERNAL_DIR)/vtune/linux
+diff --git a/sdk/simulation/trtssim/linux/Makefile b/sdk/simulation/trtssim/linux/Makefile
+index 16e2a96d..7e545c1a 100644
+--- a/sdk/simulation/trtssim/linux/Makefile
++++ b/sdk/simulation/trtssim/linux/Makefile
+@@ -41,8 +41,8 @@ CPPFLAGS += -I$(COMMON_DIR)/inc/         \
+ 
+ CFLAGS   += $(ENCLAVE_CFLAGS)
+ ASFLAGS  := -DSE_SIM -Werror $(CFLAGS)
+-CFLAGS   += -DSE_SIM -Werror -fasynchronous-unwind-tables
+-CXXFLAGS += -DSE_SIM -Werror $(ENCLAVE_CXXFLAGS)\
++CFLAGS   += -DSE_SIM -Werror -Wno-attributes -fasynchronous-unwind-tables
++CXXFLAGS += -DSE_SIM -Werror -Wno-attributes $(ENCLAVE_CXXFLAGS)\
+             -fno-exceptions -fno-rtti
+ 
+ SIM_DIR    := $(CUR_DIR)/../..
+diff --git a/sdk/simulation/urtssim/linux/Makefile b/sdk/simulation/urtssim/linux/Makefile
+index 78f53484..c99a50e5 100644
+--- a/sdk/simulation/urtssim/linux/Makefile
++++ b/sdk/simulation/urtssim/linux/Makefile
+@@ -39,8 +39,8 @@ CXXFLAGS += -DDISABLE_TRACE
+ CFLAGS += -DDISABLE_TRACE
+ endif
+ 
+-CXXFLAGS += -fPIC -DSE_SIM -Werror -g $(CET_FLAGS)
+-CFLAGS   += -fPIC -DSE_SIM -Werror -g $(CET_FLAGS)
++CXXFLAGS += -fPIC -DSE_SIM -Werror -Wno-attributes -g $(CET_FLAGS)
++CFLAGS   += -fPIC -DSE_SIM -Werror -Wno-attributes -g $(CET_FLAGS)
+ 
+ CPPFLAGS += $(ADDED_INC) #for ubuntu 11 and later version
+ CPPFLAGS += -I$(COMMON_DIR)/inc                \
+diff --git a/sdk/trts/Makefile b/sdk/trts/Makefile
+index 7cba3d43..02414d91 100644
+--- a/sdk/trts/Makefile
++++ b/sdk/trts/Makefile
+@@ -14,6 +14,7 @@ CPPFLAGS += -I$(COMMON_DIR)/inc          \
+ 
+ CXXFLAGS += $(ENCLAVE_CXXFLAGS) \
+             -Werror         \
++            -Wno-attributes \
+             -fno-exceptions \
+             -fno-rtti
+ 
+-- 
+2.55.0
+

diff --git a/0014-fix-BOM-for-mpa_manage-mpa_registration-files.patch b/0014-fix-BOM-for-mpa_manage-mpa_registration-files.patch
new file mode 100644
index 0000000..90e230a
--- /dev/null
+++ b/0014-fix-BOM-for-mpa_manage-mpa_registration-files.patch
@@ -0,0 +1,98 @@
+From 151d7b7265e5b8b178cfef65fe4e99ba8529720d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Mon, 2 Feb 2026 19:01:24 +0000
+Subject: [PATCH 14/16] fix BOM for mpa_manage/mpa_registration files
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The paths for mpa_manage/mpa_registration binaries and their associated
+files all moved, and the BOM was not updated.
+
+These changes are synced from the DCAP repo BOMs.
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ .../psw-dcap/BOM_install/libsgx-ra-network.txt     |  2 +-
+ .../common/psw-dcap/BOM_install/libsgx-ra-uefi.txt |  2 +-
+ .../common/psw-dcap/BOM_install/sgx-ra-service.txt | 14 +++++++-------
+ .../psw-tdx/BOM_install/libsgx-ra-network.txt      |  2 +-
+ .../common/psw-tdx/BOM_install/libsgx-ra-uefi.txt  |  2 +-
+ .../common/psw-tdx/BOM_install/sgx-ra-service.txt  | 14 +++++++-------
+ 6 files changed, 18 insertions(+), 18 deletions(-)
+
+diff --git a/linux/installer/common/psw-dcap/BOM_install/libsgx-ra-network.txt b/linux/installer/common/psw-dcap/BOM_install/libsgx-ra-network.txt
+index 2f260bd5..2d4749a0 100644
+--- a/linux/installer/common/psw-dcap/BOM_install/libsgx-ra-network.txt
++++ b/linux/installer/common/psw-dcap/BOM_install/libsgx-ra-network.txt
+@@ -1,2 +1,2 @@
+ DeliveryName	InstallName	FileCheckSum	FileFeature	FileOwner
+-<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/lib64/libmpa_network.so	<installdir>/lib/libmpa_network.so	0	main	STP
++<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/release/lib64/libmpa_network.so	<installdir>/lib/libmpa_network.so	0	main	STP
+diff --git a/linux/installer/common/psw-dcap/BOM_install/libsgx-ra-uefi.txt b/linux/installer/common/psw-dcap/BOM_install/libsgx-ra-uefi.txt
+index 63356491..31db9f6f 100644
+--- a/linux/installer/common/psw-dcap/BOM_install/libsgx-ra-uefi.txt
++++ b/linux/installer/common/psw-dcap/BOM_install/libsgx-ra-uefi.txt
+@@ -1,2 +1,2 @@
+ DeliveryName	InstallName	FileCheckSum	FileFeature	FileOwner
+-<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/lib64/libmpa_uefi.so	<installdir>/lib/libmpa_uefi.so	0	main	STP
++<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/release/lib64/libmpa_uefi.so	<installdir>/lib/libmpa_uefi.so	0	main	STP
+diff --git a/linux/installer/common/psw-dcap/BOM_install/sgx-ra-service.txt b/linux/installer/common/psw-dcap/BOM_install/sgx-ra-service.txt
+index 3521a03f..6fea3137 100644
+--- a/linux/installer/common/psw-dcap/BOM_install/sgx-ra-service.txt
++++ b/linux/installer/common/psw-dcap/BOM_install/sgx-ra-service.txt
+@@ -1,8 +1,8 @@
+ DeliveryName	InstallName	FileCheckSum	FileFeature	FileOwner
+-<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/bin/mpa_manage	<installdir>/mpa_manage	0	main	STP
+-<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/package/mpa_registration	<installdir>/mpa_registration	0	main	STP
+-<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/package/mpa_registration_tool.service	<installdir>/mpa_registration_tool.service	0	main	STP
+-<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/package/mpa_registration_tool.conf	<installdir>/mpa_registration_tool.conf	0	main	STP
+-<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/config/mpa_registration.conf	<installdir>/conf/mpa_registration.conf	0	main	STP
+-<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/package/startup.sh	<installdir>/startup.sh	0	main	STP
+-<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/package/cleanup.sh	<installdir>/cleanup.sh	0	main	STP
++<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/release/bin/mpa_manage	<installdir>/mpa_manage	0	main	STP
++<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/release/bin/mpa_registration	<installdir>/mpa_registration	0	main	STP
++<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/src/mpa_registration/mpa_registration_tool.service	<installdir>/mpa_registration_tool.service	0	main	STP
++<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/src/mpa_registration/mpa_registration_tool.conf	<installdir>/mpa_registration_tool.conf	0	main	STP
++<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/installer/common/sgx-ra-service/config/mpa_registration.conf	<installdir>/conf/mpa_registration.conf	0	main	STP
++<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/src/mpa_registration/startup.sh	<installdir>/startup.sh	0	main	STP
++<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/src/mpa_registration/cleanup.sh	<installdir>/cleanup.sh	0	main	STP
+diff --git a/linux/installer/common/psw-tdx/BOM_install/libsgx-ra-network.txt b/linux/installer/common/psw-tdx/BOM_install/libsgx-ra-network.txt
+index 2f260bd5..2d4749a0 100644
+--- a/linux/installer/common/psw-tdx/BOM_install/libsgx-ra-network.txt
++++ b/linux/installer/common/psw-tdx/BOM_install/libsgx-ra-network.txt
+@@ -1,2 +1,2 @@
+ DeliveryName	InstallName	FileCheckSum	FileFeature	FileOwner
+-<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/lib64/libmpa_network.so	<installdir>/lib/libmpa_network.so	0	main	STP
++<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/release/lib64/libmpa_network.so	<installdir>/lib/libmpa_network.so	0	main	STP
+diff --git a/linux/installer/common/psw-tdx/BOM_install/libsgx-ra-uefi.txt b/linux/installer/common/psw-tdx/BOM_install/libsgx-ra-uefi.txt
+index 63356491..31db9f6f 100644
+--- a/linux/installer/common/psw-tdx/BOM_install/libsgx-ra-uefi.txt
++++ b/linux/installer/common/psw-tdx/BOM_install/libsgx-ra-uefi.txt
+@@ -1,2 +1,2 @@
+ DeliveryName	InstallName	FileCheckSum	FileFeature	FileOwner
+-<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/lib64/libmpa_uefi.so	<installdir>/lib/libmpa_uefi.so	0	main	STP
++<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/release/lib64/libmpa_uefi.so	<installdir>/lib/libmpa_uefi.so	0	main	STP
+diff --git a/linux/installer/common/psw-tdx/BOM_install/sgx-ra-service.txt b/linux/installer/common/psw-tdx/BOM_install/sgx-ra-service.txt
+index 3521a03f..6fea3137 100644
+--- a/linux/installer/common/psw-tdx/BOM_install/sgx-ra-service.txt
++++ b/linux/installer/common/psw-tdx/BOM_install/sgx-ra-service.txt
+@@ -1,8 +1,8 @@
+ DeliveryName	InstallName	FileCheckSum	FileFeature	FileOwner
+-<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/bin/mpa_manage	<installdir>/mpa_manage	0	main	STP
+-<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/package/mpa_registration	<installdir>/mpa_registration	0	main	STP
+-<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/package/mpa_registration_tool.service	<installdir>/mpa_registration_tool.service	0	main	STP
+-<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/package/mpa_registration_tool.conf	<installdir>/mpa_registration_tool.conf	0	main	STP
+-<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/config/mpa_registration.conf	<installdir>/conf/mpa_registration.conf	0	main	STP
+-<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/package/startup.sh	<installdir>/startup.sh	0	main	STP
+-<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/package/cleanup.sh	<installdir>/cleanup.sh	0	main	STP
++<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/release/bin/mpa_manage	<installdir>/mpa_manage	0	main	STP
++<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/release/bin/mpa_registration	<installdir>/mpa_registration	0	main	STP
++<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/src/mpa_registration/mpa_registration_tool.service	<installdir>/mpa_registration_tool.service	0	main	STP
++<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/src/mpa_registration/mpa_registration_tool.conf	<installdir>/mpa_registration_tool.conf	0	main	STP
++<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/installer/common/sgx-ra-service/config/mpa_registration.conf	<installdir>/conf/mpa_registration.conf	0	main	STP
++<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/src/mpa_registration/startup.sh	<installdir>/startup.sh	0	main	STP
++<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/src/mpa_registration/cleanup.sh	<installdir>/cleanup.sh	0	main	STP
+-- 
+2.55.0
+

diff --git a/0014-sdk-avoid-failure-due-to-attribute-regparam-with-GCC.patch b/0014-sdk-avoid-failure-due-to-attribute-regparam-with-GCC.patch
deleted file mode 100644
index f20565a..0000000
--- a/0014-sdk-avoid-failure-due-to-attribute-regparam-with-GCC.patch
+++ /dev/null
@@ -1,83 +0,0 @@
-From 4a12419da033bf88ded73ece3a80090c3d48c7ef Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Tue, 6 Jan 2026 18:31:32 +0000
-Subject: [PATCH 14/17] sdk: avoid failure due to attribute(regparam) with GCC
- 16
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-GCC >= 16 now warns about use of attribute(regparam) on x86_64 targets.
-The attribute was always ignored on x86_64, so only had effect on i686
-and thus the warning can be safely ignored.
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- psw/urts/linux/Makefile               | 4 ++--
- sdk/simulation/trtssim/linux/Makefile | 4 ++--
- sdk/simulation/urtssim/linux/Makefile | 4 ++--
- sdk/trts/Makefile                     | 1 +
- 4 files changed, 7 insertions(+), 6 deletions(-)
-
-diff --git a/psw/urts/linux/Makefile b/psw/urts/linux/Makefile
-index 275a9d45..94a0aacb 100644
---- a/psw/urts/linux/Makefile
-+++ b/psw/urts/linux/Makefile
-@@ -36,10 +36,10 @@ CXXFLAGS += -DDISABLE_TRACE
- CFLAGS += -DDISABLE_TRACE
- endif
- 
--CXXFLAGS += -fPIC -Werror -g
-+CXXFLAGS += -fPIC -Werror -Wno-attributes -g
- CXXFLAGS += $(ADDED_INC)
- 
--CFLAGS += -fPIC -Werror -g
-+CFLAGS += -fPIC -Werror -Wno-attributes -g
- CFLAGS += $(ADDED_INC)
- 
- VTUNE_DIR = $(LINUX_EXTERNAL_DIR)/vtune/linux
-diff --git a/sdk/simulation/trtssim/linux/Makefile b/sdk/simulation/trtssim/linux/Makefile
-index 16e2a96d..7e545c1a 100644
---- a/sdk/simulation/trtssim/linux/Makefile
-+++ b/sdk/simulation/trtssim/linux/Makefile
-@@ -41,8 +41,8 @@ CPPFLAGS += -I$(COMMON_DIR)/inc/         \
- 
- CFLAGS   += $(ENCLAVE_CFLAGS)
- ASFLAGS  := -DSE_SIM -Werror $(CFLAGS)
--CFLAGS   += -DSE_SIM -Werror -fasynchronous-unwind-tables
--CXXFLAGS += -DSE_SIM -Werror $(ENCLAVE_CXXFLAGS)\
-+CFLAGS   += -DSE_SIM -Werror -Wno-attributes -fasynchronous-unwind-tables
-+CXXFLAGS += -DSE_SIM -Werror -Wno-attributes $(ENCLAVE_CXXFLAGS)\
-             -fno-exceptions -fno-rtti
- 
- SIM_DIR    := $(CUR_DIR)/../..
-diff --git a/sdk/simulation/urtssim/linux/Makefile b/sdk/simulation/urtssim/linux/Makefile
-index 78f53484..c99a50e5 100644
---- a/sdk/simulation/urtssim/linux/Makefile
-+++ b/sdk/simulation/urtssim/linux/Makefile
-@@ -39,8 +39,8 @@ CXXFLAGS += -DDISABLE_TRACE
- CFLAGS += -DDISABLE_TRACE
- endif
- 
--CXXFLAGS += -fPIC -DSE_SIM -Werror -g $(CET_FLAGS)
--CFLAGS   += -fPIC -DSE_SIM -Werror -g $(CET_FLAGS)
-+CXXFLAGS += -fPIC -DSE_SIM -Werror -Wno-attributes -g $(CET_FLAGS)
-+CFLAGS   += -fPIC -DSE_SIM -Werror -Wno-attributes -g $(CET_FLAGS)
- 
- CPPFLAGS += $(ADDED_INC) #for ubuntu 11 and later version
- CPPFLAGS += -I$(COMMON_DIR)/inc                \
-diff --git a/sdk/trts/Makefile b/sdk/trts/Makefile
-index 5750aece..4766ef51 100644
---- a/sdk/trts/Makefile
-+++ b/sdk/trts/Makefile
-@@ -39,6 +39,7 @@ CPPFLAGS += -I$(COMMON_DIR)/inc          \
- 
- CXXFLAGS += $(ENCLAVE_CXXFLAGS) \
-             -Werror         \
-+            -Wno-attributes \
-             -fno-exceptions \
-             -fno-rtti
- 
--- 
-2.55.0
-

diff --git a/0015-fix-BOM-for-mpa_manage-mpa_registration-files.patch b/0015-fix-BOM-for-mpa_manage-mpa_registration-files.patch
deleted file mode 100644
index a9d5ea3..0000000
--- a/0015-fix-BOM-for-mpa_manage-mpa_registration-files.patch
+++ /dev/null
@@ -1,98 +0,0 @@
-From 9fa76f92c2dd7430b5b873cf0b93810d9fb80a8f Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Mon, 2 Feb 2026 19:01:24 +0000
-Subject: [PATCH 15/17] fix BOM for mpa_manage/mpa_registration files
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The paths for mpa_manage/mpa_registration binaries and their associated
-files all moved, and the BOM was not updated.
-
-These changes are synced from the DCAP repo BOMs.
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- .../psw-dcap/BOM_install/libsgx-ra-network.txt     |  2 +-
- .../common/psw-dcap/BOM_install/libsgx-ra-uefi.txt |  2 +-
- .../common/psw-dcap/BOM_install/sgx-ra-service.txt | 14 +++++++-------
- .../psw-tdx/BOM_install/libsgx-ra-network.txt      |  2 +-
- .../common/psw-tdx/BOM_install/libsgx-ra-uefi.txt  |  2 +-
- .../common/psw-tdx/BOM_install/sgx-ra-service.txt  | 14 +++++++-------
- 6 files changed, 18 insertions(+), 18 deletions(-)
-
-diff --git a/linux/installer/common/psw-dcap/BOM_install/libsgx-ra-network.txt b/linux/installer/common/psw-dcap/BOM_install/libsgx-ra-network.txt
-index 2f260bd5..2d4749a0 100644
---- a/linux/installer/common/psw-dcap/BOM_install/libsgx-ra-network.txt
-+++ b/linux/installer/common/psw-dcap/BOM_install/libsgx-ra-network.txt
-@@ -1,2 +1,2 @@
- DeliveryName	InstallName	FileCheckSum	FileFeature	FileOwner
--<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/lib64/libmpa_network.so	<installdir>/lib/libmpa_network.so	0	main	STP
-+<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/release/lib64/libmpa_network.so	<installdir>/lib/libmpa_network.so	0	main	STP
-diff --git a/linux/installer/common/psw-dcap/BOM_install/libsgx-ra-uefi.txt b/linux/installer/common/psw-dcap/BOM_install/libsgx-ra-uefi.txt
-index 63356491..31db9f6f 100644
---- a/linux/installer/common/psw-dcap/BOM_install/libsgx-ra-uefi.txt
-+++ b/linux/installer/common/psw-dcap/BOM_install/libsgx-ra-uefi.txt
-@@ -1,2 +1,2 @@
- DeliveryName	InstallName	FileCheckSum	FileFeature	FileOwner
--<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/lib64/libmpa_uefi.so	<installdir>/lib/libmpa_uefi.so	0	main	STP
-+<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/release/lib64/libmpa_uefi.so	<installdir>/lib/libmpa_uefi.so	0	main	STP
-diff --git a/linux/installer/common/psw-dcap/BOM_install/sgx-ra-service.txt b/linux/installer/common/psw-dcap/BOM_install/sgx-ra-service.txt
-index 3521a03f..6fea3137 100644
---- a/linux/installer/common/psw-dcap/BOM_install/sgx-ra-service.txt
-+++ b/linux/installer/common/psw-dcap/BOM_install/sgx-ra-service.txt
-@@ -1,8 +1,8 @@
- DeliveryName	InstallName	FileCheckSum	FileFeature	FileOwner
--<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/bin/mpa_manage	<installdir>/mpa_manage	0	main	STP
--<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/package/mpa_registration	<installdir>/mpa_registration	0	main	STP
--<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/package/mpa_registration_tool.service	<installdir>/mpa_registration_tool.service	0	main	STP
--<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/package/mpa_registration_tool.conf	<installdir>/mpa_registration_tool.conf	0	main	STP
--<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/config/mpa_registration.conf	<installdir>/conf/mpa_registration.conf	0	main	STP
--<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/package/startup.sh	<installdir>/startup.sh	0	main	STP
--<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/package/cleanup.sh	<installdir>/cleanup.sh	0	main	STP
-+<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/release/bin/mpa_manage	<installdir>/mpa_manage	0	main	STP
-+<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/release/bin/mpa_registration	<installdir>/mpa_registration	0	main	STP
-+<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/src/mpa_registration/mpa_registration_tool.service	<installdir>/mpa_registration_tool.service	0	main	STP
-+<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/src/mpa_registration/mpa_registration_tool.conf	<installdir>/mpa_registration_tool.conf	0	main	STP
-+<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/installer/common/sgx-ra-service/config/mpa_registration.conf	<installdir>/conf/mpa_registration.conf	0	main	STP
-+<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/src/mpa_registration/startup.sh	<installdir>/startup.sh	0	main	STP
-+<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/src/mpa_registration/cleanup.sh	<installdir>/cleanup.sh	0	main	STP
-diff --git a/linux/installer/common/psw-tdx/BOM_install/libsgx-ra-network.txt b/linux/installer/common/psw-tdx/BOM_install/libsgx-ra-network.txt
-index 2f260bd5..2d4749a0 100644
---- a/linux/installer/common/psw-tdx/BOM_install/libsgx-ra-network.txt
-+++ b/linux/installer/common/psw-tdx/BOM_install/libsgx-ra-network.txt
-@@ -1,2 +1,2 @@
- DeliveryName	InstallName	FileCheckSum	FileFeature	FileOwner
--<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/lib64/libmpa_network.so	<installdir>/lib/libmpa_network.so	0	main	STP
-+<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/release/lib64/libmpa_network.so	<installdir>/lib/libmpa_network.so	0	main	STP
-diff --git a/linux/installer/common/psw-tdx/BOM_install/libsgx-ra-uefi.txt b/linux/installer/common/psw-tdx/BOM_install/libsgx-ra-uefi.txt
-index 63356491..31db9f6f 100644
---- a/linux/installer/common/psw-tdx/BOM_install/libsgx-ra-uefi.txt
-+++ b/linux/installer/common/psw-tdx/BOM_install/libsgx-ra-uefi.txt
-@@ -1,2 +1,2 @@
- DeliveryName	InstallName	FileCheckSum	FileFeature	FileOwner
--<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/lib64/libmpa_uefi.so	<installdir>/lib/libmpa_uefi.so	0	main	STP
-+<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/release/lib64/libmpa_uefi.so	<installdir>/lib/libmpa_uefi.so	0	main	STP
-diff --git a/linux/installer/common/psw-tdx/BOM_install/sgx-ra-service.txt b/linux/installer/common/psw-tdx/BOM_install/sgx-ra-service.txt
-index 3521a03f..6fea3137 100644
---- a/linux/installer/common/psw-tdx/BOM_install/sgx-ra-service.txt
-+++ b/linux/installer/common/psw-tdx/BOM_install/sgx-ra-service.txt
-@@ -1,8 +1,8 @@
- DeliveryName	InstallName	FileCheckSum	FileFeature	FileOwner
--<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/bin/mpa_manage	<installdir>/mpa_manage	0	main	STP
--<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/package/mpa_registration	<installdir>/mpa_registration	0	main	STP
--<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/package/mpa_registration_tool.service	<installdir>/mpa_registration_tool.service	0	main	STP
--<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/package/mpa_registration_tool.conf	<installdir>/mpa_registration_tool.conf	0	main	STP
--<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/config/mpa_registration.conf	<installdir>/conf/mpa_registration.conf	0	main	STP
--<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/package/startup.sh	<installdir>/startup.sh	0	main	STP
--<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/package/cleanup.sh	<installdir>/cleanup.sh	0	main	STP
-+<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/release/bin/mpa_manage	<installdir>/mpa_manage	0	main	STP
-+<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/build/release/bin/mpa_registration	<installdir>/mpa_registration	0	main	STP
-+<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/src/mpa_registration/mpa_registration_tool.service	<installdir>/mpa_registration_tool.service	0	main	STP
-+<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/src/mpa_registration/mpa_registration_tool.conf	<installdir>/mpa_registration_tool.conf	0	main	STP
-+<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/installer/common/sgx-ra-service/config/mpa_registration.conf	<installdir>/conf/mpa_registration.conf	0	main	STP
-+<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/src/mpa_registration/startup.sh	<installdir>/startup.sh	0	main	STP
-+<deliverydir>/external/dcap_source/tools/SGXPlatformRegistration/src/mpa_registration/cleanup.sh	<installdir>/cleanup.sh	0	main	STP
--- 
-2.55.0
-

diff --git a/0015-fix-missing-def-of-uncaught_exception.patch b/0015-fix-missing-def-of-uncaught_exception.patch
new file mode 100644
index 0000000..b3a8c74
--- /dev/null
+++ b/0015-fix-missing-def-of-uncaught_exception.patch
@@ -0,0 +1,37 @@
+From bd8d61046de1201caebaeccc0ba0a09c8c0733de Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Wed, 25 Mar 2026 12:15:12 +0000
+Subject: [PATCH 15/16] fix missing def of uncaught_exception
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This needs to be unconditionally present, not restricted to
+old C++ standards. This fixes an error seen with GCC 16:
+
+linux-sgx-2.28-build/confidential-computing.sgx-sgx_2.28/sdk/tlibcxx/include/ostream:280:27: error: there are no arguments to ‘uncaught_exception’ that depend on a template parameter, so a declaration of ‘uncaught_exception’ must be available [-Wtemplate-body]
+  280 |                       && !uncaught_exception())
+      |                           ^~~~~~~~~~~~~~~~~~
+linux-sgx-2.28-build/confidential-computing.sgx-sgx_2.28/sdk/tlibcxx/include/ostream:280:27: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ common/inc/stdc++/linux/exception | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/common/inc/stdc++/linux/exception b/common/inc/stdc++/linux/exception
+index a3c81106..b81f2d0c 100644
+--- a/common/inc/stdc++/linux/exception
++++ b/common/inc/stdc++/linux/exception
+@@ -63,7 +63,7 @@ namespace std
+ 
+ #  if  __cplusplus < 201103L
+     bool uncaught_exception() throw();
+-#  elif __cplusplus <= 201703L
++#  else
+     bool uncaught_exception() noexcept;
+ #  endif
+ 
+-- 
+2.55.0
+

diff --git a/0016-fix-missing-def-of-uncaught_exception.patch b/0016-fix-missing-def-of-uncaught_exception.patch
deleted file mode 100644
index bbdd7a5..0000000
--- a/0016-fix-missing-def-of-uncaught_exception.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From ce1ad3fba7d14ff037b40ffeab2dccbfa7ccdbc5 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Wed, 25 Mar 2026 12:15:12 +0000
-Subject: [PATCH 16/17] fix missing def of uncaught_exception
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-This needs to be unconditionally present, not restricted to
-old C++ standards. This fixes an error seen with GCC 16:
-
-linux-sgx-2.28-build/confidential-computing.sgx-sgx_2.28/sdk/tlibcxx/include/ostream:280:27: error: there are no arguments to ‘uncaught_exception’ that depend on a template parameter, so a declaration of ‘uncaught_exception’ must be available [-Wtemplate-body]
-  280 |                       && !uncaught_exception())
-      |                           ^~~~~~~~~~~~~~~~~~
-linux-sgx-2.28-build/confidential-computing.sgx-sgx_2.28/sdk/tlibcxx/include/ostream:280:27: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- common/inc/stdc++/linux/exception | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/common/inc/stdc++/linux/exception b/common/inc/stdc++/linux/exception
-index a3c81106..b81f2d0c 100644
---- a/common/inc/stdc++/linux/exception
-+++ b/common/inc/stdc++/linux/exception
-@@ -63,7 +63,7 @@ namespace std
- 
- #  if  __cplusplus < 201103L
-     bool uncaught_exception() throw();
--#  elif __cplusplus <= 201703L
-+#  else
-     bool uncaught_exception() noexcept;
- #  endif
- 
--- 
-2.55.0
-

diff --git a/0016-sdk-adapt-to-openssl4-API-changes.patch b/0016-sdk-adapt-to-openssl4-API-changes.patch
new file mode 100644
index 0000000..64824a1
--- /dev/null
+++ b/0016-sdk-adapt-to-openssl4-API-changes.patch
@@ -0,0 +1,53 @@
+From 24804ec1781d3fe9fe105a7550c603d8d1cad7b5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Mon, 20 Jul 2026 10:51:55 +0100
+Subject: [PATCH 16/16] sdk: adapt to openssl4 API changes
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Returned  ASN1 structures must now be const, and the string
+type is now opaque.
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ sdk/ttls/cert_verifier.cpp | 9 +++++----
+ 1 file changed, 5 insertions(+), 4 deletions(-)
+
+diff --git a/sdk/ttls/cert_verifier.cpp b/sdk/ttls/cert_verifier.cpp
+index 2889bfaf..a852d153 100644
+--- a/sdk/ttls/cert_verifier.cpp
++++ b/sdk/ttls/cert_verifier.cpp
+@@ -733,7 +733,7 @@ sgx_status_t sgx_cert_find_extension(
+     for (int i = 0; i < num_extensions; i++)
+     {
+         X509_EXTENSION* ext;
+-        ASN1_OBJECT* obj;
++        const ASN1_OBJECT* obj;
+         sgx_oid_string_t ext_oid;
+ 
+         /* Get the i-th extension from the stack */
+@@ -751,7 +751,7 @@ sgx_status_t sgx_cert_find_extension(
+         /* If found then get the data */
+         if (strcmp(ext_oid.buf, oid) == 0)
+         {
+-            ASN1_OCTET_STRING* str;
++            const ASN1_OCTET_STRING* str;
+ 
+             /* Get the data from the extension */
+             if (!(str = X509_EXTENSION_get_data(ext)))
+@@ -759,8 +759,9 @@ sgx_status_t sgx_cert_find_extension(
+ 
+             if (data)
+             {
+-                memcpy(data, str->data, (size_t)str->length);
+-                *size = (size_t)str->length;
++                const unsigned char *strdata = ASN1_STRING_get0_data(str);
++                *size = (size_t)ASN1_STRING_length(str);
++                memcpy(data, strdata, (size_t)*size);
+                 result = SGX_SUCCESS;
+                 goto done;
+             }
+-- 
+2.55.0
+

diff --git a/0017-sdk-adapt-to-openssl4-API-changes.patch b/0017-sdk-adapt-to-openssl4-API-changes.patch
deleted file mode 100644
index ada36fa..0000000
--- a/0017-sdk-adapt-to-openssl4-API-changes.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From b17c3e46de9b3c3004d394ae8b4c7b6cafa968a6 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Mon, 20 Jul 2026 10:51:55 +0100
-Subject: [PATCH 17/17] sdk: adapt to openssl4 API changes
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Returned  ASN1 structures must now be const, and the string
-type is now opaque.
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- sdk/ttls/cert_verifier.cpp | 9 +++++----
- 1 file changed, 5 insertions(+), 4 deletions(-)
-
-diff --git a/sdk/ttls/cert_verifier.cpp b/sdk/ttls/cert_verifier.cpp
-index 2889bfaf..a852d153 100644
---- a/sdk/ttls/cert_verifier.cpp
-+++ b/sdk/ttls/cert_verifier.cpp
-@@ -733,7 +733,7 @@ sgx_status_t sgx_cert_find_extension(
-     for (int i = 0; i < num_extensions; i++)
-     {
-         X509_EXTENSION* ext;
--        ASN1_OBJECT* obj;
-+        const ASN1_OBJECT* obj;
-         sgx_oid_string_t ext_oid;
- 
-         /* Get the i-th extension from the stack */
-@@ -751,7 +751,7 @@ sgx_status_t sgx_cert_find_extension(
-         /* If found then get the data */
-         if (strcmp(ext_oid.buf, oid) == 0)
-         {
--            ASN1_OCTET_STRING* str;
-+            const ASN1_OCTET_STRING* str;
- 
-             /* Get the data from the extension */
-             if (!(str = X509_EXTENSION_get_data(ext)))
-@@ -759,8 +759,9 @@ sgx_status_t sgx_cert_find_extension(
- 
-             if (data)
-             {
--                memcpy(data, str->data, (size_t)str->length);
--                *size = (size_t)str->length;
-+                const unsigned char *strdata = ASN1_STRING_get0_data(str);
-+                *size = (size_t)ASN1_STRING_length(str);
-+                memcpy(data, strdata, (size_t)*size);
-                 result = SGX_SUCCESS;
-                 goto done;
-             }
--- 
-2.55.0
-

diff --git a/0050-Disable-inclusion-of-AESM-in-installer.patch b/0050-Disable-inclusion-of-AESM-in-installer.patch
index 59e6ff3..5b43bc4 100644
--- a/0050-Disable-inclusion-of-AESM-in-installer.patch
+++ b/0050-Disable-inclusion-of-AESM-in-installer.patch
@@ -1,4 +1,4 @@
-From 5e85d8d7f98625bf42c75b2253b1cbe763d5a275 Mon Sep 17 00:00:00 2001
+From 479ea6a461b3a40d57e6b6434c2dc6d05528ecc1 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
 Date: Tue, 11 Feb 2025 14:58:58 +0000
 Subject: [PATCH] Disable inclusion of AESM in installer
@@ -12,8 +12,8 @@ CppMicroServices dependency
 Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
 ---
  linux/installer/common/psw-dcap/Makefile | 25 +-----------------------
- psw/ae/Makefile                          |  2 +-
- 2 files changed, 2 insertions(+), 25 deletions(-)
+ psw/ae/Makefile                          |  6 +++++-
+ 2 files changed, 6 insertions(+), 25 deletions(-)
 
 diff --git a/linux/installer/common/psw-dcap/Makefile b/linux/installer/common/psw-dcap/Makefile
 index 1ae7a292..1174622d 100644
@@ -59,18 +59,22 @@ index 1ae7a292..1174622d 100644
  PHONY+=$(RA_SERVICE_PACKAGE)
  $(RA_SERVICE_PACKAGE): pre_$(RA_SERVICE_PACKAGE) | $(PACKAGE_ROOT_PATH)
 diff --git a/psw/ae/Makefile b/psw/ae/Makefile
-index 8853694d..3b4ff9f0 100644
+index 8853694d..0486eb12 100644
 --- a/psw/ae/Makefile
 +++ b/psw/ae/Makefile
-@@ -45,7 +45,7 @@ CHECK_PREBUILT := prebuilt_check_fail
+@@ -45,7 +45,11 @@ CHECK_PREBUILT := prebuilt_check_fail
  endif
  
  .PHONY: all
 -all: $(CMAKE_RESULT) AESM COPY_AES| $(BUILD_DIR)
++ifeq ($(BUILD_REF_LE), 1)
++all: $(CMAKE_RESULT) REF_LE COPY_AES| $(BUILD_DIR)
++else
 +all: $(CMAKE_RESULT) COPY_AES| $(BUILD_DIR)
++endif #($(BUILD_REF_LE), 1)
  
  # COPY_AES: currently copy le, pce, qe3
  .PHONY: COPY_AES
 -- 
-2.53.0
+2.55.0
 

diff --git a/0100-Drop-use-of-bundled-pre-built-openssl.patch b/0100-Drop-use-of-bundled-pre-built-openssl.patch
index f29e4a7..7dbdf62 100644
--- a/0100-Drop-use-of-bundled-pre-built-openssl.patch
+++ b/0100-Drop-use-of-bundled-pre-built-openssl.patch
@@ -1,7 +1,7 @@
-From 1d5c7e55c48a88437045e08261a7cd3ce2f4ab87 Mon Sep 17 00:00:00 2001
+From b7ab736f63e50e657264e4586a1b1303d13205cd Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
 Date: Mon, 26 Feb 2024 12:19:51 +0000
-Subject: [PATCH 100/127] Drop use of bundled pre-built openssl
+Subject: [PATCH 100/122] Drop use of bundled pre-built openssl
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
@@ -23,7 +23,7 @@ Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  9 files changed, 20 insertions(+), 33 deletions(-)
 
 diff --git a/QuoteGeneration/qcnl/linux/Makefile b/QuoteGeneration/qcnl/linux/Makefile
-index 3d105625..9e358fb6 100644
+index 20aca936..b97e2019 100644
 --- a/QuoteGeneration/qcnl/linux/Makefile
 +++ b/QuoteGeneration/qcnl/linux/Makefile
 @@ -7,7 +7,6 @@
@@ -34,9 +34,9 @@ index 3d105625..9e358fb6 100644
  
  ######## SGX CNL Library Settings ########
  
-@@ -20,10 +19,9 @@ CNL_Lib_Include_Paths := -I../../quote_wrapper/common/inc       \
+@@ -19,10 +18,9 @@ CNL_Lib_Include_Paths := -I../../quote_wrapper/common/inc       \
+                          -I../inc -I$(SGX_SDK)/include          \
                           -I../../common/inc/internal            \
-                          -I../../pce_wrapper/inc                \
                           -I../../../QuoteVerification/QVL/Src/ThirdParty/rapidjson/include/rapidjson	\
 -                         -I../../../tools/PCKCertSelection/include \
 -                         -I$(PREBUILD_OPENSSL_PATH)/inc
@@ -47,7 +47,7 @@ index 3d105625..9e358fb6 100644
  
  LDUFLAGS:= -pthread $(COMMON_LDFLAGS)
  LDUFLAGS += -Wl,--version-script=sgx_default_qcnl.lds -Wl,--gc-sections
-@@ -35,7 +33,7 @@ CNL_Lib_Cpp_Flags+= -DSELF_SIGNED_CERT
+@@ -34,7 +32,7 @@ CNL_Lib_Cpp_Flags+= -DSELF_SIGNED_CERT
  endif
  
  CNL_Lib_Link_Flags := $(SGX_COMMON_FLAGS) -g -L$(TOP_DIR)/build/linux -L$(SGX_SDK)/lib64 \
@@ -90,22 +90,21 @@ index 549f5ef0..52b91b0a 100644
   
  ifndef DEBUG
 diff --git a/QuoteVerification/appraisal/qal/Makefile b/QuoteVerification/appraisal/qal/Makefile
-index c0df67b2..4feaaa92 100644
+index 2cd7f4fc..e7e11511 100644
 --- a/QuoteVerification/appraisal/qal/Makefile
 +++ b/QuoteVerification/appraisal/qal/Makefile
-@@ -12,10 +12,9 @@ WARM_Lib_Path := $(WARM_Top_Path)/product-mini/platforms/linux/build/
+@@ -12,9 +12,8 @@ WARM_Lib_Path := $(WARM_Top_Path)/product-mini/platforms/linux/build/
  
  JWT_CPP_Path := ../../../external/jwt-cpp/
  RAPIDJSON_DIR :=  ../../QVL/Src/ThirdParty/rapidjson/include
 -PREBUILD_OPENSSL_PATH := ../../../prebuilt/openssl
- QAL_Include_Path := -I./ \
-                 -I$(SGX_SDK)/include \
+ QAL_Include_Path := -I$(SGX_SDK)/include \
 -                -I$(PREBUILD_OPENSSL_PATH)/inc \
 +                $(shell pkg-config --cflags libcrypto) \
                  -I$(DCAP_QG_DIR)/common/inc/internal/linux \
                  -I$(WARM_Top_Path)/core/iwasm/include \
                  -I$(JWT_CPP_Path)/include   \
-@@ -28,7 +27,7 @@ QAL_Cpp_Flags := $(CXXFLAGS) -g -fPIC $(QAL_Include_Path)
+@@ -27,7 +26,7 @@ QAL_Cpp_Flags := $(CXXFLAGS) -g -fPIC $(QAL_Include_Path)
  QAL_C_Flags := $(CFLAGS) -g -fPIC $(QAL_Include_Path)
  
  QAL_Link_Flags := $(COMMON_LDFLAGS) -L$(WARM_Lib_Path) -lvmlib  -ldl -lm -lpthread \
@@ -144,11 +143,11 @@ index 966b51f9..9e06fc79 100644
  
  TARGET_NAME := tee_appraisal_tool
 diff --git a/QuoteVerification/buildenv.mk b/QuoteVerification/buildenv.mk
-index a619f498..8ffd99cb 100644
+index 443212a0..527a5e9c 100644
 --- a/QuoteVerification/buildenv.mk
 +++ b/QuoteVerification/buildenv.mk
-@@ -31,7 +31,6 @@ PREBUILD_PATH	        := $(DCAP_QG_DIR)/../prebuilt
- DCAP_QV_DIR				:= $(DCAP_QG_DIR)/../QuoteVerification
+@@ -31,7 +31,6 @@ PREBUILD_PATH	        := $(abspath $(DCAP_QG_DIR)/../prebuilt)
+ DCAP_QV_DIR				:= $(abspath $(DCAP_QG_DIR)/../QuoteVerification)
  QVL_SRC_PATH 			?= $(DCAP_QV_DIR)/QVL/Src
  SGXSSL_PACKAGE_PATH 	?= $(DCAP_QV_DIR)/sgxssl/Linux/package
 -PREBUILD_OPENSSL_PATH	?= $(PREBUILD_PATH)/openssl
@@ -156,10 +155,10 @@ index a619f498..8ffd99cb 100644
  SGX_COMMON_CFLAGS := $(COMMON_FLAGS) -m64 -Wjump-misses-init -Wstrict-prototypes -Wunsuffixed-float-constants
  SGX_COMMON_CXXFLAGS := $(COMMON_FLAGS) -m64 -Wnon-virtual-dtor -std=c++17
 diff --git a/QuoteVerification/dcap_quoteverify/linux/Makefile b/QuoteVerification/dcap_quoteverify/linux/Makefile
-index 308ee9e1..71f0f989 100644
+index 9d89308d..5db465de 100644
 --- a/QuoteVerification/dcap_quoteverify/linux/Makefile
 +++ b/QuoteVerification/dcap_quoteverify/linux/Makefile
-@@ -16,8 +16,8 @@ INSTALL_PATH 		?= /usr/lib/x86_64-linux-gnu
+@@ -16,15 +16,15 @@ INSTALL_PATH 		?= /usr/lib/x86_64-linux-gnu
  QVE_SRC_PATH		:= ../../../ae/QvE
  DCAP_QPL_DIR := $(DCAP_QG_DIR)/qpl
  
@@ -170,16 +169,15 @@ index 308ee9e1..71f0f989 100644
  QVL_VERIFY_INC	:= -I$(QVE_SRC_PATH)/Include \
                     -I../inc \
                     -I$(DCAP_QG_DIR)/quote_wrapper/common/inc \
-@@ -25,7 +25,7 @@ QVL_VERIFY_INC	:= -I$(QVE_SRC_PATH)/Include \
+                    -I$(SGX_SDK)/include \
                     -I$(DCAP_QG_DIR)/common/inc/internal \
                     -I$(DCAP_QG_DIR)/common/inc/internal/linux \
-                    -I$(DCAP_QG_DIR)/pce_wrapper/inc \
 -                   -I$(PREBUILD_OPENSSL_PATH)/inc \
 +                   $(shell pkg-config --cflags libcrypto) \
                     $(QVL_LIB_INC) \
                     -I$(DCAP_QPL_DIR)/inc \
                     -I$(DCAP_QV_DIR)/appraisal/common \
-@@ -49,7 +49,7 @@ QVL_PARSER := sgx_dcap_qvl_attestation
+@@ -48,7 +48,7 @@ QVL_PARSER := sgx_dcap_qvl_attestation
  QVL_LIB_NAME := lib$(QVL_LIB).a
  QVL_PARSER_NAME := lib$(QVL_PARSER).a
  
@@ -189,7 +187,7 @@ index 308ee9e1..71f0f989 100644
  
  QVL_VERIFY_CPP_SRCS := $(wildcard ../*.cpp) $(wildcard *.cpp)
 diff --git a/ae/QvE/Test/Makefile b/ae/QvE/Test/Makefile
-index 345c9f52..0ed41883 100644
+index 1ed4bf6a..c6cc171d 100644
 --- a/ae/QvE/Test/Makefile
 +++ b/ae/QvE/Test/Makefile
 @@ -20,7 +20,7 @@ SRC_PATH := $(MKFILE_PATH)/../qve

diff --git a/0101-Improve-debuggability-of-build-system.patch b/0101-Improve-debuggability-of-build-system.patch
index d6bd8f7..ee29552 100644
--- a/0101-Improve-debuggability-of-build-system.patch
+++ b/0101-Improve-debuggability-of-build-system.patch
@@ -1,7 +1,7 @@
-From e56d81031a49344706c38ce64a6294252d5bccc9 Mon Sep 17 00:00:00 2001
+From 1d5a1c42eacef0fa4140569dc3052c1d60a52908 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
 Date: Fri, 1 Mar 2024 12:05:01 +0000
-Subject: [PATCH 101/127] Improve debuggability of build system
+Subject: [PATCH 101/122] Improve debuggability of build system
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
@@ -18,23 +18,23 @@ Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  4 files changed, 29 insertions(+), 29 deletions(-)
 
 diff --git a/QuoteGeneration/qcnl/linux/Makefile b/QuoteGeneration/qcnl/linux/Makefile
-index 9e358fb6..74b2ac95 100644
+index b97e2019..5d9a3987 100644
 --- a/QuoteGeneration/qcnl/linux/Makefile
 +++ b/QuoteGeneration/qcnl/linux/Makefile
-@@ -87,7 +87,7 @@ $(CNL_Lib_Name_Static): $(CNL_Lib_Cpp_Objects) $(CNL_Lib_C_Objects) $(PCK_Select
+@@ -86,7 +86,7 @@ $(CNL_Lib_Name_Static): $(CNL_Lib_Cpp_Objects) $(CNL_Lib_C_Objects) $(PCK_Select
  	$(AR) rsD $(CNL_Lib_Name_Static) $(CNL_Lib_Cpp_Objects) $(CNL_Lib_C_Objects) $(PCK_Selection_Cpp_Objects)
  
  $(PCK_Selection_Lib_Static):
--	make -C ../../../tools/PCKCertSelection/PCKCertSelectionLib -f Makefile.static_lib
+-	+$(MAKE) -C ../../../tools/PCKCertSelection/PCKCertSelectionLib -f Makefile.static_lib
 +	$(MAKE) -C ../../../tools/PCKCertSelection/PCKCertSelectionLib -f Makefile.static_lib VERBOSE=1
  force_look:
  	true
  
 diff --git a/QuoteVerification/appraisal/qal/Makefile b/QuoteVerification/appraisal/qal/Makefile
-index 4feaaa92..bd93c19e 100644
+index e7e11511..2d61c217 100644
 --- a/QuoteVerification/appraisal/qal/Makefile
 +++ b/QuoteVerification/appraisal/qal/Makefile
-@@ -104,7 +104,7 @@ $(QAL_CXX_Common_Objs): %.o: ../common/%.cpp
+@@ -103,7 +103,7 @@ $(QAL_CXX_Common_Objs): %.o: ../common/%.cpp
  	$(CXX) $(QAL_Cpp_Flags) -c $< -o $@
  
  wasm_lib:
@@ -44,10 +44,10 @@ index 4feaaa92..bd93c19e 100644
  clean:
  	$(RM) $(QAL_Obj_Files) $(Target_Lib_Name) $(Target_Lib_Name).$(SGX_MAJOR_VER) $(Target_Static_Lib_Name) $(BUILD_DIR)/$(Target_Lib_Name) $(QVL_Cpp_Obj_Files)
 diff --git a/QuoteVerification/dcap_quoteverify/linux/Makefile b/QuoteVerification/dcap_quoteverify/linux/Makefile
-index 71f0f989..26f3c6bb 100644
+index 5db465de..69efa28e 100644
 --- a/QuoteVerification/dcap_quoteverify/linux/Makefile
 +++ b/QuoteVerification/dcap_quoteverify/linux/Makefile
-@@ -95,12 +95,12 @@ $(BUILD_DIR):
+@@ -94,12 +94,12 @@ $(BUILD_DIR):
  	@$(MKDIR) $@
  
  install_lib: $(QVL_VERIFY_LIB_NAME_Dynamic) | $(BUILD_DIR)
@@ -59,12 +59,12 @@ index 71f0f989..26f3c6bb 100644
 +	$(LN) $(QVL_VERIFY_LIB_NAME_Dynamic_Major) $|/$(QVL_VERIFY_LIB_NAME_Dynamic)
  
  ifeq ($(GEN_STATIC),1)
--	@$(MAKE) $(QVL_VERIFY_LIB_NAME_Static)
+-	+@$(MAKE) $(QVL_VERIFY_LIB_NAME_Static)
 +	$(MAKE) $(QVL_VERIFY_LIB_NAME_Static)
  	@$(CP) $(QVL_VERIFY_LIB_NAME_Static) $|
  endif
  
-@@ -110,13 +110,13 @@ run: all
+@@ -109,13 +109,13 @@ run: all
  ######## QVL Library Objects ########
  
  qve_u.h: $(QVE_SRC_PATH)/qve/qve.edl $(SGX_EDGER8R)
@@ -80,7 +80,7 @@ index 71f0f989..26f3c6bb 100644
  	@echo "CC  <=  $<"
  
  -include $(QPL_BASE64_CPP_DEP)
-@@ -130,15 +130,15 @@ ec_key.o: $(DCAP_QV_DIR)/appraisal/common/ec_key.cpp
+@@ -129,15 +129,15 @@ ec_key.o: $(DCAP_QV_DIR)/appraisal/common/ec_key.cpp
  	@echo "CXX  <=  $<"
  
  $(QVL_VERIFY_CPP_OBJS): %.o: %.cpp qve_u.h
@@ -99,7 +99,7 @@ index 71f0f989..26f3c6bb 100644
  	@echo "CXX  <=  $<"
  
  $(QVE_LOGIC_CPP_OBJ): $(QVE_LOGIC_CPP_SRC)
-@@ -146,18 +146,18 @@ $(QVE_LOGIC_CPP_OBJ): $(QVE_LOGIC_CPP_SRC)
+@@ -145,18 +145,18 @@ $(QVE_LOGIC_CPP_OBJ): $(QVE_LOGIC_CPP_SRC)
  	@echo "CXX  <=  $<"
  
  $(QVL_LIB_OBJS): %_untrusted.o: %.cpp
@@ -122,7 +122,7 @@ index 71f0f989..26f3c6bb 100644
  
  
  $(QVL_VERIFY_LIB_NAME_Dynamic): $(QVL_VERIFY_CPP_OBJS) $(QVL_VERIFY_C_OBJS) $(QVE_CPP_OBJ) $(QVE_LOGIC_CPP_OBJ) $(QVL_LIB_NAME) $(QVL_PARSER_NAME) $(QVL_LIB_COMMON_OBJS) qal
-@@ -165,7 +165,7 @@ $(QVL_VERIFY_LIB_NAME_Dynamic): $(QVL_VERIFY_CPP_OBJS) $(QVL_VERIFY_C_OBJS) $(QV
+@@ -164,7 +164,7 @@ $(QVL_VERIFY_LIB_NAME_Dynamic): $(QVL_VERIFY_CPP_OBJS) $(QVL_VERIFY_C_OBJS) $(QV
  	@ln -sf $(QVL_VERIFY_LIB_NAME_Dynamic) $(QVL_VERIFY_LIB_NAME_Dynamic).1
  
  $(QVL_VERIFY_LIB_NAME_Static): $(QVL_VERIFY_CPP_OBJS_STATIC) $(QVL_VERIFY_C_OBJS) $(QVE_CPP_OBJ) $(QVE_LOGIC_CPP_OBJ) $(QVL_LIB_NAME) $(QVL_PARSER_NAME) $(QVL_LIB_COMMON_OBJS)
@@ -132,18 +132,18 @@ index 71f0f989..26f3c6bb 100644
  .PHONY: qal
  qal:
 diff --git a/ae/QvE/Makefile b/ae/QvE/Makefile
-index f21ba8d3..d5af625a 100644
+index 155c0e26..cab19963 100644
 --- a/ae/QvE/Makefile
 +++ b/ae/QvE/Makefile
-@@ -139,37 +139,37 @@ PREPARE_SGXSSL := ../../QuoteVerification/prepare_sgxssl.sh
+@@ -138,37 +138,37 @@ PREPARE_SGXSSL := ../../QuoteVerification/prepare_sgxssl.sh
  SGXSSL_HEADER_CHECK := $(SGXSSL_PACKAGE_PATH)/include/openssl/opensslconf.h
  PREPARE_SGX_SSL:
  ifdef SERVTD_ATTEST
--	@test -f $(SGXSSL_PACKAGE_PATH)/lib64/lib$(SGXSSL_TCRYPTO).a && test -f $(SGXSSL_PACKAGE_PATH)/lib64/lib$(SGXSSL_TLIB).a && test -f $(SGXSSL_HEADER_CHECK) || $(PREPARE_SGXSSL) SERVTD_ATTEST
-+	test -f $(SGXSSL_PACKAGE_PATH)/lib64/lib$(SGXSSL_TCRYPTO).a && test -f $(SGXSSL_PACKAGE_PATH)/lib64/lib$(SGXSSL_TLIB).a && test -f $(SGXSSL_HEADER_CHECK) || $(PREPARE_SGXSSL) SERVTD_ATTEST
+-	@test -f $(SGXSSL_PACKAGE_PATH)/lib64/lib$(SGXSSL_TCRYPTO).a && test -f $(SGXSSL_PACKAGE_PATH)/lib64/lib$(SGXSSL_TLIB).a && test -f $(SGXSSL_HEADER_CHECK) || export MAKE_PARALLEL_JOBS=$(MAKE_PARALLEL_JOBS); $(PREPARE_SGXSSL) SERVTD_ATTEST
++	test -f $(SGXSSL_PACKAGE_PATH)/lib64/lib$(SGXSSL_TCRYPTO).a && test -f $(SGXSSL_PACKAGE_PATH)/lib64/lib$(SGXSSL_TLIB).a && test -f $(SGXSSL_HEADER_CHECK) || export MAKE_PARALLEL_JOBS=$(MAKE_PARALLEL_JOBS); $(PREPARE_SGXSSL) SERVTD_ATTEST
  else
--	@test -f $(SGXSSL_PACKAGE_PATH)/lib64/lib$(SGXSSL_TCRYPTO).a && test -f $(SGXSSL_PACKAGE_PATH)/lib64/lib$(SGXSSL_TLIB).a && test -f $(SGXSSL_HEADER_CHECK) || $(PREPARE_SGXSSL) $(if $(FIPS),FIPS)
-+	test -f $(SGXSSL_PACKAGE_PATH)/lib64/lib$(SGXSSL_TCRYPTO).a && test -f $(SGXSSL_PACKAGE_PATH)/lib64/lib$(SGXSSL_TLIB).a && test -f $(SGXSSL_HEADER_CHECK) || $(PREPARE_SGXSSL) $(if $(FIPS),FIPS)
+-	@test -f $(SGXSSL_PACKAGE_PATH)/lib64/lib$(SGXSSL_TCRYPTO).a && test -f $(SGXSSL_PACKAGE_PATH)/lib64/lib$(SGXSSL_TLIB).a && test -f $(SGXSSL_HEADER_CHECK) || export MAKE_PARALLEL_JOBS=$(MAKE_PARALLEL_JOBS); $(PREPARE_SGXSSL) $(if $(FIPS),FIPS)
++	test -f $(SGXSSL_PACKAGE_PATH)/lib64/lib$(SGXSSL_TCRYPTO).a && test -f $(SGXSSL_PACKAGE_PATH)/lib64/lib$(SGXSSL_TLIB).a && test -f $(SGXSSL_HEADER_CHECK) || export MAKE_PARALLEL_JOBS=$(MAKE_PARALLEL_JOBS); $(PREPARE_SGXSSL) $(if $(FIPS),FIPS)
  endif
  
  $(SGXSSL_HEADER_CHECK): PREPARE_SGX_SSL
@@ -181,7 +181,7 @@ index f21ba8d3..d5af625a 100644
  	@echo "CXX  <=  $<"
  
  ifndef SERVTD_ATTEST
-@@ -180,7 +180,7 @@ $(QVE_DIR)/qve_t.h: $(QVE_DIR)/qve.edl $(SGX_EDGER8R)
+@@ -179,7 +179,7 @@ $(QVE_DIR)/qve_t.h: $(QVE_DIR)/qve.edl $(SGX_EDGER8R)
  $(QVE_DIR)/qve_t.c: $(QVE_DIR)/qve_t.h
  
  $(QVE_DIR)/qve_t.o: $(QVE_DIR)/qve_t.c
@@ -190,7 +190,7 @@ index f21ba8d3..d5af625a 100644
  	@echo "CC   <=  $<"
  endif
  
-@@ -189,7 +189,7 @@ $(QVE_DIR)/%.o: $(QVE_DIR)/%.cpp $(SGXSSL_HEADER_CHECK)
+@@ -188,7 +188,7 @@ $(QVE_DIR)/%.o: $(QVE_DIR)/%.cpp $(SGXSSL_HEADER_CHECK)
  else
  $(QVE_DIR)/%.o: $(QVE_DIR)/%.cpp $(QVE_DIR)/qve_t.h $(SGXSSL_HEADER_CHECK)
  endif
@@ -199,7 +199,7 @@ index f21ba8d3..d5af625a 100644
  	@echo "CXX  <=  $<"
  
  ifdef SERVTD_ATTEST
-@@ -210,16 +210,16 @@ endif
+@@ -209,16 +209,16 @@ endif
  ifdef SERVTD_ATTEST
  $(QVE_NAME): $(QVE_OBJS) $(QVL_PARSER_OBJS) $(QVL_LIB_OBJS)
  	if [ ! -d "$(SERVTD_ATTEST_BUILD_DIR)" ]; then mkdir -p '$(SERVTD_ATTEST_BUILD_DIR)';fi

diff --git a/0102-Support-build-time-setting-of-enclave-load-directory.patch b/0102-Support-build-time-setting-of-enclave-load-directory.patch
index a580812..110917b 100644
--- a/0102-Support-build-time-setting-of-enclave-load-directory.patch
+++ b/0102-Support-build-time-setting-of-enclave-load-directory.patch
@@ -1,7 +1,7 @@
-From aa175423d4f6972f0a796d865f401f2fd8dc562c Mon Sep 17 00:00:00 2001
+From e858aab3d5dc1bc44e3c23bda566a14b83ddafbe Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
 Date: Mon, 26 Feb 2024 12:19:51 +0000
-Subject: [PATCH 102/127] Support build time setting of enclave load directory
+Subject: [PATCH 102/122] Support build time setting of enclave load directory
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
@@ -45,7 +45,7 @@ Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  12 files changed, 60 insertions(+), 8 deletions(-)
 
 diff --git a/QuoteGeneration/pce_wrapper/linux/Makefile b/QuoteGeneration/pce_wrapper/linux/Makefile
-index f44b91c8..84544fbc 100644
+index 7c10e9b9..6d4cad7f 100644
 --- a/QuoteGeneration/pce_wrapper/linux/Makefile
 +++ b/QuoteGeneration/pce_wrapper/linux/Makefile
 @@ -15,7 +15,7 @@ INCLUDE += -I$(ROOT_DIR)/../ae/dep/common \
@@ -58,7 +58,7 @@ index f44b91c8..84544fbc 100644
  Link_Flags := $(SGX_COMMON_CFLAGS) -L$(ROOT_DIR)/build/linux -L$(SGX_SDK)/lib64 -lsgx_urts -lpthread -ldl
  
 diff --git a/QuoteGeneration/pce_wrapper/pce_wrapper.cpp b/QuoteGeneration/pce_wrapper/pce_wrapper.cpp
-index 7f103bdd..8384d57f 100644
+index e989c8ad..328d35bf 100644
 --- a/QuoteGeneration/pce_wrapper/pce_wrapper.cpp
 +++ b/QuoteGeneration/pce_wrapper/pce_wrapper.cpp
 @@ -88,6 +88,15 @@ bool get_pce_path(
@@ -78,7 +78,7 @@ index 7f103bdd..8384d57f 100644
          NULL != dl_info.dli_fname)
      {
 diff --git a/QuoteGeneration/quote_wrapper/quote/linux/Makefile b/QuoteGeneration/quote_wrapper/quote/linux/Makefile
-index 074d4521..fbf1f09a 100644
+index 74b17213..049710e1 100644
 --- a/QuoteGeneration/quote_wrapper/quote/linux/Makefile
 +++ b/QuoteGeneration/quote_wrapper/quote/linux/Makefile
 @@ -26,7 +26,7 @@ Quote_Include_Paths := -I$(SGX_SDK)/include -I../inc -I../../common/inc -I./ -I$
@@ -91,7 +91,7 @@ index 074d4521..fbf1f09a 100644
  
  ifndef DEBUG
 diff --git a/QuoteGeneration/quote_wrapper/quote/qe_logic.cpp b/QuoteGeneration/quote_wrapper/quote/qe_logic.cpp
-index c1301f2a..8c410711 100644
+index f8b41774..883dc53c 100644
 --- a/QuoteGeneration/quote_wrapper/quote/qe_logic.cpp
 +++ b/QuoteGeneration/quote_wrapper/quote/qe_logic.cpp
 @@ -542,6 +542,15 @@ get_qe_path(const TCHAR *p_file_name,
@@ -111,7 +111,7 @@ index c1301f2a..8c410711 100644
          NULL != dl_info.dli_fname)
      {
 diff --git a/QuoteGeneration/quote_wrapper/tdx_quote/linux/Makefile b/QuoteGeneration/quote_wrapper/tdx_quote/linux/Makefile
-index 8e56f8ae..ac0568da 100644
+index 8d99f73c..0ba1306e 100644
 --- a/QuoteGeneration/quote_wrapper/tdx_quote/linux/Makefile
 +++ b/QuoteGeneration/quote_wrapper/tdx_quote/linux/Makefile
 @@ -31,7 +31,7 @@ Quote_Include_Paths := -I$(SGX_SDK)/include -I../inc -I../../common/inc -I./ \
@@ -124,7 +124,7 @@ index 8e56f8ae..ac0568da 100644
                      -L$(PCE_Library_Dir) -lsgx_pce_logic -L$(SGX_SDK)/lib64 \
  					-lsgx_urts -lpthread -ldl
 diff --git a/QuoteGeneration/quote_wrapper/tdx_quote/td_ql_logic.cpp b/QuoteGeneration/quote_wrapper/tdx_quote/td_ql_logic.cpp
-index ce01d3da..6e0916ae 100644
+index 391b27ef..222f194d 100644
 --- a/QuoteGeneration/quote_wrapper/tdx_quote/td_ql_logic.cpp
 +++ b/QuoteGeneration/quote_wrapper/tdx_quote/td_ql_logic.cpp
 @@ -371,6 +371,14 @@ bool tee_att_config_t::get_qe_path(tee_att_ae_type_t type,
@@ -143,10 +143,10 @@ index ce01d3da..6e0916ae 100644
          NULL != dl_info.dli_fname)
      {
 diff --git a/QuoteVerification/appraisal/qal/Makefile b/QuoteVerification/appraisal/qal/Makefile
-index bd93c19e..af72a783 100644
+index 2d61c217..76aec839 100644
 --- a/QuoteVerification/appraisal/qal/Makefile
 +++ b/QuoteVerification/appraisal/qal/Makefile
-@@ -23,7 +23,7 @@ QAL_Include_Path := -I./ \
+@@ -22,7 +22,7 @@ QAL_Include_Path := -I$(SGX_SDK)/include \
                  -I../common/ \
                  -I$(RAPIDJSON_DIR)/
  
@@ -156,7 +156,7 @@ index bd93c19e..af72a783 100644
  
  QAL_Link_Flags := $(COMMON_LDFLAGS) -L$(WARM_Lib_Path) -lvmlib  -ldl -lm -lpthread \
 diff --git a/QuoteVerification/appraisal/qal/qae_wrapper.cpp b/QuoteVerification/appraisal/qal/qae_wrapper.cpp
-index 71870ca7..2d3e04b3 100644
+index f8035171..1d2cd07d 100644
 --- a/QuoteVerification/appraisal/qal/qae_wrapper.cpp
 +++ b/QuoteVerification/appraisal/qal/qae_wrapper.cpp
 @@ -82,6 +82,14 @@ static bool get_qae_path(
@@ -182,10 +182,10 @@ index 71870ca7..2d3e04b3 100644
 \ No newline at end of file
 +}
 diff --git a/QuoteVerification/dcap_quoteverify/linux/Makefile b/QuoteVerification/dcap_quoteverify/linux/Makefile
-index 26f3c6bb..f2761156 100644
+index 69efa28e..3a5cd05c 100644
 --- a/QuoteVerification/dcap_quoteverify/linux/Makefile
 +++ b/QuoteVerification/dcap_quoteverify/linux/Makefile
-@@ -34,7 +34,7 @@ QVL_VERIFY_INC	:= -I$(QVE_SRC_PATH)/Include \
+@@ -33,7 +33,7 @@ QVL_VERIFY_INC	:= -I$(QVE_SRC_PATH)/Include \
  QPL_BASE64_CPP_DEP	:= $(DCAP_QPL_DIR)/sgx_base64.d
  
  SGX_COMMON_CFLAGS	+= $(CFLAGS) -g -fPIC -Wno-attributes -USGX_TRUSTED

diff --git a/0103-Look-for-versioned-sgx_urts-library-in-PCKRetrievalT.patch b/0103-Look-for-versioned-sgx_urts-library-in-PCKRetrievalT.patch
index e02509e..1cc990e 100644
--- a/0103-Look-for-versioned-sgx_urts-library-in-PCKRetrievalT.patch
+++ b/0103-Look-for-versioned-sgx_urts-library-in-PCKRetrievalT.patch
@@ -1,7 +1,7 @@
-From 38880d491208012697daa55555ec7d0b5716da57 Mon Sep 17 00:00:00 2001
+From f29ac8420ddeb252e01ce2c9e8b42cd61a703448 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
 Date: Tue, 27 Feb 2024 15:46:41 +0000
-Subject: [PATCH 103/127] Look for versioned sgx_urts library in
+Subject: [PATCH 103/122] Look for versioned sgx_urts library in
  PCKRetrievalTool
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8

diff --git a/0104-pcsclient-only-import-pypac-module-on-Windows.patch b/0104-pcsclient-only-import-pypac-module-on-Windows.patch
index 96ff0fe..549616d 100644
--- a/0104-pcsclient-only-import-pypac-module-on-Windows.patch
+++ b/0104-pcsclient-only-import-pypac-module-on-Windows.patch
@@ -1,7 +1,7 @@
-From 34587f84399c672fc3da229c3288681b54b250d8 Mon Sep 17 00:00:00 2001
+From c4440889a73ac3fc72e2c63f948174d353b071ac Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
 Date: Fri, 4 Oct 2024 17:41:37 +0100
-Subject: [PATCH 104/127] pcsclient: only import 'pypac' module on Windows
+Subject: [PATCH 104/122] pcsclient: only import 'pypac' module on Windows
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
@@ -16,10 +16,10 @@ Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  1 file changed, 2 insertions(+), 1 deletion(-)
 
 diff --git a/tools/PcsClientTool/lib/intelsgx/pcs.py b/tools/PcsClientTool/lib/intelsgx/pcs.py
-index fa13c2a2..8fd28e2b 100644
+index 6a71f8d9..e056c950 100644
 --- a/tools/PcsClientTool/lib/intelsgx/pcs.py
 +++ b/tools/PcsClientTool/lib/intelsgx/pcs.py
-@@ -32,8 +32,9 @@ if verification is None:
+@@ -31,8 +31,9 @@ if verification is None:
          import tempfile
          import subprocess
  

diff --git a/0105-Look-for-PCKRetrievalTool-config-file-in-etc.patch b/0105-Look-for-PCKRetrievalTool-config-file-in-etc.patch
index 8f5ba13..f0a4597 100644
--- a/0105-Look-for-PCKRetrievalTool-config-file-in-etc.patch
+++ b/0105-Look-for-PCKRetrievalTool-config-file-in-etc.patch
@@ -1,7 +1,7 @@
-From ae8dae8f9a342190cf3218ca9549eef86531c327 Mon Sep 17 00:00:00 2001
+From ab534c9dab3b772a158e9b471d52180e9520b23a Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
 Date: Thu, 29 Feb 2024 14:21:36 +0000
-Subject: [PATCH 105/127] Look for PCKRetrievalTool config file in /etc/
+Subject: [PATCH 105/122] Look for PCKRetrievalTool config file in /etc/
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
@@ -15,7 +15,7 @@ Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  1 file changed, 4 insertions(+), 2 deletions(-)
 
 diff --git a/tools/PCKRetrievalTool/App/linux/network_wrapper.cpp b/tools/PCKRetrievalTool/App/linux/network_wrapper.cpp
-index 65baf517..e4666896 100644
+index 849b3e61..946e7fb4 100644
 --- a/tools/PCKRetrievalTool/App/linux/network_wrapper.cpp
 +++ b/tools/PCKRetrievalTool/App/linux/network_wrapper.cpp
 @@ -192,7 +192,8 @@ static void network_configuration(string &url, string &proxy_type, string &proxy
@@ -28,7 +28,7 @@ index 65baf517..e4666896 100644
      if (ret) {
          if(strnlen(local_configuration_file_path ,MAX_PATH)+strnlen(LOCAL_NETWORK_SETTING,MAX_PATH)+sizeof(char) > MAX_PATH) {
              ret = false;
-@@ -351,7 +352,8 @@ network_post_error_t network_https_post(const uint8_t* raw_data, const uint64_t
+@@ -349,7 +350,8 @@ network_post_error_t network_https_post(const uint8_t* raw_data, const uint64_t
  
  bool is_server_url_available() {
      char local_configuration_file_path[MAX_PATH] = "";

diff --git a/0106-Honour-CFLAGS-CXXFLAGS-LDFLAGS-for-various-tools-and.patch b/0106-Honour-CFLAGS-CXXFLAGS-LDFLAGS-for-various-tools-and.patch
index 308b379..9b0ab1d 100644
--- a/0106-Honour-CFLAGS-CXXFLAGS-LDFLAGS-for-various-tools-and.patch
+++ b/0106-Honour-CFLAGS-CXXFLAGS-LDFLAGS-for-various-tools-and.patch
@@ -1,7 +1,7 @@
-From c53e28aec887ef3fbfcd91621b0726ab84dc4f1f Mon Sep 17 00:00:00 2001
+From 142ba2020bb4ab618f79de2874860cab217b7ff3 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
 Date: Fri, 28 Mar 2025 16:00:27 +0000
-Subject: [PATCH 106/127] Honour CFLAGS/CXXFLAGS/LDFLAGS for various tools and
+Subject: [PATCH 106/122] Honour CFLAGS/CXXFLAGS/LDFLAGS for various tools and
  libraries
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
@@ -21,10 +21,10 @@ Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  9 files changed, 19 insertions(+), 17 deletions(-)
 
 diff --git a/QuoteGeneration/qcnl/linux/Makefile b/QuoteGeneration/qcnl/linux/Makefile
-index 74b2ac95..d2c8f8da 100644
+index 5d9a3987..31c17d3c 100644
 --- a/QuoteGeneration/qcnl/linux/Makefile
 +++ b/QuoteGeneration/qcnl/linux/Makefile
-@@ -23,10 +23,11 @@ CNL_Lib_Include_Paths := -I../../quote_wrapper/common/inc       \
+@@ -22,10 +22,11 @@ CNL_Lib_Include_Paths := -I../../quote_wrapper/common/inc       \
  
  CNL_Lib_C_Flags := $(COMMON_FLAGS) -g -fPIC -Werror -Wno-attributes $(CNL_Lib_Include_Paths) $(shell pkg-config --cflags libcrypto)
  
@@ -55,7 +55,7 @@ index 52b91b0a..c1ccfb9c 100644
   
  ifndef DEBUG
 diff --git a/QuoteGeneration/quote_wrapper/qgs/Makefile b/QuoteGeneration/quote_wrapper/qgs/Makefile
-index 16dfeacc..2faa6130 100644
+index e5200d00..ed75e2a7 100644
 --- a/QuoteGeneration/quote_wrapper/qgs/Makefile
 +++ b/QuoteGeneration/quote_wrapper/qgs/Makefile
 @@ -26,7 +26,7 @@ endif
@@ -66,9 +66,9 @@ index 16dfeacc..2faa6130 100644
 +QGS_LFLAGS = $(LDFLAGS) -L$(TOP_DIR)/build/linux -lsgx_tdx_logic -lsgx_pce_logic -ldl \
               -L$(SGX_SDK)/lib64 -lsgx_urts -g
  # add boost_system for link
- QGS_LFLAGS += -lboost_system -lboost_thread -lpthread
+ ifeq ($(CC_LESS_THAN_15), 1)
 diff --git a/QuoteGeneration/quote_wrapper/ql/linux/Makefile b/QuoteGeneration/quote_wrapper/ql/linux/Makefile
-index a717f4d0..8c9364c4 100644
+index 5c788531..951a9c7b 100644
 --- a/QuoteGeneration/quote_wrapper/ql/linux/Makefile
 +++ b/QuoteGeneration/quote_wrapper/ql/linux/Makefile
 @@ -28,8 +28,9 @@ QL_Lib_C_Flags := $(COMMON_FLAGS) -g -fPIC -Werror -Wno-attributes $(QL_Lib_Incl
@@ -84,7 +84,7 @@ index a717f4d0..8c9364c4 100644
  QL_Lib_Cpp_Flags += -DDISABLE_TRACE
  QL_Lib_Link_Flags += -DDISABLE_TRACE
 diff --git a/QuoteGeneration/quote_wrapper/quote/linux/Makefile b/QuoteGeneration/quote_wrapper/quote/linux/Makefile
-index fbf1f09a..47684976 100644
+index 049710e1..d0c053ec 100644
 --- a/QuoteGeneration/quote_wrapper/quote/linux/Makefile
 +++ b/QuoteGeneration/quote_wrapper/quote/linux/Makefile
 @@ -27,7 +27,7 @@ Quote_Include_Paths := -I$(SGX_SDK)/include -I../inc -I../../common/inc -I./ -I$
@@ -97,10 +97,10 @@ index fbf1f09a..47684976 100644
  ifndef DEBUG
  Quote_Cpp_Flags += -DDISABLE_TRACE
 diff --git a/QuoteVerification/dcap_quoteverify/linux/Makefile b/QuoteVerification/dcap_quoteverify/linux/Makefile
-index f2761156..39bf87fc 100644
+index 3a5cd05c..dc4def06 100644
 --- a/QuoteVerification/dcap_quoteverify/linux/Makefile
 +++ b/QuoteVerification/dcap_quoteverify/linux/Makefile
-@@ -49,7 +49,7 @@ QVL_PARSER := sgx_dcap_qvl_attestation
+@@ -48,7 +48,7 @@ QVL_PARSER := sgx_dcap_qvl_attestation
  QVL_LIB_NAME := lib$(QVL_LIB).a
  QVL_PARSER_NAME := lib$(QVL_PARSER).a
  
@@ -150,7 +150,7 @@ index 22251bfa..0688c503 100644
  
  App/%.o: App/%.cpp
 diff --git a/tools/SGXPlatformRegistration/Makefile b/tools/SGXPlatformRegistration/Makefile
-index 2b10a4c3..d0f4b053 100644
+index 11a89c6c..9bc8870e 100644
 --- a/tools/SGXPlatformRegistration/Makefile
 +++ b/tools/SGXPlatformRegistration/Makefile
 @@ -112,11 +112,11 @@ OBJS_MPA_MANAGE_APP := $(patsubst $(MPA_MANAGE_PATH)/src/%.cpp,$(OBJ_MPA_MANAGE_

diff --git a/0107-pcsclient-remove-leftover-debugging-print-args-state.patch b/0107-pcsclient-remove-leftover-debugging-print-args-state.patch
new file mode 100644
index 0000000..4db2902
--- /dev/null
+++ b/0107-pcsclient-remove-leftover-debugging-print-args-state.patch
@@ -0,0 +1,34 @@
+From 411c44dae71a4992f7f758861a6e9a42fe3a2b0c Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Tue, 8 Oct 2024 10:13:02 +0100
+Subject: [PATCH 107/122] pcsclient: remove leftover debugging 'print(args)'
+ statement
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Dumping the python "Namespace" object to stdout after parsing argv
+serves no user purpose. Remove what is presumably a leftover
+debugging statement.
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ tools/PcsClientTool/pcsclient.py | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/tools/PcsClientTool/pcsclient.py b/tools/PcsClientTool/pcsclient.py
+index f8ad362c..051829e2 100755
+--- a/tools/PcsClientTool/pcsclient.py
++++ b/tools/PcsClientTool/pcsclient.py
+@@ -63,8 +63,6 @@ def main():
+         parser.print_help()
+         parser.exit()
+ 
+-    print(args)
+-
+     args.func(args)
+ 
+ class Utils:
+-- 
+2.55.0
+

diff --git a/0107-qgs-add-space-between-program-name-first-arg-in-usag.patch b/0107-qgs-add-space-between-program-name-first-arg-in-usag.patch
deleted file mode 100644
index 1f4bba3..0000000
--- a/0107-qgs-add-space-between-program-name-first-arg-in-usag.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 56e82b013fb62af8d5805da1993f05cadf401350 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Thu, 3 Oct 2024 14:42:29 +0100
-Subject: [PATCH 107/127] qgs: add space between program name & first arg in
- usage
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- QuoteGeneration/quote_wrapper/qgs/server_main.cpp | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/QuoteGeneration/quote_wrapper/qgs/server_main.cpp b/QuoteGeneration/quote_wrapper/qgs/server_main.cpp
-index acf7a199..b9f3eed3 100644
---- a/QuoteGeneration/quote_wrapper/qgs/server_main.cpp
-+++ b/QuoteGeneration/quote_wrapper/qgs/server_main.cpp
-@@ -85,7 +85,7 @@ int main(int argc, const char* argv[])
-     unsigned long int num_threads = 0;
-     char *endptr = NULL;
-     if (argc > 4) {
--        cout << "Usage: " << argv[0] << "[--no-daemon] [-p=port_number] [-n=number_threads]"
-+        cout << "Usage: " << argv[0] << " [--no-daemon] [-p=port_number] [-n=number_threads]"
-              << endl;
-         exit(1);
-     }
-@@ -181,7 +181,7 @@ int main(int argc, const char* argv[])
-             cout << "thread number [" << num_threads << "] found in cmdline" << endl;
-             continue;
-         } else {
--            cout << "Usage: " << argv[0] << "[--no-daemon] [-p=port_number] [-n=number_threads]"
-+            cout << "Usage: " << argv[0] << " [--no-daemon] [-p=port_number] [-n=number_threads]"
-                 << endl;
-             exit(1);
-         }
--- 
-2.55.0
-

diff --git a/0108-Fix-soname-version-for-libsgx_qe3_logic.so-library.patch b/0108-Fix-soname-version-for-libsgx_qe3_logic.so-library.patch
new file mode 100644
index 0000000..acbd9d4
--- /dev/null
+++ b/0108-Fix-soname-version-for-libsgx_qe3_logic.so-library.patch
@@ -0,0 +1,55 @@
+From 9772622029e1d5d2d823a194ed6e53463324d129 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Fri, 17 Jan 2025 15:39:39 +0000
+Subject: [PATCH 108/122] Fix soname version for libsgx_qe3_logic.so library
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ QuoteGeneration/common/inc/internal/se_version.h   | 5 +++++
+ QuoteGeneration/quote_wrapper/quote/linux/Makefile | 4 +++-
+ 2 files changed, 8 insertions(+), 1 deletion(-)
+
+diff --git a/QuoteGeneration/common/inc/internal/se_version.h b/QuoteGeneration/common/inc/internal/se_version.h
+index b8ae431d..486148e7 100644
+--- a/QuoteGeneration/common/inc/internal/se_version.h
++++ b/QuoteGeneration/common/inc/internal/se_version.h
+@@ -16,6 +16,11 @@
+ #define QUOTE_LOADER_VERSION         "1.11.110.0"
+ #define TDQE_WRAPPER_VERSION         "1.14.110.0"
+ #define PCE_WRAPPER_VERSION          "1.14.110.0"
++/*
++ * XXX: downstream hack based on version declared
++ * in linux-sgx.git/linux/installer/common/psw/Makefile
++ */
++#define QE3_WRAPPER_VERSION          "1.0.0"
+ 
+ #define QE3_VERSION                  "1.22.100.1"
+ #define QVE_VERSION                  "1.25.100.1"
+diff --git a/QuoteGeneration/quote_wrapper/quote/linux/Makefile b/QuoteGeneration/quote_wrapper/quote/linux/Makefile
+index d0c053ec..1cb3d479 100644
+--- a/QuoteGeneration/quote_wrapper/quote/linux/Makefile
++++ b/QuoteGeneration/quote_wrapper/quote/linux/Makefile
+@@ -39,6 +39,8 @@ Quote_C_Objects := $(Quote_C_Files:.c=.o)
+ Quote_Cpp_Objects := $(Quote_Cpp_Files:.cpp=.o)
+ 
+ Quote_Name := libsgx_qe3_logic.so
++Quote_Full := $(Quote_Name).$(call get_full_version,QE3_WRAPPER_VERSION)
++Quote_Major := $(Quote_Name).$(call get_major_version,QE3_WRAPPER_VERSION)
+ 
+ .PHONY: all
+ all: install_lib
+@@ -68,7 +70,7 @@ $(Quote_Cpp_Objects): %.o: %.cpp
+ 	@echo "CXX  <=  $<"
+ 
+ $(Quote_Name): $(Quote_C_Objects) $(Quote_Cpp_Objects)
+-	$(CXX) $(Quote_C_Objects) $(Quote_Cpp_Objects) -shared -Wl,-soname=$@ $(Quote_Link_Flags) -o $@
++	$(CXX) $(Quote_C_Objects) $(Quote_Cpp_Objects) -shared -Wl,-soname=$(Quote_Major) $(Quote_Link_Flags) -o $@
+ 	@echo "LINK =>  $@"
+ 
+ $(BUILD_DIR):
+-- 
+2.55.0
+

diff --git a/0108-qgs-protect-against-format-strings-in-QL-log-message.patch b/0108-qgs-protect-against-format-strings-in-QL-log-message.patch
deleted file mode 100644
index a07d00b..0000000
--- a/0108-qgs-protect-against-format-strings-in-QL-log-message.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From d07488f32723bb310712e0cd6c744028ca643fd3 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Fri, 4 Oct 2024 09:43:17 +0100
-Subject: [PATCH 108/127] qgs: protect against format strings in QL log
- messages
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The sgx_proc_log_report() method takes a format string and
-var-args. It is unsafe to accept a non-const string from
-the QL library and pass it to sgx_proc_log_report(), as the
-log message may contain format strings from user data.
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- QuoteGeneration/quote_wrapper/qgs/qgs_ql_logic.cpp | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/QuoteGeneration/quote_wrapper/qgs/qgs_ql_logic.cpp b/QuoteGeneration/quote_wrapper/qgs/qgs_ql_logic.cpp
-index ce37e418..12c51596 100644
---- a/QuoteGeneration/quote_wrapper/qgs/qgs_ql_logic.cpp
-+++ b/QuoteGeneration/quote_wrapper/qgs/qgs_ql_logic.cpp
-@@ -50,10 +50,10 @@ typedef quote3_error_t (*sgx_ql_set_logging_callback_t)(sgx_ql_logging_callback_
- 
- void sgx_ql_logging_callback(sgx_ql_log_level_t level, const char *message) {
-     if (level == SGX_QL_LOG_ERROR) {
--        sgx_proc_log_report(1, message);
-+        sgx_proc_log_report(1, "%s", message);
- 
-     } else if (level == SGX_QL_LOG_INFO) {
--        sgx_proc_log_report(3, message);
-+        sgx_proc_log_report(3, "%s", message);
-     }
- }
- 
--- 
-2.55.0
-

diff --git a/0109-Workaround-broken-GCC-15.patch b/0109-Workaround-broken-GCC-15.patch
new file mode 100644
index 0000000..6ee8b6d
--- /dev/null
+++ b/0109-Workaround-broken-GCC-15.patch
@@ -0,0 +1,40 @@
+From 4475bc63ee7a7ab972a503b6659169b3467b8847 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Thu, 6 Feb 2025 20:08:59 +0000
+Subject: [PATCH 109/122] Workaround broken GCC 15
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The C++ standard does not allow 'alignas' to be applied to type
+aliases. GNU C++ has allowed it as a non-standard extension, but
+strictly that should have been expressed using 'gnu::aligned'
+instead of 'alignas'. Regardless of the syntax, however, GCC 15
+has a regression causing it to reject alignment requests entirely
+on template aliases.
+
+https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118773
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ .../common/inc/internal/linux/sgx_random_buffers.h            | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/QuoteGeneration/common/inc/internal/linux/sgx_random_buffers.h b/QuoteGeneration/common/inc/internal/linux/sgx_random_buffers.h
+index 15fbdd42..4400544b 100644
+--- a/QuoteGeneration/common/inc/internal/linux/sgx_random_buffers.h
++++ b/QuoteGeneration/common/inc/internal/linux/sgx_random_buffers.h
+@@ -258,7 +258,11 @@ struct alignas(A)randomly_placed_buffer
+     }
+ 
+     template <unsigned C = 1>
++#if __GNUC__ == 15 && __GNUC_MINOR__ == 0
++    using storage = char[size(C)];
++#else
+     using storage = char[size(C)] alignas(A);
++#endif
+ 
+ private:
+     struct alignas(A)_T_instantiator_
+-- 
+2.55.0
+

diff --git a/0109-qgs-add-debug-parameter-to-control-logging.patch b/0109-qgs-add-debug-parameter-to-control-logging.patch
deleted file mode 100644
index 4bb42c6..0000000
--- a/0109-qgs-add-debug-parameter-to-control-logging.patch
+++ /dev/null
@@ -1,129 +0,0 @@
-From b193dc9b0f715eb14044e1e848c2a0c4c40d1f55 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Thu, 3 Oct 2024 16:57:35 +0100
-Subject: [PATCH 109/127] qgs: add --debug parameter to control logging
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Currently qgs prints all log messages to syslog or stderr
-unconditionally, even those at QGS_LOG_LEVEL_INFO. At the
-same time it hardcodes SGX_QL_LOG_ERROR for the quote
-provider library making it impossible to debug it.
-
-This adds a --debug flag to qgs with two effects:
-
- * QGS_LOG_LEVEL_INFO is discarded unless --debug was set
-   making QGS quiet by default, only printing warnings/errors.
-
- * The quote provider logging is increased to
-   QGS_LOG_LEVEL_DEBUG if --debug is set
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- QuoteGeneration/quote_wrapper/qgs/qgs_log.cpp      |  5 +++++
- QuoteGeneration/quote_wrapper/qgs/qgs_log.h        |  2 ++
- QuoteGeneration/quote_wrapper/qgs/qgs_ql_logic.cpp |  8 ++++----
- QuoteGeneration/quote_wrapper/qgs/server_main.cpp  | 10 ++++++++--
- 4 files changed, 19 insertions(+), 6 deletions(-)
-
-diff --git a/QuoteGeneration/quote_wrapper/qgs/qgs_log.cpp b/QuoteGeneration/quote_wrapper/qgs/qgs_log.cpp
-index 1cf1e40b..7ae9b750 100644
---- a/QuoteGeneration/quote_wrapper/qgs/qgs_log.cpp
-+++ b/QuoteGeneration/quote_wrapper/qgs/qgs_log.cpp
-@@ -36,6 +36,8 @@
- #include "qgs_log.h"
- 
- static bool _nosyslog = false;
-+bool qgs_debug = false;
-+bool qgs_verbose = false;
- 
- void qgs_log_init(void)
- {
-@@ -68,6 +70,9 @@ void sgx_proc_log_report(int level, const char *format, ...)
-     // so we can always add newline
-     if (!format || !(*format))
-         return;//ignore
-+    if (!qgs_verbose &&
-+	level == QGS_LOG_LEVEL_INFO)
-+        return;//ignore
-     va_start(ap, format);
-     switch(level){
-         case QGS_LOG_LEVEL_FATAL:
-diff --git a/QuoteGeneration/quote_wrapper/qgs/qgs_log.h b/QuoteGeneration/quote_wrapper/qgs/qgs_log.h
-index 1d7fd747..05d41a44 100644
---- a/QuoteGeneration/quote_wrapper/qgs/qgs_log.h
-+++ b/QuoteGeneration/quote_wrapper/qgs/qgs_log.h
-@@ -40,6 +40,8 @@
- #ifdef __cplusplus
- extern "C" {
- #endif/*__cplusplus*/
-+    extern bool qgs_debug;
-+    extern bool qgs_verbose;
-     void qgs_log_init(void);
-     void qgs_log_init_ex(bool nosyslog);
-     void qgs_log_fini(void);
-diff --git a/QuoteGeneration/quote_wrapper/qgs/qgs_ql_logic.cpp b/QuoteGeneration/quote_wrapper/qgs/qgs_ql_logic.cpp
-index 12c51596..ad49d888 100644
---- a/QuoteGeneration/quote_wrapper/qgs/qgs_ql_logic.cpp
-+++ b/QuoteGeneration/quote_wrapper/qgs/qgs_ql_logic.cpp
-@@ -113,8 +113,8 @@ namespace intel { namespace sgx { namespace dcap { namespace qgs {
-                 sgx_ql_set_logging_callback_t ql_set_logging_callback =
-                     (sgx_ql_set_logging_callback_t)dlsym(p_handle, "sgx_ql_set_logging_callback");
-                 if (dlerror() == NULL && ql_set_logging_callback) {
--                    // Set log level to SGX_QL_LOG_ERROR
--                    ql_set_logging_callback(sgx_ql_logging_callback, SGX_QL_LOG_ERROR);
-+                    ql_set_logging_callback(sgx_ql_logging_callback,
-+                                            qgs_debug ? SGX_QL_LOG_INFO : SGX_QL_LOG_ERROR);
-                 } else {
-                     QGS_LOG_WARN("Failed to set logging callback for the quote provider library.\n");
-                 }
-@@ -355,8 +355,8 @@ namespace intel { namespace sgx { namespace dcap { namespace qgs {
-                 sgx_ql_set_logging_callback_t ql_set_logging_callback =
-                     (sgx_ql_set_logging_callback_t)dlsym(p_handle, "sgx_ql_set_logging_callback");
-                 if (dlerror() == NULL && ql_set_logging_callback) {
--                    // Set log level to SGX_QL_LOG_ERROR
--                    ql_set_logging_callback(sgx_ql_logging_callback, SGX_QL_LOG_ERROR);
-+                    ql_set_logging_callback(sgx_ql_logging_callback,
-+                                            qgs_debug ? SGX_QL_LOG_INFO : SGX_QL_LOG_ERROR);
-                 } else {
-                     QGS_LOG_WARN("Failed to set logging callback for the quote provider library.\n");
-                 }
-diff --git a/QuoteGeneration/quote_wrapper/qgs/server_main.cpp b/QuoteGeneration/quote_wrapper/qgs/server_main.cpp
-index b9f3eed3..62764d04 100644
---- a/QuoteGeneration/quote_wrapper/qgs/server_main.cpp
-+++ b/QuoteGeneration/quote_wrapper/qgs/server_main.cpp
-@@ -85,7 +85,7 @@ int main(int argc, const char* argv[])
-     unsigned long int num_threads = 0;
-     char *endptr = NULL;
-     if (argc > 4) {
--        cout << "Usage: " << argv[0] << " [--no-daemon] [-p=port_number] [-n=number_threads]"
-+        cout << "Usage: " << argv[0] << " [--no-daemon] [-p=port_number] [-n=number_threads] [--verbose] [--debug]"
-              << endl;
-         exit(1);
-     }
-@@ -153,6 +153,12 @@ int main(int argc, const char* argv[])
-                  << endl;
-             no_daemon = true;
-             continue;
-+        } else if (strcmp(argv[i], "--debug") == 0) {
-+            qgs_verbose = qgs_debug = true;
-+            continue;
-+        } else if (strcmp(argv[i], "--verbose") == 0) {
-+            qgs_verbose = true;
-+            continue;
-         } else if (strncmp(argv[i], "-p=", 3 ) == 0) {
-             if (strspn(argv[i] + 3, "0123456789") != strlen(argv[i] + 3)) {
-                 cout << "Please input valid port number" << endl;
-@@ -181,7 +187,7 @@ int main(int argc, const char* argv[])
-             cout << "thread number [" << num_threads << "] found in cmdline" << endl;
-             continue;
-         } else {
--            cout << "Usage: " << argv[0] << " [--no-daemon] [-p=port_number] [-n=number_threads]"
-+            cout << "Usage: " << argv[0] << " [--no-daemon] [-p=port_number] [-n=number_threads] [--verbose] [--debug]"
-                 << endl;
-             exit(1);
-         }
--- 
-2.55.0
-

diff --git a/0110-Don-t-disable-cf-protection-for-qgs.patch b/0110-Don-t-disable-cf-protection-for-qgs.patch
new file mode 100644
index 0000000..076b6ef
--- /dev/null
+++ b/0110-Don-t-disable-cf-protection-for-qgs.patch
@@ -0,0 +1,31 @@
+From 0b283d92721fa0b90e57c066ca03497e40f852c4 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Wed, 2 Apr 2025 18:39:31 +0100
+Subject: [PATCH 110/122] Don't disable cf-protection for qgs
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ QuoteGeneration/quote_wrapper/qgs/Makefile | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/QuoteGeneration/quote_wrapper/qgs/Makefile b/QuoteGeneration/quote_wrapper/qgs/Makefile
+index ed75e2a7..0016c0a4 100644
+--- a/QuoteGeneration/quote_wrapper/qgs/Makefile
++++ b/QuoteGeneration/quote_wrapper/qgs/Makefile
+@@ -18,10 +18,6 @@ QGS_INC = -I$(SGX_SDK)/include \
+ 		  -I$(TOP_DIR)/quote_wrapper/qgs_msg_lib/inc
+ QGS_CFLAGS = -g -MMD -Werror $(CFLAGS) $(QGS_INC)
+ QGS_CXXFLAGS = -g -MMD -Werror $(CXXFLAGS) $(QGS_INC)
+-ifeq ($(CC_NO_LESS_THAN_8), 1)
+-    QGS_CFLAGS += -fcf-protection=none
+-    QGS_CXXFLAGS += -fcf-protection=none
+-endif
+ 
+ DEPENDS = ${QGS_OBJS test_client.o:.o=.d}
+ 
+-- 
+2.55.0
+

diff --git a/0110-pcsclient-remove-leftover-debugging-print-args-state.patch b/0110-pcsclient-remove-leftover-debugging-print-args-state.patch
deleted file mode 100644
index d401778..0000000
--- a/0110-pcsclient-remove-leftover-debugging-print-args-state.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From cdda8a978fcb996f567ad7e72e5e45c93b5ae024 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Tue, 8 Oct 2024 10:13:02 +0100
-Subject: [PATCH 110/127] pcsclient: remove leftover debugging 'print(args)'
- statement
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Dumping the python "Namespace" object to stdout after parsing argv
-serves no user purpose. Remove what is presumably a leftover
-debugging statement.
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- tools/PcsClientTool/pcsclient.py | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/tools/PcsClientTool/pcsclient.py b/tools/PcsClientTool/pcsclient.py
-index 07ab8080..eef984af 100755
---- a/tools/PcsClientTool/pcsclient.py
-+++ b/tools/PcsClientTool/pcsclient.py
-@@ -63,8 +63,6 @@ def main():
-         parser.print_help()
-         parser.exit()
- 
--    print(args)
--
-     args.func(args)
- 
- class Utils:
--- 
-2.55.0
-

diff --git a/0111-Fix-soname-version-for-libsgx_qe3_logic.so-library.patch b/0111-Fix-soname-version-for-libsgx_qe3_logic.so-library.patch
deleted file mode 100644
index 1972110..0000000
--- a/0111-Fix-soname-version-for-libsgx_qe3_logic.so-library.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From f31fe57de72e42558e408f93540c8887ee0f217e Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Fri, 17 Jan 2025 15:39:39 +0000
-Subject: [PATCH 111/127] Fix soname version for libsgx_qe3_logic.so library
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- QuoteGeneration/common/inc/internal/se_version.h   | 5 +++++
- QuoteGeneration/quote_wrapper/quote/linux/Makefile | 4 +++-
- 2 files changed, 8 insertions(+), 1 deletion(-)
-
-diff --git a/QuoteGeneration/common/inc/internal/se_version.h b/QuoteGeneration/common/inc/internal/se_version.h
-index a6d7ad96..0b5087b8 100644
---- a/QuoteGeneration/common/inc/internal/se_version.h
-+++ b/QuoteGeneration/common/inc/internal/se_version.h
-@@ -16,6 +16,11 @@
- #define QUOTE_LOADER_VERSION         "1.11.110.0"
- #define TDQE_WRAPPER_VERSION         "1.14.110.0"
- #define PCE_WRAPPER_VERSION          "1.14.110.0"
-+/*
-+ * XXX: downstream hack based on version declared
-+ * in linux-sgx.git/linux/installer/common/psw/Makefile
-+ */
-+#define QE3_WRAPPER_VERSION          "1.0.0"
- 
- #define QE3_VERSION                  "1.22.100.1"
- #define QVE_VERSION                  "1.25.100.1"
-diff --git a/QuoteGeneration/quote_wrapper/quote/linux/Makefile b/QuoteGeneration/quote_wrapper/quote/linux/Makefile
-index 47684976..63542e58 100644
---- a/QuoteGeneration/quote_wrapper/quote/linux/Makefile
-+++ b/QuoteGeneration/quote_wrapper/quote/linux/Makefile
-@@ -39,6 +39,8 @@ Quote_C_Objects := $(Quote_C_Files:.c=.o)
- Quote_Cpp_Objects := $(Quote_Cpp_Files:.cpp=.o)
- 
- Quote_Name := libsgx_qe3_logic.so
-+Quote_Full := $(Quote_Name).$(call get_full_version,QE3_WRAPPER_VERSION)
-+Quote_Major := $(Quote_Name).$(call get_major_version,QE3_WRAPPER_VERSION)
- 
- .PHONY: all
- all: install_lib
-@@ -68,7 +70,7 @@ $(Quote_Cpp_Objects): %.o: %.cpp
- 	@echo "CXX  <=  $<"
- 
- $(Quote_Name): $(Quote_C_Objects) $(Quote_Cpp_Objects)
--	$(CXX) $(Quote_C_Objects) $(Quote_Cpp_Objects) -shared -Wl,-soname=$@ $(Quote_Link_Flags) -o $@
-+	$(CXX) $(Quote_C_Objects) $(Quote_Cpp_Objects) -shared -Wl,-soname=$(Quote_Major) $(Quote_Link_Flags) -o $@
- 	@echo "LINK =>  $@"
- 
- $(BUILD_DIR):
--- 
-2.55.0
-

diff --git a/0111-Use-distro-provided-rapidjson-package.patch b/0111-Use-distro-provided-rapidjson-package.patch
new file mode 100644
index 0000000..b328552
--- /dev/null
+++ b/0111-Use-distro-provided-rapidjson-package.patch
@@ -0,0 +1,167 @@
+From da181fec344281757bdb92f5f189fe1c4a9b60f0 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Mon, 26 Feb 2024 12:19:51 +0000
+Subject: [PATCH 111/122] Use distro provided rapidjson package
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ QuoteGeneration/qcnl/certification_provider.cpp             | 2 +-
+ QuoteGeneration/qcnl/inc/pccs_response_object.h             | 2 +-
+ QuoteGeneration/qcnl/inc/qcnl_config.h                      | 2 +-
+ QuoteGeneration/qcnl/linux/Makefile                         | 2 +-
+ QuoteGeneration/qcnl/linux/qcnl_config_impl.cpp             | 2 +-
+ QuoteGeneration/qcnl/qcnl_config.cpp                        | 6 +++---
+ QuoteVerification/buildenv.mk                               | 4 ++--
+ tools/PCKCertSelection/PCKCertSelectionLib/Makefile         | 4 ++--
+ .../PCKCertSelectionLib/Makefile.static_lib                 | 4 ++--
+ 9 files changed, 14 insertions(+), 14 deletions(-)
+
+diff --git a/QuoteGeneration/qcnl/certification_provider.cpp b/QuoteGeneration/qcnl/certification_provider.cpp
+index a08ea7e7..41e5b9d0 100644
+--- a/QuoteGeneration/qcnl/certification_provider.cpp
++++ b/QuoteGeneration/qcnl/certification_provider.cpp
+@@ -36,7 +36,7 @@
+  */
+ #include "certification_provider.h"
+ #include "certification_service.h"
+-#include "document.h"
++#include <rapidjson/document.h>
+ #include "local_cache.h"
+ #include "pck_cert_selection.h"
+ #include "qcnl_util.h"
+diff --git a/QuoteGeneration/qcnl/inc/pccs_response_object.h b/QuoteGeneration/qcnl/inc/pccs_response_object.h
+index f309258e..998cdfeb 100644
+--- a/QuoteGeneration/qcnl/inc/pccs_response_object.h
++++ b/QuoteGeneration/qcnl/inc/pccs_response_object.h
+@@ -7,7 +7,7 @@
+ #define PCCSRESPONSEOBJECT_H_
+ #pragma once
+ 
+-#include "document.h"
++#include <rapidjson/document.h>
+ #include "qcnl_def.h"
+ #include <sstream>
+ #include <string>
+diff --git a/QuoteGeneration/qcnl/inc/qcnl_config.h b/QuoteGeneration/qcnl/inc/qcnl_config.h
+index ff3c744d..71b9a996 100644
+--- a/QuoteGeneration/qcnl/inc/qcnl_config.h
++++ b/QuoteGeneration/qcnl/inc/qcnl_config.h
+@@ -38,7 +38,7 @@
+ #pragma once
+ 
+ #include "sgx_default_qcnl_wrapper.h"
+-#include "document.h"
++#include <rapidjson/document.h>
+ #include <memory>
+ #include <string>
+ 
+diff --git a/QuoteGeneration/qcnl/linux/Makefile b/QuoteGeneration/qcnl/linux/Makefile
+index 31c17d3c..29a4f29b 100644
+--- a/QuoteGeneration/qcnl/linux/Makefile
++++ b/QuoteGeneration/qcnl/linux/Makefile
+@@ -17,7 +17,7 @@ CNL_Lib_C_Files := $(wildcard *.c ../*.c) ../../common/src/se_thread.c
+ CNL_Lib_Include_Paths := -I../../quote_wrapper/common/inc       \
+                          -I../inc -I$(SGX_SDK)/include          \
+                          -I../../common/inc/internal            \
+-                         -I../../../QuoteVerification/QVL/Src/ThirdParty/rapidjson/include/rapidjson	\
++                         $(pkg-config --cflags RapidJSON) \
+                          -I../../../tools/PCKCertSelection/include
+ 
+ CNL_Lib_C_Flags := $(COMMON_FLAGS) -g -fPIC -Werror -Wno-attributes $(CNL_Lib_Include_Paths) $(shell pkg-config --cflags libcrypto)
+diff --git a/QuoteGeneration/qcnl/linux/qcnl_config_impl.cpp b/QuoteGeneration/qcnl/linux/qcnl_config_impl.cpp
+index 7b74eae0..5f20a1e3 100644
+--- a/QuoteGeneration/qcnl/linux/qcnl_config_impl.cpp
++++ b/QuoteGeneration/qcnl/linux/qcnl_config_impl.cpp
+@@ -35,7 +35,7 @@
+  *
+  */
+ 
+-#include "istreamwrapper.h"
++#include <rapidjson/istreamwrapper.h>
+ #include "qcnl_config.h"
+ #include <algorithm>
+ #include <curl/curl.h>
+diff --git a/QuoteGeneration/qcnl/qcnl_config.cpp b/QuoteGeneration/qcnl/qcnl_config.cpp
+index 42388a08..9be8feec 100644
+--- a/QuoteGeneration/qcnl/qcnl_config.cpp
++++ b/QuoteGeneration/qcnl/qcnl_config.cpp
+@@ -36,10 +36,10 @@
+  */
+ 
+ #include "qcnl_config.h"
+-#include "error/en.h"
+-#include "error/error.h"
++#include <rapidjson/error/en.h>
++#include <rapidjson/error/error.h>
+ #include <fstream>
+-#include <istreamwrapper.h>
++#include <rapidjson/istreamwrapper.h>
+ #include <mutex>
+ #include <algorithm>
+ 
+diff --git a/QuoteVerification/buildenv.mk b/QuoteVerification/buildenv.mk
+index 527a5e9c..f5240b96 100644
+--- a/QuoteVerification/buildenv.mk
++++ b/QuoteVerification/buildenv.mk
+@@ -47,9 +47,9 @@ else
+ COMMON_INCLUDE := -I$(SGX_SDK)/include -I$(SGX_SDK)/include/tlibc -I$(SGX_SDK)/include/libcxx -isystem$(SGXSSL_PACKAGE_PATH)/include
+ endif
+ 
+-QVL_LIB_INC := -I$(QVL_COMMON_PATH)/include -I$(QVL_COMMON_PATH)/include/Utils -I$(QVL_LIB_PATH)/include -I$(QVL_LIB_PATH)/src -I$(QVL_PARSER_PATH)/include -I$(QVL_SRC_PATH)/ThirdParty/rapidjson/include  -isystem$(DCAP_EXTERNAL_DIR)/jwt-cpp/include
++QVL_LIB_INC := -I$(QVL_COMMON_PATH)/include -I$(QVL_COMMON_PATH)/include/Utils -I$(QVL_LIB_PATH)/include -I$(QVL_LIB_PATH)/src -I$(QVL_PARSER_PATH)/include $(pkg-config --cflags RapidJSON)  -isystem$(DCAP_EXTERNAL_DIR)/jwt-cpp/include
+ 
+-QVL_PARSER_INC := -I$(QVL_COMMON_PATH)/include -I$(QVL_COMMON_PATH)/include/Utils -I$(QVL_SRC_PATH) -I$(QVL_PARSER_PATH)/include -I$(QVL_PARSER_PATH)/src -I$(QVL_LIB_PATH)/include -isystem$(QVL_SRC_PATH)/ThirdParty/rapidjson/include
++QVL_PARSER_INC := -I$(QVL_COMMON_PATH)/include -I$(QVL_COMMON_PATH)/include/Utils -I$(QVL_SRC_PATH) -I$(QVL_PARSER_PATH)/include -I$(QVL_PARSER_PATH)/src -I$(QVL_LIB_PATH)/include $(pkg-config --cflags RapidJSON)
+ 
+ QVL_LIB_FILES := $(sort $(wildcard $(QVL_LIB_PATH)/src/*.cpp) $(wildcard $(QVL_LIB_PATH)/src/*/*.cpp) $(wildcard $(QVL_LIB_PATH)/src/*/*/*.cpp) $(wildcard $(QVL_COMMON_PATH)/src/Utils/*.cpp))
+ QVL_PARSER_FILES := $(sort $(wildcard $(QVL_PARSER_PATH)/src/*.cpp) $(wildcard $(QVL_PARSER_PATH)/src/*/*.cpp))
+diff --git a/tools/PCKCertSelection/PCKCertSelectionLib/Makefile b/tools/PCKCertSelection/PCKCertSelectionLib/Makefile
+index 1a565b70..04fd7bc6 100644
+--- a/tools/PCKCertSelection/PCKCertSelectionLib/Makefile
++++ b/tools/PCKCertSelection/PCKCertSelectionLib/Makefile
+@@ -66,7 +66,7 @@ endif
+ OPENSSL_INC 		:= $(shell pkg-config --cflags libcrypto)
+ 
+ # JSON parser include dir
+-JSON_INC		:= $(QVL_DIR)/ThirdParty/rapidjson/include
++JSON_INC		:= $(pkg-config --cflags RapidJSON)
+ 
+ # QVL Attestation Parsers include directory
+ PARSERS_INC 		:= $(QVL_DIR)/AttestationParsers/include
+@@ -113,7 +113,7 @@ LIB_CPP_OBJECTS 	:= \
+ 	$(UTILS_CPP_FILES:.cpp=.o)
+ 
+ # include paths, local, parser and openssl
+-LIB_INCLUDE_PATHS	:= -I. -I$(PROJ_ROOT_DIR)/include $(OPENSSL_INC) -I$(JSON_INC) -I$(PARSERS_INC) -I$(PARSERS_COMM_INC) -I$(PARSERS_DIR) -I$(VER_DIR) -I$(PARSERS_UTIL_INC)
++LIB_INCLUDE_PATHS	:= -I. -I$(PROJ_ROOT_DIR)/include $(OPENSSL_INC) $(JSON_INC) -I$(PARSERS_INC) -I$(PARSERS_COMM_INC) -I$(PARSERS_DIR) -I$(VER_DIR) -I$(PARSERS_UTIL_INC)
+ 
+ # the library shared object name
+ LIB_NAME		:= libPCKCertSelection.so
+diff --git a/tools/PCKCertSelection/PCKCertSelectionLib/Makefile.static_lib b/tools/PCKCertSelection/PCKCertSelectionLib/Makefile.static_lib
+index 499ee94f..434fa6b9 100644
+--- a/tools/PCKCertSelection/PCKCertSelectionLib/Makefile.static_lib
++++ b/tools/PCKCertSelection/PCKCertSelectionLib/Makefile.static_lib
+@@ -69,7 +69,7 @@ OPENSSL_INC 		:= $(PROJ_ROOT_DIR)/../../prebuilt/openssl/inc
+ OPENSSL_LIB 		:= $(PROJ_ROOT_DIR)/../../prebuilt/openssl/lib/linux64
+ 
+ # JSON parser include dir
+-JSON_INC		:= $(QVL_DIR)/ThirdParty/rapidjson/include
++JSON_INC		:= $(pkg-config --cflags RapidJSON)
+ 
+ # QVL Attestation Parsers include directory
+ PARSERS_INC 		:= $(QVL_DIR)/AttestationParsers/include
+@@ -118,7 +118,7 @@ LIB_CPP_OBJECTS 	:= \
+ LIB_CPP_OBJECTS := $(addprefix $(BIN_DIR)/, $(LIB_CPP_OBJECTS))
+ 
+ # include paths, local, parser and openssl
+-LIB_INCLUDE_PATHS	:= -I. -I$(PROJ_ROOT_DIR)/include $(shell pkg-config --cflags libcrypto) -I$(JSON_INC) -I$(PARSERS_INC) -I$(PARSERS_COMM_INC) -I$(PARSERS_DIR) -I$(VER_DIR) -I$(PARSERS_UTIL_INC)
++LIB_INCLUDE_PATHS	:= -I. -I$(PROJ_ROOT_DIR)/include $(shell pkg-config --cflags libcrypto) $(JSON_INC) -I$(PARSERS_INC) -I$(PARSERS_COMM_INC) -I$(PARSERS_DIR) -I$(VER_DIR) -I$(PARSERS_UTIL_INC)
+ 
+ # the library shared object name
+ LIB_NAME		:= libPCKCertSelection.a
+-- 
+2.55.0
+

diff --git a/0112-Don-t-stomp-on-VERBOSE-variable.patch b/0112-Don-t-stomp-on-VERBOSE-variable.patch
new file mode 100644
index 0000000..dbcf02f
--- /dev/null
+++ b/0112-Don-t-stomp-on-VERBOSE-variable.patch
@@ -0,0 +1,101 @@
+From eb93eda1a01be0f0014777fa73f618d4855de032 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Wed, 16 Apr 2025 11:48:52 +0100
+Subject: [PATCH 112/122] Don't stomp on "VERBOSE" variable
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The VERBOSE=1 variable is set to make various cmake builds run in
+verbose mode. It must not be used for other purposes by the makefiles
+otherwise the usage will clash.
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ driver/win/PLE/Makefile | 38 +++++++++++++++++++-------------------
+ 1 file changed, 19 insertions(+), 19 deletions(-)
+
+diff --git a/driver/win/PLE/Makefile b/driver/win/PLE/Makefile
+index 3d474bbc..0f593f5e 100644
+--- a/driver/win/PLE/Makefile
++++ b/driver/win/PLE/Makefile
+@@ -75,9 +75,9 @@ ifneq ($(PUBKEY_FILE),)
+ 	CSS_PUBKEY_FILE = $(shell realpath $(PUBKEY_FILE))
+ endif
+ 
+-VERBOSE := @
++CMD_VERBOSE := @
+ ifeq ($(V),1)
+-	VERBOSE :=
++	CMD_VERBOSE :=
+ endif
+ 
+ SGX_LE_SIGNING_KEY_PATH := sgx_signing_key.pem
+@@ -89,47 +89,47 @@ PUBLIC_KEY_PATH := $(shell realpath $(SGX_LE_PUBLIC_KEY_PATH))
+ SIGNING_MATERIAL := $(shell realpath $(SGX_LE_SIGNING_MATERIAL))
+ 
+ $(SIGNING_KEY_PATH):
+-	$(VERBOSE) openssl genrsa -3 -out $(SIGNING_KEY_PATH) 3072
++	$(CMD_VERBOSE) openssl genrsa -3 -out $(SIGNING_KEY_PATH) 3072
+ 
+ $(PUBLIC_KEY_PATH): $(SIGNING_KEY_PATH)
+-	$(VERBOSE) openssl rsa -in $(SIGNING_KEY_PATH) -outform PEM -pubout -out $(PUBLIC_KEY_PATH)
++	$(CMD_VERBOSE) openssl rsa -in $(SIGNING_KEY_PATH) -outform PEM -pubout -out $(PUBLIC_KEY_PATH)
+ 
+ SGX_LE_C_OBJS := $(addprefix $(TARGET)/,main.o string.o cmac.o)
+ SGX_LE_S_OBJS := $(addprefix $(TARGET)/,encl_bootstrap.o)
+ 
+ $(TARGET):
+-	$(VERBOSE) mkdir $@
++	$(CMD_VERBOSE) mkdir $@
+ 
+ $(SGX_LE_C_OBJS): $(TARGET)/%.o: %.c | $(TARGET)
+-	$(VERBOSE) $(CC) -c $(CFLAGS) $(INCLUDES) $< -o $@
++	$(CMD_VERBOSE) $(CC) -c $(CFLAGS) $(INCLUDES) $< -o $@
+ 
+ $(SGX_LE_S_OBJS): $(TARGET)/%.o: %.S | $(TARGET)
+-	$(VERBOSE) $(CC) -c $(CFLAGS) $(INCLUDES) $< -o $@
++	$(CMD_VERBOSE) $(CC) -c $(CFLAGS) $(INCLUDES) $< -o $@
+ 
+ $(TARGET)/sgx_le.elf: sgx_le.lds $(SGX_LE_C_OBJS) $(SGX_LE_S_OBJS)
+-	$(VERBOSE) $(LD) $(LDFLAGS) -T $^ -o $@
++	$(CMD_VERBOSE) $(LD) $(LDFLAGS) -T $^ -o $@
+ 
+ $(TARGET)/sgx_le.bin: $(TARGET)/sgx_le.elf
+-	$(VERBOSE) objcopy --remove-section=.got.plt -O binary $< $@
++	$(CMD_VERBOSE) objcopy --remove-section=.got.plt -O binary $< $@
+ 
+ $(TARGET)/sgxsign: sgxsign.c | $(TARGET)
+-	$(VERBOSE) $(CC) -Wall $(INCLUDES) -o $@ $< -lcrypto
++	$(CMD_VERBOSE) $(CC) -Wall $(INCLUDES) -o $@ $< -lcrypto
+ 
+ $(TARGET)/bin2c: bin2c.c | $(TARGET)
+-	$(VERBOSE) $(CC) -Wall $(INCLUDES) -o $@ $<
++	$(CMD_VERBOSE) $(CC) -Wall $(INCLUDES) -o $@ $<
+ 
+ sign: $(SIGNING_KEY_PATH) $(TARGET)/sgx_le.bin $(TARGET)/sgxsign $(TARGET)/bin2c
+-	$(VERBOSE) $(TARGET)/sgxsign sign $(SIGNING_KEY_PATH) $(TARGET)/sgx_le.bin $(TARGET)/sgx_le.ss $(SIGN_EXTRA)
+-	$(VERBOSE) $(TARGET)/bin2c $(TARGET)/sgx_le.bin $(TARGET)/sgx_le_blob.h sgx_le_blob
+-	$(VERBOSE) $(TARGET)/bin2c $(TARGET)/sgx_le.ss $(TARGET)/sgx_le_ss.h sgx_le_ss
++	$(CMD_VERBOSE) $(TARGET)/sgxsign sign $(SIGNING_KEY_PATH) $(TARGET)/sgx_le.bin $(TARGET)/sgx_le.ss $(SIGN_EXTRA)
++	$(CMD_VERBOSE) $(TARGET)/bin2c $(TARGET)/sgx_le.bin $(TARGET)/sgx_le_blob.h sgx_le_blob
++	$(CMD_VERBOSE) $(TARGET)/bin2c $(TARGET)/sgx_le.ss $(TARGET)/sgx_le_ss.h sgx_le_ss
+ 
+ gendata: $(TARGET)/sgx_le.bin $(TARGET)/sgxsign
+-	$(VERBOSE) $(TARGET)/sgxsign gendata $(TARGET)/sgx_le.bin $(SIGNING_MATERIAL) $(SIGN_EXTRA)
++	$(CMD_VERBOSE) $(TARGET)/sgxsign gendata $(TARGET)/sgx_le.bin $(SIGNING_MATERIAL) $(SIGN_EXTRA)
+ 
+ usesig: $(TARGET)/sgx_le.bin $(TARGET)/sgxsign $(TARGET)/bin2c
+-	$(VERBOSE) $(TARGET)/sgxsign usesig $(CSS_PUBKEY_FILE) $(TARGET)/sgx_le.bin $(CSS_SIG_FILE) $(TARGET)/sgx_le.ss $(SIGN_EXTRA)
+-	$(VERBOSE) $(TARGET)/bin2c $(TARGET)/sgx_le.bin $(TARGET)/sgx_le_blob.h sgx_le_blob
+-	$(VERBOSE) $(TARGET)/bin2c $(TARGET)/sgx_le.ss $(TARGET)/sgx_le_ss.h sgx_le_ss
++	$(CMD_VERBOSE) $(TARGET)/sgxsign usesig $(CSS_PUBKEY_FILE) $(TARGET)/sgx_le.bin $(CSS_SIG_FILE) $(TARGET)/sgx_le.ss $(SIGN_EXTRA)
++	$(CMD_VERBOSE) $(TARGET)/bin2c $(TARGET)/sgx_le.bin $(TARGET)/sgx_le_blob.h sgx_le_blob
++	$(CMD_VERBOSE) $(TARGET)/bin2c $(TARGET)/sgx_le.ss $(TARGET)/sgx_le_ss.h sgx_le_ss
+ 
+ clean:
+-	$(VERBOSE) rm -vrf $(TARGET) $(SIGNING_MATERIAL)
++	$(CMD_VERBOSE) rm -vrf $(TARGET) $(SIGNING_MATERIAL)
+-- 
+2.55.0
+

diff --git a/0112-Workaround-broken-GCC-15.patch b/0112-Workaround-broken-GCC-15.patch
deleted file mode 100644
index 55bdc57..0000000
--- a/0112-Workaround-broken-GCC-15.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 5a18d8d08db1a051a810085427873922e3d9f92a Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Thu, 6 Feb 2025 20:08:59 +0000
-Subject: [PATCH 112/127] Workaround broken GCC 15
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The C++ standard does not allow 'alignas' to be applied to type
-aliases. GNU C++ has allowed it as a non-standard extension, but
-strictly that should have been expressed using 'gnu::aligned'
-instead of 'alignas'. Regardless of the syntax, however, GCC 15
-has a regression causing it to reject alignment requests entirely
-on template aliases.
-
-https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118773
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- .../common/inc/internal/linux/sgx_random_buffers.h            | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/QuoteGeneration/common/inc/internal/linux/sgx_random_buffers.h b/QuoteGeneration/common/inc/internal/linux/sgx_random_buffers.h
-index 15fbdd42..4400544b 100644
---- a/QuoteGeneration/common/inc/internal/linux/sgx_random_buffers.h
-+++ b/QuoteGeneration/common/inc/internal/linux/sgx_random_buffers.h
-@@ -258,7 +258,11 @@ struct alignas(A)randomly_placed_buffer
-     }
- 
-     template <unsigned C = 1>
-+#if __GNUC__ == 15 && __GNUC_MINOR__ == 0
-+    using storage = char[size(C)];
-+#else
-     using storage = char[size(C)] alignas(A);
-+#endif
- 
- private:
-     struct alignas(A)_T_instantiator_
--- 
-2.55.0
-

diff --git a/0113-Don-t-disable-cf-protection-for-qgs.patch b/0113-Don-t-disable-cf-protection-for-qgs.patch
deleted file mode 100644
index 64eddd7..0000000
--- a/0113-Don-t-disable-cf-protection-for-qgs.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 20494e4793ffbf276fb195a2caf971eff3a5844b Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Wed, 2 Apr 2025 18:39:31 +0100
-Subject: [PATCH 113/127] Don't disable cf-protection for qgs
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- QuoteGeneration/quote_wrapper/qgs/Makefile | 4 ----
- 1 file changed, 4 deletions(-)
-
-diff --git a/QuoteGeneration/quote_wrapper/qgs/Makefile b/QuoteGeneration/quote_wrapper/qgs/Makefile
-index 2faa6130..fa1f6708 100644
---- a/QuoteGeneration/quote_wrapper/qgs/Makefile
-+++ b/QuoteGeneration/quote_wrapper/qgs/Makefile
-@@ -18,10 +18,6 @@ QGS_INC = -I$(SGX_SDK)/include \
- 		  -I$(TOP_DIR)/quote_wrapper/qgs_msg_lib/inc
- QGS_CFLAGS = -g -MMD -Werror $(CFLAGS) $(QGS_INC)
- QGS_CXXFLAGS = -g -MMD -Werror $(CXXFLAGS) $(QGS_INC)
--ifeq ($(CC_NO_LESS_THAN_8), 1)
--    QGS_CFLAGS += -fcf-protection=none
--    QGS_CXXFLAGS += -fcf-protection=none
--endif
- 
- DEPENDS = ${QGS_OBJS test_client.o:.o=.d}
- 
--- 
-2.55.0
-

diff --git a/0113-qgs-add-m-MODE-parameter-for-UNIX-socket-mode.patch b/0113-qgs-add-m-MODE-parameter-for-UNIX-socket-mode.patch
new file mode 100644
index 0000000..8a4ba4b
--- /dev/null
+++ b/0113-qgs-add-m-MODE-parameter-for-UNIX-socket-mode.patch
@@ -0,0 +1,82 @@
+From c6f540ff823726961c974abd99a428bb5936a0c1 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Fri, 2 May 2025 14:48:24 +0100
+Subject: [PATCH 113/122] qgs: add -m=MODE parameter for UNIX socket mode
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The UNIX socket mode default is controlled by the process umask, but it
+can be desirable to override this to open up the socket mode, while
+keeping the umask restrictive.
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ .../quote_wrapper/qgs/server_main.cpp         | 30 +++++++++++++++++--
+ 1 file changed, 28 insertions(+), 2 deletions(-)
+
+diff --git a/QuoteGeneration/quote_wrapper/qgs/server_main.cpp b/QuoteGeneration/quote_wrapper/qgs/server_main.cpp
+index cbd7a5dc..932acf8a 100644
+--- a/QuoteGeneration/quote_wrapper/qgs/server_main.cpp
++++ b/QuoteGeneration/quote_wrapper/qgs/server_main.cpp
+@@ -258,7 +258,7 @@ int main(int argc, const char* argv[])
+     unsigned long int port = MAX_PORT_NUMBER + 1;
+     unsigned long int num_threads = 0;
+     string socket_file = QGS_UNIX_SOCKET_FILE;
+-    const mode_t socket_mode = 0660;
++    mode_t socket_mode = 0660;
+     char *endptr = NULL;
+     // Initialise logging to stdout before argument and config-file parsing
+     // so that early diagnostic messages are visible in the terminal.
+@@ -321,6 +321,17 @@ int main(int argc, const char* argv[])
+                          << QGS_CONFIG_FILE << endl;
+                     exit(1);
+                 }
++            } else if (name.compare("socket_mode") == 0) {
++                unsigned long mode;
++                errno = 0;
++                endptr = NULL;
++                mode = (mode_t)strtoul(value, &endptr, 8);
++                if (errno || strlen(endptr) || (mode > UINT_MAX)) {
++                    cout << "Please input valid socket mode in "
++                         << QGS_CONFIG_FILE << endl;
++                    exit(1);
++                }
++                socket_mode = (mode_t)mode;
+             }
+             // ignore unrecognized parameters
+         }
+@@ -353,6 +364,21 @@ int main(int argc, const char* argv[])
+             cout << "port number [" << port << "] found in cmdline" << endl;
+             socket_based_communication = false;
+             continue;
++        } else if (strncmp(argv[i], "-m=", 3 ) == 0) {
++            unsigned long mode;
++            if (strspn(argv[i] + 3, "0123456789") != strlen(argv[i] + 3)) {
++                cout << "Please input valid socket mode" << endl;
++                exit(1);
++            }
++            errno = 0;
++            mode = strtoul(argv[i] + 3, &endptr, 8);
++            if (errno || strlen(endptr) || (mode > UINT_MAX) ) {
++                cout << "Please input valid socket mode" << endl;
++                exit(1);
++            }
++            cout << "socket mode [" << oct << mode << dec << "] found in cmdline" << endl;
++            socket_mode = (mode_t)mode;
++            continue;
+         } else if (strncmp(argv[i], "-n=", 3) == 0) {
+             if (strspn(argv[i] + 3, "0123456789") != strlen(argv[i] + 3)) {
+                 cout << "Please input valid thread number" << endl;
+@@ -371,7 +397,7 @@ int main(int argc, const char* argv[])
+             cout << "log level [" << argv[i] + 3 << "] found in cmdline" << endl;
+             continue;
+         } else {
+-            cout << "Usage: " << argv[0] << " [--no-daemon] [-p=port_number] [-n=number_threads] [-l=log_level]"
++            cout << "Usage: " << argv[0] << " [--no-daemon] [-p=port_number] [-m=unix_socket_mode] [-n=number_threads] [-l=log_level]"
+                 << endl;
+             exit(1);
+         }
+-- 
+2.55.0
+

diff --git a/0114-Delete-broken-checks-for-GCC-version-that-break-fsta.patch b/0114-Delete-broken-checks-for-GCC-version-that-break-fsta.patch
deleted file mode 100644
index 403b956..0000000
--- a/0114-Delete-broken-checks-for-GCC-version-that-break-fsta.patch
+++ /dev/null
@@ -1,116 +0,0 @@
-From 4cde0980849bd6e9f33a868491ddb462b0d2f1c9 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Thu, 3 Apr 2025 17:44:48 +0100
-Subject: [PATCH 114/127] Delete broken checks for GCC version that break
- -fstack-protector-strong
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The expr comparison is performing a string comparison and is thus
-broken for any GCC version >= 10, preventing use of -fstack-protector-strong
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- QuoteVerification/dcap_tvl/Makefile.standalone        | 7 +------
- SampleCode/QuoteAppraisalSample/QAEAppraisal/Makefile | 8 +-------
- SampleCode/QuoteGenerationSample/Makefile             | 7 +------
- SampleCode/QuoteVerificationSample/Makefile           | 8 +-------
- ae/qae/Makefile                                       | 7 +------
- 5 files changed, 5 insertions(+), 32 deletions(-)
-
-diff --git a/QuoteVerification/dcap_tvl/Makefile.standalone b/QuoteVerification/dcap_tvl/Makefile.standalone
-index 8e98c329..b8818b90 100644
---- a/QuoteVerification/dcap_tvl/Makefile.standalone
-+++ b/QuoteVerification/dcap_tvl/Makefile.standalone
-@@ -45,12 +45,7 @@ COMMON_LDFLAGS := -Wl,-z,relro,-z,now,-z,noexecstack
- ifneq ($(DEBUG), 1)
-     COMMON_FLAGS += -ffunction-sections -fdata-sections
- endif
--CC_BELOW_4_9 := $(shell expr "`$(CC) -dumpversion`" \< "4.9")
--ifeq ($(CC_BELOW_4_9), 1)
--    COMMON_FLAGS += -fstack-protector
--else
--    COMMON_FLAGS += -fstack-protector-strong
--endif
-+COMMON_FLAGS += -fstack-protector-strong
- 
- ENCLAVE_CFLAGS   = -ffreestanding -nostdinc -fvisibility=hidden -fpie -fno-strict-overflow -fno-delete-null-pointer-checks
- ENCLAVE_CXXFLAGS = $(ENCLAVE_CFLAGS) -nostdinc++
-diff --git a/SampleCode/QuoteAppraisalSample/QAEAppraisal/Makefile b/SampleCode/QuoteAppraisalSample/QAEAppraisal/Makefile
-index 662ac3e5..868d72df 100644
---- a/SampleCode/QuoteAppraisalSample/QAEAppraisal/Makefile
-+++ b/SampleCode/QuoteAppraisalSample/QAEAppraisal/Makefile
-@@ -87,13 +87,7 @@ Crypto_Library_Name := sgx_tcrypto
- Enclave_Cpp_Files := Enclave/Enclave.cpp
- Enclave_Include_Paths := -I$(SGX_SDK)/include -I$(SGX_SDK)/include/tlibc 
- 
--Enclave_C_Flags := $(Enclave_Include_Paths) -nostdinc -fvisibility=hidden -fpie -ffunction-sections -fdata-sections $(MITIGATION_CFLAGS)
--CC_BELOW_4_9 := $(shell expr "`$(CC) -dumpversion`" \< "4.9")
--ifeq ($(CC_BELOW_4_9), 1)
--    Enclave_C_Flags += -fstack-protector
--else
--    Enclave_C_Flags += -fstack-protector-strong
--endif
-+Enclave_C_Flags := $(Enclave_Include_Paths) -nostdinc -fvisibility=hidden -fpie -ffunction-sections -fdata-sections $(MITIGATION_CFLAGS) -fstack-protector-strong
- 
- Enclave_Cpp_Flags := $(Enclave_C_Flags) -std=c++11 -nostdinc++
- 
-diff --git a/SampleCode/QuoteGenerationSample/Makefile b/SampleCode/QuoteGenerationSample/Makefile
-index 06a36813..0cb0baf8 100644
---- a/SampleCode/QuoteGenerationSample/Makefile
-+++ b/SampleCode/QuoteGenerationSample/Makefile
-@@ -108,12 +108,7 @@ Crypto_Library_Name := sgx_tcrypto
- Enclave_Cpp_Files := Enclave/Enclave.cpp
- Enclave_Include_Paths := -I$(SGX_SDK)/include -I$(SGX_SDK)/include/tlibc -I$(SGX_SDK)/include/libcxx
- 
--CC_BELOW_4_9 := $(shell expr "`$(CC) -dumpversion`" \< "4.9")
--ifeq ($(CC_BELOW_4_9), 1)
--        Enclave_C_Flags := $(SGX_COMMON_CFLAGS) -nostdinc -fvisibility=hidden -fpie -ffunction-sections -fdata-sections -fstack-protector
--else
--        Enclave_C_Flags := $(SGX_COMMON_CFLAGS) -nostdinc -fvisibility=hidden -fpie -ffunction-sections -fdata-sections -fstack-protector-strong
--endif
-+Enclave_C_Flags := $(SGX_COMMON_CFLAGS) -nostdinc -fvisibility=hidden -fpie -ffunction-sections -fdata-sections
- Enclave_C_Flags += $(Enclave_Include_Paths)
- Enclave_Cpp_Flags := $(Enclave_C_Flags) -std=c++11 -nostdinc++
- 
-diff --git a/SampleCode/QuoteVerificationSample/Makefile b/SampleCode/QuoteVerificationSample/Makefile
-index ed099c7c..59a10981 100644
---- a/SampleCode/QuoteVerificationSample/Makefile
-+++ b/SampleCode/QuoteVerificationSample/Makefile
-@@ -105,13 +105,7 @@ DCAP_DIR  ?= ../../
- Enclave_Cpp_Files := Enclave/Enclave.cpp
- Enclave_Include_Paths := -IEnclave -I$(SGX_SDK)/include -I$(SGX_SDK)/include/tlibc -I$(SGX_SDK)/include/libcxx
- 
--Enclave_C_Flags := $(Enclave_Include_Paths) -nostdinc -fvisibility=hidden -fpie -ffunction-sections -fdata-sections
--CC_BELOW_4_9 := $(shell expr "`$(CC) -dumpversion`" \< "4.9")
--ifeq ($(CC_BELOW_4_9), 1)
--	Enclave_C_Flags += -fstack-protector
--else
--	Enclave_C_Flags += -fstack-protector-strong
--endif
-+Enclave_C_Flags := $(Enclave_Include_Paths) -nostdinc -fvisibility=hidden -fpie -ffunction-sections -fdata-sections -fstack-protector-strong
- 
- Enclave_Cpp_Flags := $(Enclave_C_Flags) -nostdinc++
- 
-diff --git a/ae/qae/Makefile b/ae/qae/Makefile
-index 715f365a..6a2b23b7 100644
---- a/ae/qae/Makefile
-+++ b/ae/qae/Makefile
-@@ -54,12 +54,7 @@ Enclave_Include_Paths := -I./ -I$(WARM_Top_Path)/core/iwasm/include \
-                          -I$(DCAP_QV_DIR)/appraisal/common \
-                          -I$(DCAP_QG_DIR)/common/inc/internal
- 
--CC_BELOW_4_9 := $(shell expr "`$(CC) -dumpversion`" \< "4.9")
--ifeq ($(CC_BELOW_4_9), 1)
--	Enclave_Common_Flags := -fstack-protector
--else
--	Enclave_Common_Flags := -fstack-protector-strong
--endif
-+Enclave_Common_Flags := -fstack-protector-strong
- Enclave_Common_Flags += -ffreestanding -fvisibility=hidden -fpie -ffunction-sections -fdata-sections $(Enclave_Include_Paths)
- Enclave_Common_Flags += -DPICOJSON_USE_LOCALE=0 -DBUILD_QAE -DSGX_JWT
- 
--- 
-2.55.0
-

diff --git a/0114-pcsclient-make-keyring-module-optional.patch b/0114-pcsclient-make-keyring-module-optional.patch
new file mode 100644
index 0000000..25d8f08
--- /dev/null
+++ b/0114-pcsclient-make-keyring-module-optional.patch
@@ -0,0 +1,69 @@
+From 5477dde55143da73af4a6ba1aceb9ab60a56bbbd Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Thu, 4 Dec 2025 13:31:54 +0000
+Subject: [PATCH 114/122] pcsclient: make 'keyring' module optional
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This is not available in some distros, and since it is merely a
+convenience to avoid repeated password entry, it can be made
+optional.
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ .../PcsClientTool/lib/intelsgx/credential.py  | 29 +++++++++++--------
+ 1 file changed, 17 insertions(+), 12 deletions(-)
+
+diff --git a/tools/PcsClientTool/lib/intelsgx/credential.py b/tools/PcsClientTool/lib/intelsgx/credential.py
+index fa1e38d0..e0e32ddb 100644
+--- a/tools/PcsClientTool/lib/intelsgx/credential.py
++++ b/tools/PcsClientTool/lib/intelsgx/credential.py
+@@ -1,4 +1,7 @@
+-import keyring
++try:
++    import keyring
++except:
++    keyring = None
+ import getpass
+ 
+ class Credentials:
+@@ -7,11 +10,12 @@ class Credentials:
+ 
+     def get_pcs_api_key(self):
+         pcs_api_key = ""
+-        try:
+-            print("Please note: A prompt may appear asking for your keyring password to access stored credentials.")
+-            pcs_api_key = keyring.get_password(self.APPNAME, self.KEY_PCS_APIKEY)
+-        except keyring.errors.KeyringError as ke:
+-            pcs_api_key = ""
++        if keyring is not None:
++            try:
++                print("Please note: A prompt may appear asking for your keyring password to access stored credentials.")
++                pcs_api_key = keyring.get_password(self.APPNAME, self.KEY_PCS_APIKEY)
++            except keyring.errors.KeyringError as ke:
++                pcs_api_key = ""
+         
+         while pcs_api_key is None or pcs_api_key == '':
+             pcs_api_key = getpass.getpass(prompt="Please input ApiKey for Intel PCS:")
+@@ -24,10 +28,11 @@ class Credentials:
+         return pcs_api_key
+ 
+     def set_pcs_api_key(self, apikey):
+-        try:
+-            print("Please note: A prompt may appear asking for your keyring password to access stored credentials.")
+-            keyring.set_password(self.APPNAME, self.KEY_PCS_APIKEY, apikey)
+-        except keyring.errors.PasswordSetError as ke:
+-            print("Failed to store PCS API key.")
+-            return False
++        if keyring is not None:
++            try:
++                print("Please note: A prompt may appear asking for your keyring password to access stored credentials.")
++                keyring.set_password(self.APPNAME, self.KEY_PCS_APIKEY, apikey)
++            except keyring.errors.PasswordSetError as ke:
++                print("Failed to store PCS API key.")
++                return False
+         return True
+-- 
+2.55.0
+

diff --git a/0115-Use-distro-provided-rapidjson-package.patch b/0115-Use-distro-provided-rapidjson-package.patch
deleted file mode 100644
index 418f41c..0000000
--- a/0115-Use-distro-provided-rapidjson-package.patch
+++ /dev/null
@@ -1,167 +0,0 @@
-From fed97620605cf8e64efdaea313645a65abb5f82e Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Mon, 26 Feb 2024 12:19:51 +0000
-Subject: [PATCH 115/127] Use distro provided rapidjson package
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- QuoteGeneration/qcnl/certification_provider.cpp             | 2 +-
- QuoteGeneration/qcnl/inc/pccs_response_object.h             | 2 +-
- QuoteGeneration/qcnl/inc/qcnl_config.h                      | 2 +-
- QuoteGeneration/qcnl/linux/Makefile                         | 2 +-
- QuoteGeneration/qcnl/linux/qcnl_config_impl.cpp             | 2 +-
- QuoteGeneration/qcnl/qcnl_config.cpp                        | 6 +++---
- QuoteVerification/buildenv.mk                               | 4 ++--
- tools/PCKCertSelection/PCKCertSelectionLib/Makefile         | 4 ++--
- .../PCKCertSelectionLib/Makefile.static_lib                 | 4 ++--
- 9 files changed, 14 insertions(+), 14 deletions(-)
-
-diff --git a/QuoteGeneration/qcnl/certification_provider.cpp b/QuoteGeneration/qcnl/certification_provider.cpp
-index a08ea7e7..41e5b9d0 100644
---- a/QuoteGeneration/qcnl/certification_provider.cpp
-+++ b/QuoteGeneration/qcnl/certification_provider.cpp
-@@ -36,7 +36,7 @@
-  */
- #include "certification_provider.h"
- #include "certification_service.h"
--#include "document.h"
-+#include <rapidjson/document.h>
- #include "local_cache.h"
- #include "pck_cert_selection.h"
- #include "qcnl_util.h"
-diff --git a/QuoteGeneration/qcnl/inc/pccs_response_object.h b/QuoteGeneration/qcnl/inc/pccs_response_object.h
-index f309258e..998cdfeb 100644
---- a/QuoteGeneration/qcnl/inc/pccs_response_object.h
-+++ b/QuoteGeneration/qcnl/inc/pccs_response_object.h
-@@ -7,7 +7,7 @@
- #define PCCSRESPONSEOBJECT_H_
- #pragma once
- 
--#include "document.h"
-+#include <rapidjson/document.h>
- #include "qcnl_def.h"
- #include <sstream>
- #include <string>
-diff --git a/QuoteGeneration/qcnl/inc/qcnl_config.h b/QuoteGeneration/qcnl/inc/qcnl_config.h
-index ff3c744d..71b9a996 100644
---- a/QuoteGeneration/qcnl/inc/qcnl_config.h
-+++ b/QuoteGeneration/qcnl/inc/qcnl_config.h
-@@ -38,7 +38,7 @@
- #pragma once
- 
- #include "sgx_default_qcnl_wrapper.h"
--#include "document.h"
-+#include <rapidjson/document.h>
- #include <memory>
- #include <string>
- 
-diff --git a/QuoteGeneration/qcnl/linux/Makefile b/QuoteGeneration/qcnl/linux/Makefile
-index d2c8f8da..21b66bdb 100644
---- a/QuoteGeneration/qcnl/linux/Makefile
-+++ b/QuoteGeneration/qcnl/linux/Makefile
-@@ -18,7 +18,7 @@ CNL_Lib_Include_Paths := -I../../quote_wrapper/common/inc       \
-                          -I../inc -I$(SGX_SDK)/include          \
-                          -I../../common/inc/internal            \
-                          -I../../pce_wrapper/inc                \
--                         -I../../../QuoteVerification/QVL/Src/ThirdParty/rapidjson/include/rapidjson	\
-+                         $(pkg-config --cflags RapidJSON) \
-                          -I../../../tools/PCKCertSelection/include
- 
- CNL_Lib_C_Flags := $(COMMON_FLAGS) -g -fPIC -Werror -Wno-attributes $(CNL_Lib_Include_Paths) $(shell pkg-config --cflags libcrypto)
-diff --git a/QuoteGeneration/qcnl/linux/qcnl_config_impl.cpp b/QuoteGeneration/qcnl/linux/qcnl_config_impl.cpp
-index 7b74eae0..5f20a1e3 100644
---- a/QuoteGeneration/qcnl/linux/qcnl_config_impl.cpp
-+++ b/QuoteGeneration/qcnl/linux/qcnl_config_impl.cpp
-@@ -35,7 +35,7 @@
-  *
-  */
- 
--#include "istreamwrapper.h"
-+#include <rapidjson/istreamwrapper.h>
- #include "qcnl_config.h"
- #include <algorithm>
- #include <curl/curl.h>
-diff --git a/QuoteGeneration/qcnl/qcnl_config.cpp b/QuoteGeneration/qcnl/qcnl_config.cpp
-index 42388a08..9be8feec 100644
---- a/QuoteGeneration/qcnl/qcnl_config.cpp
-+++ b/QuoteGeneration/qcnl/qcnl_config.cpp
-@@ -36,10 +36,10 @@
-  */
- 
- #include "qcnl_config.h"
--#include "error/en.h"
--#include "error/error.h"
-+#include <rapidjson/error/en.h>
-+#include <rapidjson/error/error.h>
- #include <fstream>
--#include <istreamwrapper.h>
-+#include <rapidjson/istreamwrapper.h>
- #include <mutex>
- #include <algorithm>
- 
-diff --git a/QuoteVerification/buildenv.mk b/QuoteVerification/buildenv.mk
-index 8ffd99cb..0b412d13 100644
---- a/QuoteVerification/buildenv.mk
-+++ b/QuoteVerification/buildenv.mk
-@@ -47,9 +47,9 @@ else
- COMMON_INCLUDE := -I$(SGX_SDK)/include -I$(SGX_SDK)/include/tlibc -I$(SGX_SDK)/include/libcxx -isystem$(SGXSSL_PACKAGE_PATH)/include
- endif
- 
--QVL_LIB_INC := -I$(QVL_COMMON_PATH)/include -I$(QVL_COMMON_PATH)/include/Utils -I$(QVL_LIB_PATH)/include -I$(QVL_LIB_PATH)/src -I$(QVL_PARSER_PATH)/include -I$(QVL_SRC_PATH)/ThirdParty/rapidjson/include  -isystem$(DCAP_EXTERNAL_DIR)/jwt-cpp/include
-+QVL_LIB_INC := -I$(QVL_COMMON_PATH)/include -I$(QVL_COMMON_PATH)/include/Utils -I$(QVL_LIB_PATH)/include -I$(QVL_LIB_PATH)/src -I$(QVL_PARSER_PATH)/include $(pkg-config --cflags RapidJSON)  -isystem$(DCAP_EXTERNAL_DIR)/jwt-cpp/include
- 
--QVL_PARSER_INC := -I$(QVL_COMMON_PATH)/include -I$(QVL_COMMON_PATH)/include/Utils -I$(QVL_SRC_PATH) -I$(QVL_PARSER_PATH)/include -I$(QVL_PARSER_PATH)/src -I$(QVL_LIB_PATH)/include -isystem$(QVL_SRC_PATH)/ThirdParty/rapidjson/include
-+QVL_PARSER_INC := -I$(QVL_COMMON_PATH)/include -I$(QVL_COMMON_PATH)/include/Utils -I$(QVL_SRC_PATH) -I$(QVL_PARSER_PATH)/include -I$(QVL_PARSER_PATH)/src -I$(QVL_LIB_PATH)/include $(pkg-config --cflags RapidJSON)
- 
- QVL_LIB_FILES := $(sort $(wildcard $(QVL_LIB_PATH)/src/*.cpp) $(wildcard $(QVL_LIB_PATH)/src/*/*.cpp) $(wildcard $(QVL_LIB_PATH)/src/*/*/*.cpp) $(wildcard $(QVL_COMMON_PATH)/src/Utils/*.cpp))
- QVL_PARSER_FILES := $(sort $(wildcard $(QVL_PARSER_PATH)/src/*.cpp) $(wildcard $(QVL_PARSER_PATH)/src/*/*.cpp))
-diff --git a/tools/PCKCertSelection/PCKCertSelectionLib/Makefile b/tools/PCKCertSelection/PCKCertSelectionLib/Makefile
-index 1a565b70..04fd7bc6 100644
---- a/tools/PCKCertSelection/PCKCertSelectionLib/Makefile
-+++ b/tools/PCKCertSelection/PCKCertSelectionLib/Makefile
-@@ -66,7 +66,7 @@ endif
- OPENSSL_INC 		:= $(shell pkg-config --cflags libcrypto)
- 
- # JSON parser include dir
--JSON_INC		:= $(QVL_DIR)/ThirdParty/rapidjson/include
-+JSON_INC		:= $(pkg-config --cflags RapidJSON)
- 
- # QVL Attestation Parsers include directory
- PARSERS_INC 		:= $(QVL_DIR)/AttestationParsers/include
-@@ -113,7 +113,7 @@ LIB_CPP_OBJECTS 	:= \
- 	$(UTILS_CPP_FILES:.cpp=.o)
- 
- # include paths, local, parser and openssl
--LIB_INCLUDE_PATHS	:= -I. -I$(PROJ_ROOT_DIR)/include $(OPENSSL_INC) -I$(JSON_INC) -I$(PARSERS_INC) -I$(PARSERS_COMM_INC) -I$(PARSERS_DIR) -I$(VER_DIR) -I$(PARSERS_UTIL_INC)
-+LIB_INCLUDE_PATHS	:= -I. -I$(PROJ_ROOT_DIR)/include $(OPENSSL_INC) $(JSON_INC) -I$(PARSERS_INC) -I$(PARSERS_COMM_INC) -I$(PARSERS_DIR) -I$(VER_DIR) -I$(PARSERS_UTIL_INC)
- 
- # the library shared object name
- LIB_NAME		:= libPCKCertSelection.so
-diff --git a/tools/PCKCertSelection/PCKCertSelectionLib/Makefile.static_lib b/tools/PCKCertSelection/PCKCertSelectionLib/Makefile.static_lib
-index 499ee94f..434fa6b9 100644
---- a/tools/PCKCertSelection/PCKCertSelectionLib/Makefile.static_lib
-+++ b/tools/PCKCertSelection/PCKCertSelectionLib/Makefile.static_lib
-@@ -69,7 +69,7 @@ OPENSSL_INC 		:= $(PROJ_ROOT_DIR)/../../prebuilt/openssl/inc
- OPENSSL_LIB 		:= $(PROJ_ROOT_DIR)/../../prebuilt/openssl/lib/linux64
- 
- # JSON parser include dir
--JSON_INC		:= $(QVL_DIR)/ThirdParty/rapidjson/include
-+JSON_INC		:= $(pkg-config --cflags RapidJSON)
- 
- # QVL Attestation Parsers include directory
- PARSERS_INC 		:= $(QVL_DIR)/AttestationParsers/include
-@@ -118,7 +118,7 @@ LIB_CPP_OBJECTS 	:= \
- LIB_CPP_OBJECTS := $(addprefix $(BIN_DIR)/, $(LIB_CPP_OBJECTS))
- 
- # include paths, local, parser and openssl
--LIB_INCLUDE_PATHS	:= -I. -I$(PROJ_ROOT_DIR)/include $(shell pkg-config --cflags libcrypto) -I$(JSON_INC) -I$(PARSERS_INC) -I$(PARSERS_COMM_INC) -I$(PARSERS_DIR) -I$(VER_DIR) -I$(PARSERS_UTIL_INC)
-+LIB_INCLUDE_PATHS	:= -I. -I$(PROJ_ROOT_DIR)/include $(shell pkg-config --cflags libcrypto) $(JSON_INC) -I$(PARSERS_INC) -I$(PARSERS_COMM_INC) -I$(PARSERS_DIR) -I$(VER_DIR) -I$(PARSERS_UTIL_INC)
- 
- # the library shared object name
- LIB_NAME		:= libPCKCertSelection.a
--- 
-2.55.0
-

diff --git a/0115-pcsclient-convert-from-asn1-to-pyasn1-python-module.patch b/0115-pcsclient-convert-from-asn1-to-pyasn1-python-module.patch
new file mode 100644
index 0000000..aa73b3b
--- /dev/null
+++ b/0115-pcsclient-convert-from-asn1-to-pyasn1-python-module.patch
@@ -0,0 +1,341 @@
+From 4db2234de25c905fb4289620c643e3b85eb2d731 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Thu, 4 Dec 2025 13:54:19 +0000
+Subject: [PATCH 115/122] pcsclient: convert from asn1 to pyasn1 python module
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The pyasn1 module decodes using a formal object model so is more robust,
+as well as being more widely available in distros.
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ tools/PcsClientTool/lib/intelsgx/pckcert.py | 267 +++++++++++++-------
+ 1 file changed, 177 insertions(+), 90 deletions(-)
+
+diff --git a/tools/PcsClientTool/lib/intelsgx/pckcert.py b/tools/PcsClientTool/lib/intelsgx/pckcert.py
+index 97aa2783..eaed331b 100644
+--- a/tools/PcsClientTool/lib/intelsgx/pckcert.py
++++ b/tools/PcsClientTool/lib/intelsgx/pckcert.py
+@@ -1,76 +1,171 @@
+ from cryptography import x509
+ from cryptography.x509.oid import ObjectIdentifier
+ from cryptography.hazmat.backends import default_backend
+-import asn1
+-import struct
++import pyasn1
++from pyasn1.codec.der.decoder import decode as der_decoder
++from pyasn1.type import namedtype
++from pyasn1.type import namedval
++from pyasn1.type import opentype
++from pyasn1.type import univ
++
++
++id_cdp_extensionStr = '2.5.29.31'
++id_ce_sGXExtensionsStr = '1.2.840.113741.1.13.1'
++
++id_ce_sGXExtensions = univ.ObjectIdentifier(id_ce_sGXExtensionsStr)
++
++id_ce_sGXExtensions_pPID = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".1")
++id_ce_sGXExtensions_tCB = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2")
++id_ce_sGXExtensions_pCE_ID = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".3")
++id_ce_sGXExtensions_fMSPC = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".4")
++id_ce_sGXExtensions_sGXType = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".5")
++id_ce_sGXExtensions_platformInstanceID = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".6")
++id_ce_sGXExtensions_configuration = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".7")
++
++id_ce_tCB_sGXTCBComp01SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.1")
++id_ce_tCB_sGXTCBComp02SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.2")
++id_ce_tCB_sGXTCBComp03SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.3")
++id_ce_tCB_sGXTCBComp04SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.4")
++id_ce_tCB_sGXTCBComp05SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.5")
++id_ce_tCB_sGXTCBComp06SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.6")
++id_ce_tCB_sGXTCBComp07SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.7")
++id_ce_tCB_sGXTCBComp08SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.8")
++id_ce_tCB_sGXTCBComp09SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.9")
++id_ce_tCB_sGXTCBComp10SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.10")
++id_ce_tCB_sGXTCBComp11SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.11")
++id_ce_tCB_sGXTCBComp12SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.12")
++id_ce_tCB_sGXTCBComp13SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.13")
++id_ce_tCB_sGXTCBComp14SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.14")
++id_ce_tCB_sGXTCBComp15SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.15")
++id_ce_tCB_sGXTCBComp16SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.16")
++id_ce_tCB_pCESVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.17")
++id_ce_tCB_cPUSVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.18")
++
++id_ce_configuration_dynamicPlatform = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".7.1")
++id_ce_configuration_cachedKeys = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".7.2")
++id_ce_configuration_sMTEnabled = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".7.3")
++
++
++class SgxExtensionPPID(univ.OctetString):
++	pass
++
++
++class SgxCPUSVN(univ.OctetString):
++	pass
++
++
++tcbAttributeMap = {
++	id_ce_tCB_sGXTCBComp01SVN: univ.Integer(),
++	id_ce_tCB_sGXTCBComp02SVN: univ.Integer(),
++	id_ce_tCB_sGXTCBComp03SVN: univ.Integer(),
++	id_ce_tCB_sGXTCBComp04SVN: univ.Integer(),
++	id_ce_tCB_sGXTCBComp05SVN: univ.Integer(),
++	id_ce_tCB_sGXTCBComp06SVN: univ.Integer(),
++	id_ce_tCB_sGXTCBComp07SVN: univ.Integer(),
++	id_ce_tCB_sGXTCBComp08SVN: univ.Integer(),
++	id_ce_tCB_sGXTCBComp09SVN: univ.Integer(),
++	id_ce_tCB_sGXTCBComp10SVN: univ.Integer(),
++	id_ce_tCB_sGXTCBComp11SVN: univ.Integer(),
++	id_ce_tCB_sGXTCBComp12SVN: univ.Integer(),
++	id_ce_tCB_sGXTCBComp13SVN: univ.Integer(),
++	id_ce_tCB_sGXTCBComp14SVN: univ.Integer(),
++	id_ce_tCB_sGXTCBComp15SVN: univ.Integer(),
++	id_ce_tCB_sGXTCBComp16SVN: univ.Integer(),
++	id_ce_tCB_pCESVN: univ.Integer(),
++	id_ce_tCB_cPUSVN: SgxCPUSVN(),
++}
++
++
++class SgxExtensionTCBEntry(univ.Sequence):
++	componentType = namedtype.NamedTypes(
++		namedtype.NamedType('tCBId', univ.ObjectIdentifier()),
++		namedtype.NamedType('tCBValue', univ.Any(),
++				    openType=opentype.OpenType('tCBId',
++							       tcbAttributeMap))
++	)
++
++
++class SgxExtensionTCB(univ.SequenceOf):
++	componentType = SgxExtensionTCBEntry()
++
++
++class SgxExtensionPCEID(univ.OctetString):
++	pass
++
++
++class SgxExtensionFMSPC(univ.OctetString):
++	pass
++
++
++class SgxExtensionSGXType(univ.Enumerated):
++	namedValues = namedval.NamedValues(
++		('standard', 0),
++		('scalable', 1),
++		('scalableWithIntegrity', 2)
++	)
++
++
++class SgxExtensionPlatformInstanceID(univ.OctetString):
++	pass
++
++
++configurationAttributeMap = {
++	id_ce_configuration_dynamicPlatform: univ.Boolean(),
++	id_ce_configuration_cachedKeys: univ.Boolean(),
++	id_ce_configuration_sMTEnabled: univ.Boolean(),
++}
++
++
++class SgxExtensionConfigurationEntry(univ.Sequence):
++	componentType = namedtype.NamedTypes(
++		namedtype.NamedType('configurationId', univ.ObjectIdentifier()),
++		namedtype.NamedType('configurationValue', univ.Any(),
++				    openType=opentype.OpenType('configurationId',
++							       configurationAttributeMap))
++	)
++
++
++class SgxExtensionConfiguration(univ.SequenceOf):
++	componentType = SgxExtensionConfigurationEntry()
++
++
++extensionAttributeMap = {
++	id_ce_sGXExtensions_pPID: SgxExtensionPPID(),
++	id_ce_sGXExtensions_tCB: SgxExtensionTCB(),
++	id_ce_sGXExtensions_pCE_ID: SgxExtensionPCEID(),
++	id_ce_sGXExtensions_fMSPC: SgxExtensionFMSPC(),
++	id_ce_sGXExtensions_sGXType: SgxExtensionSGXType(),
++	id_ce_sGXExtensions_platformInstanceID: SgxExtensionPlatformInstanceID(),
++	id_ce_sGXExtensions_configuration: SgxExtensionConfiguration(),
++}
++
++
++class SgxExtensionEntry(univ.Sequence):
++	componentType = namedtype.NamedTypes(
++		namedtype.NamedType('sGXExtensionId', univ.ObjectIdentifier()),
++		namedtype.NamedType('sGXExtensionValue', univ.Any(),
++				    openType=opentype.OpenType('sGXExtensionId',
++							       extensionAttributeMap))
++	)
++
++
++class SgxExtension(univ.SequenceOf):
++	componentType = SgxExtensionEntry()
+ 
+-# This is a very simplistic ASN1 parser. Production code should use
+-# something like ans1c to build a parser from the ASN1 spec file so
+-# that it can check and enforce data validity.
+ 
+ class SgxPckCertificateExtensions:
+-	id_ce_sGXExtensions = '1.2.840.113741.1.13.1'
+-	id_ce_sGXExtensions_tCB= id_ce_sGXExtensions+".2"
+-	id_ce_sGXExtensions_configuration= id_ce_sGXExtensions+".7"
+-	id_cdp_extension = '2.5.29.31'
+-	decoder= asn1.Decoder()
+-	_data= {}
+-	ca= ''
+-	oids= {
+-		id_ce_sGXExtensions: 'sGXExtensions',
+-		id_ce_sGXExtensions+".1": 'pPID',
+-		id_ce_sGXExtensions_tCB: 'tCB',
+-		id_ce_sGXExtensions_tCB+".1": 'tCB-sGXTCBComp01SVN',
+-		id_ce_sGXExtensions_tCB+".2": 'tCB-sGXTCBComp02SVN',
+-		id_ce_sGXExtensions_tCB+".3": 'tCB-sGXTCBComp03SVN',
+-		id_ce_sGXExtensions_tCB+".4": 'tCB-sGXTCBComp04SVN',
+-		id_ce_sGXExtensions_tCB+".5": 'tCB-sGXTCBComp05SVN',
+-		id_ce_sGXExtensions_tCB+".6": 'tCB-sGXTCBComp06SVN',
+-		id_ce_sGXExtensions_tCB+".7": 'tCB-sGXTCBComp07SVN',
+-		id_ce_sGXExtensions_tCB+".8": 'tCB-sGXTCBComp08SVN',
+-		id_ce_sGXExtensions_tCB+".9": 'tCB-sGXTCBComp09SVN',
+-		id_ce_sGXExtensions_tCB+".10": 'tCB-sGXTCBComp10SVN',
+-		id_ce_sGXExtensions_tCB+".11": 'tCB-sGXTCBComp11SVN',
+-		id_ce_sGXExtensions_tCB+".12": 'tCB-sGXTCBComp12SVN',
+-		id_ce_sGXExtensions_tCB+".13": 'tCB-sGXTCBComp13SVN',
+-		id_ce_sGXExtensions_tCB+".14": 'tCB-sGXTCBComp14SVN',
+-		id_ce_sGXExtensions_tCB+".15": 'tCB-sGXTCBComp15SVN',
+-		id_ce_sGXExtensions_tCB+".16": 'tCB-sGXTCBComp16SVN',
+-		id_ce_sGXExtensions_tCB+".17": 'tCB-pCESVN',
+-		id_ce_sGXExtensions_tCB+".18": 'tCB-cPUSVN',
+-		id_ce_sGXExtensions+".3": 'pCE-ID',
+-		id_ce_sGXExtensions+".4": 'fMSPC',
+-		id_ce_sGXExtensions+".5": 'sGXType',
+-		id_ce_sGXExtensions+".6": 'platformInstanceID',
+-		id_ce_sGXExtensions_configuration: 'configuration',
+-		id_ce_sGXExtensions_configuration+".1": 'dynamicPlatform',
+-		id_ce_sGXExtensions_configuration+".2": 'cachedKeys',
+-		id_ce_sGXExtensions_configuration+".3": 'sMTEnabled'
+-	}
+-
+-	def _parse_asn1(self, d, oid, lnr=asn1.Numbers.ObjectIdentifier):
+-		tag= self.decoder.peek()
+-		while tag:
+-			if tag.typ == asn1.Types.Constructed:
+-				self.decoder.enter()
+-				if ( lnr == asn1.Numbers.ObjectIdentifier ):
+-					d[self.oids[oid]]= {}
+-					self._parse_asn1(d[self.oids[oid]], oid, tag.nr)
+-				else:
+-					self._parse_asn1(d, oid, tag.nr)
+-				self.decoder.leave()
+-			elif tag.typ == asn1.Types.Primitive:
+-				tag, value= self.decoder.read()
+-				if ( tag.nr == asn1.Numbers.ObjectIdentifier ):
+-					oid= value
+-				else:
+-					d[self.oids[oid]]= value
+-			lnr= tag.nr
+-			tag= self.decoder.peek()
+-		return
++
++	def __init__(self):
++		self.ca= ''
++		self._data= None
++
++	def _parse_asn1(self, extensionData):
++		parsed, extra= der_decoder(extensionData,
++					   asn1Spec=SgxExtension(),
++					   decodeOpenTypes=True)
++		return parsed
+ 
+ 	def parse_pem_certificate(self, pem):
+-		self._data= {}
+ 		cert= x509.load_pem_x509_certificate(pem, default_backend())
+ 		issuerCN = cert.issuer.rfc4514_string()
+ 		if (issuerCN.find('Processor') != -1) :
+@@ -81,63 +176,55 @@ class SgxPckCertificateExtensions:
+ 			self.ca = None
+ 		
+ 		sgxext= cert.extensions.get_extension_for_oid(
+-			ObjectIdentifier(self.id_ce_sGXExtensions)
++			ObjectIdentifier(id_ce_sGXExtensionsStr)
+ 		)
+ 
+-		self.decoder.start(sgxext.value.value)
+-		self._parse_asn1(self._data, self.id_ce_sGXExtensions)
++		self._data= self._parse_asn1(sgxext.value.value)
+ 
+ 	def get_root_ca_crl(self, pem):
+-		self._data= {}
+ 		cert= x509.load_pem_x509_certificate(pem, default_backend())
+ 		cdpext= cert.extensions.get_extension_for_oid(
+-			ObjectIdentifier(self.id_cdp_extension)
++			ObjectIdentifier(id_cdp_extensionStr)
+ 		)
+ 
+ 		return getattr(getattr(cdpext.value[0], "_full_name")[0], "value")
+ 
+-	def data(self, field=None):
+-		if 'sGXExtensions' not in self._data:
+-			return None
+-
+-		d= self._data['sGXExtensions']
+-
+-		if field:
+-			if field in d:
+-				return d[field]
++	def data(self, field):
++		if self._data is None:
+ 			return None
+ 
+-		return d
++		ent = list(filter(lambda e: e['sGXExtensionId'] == field, self._data))[0]
++		return ent['sGXExtensionValue']
+ 
+ 	def _hex_data(self, field):
+ 		val= self.data(field)
+ 		if val is None:
+ 			return None
+-		return val.hex()
++		return bytes(val).hex()
+ 
+ 	# Commonly-needed data fields
+ 	#------------------------------
+ 
+ 	def get_fmspc(self):
+-		return self._hex_data('fMSPC')
++		return self._hex_data(id_ce_sGXExtensions_fMSPC)
+ 
+ 	def get_ca(self):
+ 		return self.ca
+ 
+ 	def get_tcbm(self):
+-		tcb= self.data('tCB')
++		tcb= self.data(id_ce_sGXExtensions_tCB)
+ 		if tcb is None:
+ 			return None
+-		return tcb['tCB-cPUSVN'].hex() + self.get_pcesvn()
++		ent= list(filter(lambda e: e['tCBId'] == id_ce_tCB_cPUSVN, tcb))[0]
++		return bytes(ent["tCBValue"]).hex() + self.get_pcesvn()
+ 
+ 	def get_pceid(self):
+-		return self._hex_data('pCE-ID')
++		return self._hex_data(id_ce_sGXExtensions_pCE_ID)
+ 
+ 	def get_ppid(self):
+-		return self._hex_data('pPID')
++		return self._hex_data(id_ce_sGXExtensions_pPID)
+ 
+ 	def get_pcesvn(self):
+-		tcb= self.data('tCB')
+-		# pCESVN should be packed little-endian
+-		pcesvn= struct.pack('<H', tcb['tCB-pCESVN'])
+-		return pcesvn.hex()
++		tcb= self.data(id_ce_sGXExtensions_tCB)
++		ent= list(filter(lambda e: e['tCBId'] == id_ce_tCB_pCESVN, tcb))[0]
++		return int(ent["tCBValue"]).to_bytes(2, byteorder='little').hex()
+-- 
+2.55.0
+

diff --git a/0116-Don-t-stomp-on-VERBOSE-variable.patch b/0116-Don-t-stomp-on-VERBOSE-variable.patch
deleted file mode 100644
index fdbc8a0..0000000
--- a/0116-Don-t-stomp-on-VERBOSE-variable.patch
+++ /dev/null
@@ -1,101 +0,0 @@
-From 6b23d61924f49afc6a9264a5b46a23a34e39829b Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Wed, 16 Apr 2025 11:48:52 +0100
-Subject: [PATCH 116/127] Don't stomp on "VERBOSE" variable
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The VERBOSE=1 variable is set to make various cmake builds run in
-verbose mode. It must not be used for other purposes by the makefiles
-otherwise the usage will clash.
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- driver/win/PLE/Makefile | 38 +++++++++++++++++++-------------------
- 1 file changed, 19 insertions(+), 19 deletions(-)
-
-diff --git a/driver/win/PLE/Makefile b/driver/win/PLE/Makefile
-index 3d474bbc..0f593f5e 100644
---- a/driver/win/PLE/Makefile
-+++ b/driver/win/PLE/Makefile
-@@ -75,9 +75,9 @@ ifneq ($(PUBKEY_FILE),)
- 	CSS_PUBKEY_FILE = $(shell realpath $(PUBKEY_FILE))
- endif
- 
--VERBOSE := @
-+CMD_VERBOSE := @
- ifeq ($(V),1)
--	VERBOSE :=
-+	CMD_VERBOSE :=
- endif
- 
- SGX_LE_SIGNING_KEY_PATH := sgx_signing_key.pem
-@@ -89,47 +89,47 @@ PUBLIC_KEY_PATH := $(shell realpath $(SGX_LE_PUBLIC_KEY_PATH))
- SIGNING_MATERIAL := $(shell realpath $(SGX_LE_SIGNING_MATERIAL))
- 
- $(SIGNING_KEY_PATH):
--	$(VERBOSE) openssl genrsa -3 -out $(SIGNING_KEY_PATH) 3072
-+	$(CMD_VERBOSE) openssl genrsa -3 -out $(SIGNING_KEY_PATH) 3072
- 
- $(PUBLIC_KEY_PATH): $(SIGNING_KEY_PATH)
--	$(VERBOSE) openssl rsa -in $(SIGNING_KEY_PATH) -outform PEM -pubout -out $(PUBLIC_KEY_PATH)
-+	$(CMD_VERBOSE) openssl rsa -in $(SIGNING_KEY_PATH) -outform PEM -pubout -out $(PUBLIC_KEY_PATH)
- 
- SGX_LE_C_OBJS := $(addprefix $(TARGET)/,main.o string.o cmac.o)
- SGX_LE_S_OBJS := $(addprefix $(TARGET)/,encl_bootstrap.o)
- 
- $(TARGET):
--	$(VERBOSE) mkdir $@
-+	$(CMD_VERBOSE) mkdir $@
- 
- $(SGX_LE_C_OBJS): $(TARGET)/%.o: %.c | $(TARGET)
--	$(VERBOSE) $(CC) -c $(CFLAGS) $(INCLUDES) $< -o $@
-+	$(CMD_VERBOSE) $(CC) -c $(CFLAGS) $(INCLUDES) $< -o $@
- 
- $(SGX_LE_S_OBJS): $(TARGET)/%.o: %.S | $(TARGET)
--	$(VERBOSE) $(CC) -c $(CFLAGS) $(INCLUDES) $< -o $@
-+	$(CMD_VERBOSE) $(CC) -c $(CFLAGS) $(INCLUDES) $< -o $@
- 
- $(TARGET)/sgx_le.elf: sgx_le.lds $(SGX_LE_C_OBJS) $(SGX_LE_S_OBJS)
--	$(VERBOSE) $(LD) $(LDFLAGS) -T $^ -o $@
-+	$(CMD_VERBOSE) $(LD) $(LDFLAGS) -T $^ -o $@
- 
- $(TARGET)/sgx_le.bin: $(TARGET)/sgx_le.elf
--	$(VERBOSE) objcopy --remove-section=.got.plt -O binary $< $@
-+	$(CMD_VERBOSE) objcopy --remove-section=.got.plt -O binary $< $@
- 
- $(TARGET)/sgxsign: sgxsign.c | $(TARGET)
--	$(VERBOSE) $(CC) -Wall $(INCLUDES) -o $@ $< -lcrypto
-+	$(CMD_VERBOSE) $(CC) -Wall $(INCLUDES) -o $@ $< -lcrypto
- 
- $(TARGET)/bin2c: bin2c.c | $(TARGET)
--	$(VERBOSE) $(CC) -Wall $(INCLUDES) -o $@ $<
-+	$(CMD_VERBOSE) $(CC) -Wall $(INCLUDES) -o $@ $<
- 
- sign: $(SIGNING_KEY_PATH) $(TARGET)/sgx_le.bin $(TARGET)/sgxsign $(TARGET)/bin2c
--	$(VERBOSE) $(TARGET)/sgxsign sign $(SIGNING_KEY_PATH) $(TARGET)/sgx_le.bin $(TARGET)/sgx_le.ss $(SIGN_EXTRA)
--	$(VERBOSE) $(TARGET)/bin2c $(TARGET)/sgx_le.bin $(TARGET)/sgx_le_blob.h sgx_le_blob
--	$(VERBOSE) $(TARGET)/bin2c $(TARGET)/sgx_le.ss $(TARGET)/sgx_le_ss.h sgx_le_ss
-+	$(CMD_VERBOSE) $(TARGET)/sgxsign sign $(SIGNING_KEY_PATH) $(TARGET)/sgx_le.bin $(TARGET)/sgx_le.ss $(SIGN_EXTRA)
-+	$(CMD_VERBOSE) $(TARGET)/bin2c $(TARGET)/sgx_le.bin $(TARGET)/sgx_le_blob.h sgx_le_blob
-+	$(CMD_VERBOSE) $(TARGET)/bin2c $(TARGET)/sgx_le.ss $(TARGET)/sgx_le_ss.h sgx_le_ss
- 
- gendata: $(TARGET)/sgx_le.bin $(TARGET)/sgxsign
--	$(VERBOSE) $(TARGET)/sgxsign gendata $(TARGET)/sgx_le.bin $(SIGNING_MATERIAL) $(SIGN_EXTRA)
-+	$(CMD_VERBOSE) $(TARGET)/sgxsign gendata $(TARGET)/sgx_le.bin $(SIGNING_MATERIAL) $(SIGN_EXTRA)
- 
- usesig: $(TARGET)/sgx_le.bin $(TARGET)/sgxsign $(TARGET)/bin2c
--	$(VERBOSE) $(TARGET)/sgxsign usesig $(CSS_PUBKEY_FILE) $(TARGET)/sgx_le.bin $(CSS_SIG_FILE) $(TARGET)/sgx_le.ss $(SIGN_EXTRA)
--	$(VERBOSE) $(TARGET)/bin2c $(TARGET)/sgx_le.bin $(TARGET)/sgx_le_blob.h sgx_le_blob
--	$(VERBOSE) $(TARGET)/bin2c $(TARGET)/sgx_le.ss $(TARGET)/sgx_le_ss.h sgx_le_ss
-+	$(CMD_VERBOSE) $(TARGET)/sgxsign usesig $(CSS_PUBKEY_FILE) $(TARGET)/sgx_le.bin $(CSS_SIG_FILE) $(TARGET)/sgx_le.ss $(SIGN_EXTRA)
-+	$(CMD_VERBOSE) $(TARGET)/bin2c $(TARGET)/sgx_le.bin $(TARGET)/sgx_le_blob.h sgx_le_blob
-+	$(CMD_VERBOSE) $(TARGET)/bin2c $(TARGET)/sgx_le.ss $(TARGET)/sgx_le_ss.h sgx_le_ss
- 
- clean:
--	$(VERBOSE) rm -vrf $(TARGET) $(SIGNING_MATERIAL)
-+	$(CMD_VERBOSE) rm -vrf $(TARGET) $(SIGNING_MATERIAL)
--- 
-2.55.0
-

diff --git a/0116-pcsclient-ignore-errors-trying-to-clear-the-keyring.patch b/0116-pcsclient-ignore-errors-trying-to-clear-the-keyring.patch
new file mode 100644
index 0000000..e72739a
--- /dev/null
+++ b/0116-pcsclient-ignore-errors-trying-to-clear-the-keyring.patch
@@ -0,0 +1,55 @@
+From b241078ce780d8fe06d492dd5573afb36f1d83d1 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Thu, 4 Dec 2025 18:05:14 +0000
+Subject: [PATCH 116/122] pcsclient: ignore errors trying to clear the keyring
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+On authentication errors with PCS, an attempt is made to clear the
+keyring. This may fail if the user's login environment has no keyring
+configured. The user would have declined to store the key when first
+prompted, so there would be nothing to clear either in this case.
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ tools/PcsClientTool/lib/intelsgx/pcs.py | 16 ++++++++++++++--
+ 1 file changed, 14 insertions(+), 2 deletions(-)
+
+diff --git a/tools/PcsClientTool/lib/intelsgx/pcs.py b/tools/PcsClientTool/lib/intelsgx/pcs.py
+index e056c950..66f89d27 100644
+--- a/tools/PcsClientTool/lib/intelsgx/pcs.py
++++ b/tools/PcsClientTool/lib/intelsgx/pcs.py
+@@ -403,7 +403,13 @@ class PCS:
+         if response.status_code != 200:
+             print(str(response.content, 'utf-8'))
+             if response.status_code == 401:
+-                Credentials().set_pcs_api_key('')   #reset ApiKey
++                try:
++                    Credentials().set_pcs_api_key('')   #reset ApiKey
++                except:
++                    # If keyring is unavailable, we don't want to trigger
++                    # traceback, as the user may have declined to save
++                    # the key in the keyring earlier
++                    pass
+             return None
+ 
+         # Verify expected headers
+@@ -478,7 +484,13 @@ class PCS:
+         if response.status_code != 200:
+             print(str(response.content, 'utf-8'))
+             if response.status_code == 401:
+-                Credentials().set_pcs_api_key('')   #reset ApiKey
++                try:
++                    Credentials().set_pcs_api_key('')   #reset ApiKey
++                except:
++                    # If keyring is unavailable, we don't want to trigger
++                    # traceback, as the user may have declined to save
++                    # the key in the keyring earlier
++                    pass
+             return None
+ 
+         # Verify expected headers
+-- 
+2.55.0
+

diff --git a/0117-qgs-add-m-MODE-parameter-for-UNIX-socket-mode.patch b/0117-qgs-add-m-MODE-parameter-for-UNIX-socket-mode.patch
deleted file mode 100644
index 1427173..0000000
--- a/0117-qgs-add-m-MODE-parameter-for-UNIX-socket-mode.patch
+++ /dev/null
@@ -1,94 +0,0 @@
-From b9104a5ce6234ff22c802e333224fcbbaf70fea6 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Fri, 2 May 2025 14:48:24 +0100
-Subject: [PATCH 117/127] qgs: add -m=MODE parameter for UNIX socket mode
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The UNIX socket mode default is controlled by the process umask, but it
-can be desirable to override this to open up the socket mode, while
-keeping the umask restrictive.
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- .../quote_wrapper/qgs/server_main.cpp         | 33 +++++++++++++++++--
- 1 file changed, 31 insertions(+), 2 deletions(-)
-
-diff --git a/QuoteGeneration/quote_wrapper/qgs/server_main.cpp b/QuoteGeneration/quote_wrapper/qgs/server_main.cpp
-index 62764d04..bef9e0ec 100644
---- a/QuoteGeneration/quote_wrapper/qgs/server_main.cpp
-+++ b/QuoteGeneration/quote_wrapper/qgs/server_main.cpp
-@@ -83,9 +83,10 @@ int main(int argc, const char* argv[])
-     bool socket_based_communication = true; // if port is not defined in config file and command line, use socket based communication
-     unsigned long int port = MAX_PORT_NUMBER + 1; // accepted port range 0..65535 (0xFFFF)
-     unsigned long int num_threads = 0;
-+    unsigned long int mode = 0;
-     char *endptr = NULL;
-     if (argc > 4) {
--        cout << "Usage: " << argv[0] << " [--no-daemon] [-p=port_number] [-n=number_threads] [--verbose] [--debug]"
-+        cout << "Usage: " << argv[0] << " [--no-daemon] [-p=port_number] [-m=unix_socket_mode] [-n=number_threads] [--verbose] [--debug]"
-              << endl;
-         exit(1);
-     }
-@@ -135,6 +136,15 @@ int main(int argc, const char* argv[])
-                          << QGS_CONFIG_FILE << endl;
-                     exit(1);
-                 }
-+            } else if (!mode && name.compare("socket_mode") == 0) {
-+                errno = 0;
-+                endptr = NULL;
-+                mode = strtoul(value, &endptr, 8);
-+                if (errno || strlen(endptr) || (mode > UINT_MAX)) {
-+                    cout << "Please input valid socket mode in "
-+                         << QGS_CONFIG_FILE << endl;
-+                    exit(1);
-+                }
-             }
-             // ignore unrecognized parameters
-         }
-@@ -173,6 +183,19 @@ int main(int argc, const char* argv[])
-             cout << "port number [" << port << "] found in cmdline" << endl;
-             socket_based_communication = false;
-             continue;
-+        } else if (strncmp(argv[i], "-m=", 3 ) == 0) {
-+            if (strspn(argv[i] + 3, "0123456789") != strlen(argv[i] + 3)) {
-+                cout << "Please input valid socket mode" << endl;
-+                exit(1);
-+            }
-+            errno = 0;
-+            mode = strtoul(argv[i] + 3, &endptr, 8);
-+            if (errno || strlen(endptr) || (mode > UINT_MAX) ) {
-+                cout << "Please input valid socket mode" << endl;
-+                exit(1);
-+            }
-+            cout << "socket mode [" << oct << mode << dec << "] found in cmdline" << endl;
-+            continue;
-         } else if (strncmp(argv[i], "-n=", 3) == 0) {
-             if (strspn(argv[i] + 3, "0123456789") != strlen(argv[i] + 3)) {
-                 cout << "Please input valid thread number" << endl;
-@@ -187,7 +210,7 @@ int main(int argc, const char* argv[])
-             cout << "thread number [" << num_threads << "] found in cmdline" << endl;
-             continue;
-         } else {
--            cout << "Usage: " << argv[0] << " [--no-daemon] [-p=port_number] [-n=number_threads] [--verbose] [--debug]"
-+            cout << "Usage: " << argv[0] << " [--no-daemon] [-p=port_number] [-m=unix_socket_mode] [-n=number_threads] [--verbose] [--debug]"
-                 << endl;
-             exit(1);
-         }
-@@ -236,6 +259,12 @@ int main(int argc, const char* argv[])
-             }
-             QGS_LOG_INFO("About to create QgsServer\n");
-             server = new QgsServer(io_service, ep, (uint8_t)num_threads);
-+            /* Allow mode to be determined by umask by default,
-+             * overriding only if an explicit mode is requested
-+             */
-+            if (socket_based_communication && mode != 0) {
-+                chmod(QGS_UNIX_SOCKET_FILE, (mode_t)mode);
-+            }
-             QGS_LOG_INFO("About to start main loop\n");
-             io_service.run();
-             QGS_LOG_INFO("Quit main loop\n");
--- 
-2.55.0
-

diff --git a/0117-use-system-gtest-gmock-libraries.patch b/0117-use-system-gtest-gmock-libraries.patch
new file mode 100644
index 0000000..6b664e4
--- /dev/null
+++ b/0117-use-system-gtest-gmock-libraries.patch
@@ -0,0 +1,127 @@
+From 9d6c729502d4258ba8dfad1aa061edebd64c6ac4 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Thu, 29 Jan 2026 15:26:38 +0000
+Subject: [PATCH 117/122] use system gtest / gmock libraries
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ ae/QvE/Test/Makefile                   |  7 ++++---
+ external/Makefile                      | 26 +-------------------------
+ tools/SGXPlatformRegistration/Makefile | 10 +++++-----
+ 3 files changed, 10 insertions(+), 33 deletions(-)
+
+diff --git a/ae/QvE/Test/Makefile b/ae/QvE/Test/Makefile
+index c6cc171d..c8b8ce24 100644
+--- a/ae/QvE/Test/Makefile
++++ b/ae/QvE/Test/Makefile
+@@ -14,7 +14,8 @@ EXTERNAL_PATH := $(MKFILE_PATH)/../../../external
+ BUILD_PATH := $(MKFILE_PATH)/build
+ DEST_PATH := $(BUILD_PATH)/release
+ APPRAISAL_COMMON_PATH := $(MKFILE_PATH)/../../appraisal/common
+-GTEST_PATH := $(EXTERNAL_PATH)/gtest/build
++GTEST_CFLAGS := $(shell pkg-config --cflags gtest gmock gmock_main)
++GTEST_LDFLAGS := $(shell pkg-config --libs gtest gmock gmock_main)
+ 
+ SRC_PATH := $(MKFILE_PATH)/../qve
+ TEST_PATH := $(MKFILE_PATH)/src
+@@ -29,7 +30,7 @@ INCLUDE := -I$(INCLUDE_PATH) -I$(SRC_PATH) -I$(MOCK_PATH) $(shell pkg-config --c
+ 					-isystem$(EXTERNAL_PATH)/jwt-cpp/include
+ 
+ TESTS_INCLUDE := -I$(TEST_PATH) -I$(SRC_PATH) -I$(MOCK_PATH)\
+-					-isystem$(GTEST_PATH)/include
++					$(GTEST_CFLAGS)
+ 
+ QVE_BUILD_TYPE :=
+ ifeq ($(DEBUG), 1)
+@@ -53,7 +54,7 @@ OBJS_MOCK := $(patsubst $(MOCK_PATH)/%.cpp,$(OBJ_MOCK_PATH)/%.o, $(SRC_MOCK))
+ OBJ_SRC_PATH := $(OBJ_PATH)/qve
+ OBJS_SRC := $(OBJ_SRC_PATH)/$(notdir $(SRC_QVE_LOGIC:.cpp=.o))
+ 
+-LD_GTEST := -L$(GTEST_PATH)/lib -lgtest -lgmock_main -lgmock
++LD_GTEST := $(GTEST_LDFLAGS)
+ LDFLAGS := $(shell pkg-config --libs libcrypto) -lpthread -ldl
+ 
+ CXX_WARNINGS := -Wall -Wextra -Winit-self -Wpointer-arith -Wreturn-type -Waddress -Wsequence-point -Wformat-security -Wmissing-include-dirs -Wfloat-equal -Wundef -Wshadow -Wcast-align -Wconversion -Wredundant-decls
+diff --git a/external/Makefile b/external/Makefile
+index e7faf4f8..ca27cac9 100644
+--- a/external/Makefile
++++ b/external/Makefile
+@@ -29,31 +29,7 @@
+ #
+ #
+ 
+-GTEST_SRC_PATH := gtest/src
+-GTEST_BUILD_PATH := gtest/build
+-GTEST_CMAKE_BUILD_PATH := gtest/cmake-build
+-
+ .PHONY: all clean
+ 
+-all: post-build
+-
+-pre-build:
+-	mkdir -p $(GTEST_BUILD_PATH)
+-	mkdir -p $(GTEST_CMAKE_BUILD_PATH)
+-
+-
+-post-build: main-build
+-	cp -r $(GTEST_SRC_PATH)/googletest/include $(GTEST_BUILD_PATH)
+-	cp -r $(GTEST_SRC_PATH)/googlemock/include/gmock $(GTEST_BUILD_PATH)/include/
+-	cp -r $(GTEST_CMAKE_BUILD_PATH)/lib $(GTEST_BUILD_PATH)
+-
+-main-build: pre-build
+-	cmake -S ./gtest/src/ -B $(GTEST_CMAKE_BUILD_PATH)
+-	cmake --build $(GTEST_CMAKE_BUILD_PATH) --parallel
+-
++all:
+ clean:
+-	@if [ -f "$(GTEST_CMAKE_BUILD_PATH)"/Makefile ]; then \
+-	  $(MAKE) clean -C $(GTEST_CMAKE_BUILD_PATH); \
+-	fi
+-	rm -rf $(GTEST_CMAKE_BUILD_PATH)/
+-	rm -rf $(GTEST_BUILD_PATH)/
+diff --git a/tools/SGXPlatformRegistration/Makefile b/tools/SGXPlatformRegistration/Makefile
+index 9bc8870e..b4536cc9 100644
+--- a/tools/SGXPlatformRegistration/Makefile
++++ b/tools/SGXPlatformRegistration/Makefile
+@@ -36,7 +36,8 @@ EXTERNAL_PATH := $(MKFILE_PATH)/../../external
+ DEST_PATH := $(BUILD_PATH)/release
+ INSTALL_PATH := $(DEST_PATH)/installer
+ 
+-GTEST_PATH := $(EXTERNAL_PATH)/gtest/build
++GTEST_CFLAGS := $(shell pkg-config --cflags gtest gmock gmock_main)
++GTEST_LDFLAGS := $(shell pkg-config --libs gtest gmock gmock_main)
+ TEST_PATH := $(MKFILE_PATH)/test
+ 
+ ifdef DEBUG
+@@ -67,8 +68,7 @@ INCLUDE += -I$(MANAGEMENT_PATH)/inc
+ INCLUDE += -I$(NETWORK_PATH)/inc
+ INCLUDE += -I$(UEFI_PATH)/inc
+ 
+-GTEST_INCLUDE := -isystem$(GTEST_PATH)/include
+-TESTS_INCLUDE := -I$(TEST_PATH) -I$(TEST_PATH)/mocks $(GTEST_INCLUDE)
++TESTS_INCLUDE := -I$(TEST_PATH) -I$(TEST_PATH)/mocks $(GTEST_CFLAGS)
+ 
+ SRC_AGENT := $(wildcard $(AGENT_PATH)/src/*cpp)
+ SRC_COMMON := $(wildcard $(COMMON_PATH)/src/*cpp)
+@@ -116,7 +116,7 @@ LDFLAGS_SO := $(LDFLAGS) -shared -Wl,-z,relro,-z,now,-z,noexecstack
+ LD_REGI_APP := $(LDFLAGS) -L$(LIB_PATH) -Wl,-Bstatic -lmpa_registration -Wl,-Bdynamic -lmpa_network -lmpa_uefi
+ LD_MANAGE_APP := $(LDFLAGS) -L$(LIB_PATH) -Wl,-Bstatic -lmpa_management -lmpa_registration -Wl,-Bdynamic -lmpa_uefi
+ 
+-LD_GTEST := $(LDFLAGS) -L$(GTEST_PATH)/lib -lgtest -lgmock_main -lgmock -lpthread
++LD_GTEST := $(LDFLAGS) $(GTEST_LDFLAGS) -lpthread
+ 
+ CXX_WARNINGS := -Wall -Wextra -Winit-self -Wpointer-arith -Wreturn-type -Waddress -Wsequence-point -Wformat-security \
+ 				-Wmissing-include-dirs -Wfloat-equal -Wundef -Wshadow -Wcast-align -Wconversion -Wredundant-decls
+@@ -267,5 +267,5 @@ $(OBJ_MPA_MANAGE_APP_PATH)/%.o: $(MPA_MANAGE_PATH)/src/%.cpp
+ 	@echo "$<"
+ 
+ $(OBJ_TEST_PATH)/%.o: $(TEST_PATH)/%.cpp
+-	@$(CXX) -c $(CXXFLAGS) $(INCLUDE) $(GTEST_INCLUDE)  $< -o $@
++	@$(CXX) -c $(CXXFLAGS) $(INCLUDE) $(GTEST_CFLAGS)  $< -o $@
+ 	@echo "$<"
+-- 
+2.55.0
+

diff --git a/0118-Disable-PcsClientTool-package-build.patch b/0118-Disable-PcsClientTool-package-build.patch
new file mode 100644
index 0000000..080a569
--- /dev/null
+++ b/0118-Disable-PcsClientTool-package-build.patch
@@ -0,0 +1,30 @@
+From dc27f4ffdb9d64dfed9a0566b238cc2990c5c181 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Mon, 2 Feb 2026 16:12:50 +0000
+Subject: [PATCH 118/122] Disable PcsClientTool package build
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ tools/PcsClientTool/Makefile | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/tools/PcsClientTool/Makefile b/tools/PcsClientTool/Makefile
+index 06092b38..48abed9a 100644
+--- a/tools/PcsClientTool/Makefile
++++ b/tools/PcsClientTool/Makefile
+@@ -7,7 +7,8 @@
+ .NOTPARALLEL:
+ default: all
+ 
+-all: deb_sgx_pcs_client_pkg rpm_sgx_pcs_client_pkg
++#all: deb_sgx_pcs_client_pkg rpm_sgx_pcs_client_pkg
++all:
+ 
+ .PHONY: deb_sgx_pcs_client_pkg
+ deb_sgx_pcs_client_pkg:
+-- 
+2.55.0
+

diff --git a/0118-pcsclient-make-keyring-module-optional.patch b/0118-pcsclient-make-keyring-module-optional.patch
deleted file mode 100644
index 798aaff..0000000
--- a/0118-pcsclient-make-keyring-module-optional.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-From 1055a7f1f6b9cb2f55784ae52d29677a828ca93c Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Thu, 4 Dec 2025 13:31:54 +0000
-Subject: [PATCH 118/127] pcsclient: make 'keyring' module optional
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-This is not available in some distros, and since it is merely a
-convenience to avoid repeated password entry, it can be made
-optional.
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- .../PcsClientTool/lib/intelsgx/credential.py  | 29 +++++++++++--------
- 1 file changed, 17 insertions(+), 12 deletions(-)
-
-diff --git a/tools/PcsClientTool/lib/intelsgx/credential.py b/tools/PcsClientTool/lib/intelsgx/credential.py
-index fa1e38d0..e0e32ddb 100644
---- a/tools/PcsClientTool/lib/intelsgx/credential.py
-+++ b/tools/PcsClientTool/lib/intelsgx/credential.py
-@@ -1,4 +1,7 @@
--import keyring
-+try:
-+    import keyring
-+except:
-+    keyring = None
- import getpass
- 
- class Credentials:
-@@ -7,11 +10,12 @@ class Credentials:
- 
-     def get_pcs_api_key(self):
-         pcs_api_key = ""
--        try:
--            print("Please note: A prompt may appear asking for your keyring password to access stored credentials.")
--            pcs_api_key = keyring.get_password(self.APPNAME, self.KEY_PCS_APIKEY)
--        except keyring.errors.KeyringError as ke:
--            pcs_api_key = ""
-+        if keyring is not None:
-+            try:
-+                print("Please note: A prompt may appear asking for your keyring password to access stored credentials.")
-+                pcs_api_key = keyring.get_password(self.APPNAME, self.KEY_PCS_APIKEY)
-+            except keyring.errors.KeyringError as ke:
-+                pcs_api_key = ""
-         
-         while pcs_api_key is None or pcs_api_key == '':
-             pcs_api_key = getpass.getpass(prompt="Please input ApiKey for Intel PCS:")
-@@ -24,10 +28,11 @@ class Credentials:
-         return pcs_api_key
- 
-     def set_pcs_api_key(self, apikey):
--        try:
--            print("Please note: A prompt may appear asking for your keyring password to access stored credentials.")
--            keyring.set_password(self.APPNAME, self.KEY_PCS_APIKEY, apikey)
--        except keyring.errors.PasswordSetError as ke:
--            print("Failed to store PCS API key.")
--            return False
-+        if keyring is not None:
-+            try:
-+                print("Please note: A prompt may appear asking for your keyring password to access stored credentials.")
-+                keyring.set_password(self.APPNAME, self.KEY_PCS_APIKEY, apikey)
-+            except keyring.errors.PasswordSetError as ke:
-+                print("Failed to store PCS API key.")
-+                return False
-         return True
--- 
-2.55.0
-

diff --git a/0119-disable-building-of-WASM-SIMDE-code.patch b/0119-disable-building-of-WASM-SIMDE-code.patch
new file mode 100644
index 0000000..984c3c6
--- /dev/null
+++ b/0119-disable-building-of-WASM-SIMDE-code.patch
@@ -0,0 +1,33 @@
+From da6ecddad2909f2b98200e78fee279ce3cfa9c35 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Tue, 3 Feb 2026 11:40:10 +0000
+Subject: [PATCH 119/122] disable building of WASM SIMDE code
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The build system tries to git clone the simde project which is not
+possible in koji. Disable until its possible to use distro provided
+headers.
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ QuoteVerification/appraisal/qal/Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/QuoteVerification/appraisal/qal/Makefile b/QuoteVerification/appraisal/qal/Makefile
+index 76aec839..a7f1f1f6 100644
+--- a/QuoteVerification/appraisal/qal/Makefile
++++ b/QuoteVerification/appraisal/qal/Makefile
+@@ -29,7 +29,7 @@ QAL_Link_Flags := $(COMMON_LDFLAGS) -L$(WARM_Lib_Path) -lvmlib  -ldl -lm -lpthre
+                 $(shell pkg-config --libs libcrypto) \
+                 -Wl,--gc-sections -Wl,--version-script=sgx_dcap_qal.lds
+ 
+-WASM_CONFIG ?= -DCMAKE_BUILD_TYPE=Release
++WASM_CONFIG ?= -DCMAKE_BUILD_TYPE=Release -DWAMR_BUILD_SIMD=0 -DWAMR_BUILD_LIB_SIMDE=0
+ ifeq ($(DEBUG), 1)
+     WASM_CONFIG := -DCMAKE_BUILD_TYPE=Debug
+ 	QAL_Cpp_Flags += -fsanitize=undefined
+-- 
+2.55.0
+

diff --git a/0119-pcsclient-convert-from-asn1-to-pyasn1-python-module.patch b/0119-pcsclient-convert-from-asn1-to-pyasn1-python-module.patch
deleted file mode 100644
index 8cb08b8..0000000
--- a/0119-pcsclient-convert-from-asn1-to-pyasn1-python-module.patch
+++ /dev/null
@@ -1,341 +0,0 @@
-From a01581a9e29e919d2af9ee1781d70d725619937d Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Thu, 4 Dec 2025 13:54:19 +0000
-Subject: [PATCH 119/127] pcsclient: convert from asn1 to pyasn1 python module
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The pyasn1 module decodes using a formal object model so is more robust,
-as well as being more widely available in distros.
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- tools/PcsClientTool/lib/intelsgx/pckcert.py | 267 +++++++++++++-------
- 1 file changed, 177 insertions(+), 90 deletions(-)
-
-diff --git a/tools/PcsClientTool/lib/intelsgx/pckcert.py b/tools/PcsClientTool/lib/intelsgx/pckcert.py
-index 97aa2783..eaed331b 100644
---- a/tools/PcsClientTool/lib/intelsgx/pckcert.py
-+++ b/tools/PcsClientTool/lib/intelsgx/pckcert.py
-@@ -1,76 +1,171 @@
- from cryptography import x509
- from cryptography.x509.oid import ObjectIdentifier
- from cryptography.hazmat.backends import default_backend
--import asn1
--import struct
-+import pyasn1
-+from pyasn1.codec.der.decoder import decode as der_decoder
-+from pyasn1.type import namedtype
-+from pyasn1.type import namedval
-+from pyasn1.type import opentype
-+from pyasn1.type import univ
-+
-+
-+id_cdp_extensionStr = '2.5.29.31'
-+id_ce_sGXExtensionsStr = '1.2.840.113741.1.13.1'
-+
-+id_ce_sGXExtensions = univ.ObjectIdentifier(id_ce_sGXExtensionsStr)
-+
-+id_ce_sGXExtensions_pPID = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".1")
-+id_ce_sGXExtensions_tCB = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2")
-+id_ce_sGXExtensions_pCE_ID = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".3")
-+id_ce_sGXExtensions_fMSPC = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".4")
-+id_ce_sGXExtensions_sGXType = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".5")
-+id_ce_sGXExtensions_platformInstanceID = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".6")
-+id_ce_sGXExtensions_configuration = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".7")
-+
-+id_ce_tCB_sGXTCBComp01SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.1")
-+id_ce_tCB_sGXTCBComp02SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.2")
-+id_ce_tCB_sGXTCBComp03SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.3")
-+id_ce_tCB_sGXTCBComp04SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.4")
-+id_ce_tCB_sGXTCBComp05SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.5")
-+id_ce_tCB_sGXTCBComp06SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.6")
-+id_ce_tCB_sGXTCBComp07SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.7")
-+id_ce_tCB_sGXTCBComp08SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.8")
-+id_ce_tCB_sGXTCBComp09SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.9")
-+id_ce_tCB_sGXTCBComp10SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.10")
-+id_ce_tCB_sGXTCBComp11SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.11")
-+id_ce_tCB_sGXTCBComp12SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.12")
-+id_ce_tCB_sGXTCBComp13SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.13")
-+id_ce_tCB_sGXTCBComp14SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.14")
-+id_ce_tCB_sGXTCBComp15SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.15")
-+id_ce_tCB_sGXTCBComp16SVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.16")
-+id_ce_tCB_pCESVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.17")
-+id_ce_tCB_cPUSVN = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".2.18")
-+
-+id_ce_configuration_dynamicPlatform = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".7.1")
-+id_ce_configuration_cachedKeys = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".7.2")
-+id_ce_configuration_sMTEnabled = univ.ObjectIdentifier(id_ce_sGXExtensionsStr + ".7.3")
-+
-+
-+class SgxExtensionPPID(univ.OctetString):
-+	pass
-+
-+
-+class SgxCPUSVN(univ.OctetString):
-+	pass
-+
-+
-+tcbAttributeMap = {
-+	id_ce_tCB_sGXTCBComp01SVN: univ.Integer(),
-+	id_ce_tCB_sGXTCBComp02SVN: univ.Integer(),
-+	id_ce_tCB_sGXTCBComp03SVN: univ.Integer(),
-+	id_ce_tCB_sGXTCBComp04SVN: univ.Integer(),
-+	id_ce_tCB_sGXTCBComp05SVN: univ.Integer(),
-+	id_ce_tCB_sGXTCBComp06SVN: univ.Integer(),
-+	id_ce_tCB_sGXTCBComp07SVN: univ.Integer(),
-+	id_ce_tCB_sGXTCBComp08SVN: univ.Integer(),
-+	id_ce_tCB_sGXTCBComp09SVN: univ.Integer(),
-+	id_ce_tCB_sGXTCBComp10SVN: univ.Integer(),
-+	id_ce_tCB_sGXTCBComp11SVN: univ.Integer(),
-+	id_ce_tCB_sGXTCBComp12SVN: univ.Integer(),
-+	id_ce_tCB_sGXTCBComp13SVN: univ.Integer(),
-+	id_ce_tCB_sGXTCBComp14SVN: univ.Integer(),
-+	id_ce_tCB_sGXTCBComp15SVN: univ.Integer(),
-+	id_ce_tCB_sGXTCBComp16SVN: univ.Integer(),
-+	id_ce_tCB_pCESVN: univ.Integer(),
-+	id_ce_tCB_cPUSVN: SgxCPUSVN(),
-+}
-+
-+
-+class SgxExtensionTCBEntry(univ.Sequence):
-+	componentType = namedtype.NamedTypes(
-+		namedtype.NamedType('tCBId', univ.ObjectIdentifier()),
-+		namedtype.NamedType('tCBValue', univ.Any(),
-+				    openType=opentype.OpenType('tCBId',
-+							       tcbAttributeMap))
-+	)
-+
-+
-+class SgxExtensionTCB(univ.SequenceOf):
-+	componentType = SgxExtensionTCBEntry()
-+
-+
-+class SgxExtensionPCEID(univ.OctetString):
-+	pass
-+
-+
-+class SgxExtensionFMSPC(univ.OctetString):
-+	pass
-+
-+
-+class SgxExtensionSGXType(univ.Enumerated):
-+	namedValues = namedval.NamedValues(
-+		('standard', 0),
-+		('scalable', 1),
-+		('scalableWithIntegrity', 2)
-+	)
-+
-+
-+class SgxExtensionPlatformInstanceID(univ.OctetString):
-+	pass
-+
-+
-+configurationAttributeMap = {
-+	id_ce_configuration_dynamicPlatform: univ.Boolean(),
-+	id_ce_configuration_cachedKeys: univ.Boolean(),
-+	id_ce_configuration_sMTEnabled: univ.Boolean(),
-+}
-+
-+
-+class SgxExtensionConfigurationEntry(univ.Sequence):
-+	componentType = namedtype.NamedTypes(
-+		namedtype.NamedType('configurationId', univ.ObjectIdentifier()),
-+		namedtype.NamedType('configurationValue', univ.Any(),
-+				    openType=opentype.OpenType('configurationId',
-+							       configurationAttributeMap))
-+	)
-+
-+
-+class SgxExtensionConfiguration(univ.SequenceOf):
-+	componentType = SgxExtensionConfigurationEntry()
-+
-+
-+extensionAttributeMap = {
-+	id_ce_sGXExtensions_pPID: SgxExtensionPPID(),
-+	id_ce_sGXExtensions_tCB: SgxExtensionTCB(),
-+	id_ce_sGXExtensions_pCE_ID: SgxExtensionPCEID(),
-+	id_ce_sGXExtensions_fMSPC: SgxExtensionFMSPC(),
-+	id_ce_sGXExtensions_sGXType: SgxExtensionSGXType(),
-+	id_ce_sGXExtensions_platformInstanceID: SgxExtensionPlatformInstanceID(),
-+	id_ce_sGXExtensions_configuration: SgxExtensionConfiguration(),
-+}
-+
-+
-+class SgxExtensionEntry(univ.Sequence):
-+	componentType = namedtype.NamedTypes(
-+		namedtype.NamedType('sGXExtensionId', univ.ObjectIdentifier()),
-+		namedtype.NamedType('sGXExtensionValue', univ.Any(),
-+				    openType=opentype.OpenType('sGXExtensionId',
-+							       extensionAttributeMap))
-+	)
-+
-+
-+class SgxExtension(univ.SequenceOf):
-+	componentType = SgxExtensionEntry()
- 
--# This is a very simplistic ASN1 parser. Production code should use
--# something like ans1c to build a parser from the ASN1 spec file so
--# that it can check and enforce data validity.
- 
- class SgxPckCertificateExtensions:
--	id_ce_sGXExtensions = '1.2.840.113741.1.13.1'
--	id_ce_sGXExtensions_tCB= id_ce_sGXExtensions+".2"
--	id_ce_sGXExtensions_configuration= id_ce_sGXExtensions+".7"
--	id_cdp_extension = '2.5.29.31'
--	decoder= asn1.Decoder()
--	_data= {}
--	ca= ''
--	oids= {
--		id_ce_sGXExtensions: 'sGXExtensions',
--		id_ce_sGXExtensions+".1": 'pPID',
--		id_ce_sGXExtensions_tCB: 'tCB',
--		id_ce_sGXExtensions_tCB+".1": 'tCB-sGXTCBComp01SVN',
--		id_ce_sGXExtensions_tCB+".2": 'tCB-sGXTCBComp02SVN',
--		id_ce_sGXExtensions_tCB+".3": 'tCB-sGXTCBComp03SVN',
--		id_ce_sGXExtensions_tCB+".4": 'tCB-sGXTCBComp04SVN',
--		id_ce_sGXExtensions_tCB+".5": 'tCB-sGXTCBComp05SVN',
--		id_ce_sGXExtensions_tCB+".6": 'tCB-sGXTCBComp06SVN',
--		id_ce_sGXExtensions_tCB+".7": 'tCB-sGXTCBComp07SVN',
--		id_ce_sGXExtensions_tCB+".8": 'tCB-sGXTCBComp08SVN',
--		id_ce_sGXExtensions_tCB+".9": 'tCB-sGXTCBComp09SVN',
--		id_ce_sGXExtensions_tCB+".10": 'tCB-sGXTCBComp10SVN',
--		id_ce_sGXExtensions_tCB+".11": 'tCB-sGXTCBComp11SVN',
--		id_ce_sGXExtensions_tCB+".12": 'tCB-sGXTCBComp12SVN',
--		id_ce_sGXExtensions_tCB+".13": 'tCB-sGXTCBComp13SVN',
--		id_ce_sGXExtensions_tCB+".14": 'tCB-sGXTCBComp14SVN',
--		id_ce_sGXExtensions_tCB+".15": 'tCB-sGXTCBComp15SVN',
--		id_ce_sGXExtensions_tCB+".16": 'tCB-sGXTCBComp16SVN',
--		id_ce_sGXExtensions_tCB+".17": 'tCB-pCESVN',
--		id_ce_sGXExtensions_tCB+".18": 'tCB-cPUSVN',
--		id_ce_sGXExtensions+".3": 'pCE-ID',
--		id_ce_sGXExtensions+".4": 'fMSPC',
--		id_ce_sGXExtensions+".5": 'sGXType',
--		id_ce_sGXExtensions+".6": 'platformInstanceID',
--		id_ce_sGXExtensions_configuration: 'configuration',
--		id_ce_sGXExtensions_configuration+".1": 'dynamicPlatform',
--		id_ce_sGXExtensions_configuration+".2": 'cachedKeys',
--		id_ce_sGXExtensions_configuration+".3": 'sMTEnabled'
--	}
--
--	def _parse_asn1(self, d, oid, lnr=asn1.Numbers.ObjectIdentifier):
--		tag= self.decoder.peek()
--		while tag:
--			if tag.typ == asn1.Types.Constructed:
--				self.decoder.enter()
--				if ( lnr == asn1.Numbers.ObjectIdentifier ):
--					d[self.oids[oid]]= {}
--					self._parse_asn1(d[self.oids[oid]], oid, tag.nr)
--				else:
--					self._parse_asn1(d, oid, tag.nr)
--				self.decoder.leave()
--			elif tag.typ == asn1.Types.Primitive:
--				tag, value= self.decoder.read()
--				if ( tag.nr == asn1.Numbers.ObjectIdentifier ):
--					oid= value
--				else:
--					d[self.oids[oid]]= value
--			lnr= tag.nr
--			tag= self.decoder.peek()
--		return
-+
-+	def __init__(self):
-+		self.ca= ''
-+		self._data= None
-+
-+	def _parse_asn1(self, extensionData):
-+		parsed, extra= der_decoder(extensionData,
-+					   asn1Spec=SgxExtension(),
-+					   decodeOpenTypes=True)
-+		return parsed
- 
- 	def parse_pem_certificate(self, pem):
--		self._data= {}
- 		cert= x509.load_pem_x509_certificate(pem, default_backend())
- 		issuerCN = cert.issuer.rfc4514_string()
- 		if (issuerCN.find('Processor') != -1) :
-@@ -81,63 +176,55 @@ class SgxPckCertificateExtensions:
- 			self.ca = None
- 		
- 		sgxext= cert.extensions.get_extension_for_oid(
--			ObjectIdentifier(self.id_ce_sGXExtensions)
-+			ObjectIdentifier(id_ce_sGXExtensionsStr)
- 		)
- 
--		self.decoder.start(sgxext.value.value)
--		self._parse_asn1(self._data, self.id_ce_sGXExtensions)
-+		self._data= self._parse_asn1(sgxext.value.value)
- 
- 	def get_root_ca_crl(self, pem):
--		self._data= {}
- 		cert= x509.load_pem_x509_certificate(pem, default_backend())
- 		cdpext= cert.extensions.get_extension_for_oid(
--			ObjectIdentifier(self.id_cdp_extension)
-+			ObjectIdentifier(id_cdp_extensionStr)
- 		)
- 
- 		return getattr(getattr(cdpext.value[0], "_full_name")[0], "value")
- 
--	def data(self, field=None):
--		if 'sGXExtensions' not in self._data:
--			return None
--
--		d= self._data['sGXExtensions']
--
--		if field:
--			if field in d:
--				return d[field]
-+	def data(self, field):
-+		if self._data is None:
- 			return None
- 
--		return d
-+		ent = list(filter(lambda e: e['sGXExtensionId'] == field, self._data))[0]
-+		return ent['sGXExtensionValue']
- 
- 	def _hex_data(self, field):
- 		val= self.data(field)
- 		if val is None:
- 			return None
--		return val.hex()
-+		return bytes(val).hex()
- 
- 	# Commonly-needed data fields
- 	#------------------------------
- 
- 	def get_fmspc(self):
--		return self._hex_data('fMSPC')
-+		return self._hex_data(id_ce_sGXExtensions_fMSPC)
- 
- 	def get_ca(self):
- 		return self.ca
- 
- 	def get_tcbm(self):
--		tcb= self.data('tCB')
-+		tcb= self.data(id_ce_sGXExtensions_tCB)
- 		if tcb is None:
- 			return None
--		return tcb['tCB-cPUSVN'].hex() + self.get_pcesvn()
-+		ent= list(filter(lambda e: e['tCBId'] == id_ce_tCB_cPUSVN, tcb))[0]
-+		return bytes(ent["tCBValue"]).hex() + self.get_pcesvn()
- 
- 	def get_pceid(self):
--		return self._hex_data('pCE-ID')
-+		return self._hex_data(id_ce_sGXExtensions_pCE_ID)
- 
- 	def get_ppid(self):
--		return self._hex_data('pPID')
-+		return self._hex_data(id_ce_sGXExtensions_pPID)
- 
- 	def get_pcesvn(self):
--		tcb= self.data('tCB')
--		# pCESVN should be packed little-endian
--		pcesvn= struct.pack('<H', tcb['tCB-pCESVN'])
--		return pcesvn.hex()
-+		tcb= self.data(id_ce_sGXExtensions_tCB)
-+		ent= list(filter(lambda e: e['tCBId'] == id_ce_tCB_pCESVN, tcb))[0]
-+		return int(ent["tCBValue"]).to_bytes(2, byteorder='little').hex()
--- 
-2.55.0
-

diff --git a/0120-ensure-build-terminates-if-prepare_sgxssl.sh-fails.patch b/0120-ensure-build-terminates-if-prepare_sgxssl.sh-fails.patch
new file mode 100644
index 0000000..f8b7a44
--- /dev/null
+++ b/0120-ensure-build-terminates-if-prepare_sgxssl.sh-fails.patch
@@ -0,0 +1,33 @@
+From 378c4a0e8580b3a5ac05dae218b07c54db084a21 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Wed, 25 Mar 2026 15:54:42 +0000
+Subject: [PATCH 120/122] ensure build terminates if prepare_sgxssl.sh fails
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The prepare_sgxssl.sh script ignores exit status from all
+commands it runs, so if 'make' fails to build the sgxssl
+code the caller will still assume all is well.
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ QuoteVerification/prepare_sgxssl.sh | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/QuoteVerification/prepare_sgxssl.sh b/QuoteVerification/prepare_sgxssl.sh
+index 5427ed4f..f65a6af4 100755
+--- a/QuoteVerification/prepare_sgxssl.sh
++++ b/QuoteVerification/prepare_sgxssl.sh
+@@ -5,6 +5,8 @@
+ # SPDX-License-Identifier: BSD-3-Clause
+ #
+ 
++set -e
++
+ ARG1=${1:-build}
+ top_dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
+ sgxssl_dir=$top_dir/sgxssl
+-- 
+2.55.0
+

diff --git a/0120-pcsclient-ignore-errors-trying-to-clear-the-keyring.patch b/0120-pcsclient-ignore-errors-trying-to-clear-the-keyring.patch
deleted file mode 100644
index 5907263..0000000
--- a/0120-pcsclient-ignore-errors-trying-to-clear-the-keyring.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From 5368f45e784a42a837523916667d045b0680f23d Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Thu, 4 Dec 2025 18:05:14 +0000
-Subject: [PATCH 120/127] pcsclient: ignore errors trying to clear the keyring
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-On authentication errors with PCS, an attempt is made to clear the
-keyring. This may fail if the user's login environment has no keyring
-configured. The user would have declined to store the key when first
-prompted, so there would be nothing to clear either in this case.
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- tools/PcsClientTool/lib/intelsgx/pcs.py | 16 ++++++++++++++--
- 1 file changed, 14 insertions(+), 2 deletions(-)
-
-diff --git a/tools/PcsClientTool/lib/intelsgx/pcs.py b/tools/PcsClientTool/lib/intelsgx/pcs.py
-index 8fd28e2b..93f1132b 100644
---- a/tools/PcsClientTool/lib/intelsgx/pcs.py
-+++ b/tools/PcsClientTool/lib/intelsgx/pcs.py
-@@ -404,7 +404,13 @@ class PCS:
-         if response.status_code != 200:
-             print(str(response.content, 'utf-8'))
-             if response.status_code == 401:
--                Credentials().set_pcs_api_key('')   #reset ApiKey
-+                try:
-+                    Credentials().set_pcs_api_key('')   #reset ApiKey
-+                except:
-+                    # If keyring is unavailable, we don't want to trigger
-+                    # traceback, as the user may have declined to save
-+                    # the key in the keyring earlier
-+                    pass
-             return None
- 
-         # Verify expected headers
-@@ -479,7 +485,13 @@ class PCS:
-         if response.status_code != 200:
-             print(str(response.content, 'utf-8'))
-             if response.status_code == 401:
--                Credentials().set_pcs_api_key('')   #reset ApiKey
-+                try:
-+                    Credentials().set_pcs_api_key('')   #reset ApiKey
-+                except:
-+                    # If keyring is unavailable, we don't want to trigger
-+                    # traceback, as the user may have declined to save
-+                    # the key in the keyring earlier
-+                    pass
-             return None
- 
-         # Verify expected headers
--- 
-2.55.0
-

diff --git a/0121-qpl-fix-const-correctness-for-ASN1_STRING-X509_NAME_.patch b/0121-qpl-fix-const-correctness-for-ASN1_STRING-X509_NAME_.patch
new file mode 100644
index 0000000..f817d1b
--- /dev/null
+++ b/0121-qpl-fix-const-correctness-for-ASN1_STRING-X509_NAME_.patch
@@ -0,0 +1,34 @@
+From 39939ab34f4e4d20a044206e37fa032d90837f09 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Mon, 20 Jul 2026 12:36:19 +0100
+Subject: [PATCH 121/122] qpl: fix const correctness for
+ ASN1_STRING/X509_NAME_ENTRY
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+In OpenSSL 4 the functions now return a const struct where possible.
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ QuoteGeneration/qpl/linux/x509.cpp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/QuoteGeneration/qpl/linux/x509.cpp b/QuoteGeneration/qpl/linux/x509.cpp
+index 044db8ce..6170ce5e 100644
+--- a/QuoteGeneration/qpl/linux/x509.cpp
++++ b/QuoteGeneration/qpl/linux/x509.cpp
+@@ -69,8 +69,8 @@ static vector<string> crl_urls(X509 *x509) {
+         } else if (distpoint->type == 1) {
+             STACK_OF(X509_NAME_ENTRY) *sk_relname = distpoint->name.relativename;
+             for (int k = 0; k < sk_X509_NAME_ENTRY_num(sk_relname); k++) {
+-                X509_NAME_ENTRY *e = sk_X509_NAME_ENTRY_value(sk_relname, k);
+-                ASN1_STRING *d = X509_NAME_ENTRY_get_data(e);
++                const X509_NAME_ENTRY *e = sk_X509_NAME_ENTRY_value(sk_relname, k);
++                const ASN1_STRING *d = X509_NAME_ENTRY_get_data(e);
+                 list.push_back(string((char *)ASN1_STRING_get0_data(d), ASN1_STRING_length(d)));
+             }
+         }
+-- 
+2.55.0
+

diff --git a/0121-use-system-gtest-gmock-libraries.patch b/0121-use-system-gtest-gmock-libraries.patch
deleted file mode 100644
index 985ec3a..0000000
--- a/0121-use-system-gtest-gmock-libraries.patch
+++ /dev/null
@@ -1,125 +0,0 @@
-From 035a1ce29dd514141efbee81f2582b9dd71e2b08 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Thu, 29 Jan 2026 15:26:38 +0000
-Subject: [PATCH 121/127] use system gtest / gmock libraries
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- ae/QvE/Test/Makefile                   |  7 ++++---
- external/Makefile                      | 24 +-----------------------
- tools/SGXPlatformRegistration/Makefile | 10 +++++-----
- 3 files changed, 10 insertions(+), 31 deletions(-)
-
-diff --git a/ae/QvE/Test/Makefile b/ae/QvE/Test/Makefile
-index 0ed41883..75b30126 100644
---- a/ae/QvE/Test/Makefile
-+++ b/ae/QvE/Test/Makefile
-@@ -14,7 +14,8 @@ EXTERNAL_PATH := $(MKFILE_PATH)/../../../external
- BUILD_PATH := $(MKFILE_PATH)/build
- DEST_PATH := $(BUILD_PATH)/release
- APPRAISAL_COMMON_PATH := $(MKFILE_PATH)/../../appraisal/common
--GTEST_PATH := $(EXTERNAL_PATH)/gtest/build
-+GTEST_CFLAGS := $(shell pkg-config --cflags gtest gmock gmock_main)
-+GTEST_LDFLAGS := $(shell pkg-config --libs gtest gmock gmock_main)
- 
- SRC_PATH := $(MKFILE_PATH)/../qve
- TEST_PATH := $(MKFILE_PATH)/src
-@@ -29,7 +30,7 @@ INCLUDE := -I$(INCLUDE_PATH) -I$(SRC_PATH) -I$(MOCK_PATH) $(shell pkg-config --c
- 					-isystem$(EXTERNAL_PATH)/jwt-cpp/include
- 
- TESTS_INCLUDE := -I$(TEST_PATH) -I$(SRC_PATH) -I$(MOCK_PATH)\
--					-isystem$(GTEST_PATH)/include
-+					$(GTEST_CFLAGS)
- 
- QVE_BUILD_TYPE :=
- ifeq ($(DEBUG), 1)
-@@ -53,7 +54,7 @@ OBJS_MOCK := $(patsubst $(MOCK_PATH)/%.cpp,$(OBJ_MOCK_PATH)/%.o, $(SRC_MOCK))
- OBJ_SRC_PATH := $(OBJ_PATH)/qve
- OBJS_SRC := $(OBJ_SRC_PATH)/$(notdir $(SRC_QVE_LOGIC:.cpp=.o))
- 
--LD_GTEST := -L$(GTEST_PATH)/lib -lgtest -lgmock_main -lgmock
-+LD_GTEST := $(GTEST_LDFLAGS)
- LDFLAGS := $(shell pkg-config --libs libcrypto) -lpthread -ldl
- 
- CXX_WARNINGS := -Wall -Wextra -Winit-self -Wpointer-arith -Wreturn-type -Waddress -Wsequence-point -Wformat-security -Wmissing-include-dirs -Wfloat-equal -Wundef -Wshadow -Wcast-align -Wconversion -Wredundant-decls
-diff --git a/external/Makefile b/external/Makefile
-index 9e348e7c..ca27cac9 100644
---- a/external/Makefile
-+++ b/external/Makefile
-@@ -29,29 +29,7 @@
- #
- #
- 
--GTEST_SRC_PATH := gtest/src
--GTEST_BUILD_PATH := gtest/build
--GTEST_CMAKE_BUILD_PATH := gtest/cmake-build
--
- .PHONY: all clean
- 
--all: post-build
--
--pre-build:
--	mkdir -p $(GTEST_BUILD_PATH)
--	mkdir -p $(GTEST_CMAKE_BUILD_PATH)
--
--
--post-build: main-build
--	cp -r $(GTEST_SRC_PATH)/googletest/include $(GTEST_BUILD_PATH)
--	cp -r $(GTEST_SRC_PATH)/googlemock/include/gmock $(GTEST_BUILD_PATH)/include/
--	cp -r $(GTEST_CMAKE_BUILD_PATH)/lib $(GTEST_BUILD_PATH)
--
--main-build: pre-build
--	cd $(GTEST_CMAKE_BUILD_PATH) && cmake ../src
--	$(MAKE) -j4 -C $(GTEST_CMAKE_BUILD_PATH)
--
-+all:
- clean:
--	$(MAKE) clean -C $(GTEST_CMAKE_BUILD_PATH)
--	rm -r $(GTEST_CMAKE_BUILD_PATH)/*
--	rm -r $(GTEST_BUILD_PATH)/*
-diff --git a/tools/SGXPlatformRegistration/Makefile b/tools/SGXPlatformRegistration/Makefile
-index d0f4b053..d59c297e 100644
---- a/tools/SGXPlatformRegistration/Makefile
-+++ b/tools/SGXPlatformRegistration/Makefile
-@@ -36,7 +36,8 @@ EXTERNAL_PATH := $(MKFILE_PATH)/../../external
- DEST_PATH := $(BUILD_PATH)/release
- INSTALL_PATH := $(DEST_PATH)/installer
- 
--GTEST_PATH := $(EXTERNAL_PATH)/gtest/build
-+GTEST_CFLAGS := $(shell pkg-config --cflags gtest gmock gmock_main)
-+GTEST_LDFLAGS := $(shell pkg-config --libs gtest gmock gmock_main)
- TEST_PATH := $(MKFILE_PATH)/test
- 
- ifdef DEBUG
-@@ -67,8 +68,7 @@ INCLUDE += -I$(MANAGEMENT_PATH)/inc
- INCLUDE += -I$(NETWORK_PATH)/inc
- INCLUDE += -I$(UEFI_PATH)/inc
- 
--GTEST_INCLUDE := -isystem$(GTEST_PATH)/include
--TESTS_INCLUDE := -I$(TEST_PATH) -I$(TEST_PATH)/mocks $(GTEST_INCLUDE)
-+TESTS_INCLUDE := -I$(TEST_PATH) -I$(TEST_PATH)/mocks $(GTEST_CFLAGS)
- 
- SRC_AGENT := $(wildcard $(AGENT_PATH)/src/*cpp)
- SRC_COMMON := $(wildcard $(COMMON_PATH)/src/*cpp)
-@@ -116,7 +116,7 @@ LDFLAGS_SO := $(LDFLAGS) -shared -Wl,-z,relro,-z,now,-z,noexecstack
- LD_REGI_APP := $(LDFLAGS) -L$(LIB_PATH) -Wl,-Bstatic -lmpa_registration -Wl,-Bdynamic -lmpa_network -lmpa_uefi
- LD_MANAGE_APP := $(LDFLAGS) -L$(LIB_PATH) -Wl,-Bstatic -lmpa_management -lmpa_registration -Wl,-Bdynamic -lmpa_uefi
- 
--LD_GTEST := $(LDFLAGS) -L$(GTEST_PATH)/lib -lgtest -lgmock_main -lgmock -lpthread
-+LD_GTEST := $(LDFLAGS) $(GTEST_LDFLAGS) -lpthread
- 
- CXX_WARNINGS := -Wall -Wextra -Winit-self -Wpointer-arith -Wreturn-type -Waddress -Wsequence-point -Wformat-security \
- 				-Wmissing-include-dirs -Wfloat-equal -Wundef -Wshadow -Wcast-align -Wconversion -Wredundant-decls
-@@ -267,5 +267,5 @@ $(OBJ_MPA_MANAGE_APP_PATH)/%.o: $(MPA_MANAGE_PATH)/src/%.cpp
- 	@echo "$<"
- 
- $(OBJ_TEST_PATH)/%.o: $(TEST_PATH)/%.cpp
--	@$(CXX) -c $(CXXFLAGS) $(INCLUDE) $(GTEST_INCLUDE)  $< -o $@
-+	@$(CXX) -c $(CXXFLAGS) $(INCLUDE) $(GTEST_CFLAGS)  $< -o $@
- 	@echo "$<"
--- 
-2.55.0
-

diff --git a/0122-Disable-PcsClientTool-package-build.patch b/0122-Disable-PcsClientTool-package-build.patch
deleted file mode 100644
index 491bf2a..0000000
--- a/0122-Disable-PcsClientTool-package-build.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 933df77a1507b07d3f30c579f0d878e130dc264e Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Mon, 2 Feb 2026 16:12:50 +0000
-Subject: [PATCH 122/127] Disable PcsClientTool package build
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- tools/PcsClientTool/Makefile | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/tools/PcsClientTool/Makefile b/tools/PcsClientTool/Makefile
-index f6f0fabf..c01e4057 100644
---- a/tools/PcsClientTool/Makefile
-+++ b/tools/PcsClientTool/Makefile
-@@ -6,7 +6,8 @@
- .PHONY: default all
- default: all
- 
--all: deb_sgx_pcs_client_pkg rpm_sgx_pcs_client_pkg
-+#all: deb_sgx_pcs_client_pkg rpm_sgx_pcs_client_pkg
-+all:
- 
- .PHONY: deb_sgx_pcs_client_pkg
- deb_sgx_pcs_client_pkg:
--- 
-2.55.0
-

diff --git a/0122-qal-force-compat-with-CMake-3.5.patch b/0122-qal-force-compat-with-CMake-3.5.patch
new file mode 100644
index 0000000..6bca36d
--- /dev/null
+++ b/0122-qal-force-compat-with-CMake-3.5.patch
@@ -0,0 +1,33 @@
+From 39a7ec5512949ba65246a9b281f2bb5830a0f6c4 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
+Date: Wed, 22 Jul 2026 16:32:05 +0100
+Subject: [PATCH 122/122] qal: force compat with CMake 3.5
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+CMake 4 has dropped support for build files designed for
+CMake 3.x out of the box. To opt back in to historical
+compat requires CMAKE_POLICY_VERSION_MINIMUM=3.5 to be
+set.
+
+Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ QuoteVerification/appraisal/qal/Makefile | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/QuoteVerification/appraisal/qal/Makefile b/QuoteVerification/appraisal/qal/Makefile
+index a7f1f1f6..c592c893 100644
+--- a/QuoteVerification/appraisal/qal/Makefile
++++ b/QuoteVerification/appraisal/qal/Makefile
+@@ -38,6 +38,7 @@ ifeq ($(DEBUG), 1)
+ endif
+ # Disable HW bound check to allow potential usage with other languages, such as Golang, Java
+ WASM_CONFIG += -DWAMR_DISABLE_HW_BOUND_CHECK=1
++WASM_CONFIG += -DCMAKE_POLICY_VERSION_MINIMUM=3.5
+ 
+ ifeq ($(USE_LOCAL_WASM), 1)
+     QAL_Cpp_Flags += -DUSE_LOCAL_WASM
+-- 
+2.55.0
+

diff --git a/0123-disable-building-of-WASM-SIMDE-code.patch b/0123-disable-building-of-WASM-SIMDE-code.patch
deleted file mode 100644
index 2dbae69..0000000
--- a/0123-disable-building-of-WASM-SIMDE-code.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From a4b5bda8e776636080f2d9b5ec435fa7102d252b Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Tue, 3 Feb 2026 11:40:10 +0000
-Subject: [PATCH 123/127] disable building of WASM SIMDE code
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The build system tries to git clone the simde project which is not
-possible in koji. Disable until its possible to use distro provided
-headers.
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- QuoteVerification/appraisal/qal/Makefile | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/QuoteVerification/appraisal/qal/Makefile b/QuoteVerification/appraisal/qal/Makefile
-index af72a783..a317cf11 100644
---- a/QuoteVerification/appraisal/qal/Makefile
-+++ b/QuoteVerification/appraisal/qal/Makefile
-@@ -30,7 +30,7 @@ QAL_Link_Flags := $(COMMON_LDFLAGS) -L$(WARM_Lib_Path) -lvmlib  -ldl -lm -lpthre
-                 $(shell pkg-config --libs libcrypto) \
-                 -Wl,--gc-sections -Wl,--version-script=sgx_dcap_qal.lds
- 
--WASM_CONFIG ?= -DCMAKE_BUILD_TYPE=Release
-+WASM_CONFIG ?= -DCMAKE_BUILD_TYPE=Release -DWAMR_BUILD_SIMD=0 -DWAMR_BUILD_LIB_SIMDE=0
- ifeq ($(DEBUG), 1)
-     WASM_CONFIG := -DCMAKE_BUILD_TYPE=Debug
- 	QAL_Cpp_Flags += -fsanitize=undefined
--- 
-2.55.0
-

diff --git a/0124-ensure-build-terminates-if-prepare_sgxssl.sh-fails.patch b/0124-ensure-build-terminates-if-prepare_sgxssl.sh-fails.patch
deleted file mode 100644
index 8589f5d..0000000
--- a/0124-ensure-build-terminates-if-prepare_sgxssl.sh-fails.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From a4ec3d8f326e92b32ed151bd89a3ab99f4d66279 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Wed, 25 Mar 2026 15:54:42 +0000
-Subject: [PATCH 124/127] ensure build terminates if prepare_sgxssl.sh fails
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The prepare_sgxssl.sh script ignores exit status from all
-commands it runs, so if 'make' fails to build the sgxssl
-code the caller will still assume all is well.
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- QuoteVerification/prepare_sgxssl.sh | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/QuoteVerification/prepare_sgxssl.sh b/QuoteVerification/prepare_sgxssl.sh
-index 19152d77..8195407f 100755
---- a/QuoteVerification/prepare_sgxssl.sh
-+++ b/QuoteVerification/prepare_sgxssl.sh
-@@ -5,6 +5,8 @@
- # SPDX-License-Identifier: BSD-3-Clause
- #
- 
-+set -e
-+
- ARG1=${1:-build}
- top_dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
- sgxssl_dir=$top_dir/sgxssl
--- 
-2.55.0
-

diff --git a/0125-Support-for-26.04-enabled-in-SGXSDK-and-DCAP.patch b/0125-Support-for-26.04-enabled-in-SGXSDK-and-DCAP.patch
deleted file mode 100644
index c8a2bb9..0000000
--- a/0125-Support-for-26.04-enabled-in-SGXSDK-and-DCAP.patch
+++ /dev/null
@@ -1,201 +0,0 @@
-From 6c33ecfb5fa66e0144e68ffb7f7bf21c01c65393 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Fri, 6 Mar 2026 07:51:15 +0100
-Subject: [PATCH 125/127] Support for 26.04 enabled in SGXSDK and DCAP
-
-From: Krzysztof Sandowicz <krzysztof.sandowicz@intel.com>
-
-Boost dependencies updated to be backward compatible with already supported OSes and also support 26.04
-
----------
-
-Signed-off-by: Krzysztof Sandowicz <krzysztof.sandowicz@intel.com>
-(cherry picked from commit e3e516f190116fc0ab00160114a19b772c430ecc)
----
- QuoteGeneration/buildenv.mk                   |  1 +
- QuoteGeneration/quote_wrapper/qgs/Makefile    |  6 +++-
- .../quote_wrapper/qgs/qgs_server.cpp          | 36 +++++++++----------
- .../quote_wrapper/qgs/qgs_server.h            |  2 +-
- .../quote_wrapper/qgs/server_main.cpp         |  6 ++--
- 5 files changed, 28 insertions(+), 23 deletions(-)
-
-diff --git a/QuoteGeneration/buildenv.mk b/QuoteGeneration/buildenv.mk
-index eca64ba6..cd6fc5fa 100644
---- a/QuoteGeneration/buildenv.mk
-+++ b/QuoteGeneration/buildenv.mk
-@@ -86,6 +86,7 @@ CC_NO_LESS_THAN_8 := $(shell [ $(CC_VERSION_MAJOR) -ge 8 ] && echo 1 || echo 0)
- CC_NO_LESS_THAN_9 := $(shell [ $(CC_VERSION_MAJOR) -ge 9 ] && echo 1 || echo 0)
- CC_NO_LESS_THAN_11 := $(shell [ $(CC_VERSION_MAJOR) -ge 11 ] && echo 1 || echo 0)
- CC_NO_LESS_THAN_12 := $(shell [ $(CC_VERSION_MAJOR) -ge 12 ] && echo 1 || echo 0)
-+CC_LESS_THAN_15 := $(shell [ $(CC_VERSION_MAJOR) -lt 15 ] && echo 1 || echo 0)
- 
- 
- ifeq ($(IS_GCC)$(CC_NO_LESS_THAN_12), 11)
-diff --git a/QuoteGeneration/quote_wrapper/qgs/Makefile b/QuoteGeneration/quote_wrapper/qgs/Makefile
-index fa1f6708..29633756 100644
---- a/QuoteGeneration/quote_wrapper/qgs/Makefile
-+++ b/QuoteGeneration/quote_wrapper/qgs/Makefile
-@@ -25,7 +25,11 @@ DEPENDS = ${QGS_OBJS test_client.o:.o=.d}
- QGS_LFLAGS = $(LDFLAGS) -L$(TOP_DIR)/build/linux -lsgx_tdx_logic -lsgx_pce_logic -ldl \
-              -L$(SGX_SDK)/lib64 -lsgx_urts -g
- # add boost_system for link
--QGS_LFLAGS += -lboost_system -lboost_thread -lpthread
-+ifeq ($(CC_LESS_THAN_15), 1)
-+QGS_LFLAGS += -lboost_system
-+endif
-+QGS_LFLAGS += -lboost_thread -lpthread
-+
- # add qgs_msg_lib for link
- QGS_LFLAGS += -L../qgs_msg_lib/linux -lqgs_msg
- 
-diff --git a/QuoteGeneration/quote_wrapper/qgs/qgs_server.cpp b/QuoteGeneration/quote_wrapper/qgs/qgs_server.cpp
-index 8c9a6b6a..e2c5fb60 100644
---- a/QuoteGeneration/quote_wrapper/qgs/qgs_server.cpp
-+++ b/QuoteGeneration/quote_wrapper/qgs/qgs_server.cpp
-@@ -1,5 +1,5 @@
- /*
-- * Copyright (C) 2011-2022 Intel Corporation. All rights reserved.
-+ * Copyright (C) 2011-2026 Intel Corporation. All rights reserved.
-  *
-  * Redistribution and use in source and binary forms, with or without
-  * modification, are permitted provided that the following conditions
-@@ -86,9 +86,9 @@ class QgsConnection : public boost::enable_shared_from_this<QgsConnection> {
-     static Pointer create(boost::mutex &connection_mtx,
-                           ConnectionSet &connections,
-                           asio::thread_pool &pool,
--                          asio::io_service &io_service) {
-+                          asio::io_context &io_context) {
-         return Pointer(new QgsConnection(connection_mtx, connections, pool,
--                                         io_service));
-+                                         io_context));
-     }
- 
-     gs::socket &get_socket() {
-@@ -96,7 +96,7 @@ class QgsConnection : public boost::enable_shared_from_this<QgsConnection> {
-     }
- 
-     void start() {
--        m_timer.expires_from_now(timeout);
-+        m_timer.expires_after(timeout);
-         m_timer.async_wait([this](boost::system::error_code ec) {
-             if (!ec) {
-                 QGS_LOG_ERROR("timeout\n");
-@@ -123,21 +123,21 @@ class QgsConnection : public boost::enable_shared_from_this<QgsConnection> {
-     ConnectionSet &m_connections;
-     asio::thread_pool &m_pool;
-     gs::socket m_socket;
--    asio::deadline_timer m_timer;
-+    boost::asio::steady_timer m_timer;
-     data_buffer m_readbuf;
- 
--    const boost::posix_time::time_duration timeout =
--        boost::posix_time::seconds(QGS_TIMEOUT);
-+    const std::chrono::seconds timeout =
-+        std::chrono::seconds(QGS_TIMEOUT);
- 
-     QgsConnection(boost::mutex &connection_mtx,
-                   ConnectionSet &connections,
-                   asio::thread_pool &pool,
--                  asio::io_service &io_service)
-+                  asio::io_context &io_context)
-         : m_connection_mtx(connection_mtx),
-           m_connections(connections),
-           m_pool(pool),
--          m_socket(io_service),
--          m_timer(io_service) {
-+          m_socket(io_context),
-+          m_timer(io_context) {
-     }
- 
-     void handle_read(const boost::system::error_code &ec, std::size_t bytes_transferred) {
-@@ -294,8 +294,8 @@ class QgsConnection : public boost::enable_shared_from_this<QgsConnection> {
-         boost::mutex connection_mtx;
-         boost::unordered_set<boost::shared_ptr<QgsConnection>> connections;
-         boost::asio::thread_pool pool;
--        QgsServerImpl(asio::io_service &in_io_service, gs::endpoint &ep, uint8_t num_threads)
--            : pool(num_threads), acceptor(in_io_service, ep), io_service(in_io_service) {
-+        QgsServerImpl(asio::io_context &in_io_context, gs::endpoint &ep, uint8_t num_threads)
-+            : pool(num_threads), acceptor(in_io_context, ep), io_context(in_io_context) {
-             start_accept();
-         }
- 
-@@ -303,7 +303,7 @@ class QgsConnection : public boost::enable_shared_from_this<QgsConnection> {
-         {
-             QgsConnection::Pointer new_connection =
-                 QgsConnection::create(connection_mtx, connections, pool,
--                                      io_service);
-+                                      io_context);
- 
-             acceptor.async_accept(new_connection->get_socket(),
-                                   boost::bind(&QgsServerImpl::handle_accept,
-@@ -337,18 +337,18 @@ class QgsConnection : public boost::enable_shared_from_this<QgsConnection> {
-             QGS_LOG_INFO("Stopped [%d] connections, about to clear connection list\n", i);
-             pool.join();
-             QGS_LOG_INFO("Joined thread pool\n");
--            io_service.stop();
--            QGS_LOG_INFO("Stopped io_service\n");
-+            io_context.stop();
-+            QGS_LOG_INFO("Stopped io_context\n");
-             connections.clear();
-         }
- 
-     private:
-         vsock_acceptor acceptor;
--        asio::io_service& io_service;
-+        asio::io_context& io_context;
-     };
- 
--    QgsServer::QgsServer(asio::io_service &io_service, gs::endpoint &ep, uint8_t num_threads)
--        : d(new QgsServerImpl(io_service, ep, num_threads)) {
-+    QgsServer::QgsServer(asio::io_context &io_context, gs::endpoint &ep, uint8_t num_threads)
-+        : d(new QgsServerImpl(io_context, ep, num_threads)) {
-     }
- 
-     void QgsServer::shutdown() {
-diff --git a/QuoteGeneration/quote_wrapper/qgs/qgs_server.h b/QuoteGeneration/quote_wrapper/qgs/qgs_server.h
-index f3f5b9f9..2a450cef 100644
---- a/QuoteGeneration/quote_wrapper/qgs/qgs_server.h
-+++ b/QuoteGeneration/quote_wrapper/qgs/qgs_server.h
-@@ -43,7 +43,7 @@ namespace intel { namespace sgx { namespace dcap { namespace qgs {
- 
-     class QgsServer {
-     public:
--      QgsServer(asio::io_service &io_service, gs::endpoint &ep, uint8_t num_threads);
-+      QgsServer(asio::io_context &io_context, gs::endpoint &ep, uint8_t num_threads);
-       ~QgsServer();
-       void shutdown();
- 
-diff --git a/QuoteGeneration/quote_wrapper/qgs/server_main.cpp b/QuoteGeneration/quote_wrapper/qgs/server_main.cpp
-index bef9e0ec..ea2dceae 100644
---- a/QuoteGeneration/quote_wrapper/qgs/server_main.cpp
-+++ b/QuoteGeneration/quote_wrapper/qgs/server_main.cpp
-@@ -238,7 +238,7 @@ int main(int argc, const char* argv[])
-     try {
-         do {
-             reload = false;
--            asio::io_service io_service;
-+            asio::io_context io_context;
-             gs::endpoint ep;
-             if (!socket_based_communication) {
-                 struct sockaddr_vm vm_addr = {};
-@@ -258,7 +258,7 @@ int main(int argc, const char* argv[])
-                 }
-             }
-             QGS_LOG_INFO("About to create QgsServer\n");
--            server = new QgsServer(io_service, ep, (uint8_t)num_threads);
-+            server = new QgsServer(io_context, ep, (uint8_t)num_threads);
-             /* Allow mode to be determined by umask by default,
-              * overriding only if an explicit mode is requested
-              */
-@@ -266,7 +266,7 @@ int main(int argc, const char* argv[])
-                 chmod(QGS_UNIX_SOCKET_FILE, (mode_t)mode);
-             }
-             QGS_LOG_INFO("About to start main loop\n");
--            io_service.run();
-+            io_context.run();
-             QGS_LOG_INFO("Quit main loop\n");
-             QgsServer *temp_server = server;
-             server = NULL;
--- 
-2.55.0
-

diff --git a/0126-qpl-fix-const-correctness-for-ASN1_STRING-X509_NAME_.patch b/0126-qpl-fix-const-correctness-for-ASN1_STRING-X509_NAME_.patch
deleted file mode 100644
index 1585d0f..0000000
--- a/0126-qpl-fix-const-correctness-for-ASN1_STRING-X509_NAME_.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From cf60ce8a83cae39e7d626b33ebf0f38dd511bfb7 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Mon, 20 Jul 2026 12:36:19 +0100
-Subject: [PATCH 126/127] qpl: fix const correctness for
- ASN1_STRING/X509_NAME_ENTRY
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-In OpenSSL 4 the functions now return a const struct where possible.
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- QuoteGeneration/qpl/linux/x509.cpp | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/QuoteGeneration/qpl/linux/x509.cpp b/QuoteGeneration/qpl/linux/x509.cpp
-index 044db8ce..6170ce5e 100644
---- a/QuoteGeneration/qpl/linux/x509.cpp
-+++ b/QuoteGeneration/qpl/linux/x509.cpp
-@@ -69,8 +69,8 @@ static vector<string> crl_urls(X509 *x509) {
-         } else if (distpoint->type == 1) {
-             STACK_OF(X509_NAME_ENTRY) *sk_relname = distpoint->name.relativename;
-             for (int k = 0; k < sk_X509_NAME_ENTRY_num(sk_relname); k++) {
--                X509_NAME_ENTRY *e = sk_X509_NAME_ENTRY_value(sk_relname, k);
--                ASN1_STRING *d = X509_NAME_ENTRY_get_data(e);
-+                const X509_NAME_ENTRY *e = sk_X509_NAME_ENTRY_value(sk_relname, k);
-+                const ASN1_STRING *d = X509_NAME_ENTRY_get_data(e);
-                 list.push_back(string((char *)ASN1_STRING_get0_data(d), ASN1_STRING_length(d)));
-             }
-         }
--- 
-2.55.0
-

diff --git a/0127-qal-force-compat-with-CMake-3.5.patch b/0127-qal-force-compat-with-CMake-3.5.patch
deleted file mode 100644
index aeaee78..0000000
--- a/0127-qal-force-compat-with-CMake-3.5.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From bb1b8f61184bc8130a273518dbb293a06c1dc985 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Wed, 22 Jul 2026 16:32:05 +0100
-Subject: [PATCH 127/127] qal: force compat with CMake 3.5
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-CMake 4 has dropped support for build files designed for
-CMake 3.x out of the box. To opt back in to historical
-compat requires CMAKE_POLICY_VERSION_MINIMUM=3.5 to be
-set.
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
----
- QuoteVerification/appraisal/qal/Makefile | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/QuoteVerification/appraisal/qal/Makefile b/QuoteVerification/appraisal/qal/Makefile
-index a317cf11..ce0a0e00 100644
---- a/QuoteVerification/appraisal/qal/Makefile
-+++ b/QuoteVerification/appraisal/qal/Makefile
-@@ -39,6 +39,7 @@ ifeq ($(DEBUG), 1)
- endif
- # Disable HW bound check to allow potential usage with other languages, such as Golang, Java
- WASM_CONFIG += -DWAMR_DISABLE_HW_BOUND_CHECK=1
-+WASM_CONFIG += -DCMAKE_POLICY_VERSION_MINIMUM=3.5
- 
- ifeq ($(USE_LOCAL_WASM), 1)
-     QAL_Cpp_Flags += -DUSE_LOCAL_WASM
--- 
-2.55.0
-

diff --git a/0300-Drop-min-openssl-from-3.0.8-to-3.0.7.patch b/0300-Drop-min-openssl-from-3.0.8-to-3.0.7.patch
index 63bb426..a0c8fce 100644
--- a/0300-Drop-min-openssl-from-3.0.8-to-3.0.7.patch
+++ b/0300-Drop-min-openssl-from-3.0.8-to-3.0.7.patch
@@ -25,5 +25,5 @@ index 6e810567..d92f6c68 100644
  
  if(BN_OPENSSL_PATCH)
 -- 
-2.46.0
+2.55.0
 

diff --git a/0301-Drop-Werror-from-build-flags.patch b/0301-Drop-Werror-from-build-flags.patch
index caba1ea..24c0e1f 100644
--- a/0301-Drop-Werror-from-build-flags.patch
+++ b/0301-Drop-Werror-from-build-flags.patch
@@ -67,5 +67,5 @@ index babc289a..59a74d10 100644
  # Alignment for structures on byte boundaries (= 16)
  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Zp16")
 -- 
-2.46.0
+2.55.0
 

diff --git a/0400-Fix-constness-for-OpenSSL4-X509-ASN1-APIs.patch b/0400-Fix-constness-for-OpenSSL4-X509-ASN1-APIs.patch
index 93dd26b..5510f6a 100644
--- a/0400-Fix-constness-for-OpenSSL4-X509-ASN1-APIs.patch
+++ b/0400-Fix-constness-for-OpenSSL4-X509-ASN1-APIs.patch
@@ -1,4 +1,4 @@
-From 5512707e0185c85f778c7e8b13f3d7f4c6ce7c62 Mon Sep 17 00:00:00 2001
+From 9dbe8147a9ae1327018e29f5d76d8ea5c8d71af9 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
 Date: Mon, 20 Jul 2026 13:23:50 +0100
 Subject: [PATCH] Fix constness for OpenSSL4 X509/ASN1 APIs

diff --git a/linux-sgx.spec b/linux-sgx.spec
index 4eebcbe..b735fea 100644
--- a/linux-sgx.spec
+++ b/linux-sgx.spec
@@ -69,12 +69,12 @@
 # of new tarballs after updating the versions, as well as stripping
 # non-permitted content from some tarballs.
 #
-%global linux_sgx_version 2.28
+%global linux_sgx_version 2.29
 # From submodule: external/dcap_source
-%global dcap_version 1.25
+%global dcap_version 1.26
 # From submodule: external/dcap_source/QuoteVerification/QVL
 # NB: follows DCAP versioning, but may skip releases
-%global dcap_qvl_version 1.25
+%global dcap_qvl_version 1.26
 # From script: external/sgxssl/prepare_sgxssl.sh
 # Should match: external/dcap_source/QuoteVerification/prepare_sgxssl.sh
 %global sgx_ssl_version 3.0_Rev5.2
@@ -90,8 +90,9 @@
 %global openssl_version 3.0.19
 # From submodule: external/cbor/libcbor
 %global libcbor_version 0.10.2
-# From submodule: external/protobuf/protobuf_code/third_party/abseil-cpp
-%global abseil_cpp_version 20230125.3
+# Obsolete: From submodule: external/protobuf/protobuf_code/third_party/abseil-cpp]
+# Override: From submodule: external/protobuf/protobuf_code/abseil-cpp
+%global abseil_cpp_version 20250512.1
 # From submodule: external/dcap_source/external/jwt-cpp
 %global jwt_cpp_version 0.6.0
 # From submodule: external/dcap_source/external/wasm-micro-runtime
@@ -238,7 +239,7 @@ Provides: bundled(ipp-crypto) = %{ipp_crypto_version}
 Source6: https://github.com/intel/sgx-emm/archive/refs/tags/sgx-emm-%{sgx_emm_version}.tar.gz
 Provides: bundled(sgx-emm) = %{sgx_emm_version}
 
-Source7: https://github.com/intel/confidential-computing.tee.dcap.qvl/archive/refs/tags/DCAP_%{dcap_qvl_version}.tar.gz#/dcap-qvl-%{dcap_qvl_version}.tar.gz
+Source7: https://github.com/intel/confidential-computing.tee.dcap.qvl/archive/refs/tags/v%{dcap_qvl_version}.tar.gz#/dcap-qvl-%{dcap_qvl_version}.tar.gz
 Provides: bundled(dcap-qvl) = %{dcap_qvl_version}
 
 
@@ -306,20 +307,18 @@ Patch0005: 0005-disable-openmp-protobuf-sample_crypto-builds.patch
 # https://github.com/intel/linux-sgx/pull/1064
 Patch0006: 0006-psw-prefer-dev-sgx_provision-dev-sgx_enclave.patch
 Patch0007: 0007-psw-fix-soname-for-libuae_service.so-library.patch
-Patch0008: 0008-pcl-remove-redundant-use-of-bool-type.patch
-Patch0009: 0009-sdk-honour-CFLAGS-LDFLAGS-set-from-environment.patch
-Patch0010: 0010-psw-make-aesm_service-build-verbose.patch
-Patch0011: 0011-Fix-modern-C-function-prototype-compliance.patch
-Patch0012: 0012-Add-wrapper-for-nasm-to-fix-cmake-compat.patch
-Patch0013: 0013-linux-installer-drop-PCCS-package-from-BOM.patch
-Patch0014: 0014-sdk-avoid-failure-due-to-attribute-regparam-with-GCC.patch
-Patch0015: 0015-fix-BOM-for-mpa_manage-mpa_registration-files.patch
-Patch0016: 0016-fix-missing-def-of-uncaught_exception.patch
-Patch0017: 0017-sdk-adapt-to-openssl4-API-changes.patch
+Patch0008: 0008-sdk-honour-CFLAGS-LDFLAGS-set-from-environment.patch
+Patch0009: 0009-psw-make-aesm_service-build-verbose.patch
+Patch0010: 0010-Fix-modern-C-function-prototype-compliance.patch
+Patch0011: 0011-Add-wrapper-for-nasm-to-fix-cmake-compat.patch
+Patch0012: 0012-linux-installer-drop-PCCS-package-from-BOM.patch
+Patch0013: 0013-sdk-avoid-failure-due-to-attribute-regparam-with-GCC.patch
+Patch0014: 0014-fix-BOM-for-mpa_manage-mpa_registration-files.patch
+Patch0015: 0015-fix-missing-def-of-uncaught_exception.patch
+Patch0016: 0016-sdk-adapt-to-openssl4-API-changes.patch
 # Optional patches
 Patch0050: 0050-Disable-inclusion-of-AESM-in-installer.patch
 
-
 # 0100-0199 -> against confidential-computing.tee.dcap.git
 #
 # Maintained in https://github.com/berrange/SGXDataCenterAttestationPrimitives/tree/dist-git-%{dcap_version}-hostsw
@@ -335,27 +334,22 @@ Patch0104: 0104-pcsclient-only-import-pypac-module-on-Windows.patch
 Patch0105: 0105-Look-for-PCKRetrievalTool-config-file-in-etc.patch
 Patch0106: 0106-Honour-CFLAGS-CXXFLAGS-LDFLAGS-for-various-tools-and.patch
 # https://github.com/intel/SGXDataCenterAttestationPrimitives/pull/428
-Patch0107: 0107-qgs-add-space-between-program-name-first-arg-in-usag.patch
-Patch0108: 0108-qgs-protect-against-format-strings-in-QL-log-message.patch
-Patch0109: 0109-qgs-add-debug-parameter-to-control-logging.patch
-Patch0110: 0110-pcsclient-remove-leftover-debugging-print-args-state.patch
-Patch0111: 0111-Fix-soname-version-for-libsgx_qe3_logic.so-library.patch
-Patch0112: 0112-Workaround-broken-GCC-15.patch
-Patch0113: 0113-Don-t-disable-cf-protection-for-qgs.patch
-Patch0114: 0114-Delete-broken-checks-for-GCC-version-that-break-fsta.patch
-#Patch0115: 0115-Use-distro-provided-rapidjson-package.patch
-Patch0116: 0116-Don-t-stomp-on-VERBOSE-variable.patch
-Patch0117: 0117-qgs-add-m-MODE-parameter-for-UNIX-socket-mode.patch
-Patch0118: 0118-pcsclient-make-keyring-module-optional.patch
-Patch0119: 0119-pcsclient-convert-from-asn1-to-pyasn1-python-module.patch
-Patch0120: 0120-pcsclient-ignore-errors-trying-to-clear-the-keyring.patch
-Patch0121: 0121-use-system-gtest-gmock-libraries.patch
-Patch0122: 0122-Disable-PcsClientTool-package-build.patch
-Patch0123: 0123-disable-building-of-WASM-SIMDE-code.patch
-Patch0124: 0124-ensure-build-terminates-if-prepare_sgxssl.sh-fails.patch
-Patch0125: 0125-Support-for-26.04-enabled-in-SGXSDK-and-DCAP.patch
-Patch0126: 0126-qpl-fix-const-correctness-for-ASN1_STRING-X509_NAME_.patch
-Patch0127: 0127-qal-force-compat-with-CMake-3.5.patch
+Patch0107: 0107-pcsclient-remove-leftover-debugging-print-args-state.patch
+Patch0108: 0108-Fix-soname-version-for-libsgx_qe3_logic.so-library.patch
+Patch0109: 0109-Workaround-broken-GCC-15.patch
+Patch0110: 0110-Don-t-disable-cf-protection-for-qgs.patch
+#Patch0111: 0111-Use-distro-provided-rapidjson-package.patch
+Patch0112: 0112-Don-t-stomp-on-VERBOSE-variable.patch
+Patch0113: 0113-qgs-add-m-MODE-parameter-for-UNIX-socket-mode.patch
+Patch0114: 0114-pcsclient-make-keyring-module-optional.patch
+Patch0115: 0115-pcsclient-convert-from-asn1-to-pyasn1-python-module.patch
+Patch0116: 0116-pcsclient-ignore-errors-trying-to-clear-the-keyring.patch
+Patch0117: 0117-use-system-gtest-gmock-libraries.patch
+Patch0118: 0118-Disable-PcsClientTool-package-build.patch
+Patch0119: 0119-disable-building-of-WASM-SIMDE-code.patch
+Patch0120: 0120-ensure-build-terminates-if-prepare_sgxssl.sh-fails.patch
+Patch0121: 0121-qpl-fix-const-correctness-for-ASN1_STRING-X509_NAME_.patch
+Patch0122: 0122-qal-force-compat-with-CMake-3.5.patch
 
 
 # 0200-0299 -> against intel-sgx-ssl.git
@@ -812,21 +806,12 @@ do
     MITIGATION-CVE-2020-0551=$mitigation \
     clean
 
-  %__make %{?_smp_mflags} \
-    -C external/dcap_source/QuoteVerification/dcap_tvl \
-    MITIGATION-CVE-2020-0551=$mitigation \
-    clean
-
   # XXX temp override -j1 due to race conditions that have not yet been diagnosed
   %__make %{?_smp_mflags} -j1 \
     -C sdk/ V=1 \
     MITIGATION-CVE-2020-0551=$mitigation \
     USE_HOST_OPENSSL_CRYPTO=1 \
     USE_HOST_TINYXML2=%{with_host_tinyxml2}
-
-  %__make %{?_smp_mflags} \
-    -C external/dcap_source/QuoteVerification/dcap_tvl \
-    MITIGATION-CVE-2020-0551=$mitigation
 done
 
 NATIVE="sign_tool/SignTool"
@@ -1237,6 +1222,7 @@ rmdir %{buildroot}/root
 cp ./external/dcap_source/tools/PCKCertSelection/include/pck_cert_selection.h %{buildroot}%{_includedir}
 cp ./external/dcap_source/QuoteGeneration/qpl/inc/sgx_default_quote_provider.h %{buildroot}%{_includedir}
 cp ./external/dcap_source/QuoteGeneration/quote_wrapper/quote/inc/sgx_ql_core_wrapper.h %{buildroot}%{_includedir}
+cp ./external/dcap_source/QuoteVerification/appraisal/qal/sgx_dcap_qal.h %{buildroot}%{sgx_includedir}
 
 mv %{buildroot}%{_libdir}/libsgx_qe3_logic.so \
    %{buildroot}%{_libdir}/libsgx_qe3_logic.so.1.0.0
@@ -1287,6 +1273,12 @@ fi
 %endif
 
 %post -n tdx-qgs
+# --debug/--verbose were added by previous downstream patches.
+# Upstream introduced '-l <LEVEL>' for logging control, so
+# convert to new command line syntax
+sed -i -e 's/--debug/-l=debug/' \
+       -e 's/--verbose/-l=info/' \
+       /etc/sysconfig/qgs
 %systemd_post qgs.service
 
 %preun -n tdx-qgs
@@ -1341,7 +1333,9 @@ fi
 %{sgx_includedir}/sgx_attributes.h
 %{sgx_includedir}/sgx_capable.h
 %{sgx_includedir}/sgx_cpuid.h
+%{sgx_includedir}/sgx_dcap_constant_val.h
 %{sgx_includedir}/sgx_dcap_qae_tvl.h
+%{sgx_includedir}/sgx_dcap_qal_types.h
 %{sgx_includedir}/sgx_dcap_qal.h
 %{sgx_includedir}/sgx_dcap_tvl.h
 %{sgx_includedir}/sgx_defs.h
@@ -1440,6 +1434,7 @@ fi
 %{_includedir}/mp_uefi.h
 %{_includedir}/pck_cert_selection.h
 %{_includedir}/sgx_attributes.h
+%{_includedir}/sgx_dcap_qal_types.h
 %{_includedir}/sgx_dcap_ql_wrapper.h
 %{_includedir}/sgx_dcap_quoteverify.h
 %{_includedir}/sgx_default_quote_provider.h

diff --git a/sources b/sources
index 27a0aaa..21b2f15 100644
--- a/sources
+++ b/sources
@@ -1,12 +1,12 @@
-SHA512 (DCAP_1.25.tar.gz) = 6daccdb8c6a94a98664b32f7d3a42d84d402c6ed83c9ecc7ccc831fcd03ef83c99cfb2d5daa6b844361e4fb3adc924055080816b5a34359d980a01eba6768ac0
-SHA512 (dcap-qvl-1.25.tar.gz) = e8449f52bdaf4ba98df78084b981eecec9cc2d516796dc468cd2366524dcb98d43a78438908448e0fce355dc0edc0e5d745aa9cab687bad889a34e6b1a0db5f7
+SHA512 (DCAP_1.26.tar.gz) = 6a5ba7dc4f988be0c01fb652e42f88555dc3755441ed152821fb400b62d0307aa6dfdc01832ffcc13ed079bc6eb9446837bb803db60ea718d80d5083a0541902
+SHA512 (dcap-qvl-1.26.tar.gz) = 54535587ea2d28ba20a429b3e362f7a0cdc99d3cc7534009873d0825a9a22fd55d6ca51e96856791c017241769efa368205837bef6e539a82feaafcf1148749b
 SHA512 (intel-sgx-ssl-3.0_Rev5.2.tar.gz) = 9f15b88a24cc73a1be5698b6609083125a2e3d7bd38496099c7d8f9eb196a5ffdd5500eaa6e055550cf70e3678977f59b39745becdd14d91db44e7dd5290ac69
 SHA512 (ippcp_2021.12.1.tar.gz) = cdde7eed0f27b80663bf6a131abd8e6afcf16f0b9897ae12e251dc6bd3a9cc15c7666e4276eb4ba4b3b66fa93b5115c29537e176a6a2fb0de1b17cfcc1b7c426
 SHA512 (jwt-cpp-0.6.0.tar.gz) = b6d5ebb3a7eeb6fef9a1d41c707251d1ab05bf47920c280d5203f1b9ee5bf6f8e914cd2ffaed66550cfa6d78c34465d4cf86517a759d5f8739b429faf1c2c0ef
 SHA512 (libcbor-0.10.2.tar.gz) = 23c6177443778d4b4833ec7ed0d0e639a0d4863372e3a38d772fdce2673eae6d5cb2a31a2a021d1a699082ea53494977c907fd0e94149b97cb23a4b6d039228a
-SHA512 (linux-sgx-2.28.tar.gz) = dd015564ea9dcba184bb05e8c336345ba0db6d999fbb61571e7d291cb1ddc72407ca41c5f20ee596616bf5efc242785d5abce73e917e6563b0288e741dc97f95
+SHA512 (linux-sgx-2.29.tar.gz) = 29c690218e92af379498b5ef8939553f6612e2e725598457a3df1daaba11dd5829429379824b8a9c1093dce6e37beea47e4ed33ce3a915317e99ad2dcba427c0
 SHA512 (openssl-3.0.19.tar.gz) = 6e602ac7217e1b4423793ee5c4c10745f70fcde3f9820d6c894ebeedb4f29566e2d0c3c590ae210484dcea4eb53db5bb8dbbfee14bbaca3e147406b1343c3cd7
-SHA512 (prebuilt_dcap_1.25-repacked.tar.gz) = b07bc8430bf2996a4d650002168921d356f445dde1ea16452f28ccc133c5e3e6c3c897aff969fe027605dab9b96c44c850f655968f18f66b4cf89a9f68086b85
+SHA512 (prebuilt_dcap_1.26-repacked.tar.gz) = 8bef3573919234e3de5848abd658ee12c343032b010a922547d7d2e3591ad2cc35e89380407ebd5e8ab58f50e4c47cde3e33c9c3a882312d63a044688e9b8968
 SHA512 (sgx-emm-1.0.3.tar.gz) = d5a11e430ddf8d6cae7665ef645d1280b5e61bc9b90c308c3ed32b622dd5ea383d17fd501a81850374c76062f1602b957d4585e5de885f0c9d05ab7bce013dfd
 SHA512 (tinyxml2-10.0.0.tar.gz) = a359d33bc12fad455b53d81011dbe12727cae0aabfaa5704f1a25807ca216dd854a571291029886c0beedeca5c3b6393dd49c4718773e18a0e008abbdb3de36a
 SHA512 (wasm-micro-runtime-1.0.0.tar.gz) = fb16a992b54f5c006be386b72ff65c680ededaafe7f2010db163b6e4365d198cc96f06ae60ac42986aaf45609803ffc1722308277474c341673e391f9bc4846e

                 reply	other threads:[~2026-07-29 13:55 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=178533331953.1.2365997309324691046.rpms-linux-sgx-c9b7e0cc838b@fedoraproject.org \
    --to=git-commits@fedoraproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox