Integrate discovery into crypto service provider

Integrates the discovery provider into the crypto provider to
support common discovery operations.  Will initially be used
to discover the max_payload value to allow a client to
use multi-step crypto operations where prior knowledge of
the max_payload size is needed.  This commit also includes
service level tests for discovery.

Signed-off-by: Julian Hall <julian.hall@arm.com>
Change-Id: I0213aeb5a5423b3bec962a6e27d8e83bf8e7a763
diff --git a/deployments/component-test/component-test.cmake b/deployments/component-test/component-test.cmake
index 4065ab3..f6790b5 100644
--- a/deployments/component-test/component-test.cmake
+++ b/deployments/component-test/component-test.cmake
@@ -44,8 +44,10 @@
 		"components/service/locator/standalone/services/protected-storage"
 		"components/service/locator/standalone/services/test-runner"
 		"components/service/locator/standalone/services/attestation"
+		"components/service/discovery/client"
 		"components/service/discovery/provider"
 		"components/service/discovery/provider/serializer/packed-c"
+		"components/service/discovery/test/service"
 		"components/service/attestation/include"
 		"components/service/attestation/claims"
 		"components/service/attestation/claims/sources/boot_seed_generator"
diff --git a/deployments/crypto/opteesp/CMakeLists.txt b/deployments/crypto/opteesp/CMakeLists.txt
index 6b8246c..79f238b 100644
--- a/deployments/crypto/opteesp/CMakeLists.txt
+++ b/deployments/crypto/opteesp/CMakeLists.txt
@@ -46,6 +46,8 @@
 		"components/service/common/client"
 		"components/service/common/serializer/protobuf"
 		"components/service/common/provider"
+		"components/service/discovery/provider"
+		"components/service/discovery/provider/serializer/packed-c"
 		"components/service/crypto/provider"
 		"components/service/crypto/provider/serializer/protobuf"
 		"components/service/crypto/provider/serializer/packed-c"
diff --git a/deployments/libts/linux-pc/CMakeLists.txt b/deployments/libts/linux-pc/CMakeLists.txt
index d15dc76..3aa69ae 100644
--- a/deployments/libts/linux-pc/CMakeLists.txt
+++ b/deployments/libts/linux-pc/CMakeLists.txt
@@ -37,6 +37,8 @@
 		"components/service/common/client"
 		"components/service/common/serializer/protobuf"
 		"components/service/common/provider"
+		"components/service/discovery/provider"
+		"components/service/discovery/provider/serializer/packed-c"
 		"components/service/locator/standalone"
 		"components/service/locator/standalone/services/crypto"
 		"components/service/locator/standalone/services/internal-trusted-storage"
diff --git a/deployments/psa-api-test/psa-api-test.cmake b/deployments/psa-api-test/psa-api-test.cmake
index 0a84c65..ecb3a9c 100644
--- a/deployments/psa-api-test/psa-api-test.cmake
+++ b/deployments/psa-api-test/psa-api-test.cmake
@@ -29,6 +29,7 @@
 		"components/common/tlv"
 		"components/service/common/client"
 		"components/service/common/include"
+		"components/service/discovery/client"
 		"components/rpc/common/caller"
 		"components/rpc/common/logging"
 )
diff --git a/deployments/se-proxy/opteesp/CMakeLists.txt b/deployments/se-proxy/opteesp/CMakeLists.txt
index cb34e26..b5bdc64 100644
--- a/deployments/se-proxy/opteesp/CMakeLists.txt
+++ b/deployments/se-proxy/opteesp/CMakeLists.txt
@@ -57,6 +57,8 @@
 		"components/service/common/include"
 		"components/service/common/serializer/protobuf"
 		"components/service/common/provider"
+		"components/service/discovery/provider"
+		"components/service/discovery/provider/serializer/packed-c"
 		"components/service/crypto/provider"
 		"components/service/crypto/provider/serializer/protobuf"
 		"components/service/crypto/provider/serializer/packed-c"
diff --git a/deployments/ts-service-test/ts-service-test.cmake b/deployments/ts-service-test/ts-service-test.cmake
index 9b72089..dfe0bb1 100644
--- a/deployments/ts-service-test/ts-service-test.cmake
+++ b/deployments/ts-service-test/ts-service-test.cmake
@@ -30,6 +30,8 @@
 		"components/common/tlv"
 		"components/service/common/client"
 		"components/service/common/include"
+		"components/service/discovery/client"
+		"components/service/discovery/test/service"
 		"components/service/crypto/include"
 		"components/service/crypto/test/service"
 		"components/service/crypto/test/service/protobuf"