You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesatee.apache.org by ms...@apache.org on 2019/11/26 23:13:04 UTC

[incubator-mesatee] branch master updated: Reorgnize release folder (#102)

This is an automated email from the ASF dual-hosted git repository.

mssun pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-mesatee.git


The following commit(s) were added to refs/heads/master by this push:
     new 9cb1376  Reorgnize release folder (#102)
9cb1376 is described below

commit 9cb1376318f8db8b19589fa7cd5c113a4f371121
Author: Rundong Zhou <ru...@gmail.com>
AuthorDate: Tue Nov 26 15:12:58 2019 -0800

    Reorgnize release folder (#102)
    
    - reorganize release directory
    - remove toolchain_deps
---
 CMakeLists.txt                                     |  2 +-
 {toolchain_deps => cert}/Enclave_private.pem       |  0
 cmake/MesaTEEGenVars.cmake                         | 24 +++++++++++++++++-----
 cmake/UtilTargets.cmake                            |  3 ++-
 {toolchain_deps => cmake/scripts}/Enclave.lds      |  0
 cmake/scripts/gen_cov.sh                           |  2 +-
 cmake/scripts/gen_enclave_sig.sh                   |  4 +++-
 {toolchain_deps => cmake/scripts}/llvm-gcov        |  0
 cmake/scripts/prep.sh                              | 13 +++++++++---
 cmake/scripts/setup_cmake_tomls                    |  2 +-
 cmake/scripts/sgx_link_sign.sh                     |  6 +++---
 .../tomls}/Cargo.sgx_trusted_lib.toml              |  0
 .../tomls}/Cargo.sgx_untrusted_app.toml            |  0
 .../tomls}/Cargo.unix_app.toml                     |  0
 config.toml                                        |  8 ++++----
 docs/repo_structure.md                             |  2 +-
 examples/dbscan/dbscan_demo.sh                     |  2 +-
 examples/dbscan/src/main.rs                        | 14 ++++++-------
 .../gaussian_mixture_model_demo.sh                 |  2 +-
 examples/gaussian_mixture_model/src/main.rs        | 14 ++++++-------
 .../gaussian_processes/gaussian_processes_demo.sh  |  2 +-
 examples/gaussian_processes/src/main.rs            | 14 ++++++-------
 examples/gbdt/gbdt_demo.sh                         |  2 +-
 examples/gbdt/src/main.rs                          | 14 ++++++-------
 examples/gen_linear_model/gen_linear_model_demo.sh |  2 +-
 examples/gen_linear_model/src/main.rs              | 14 ++++++-------
 examples/image_resizing/image_resize_demo.sh       |  2 +-
 examples/image_resizing/src/main.rs                | 14 ++++++-------
 examples/kmeans/kmeans_demo.sh                     |  2 +-
 examples/kmeans/src/main.rs                        | 14 ++++++-------
 examples/lin_reg/lin_reg_demo.sh                   |  2 +-
 examples/lin_reg/src/main.rs                       | 14 ++++++-------
 examples/logistic_reg/logistic_reg_demo.sh         |  2 +-
 examples/logistic_reg/src/main.rs                  | 14 ++++++-------
 examples/naive_bayes/naive_bayes_demo.sh           |  2 +-
 examples/naive_bayes/src/main.rs                   | 14 ++++++-------
 examples/neural_net/neural_net_demo.sh             |  2 +-
 examples/neural_net/src/main.rs                    | 14 ++++++-------
 examples/online_decrypt/online_decrypt_demo.sh     |  2 +-
 examples/online_decrypt/src/main.rs                | 14 ++++++-------
 .../private_join_and_compute/four_party_bench.sh   |  2 +-
 .../private_join_and_compute/four_party_demo.sh    |  2 +-
 examples/private_join_and_compute/src/main.rs      | 14 ++++++-------
 .../private_join_and_compute/three_party_demo.sh   |  2 +-
 examples/py_file/py_file.sh                        |  2 +-
 examples/py_file/src/main.rs                       | 14 ++++++-------
 examples/py_logistic_reg/py_logistic_reg.sh        |  2 +-
 examples/py_logistic_reg/src/main.rs               | 14 ++++++-------
 examples/py_matrix_multiply/py_matrix_multiply.sh  |  2 +-
 examples/py_matrix_multiply/src/main.rs            | 14 ++++++-------
 examples/quickstart/run.sh                         |  2 +-
 examples/quickstart/src/main.rs                    | 14 ++++++-------
 examples/quickstart_c/main.c                       | 14 ++++++-------
 examples/quickstart_c/run.sh                       |  2 +-
 examples/rsa_sign/rsa_sign.sh                      |  2 +-
 examples/rsa_sign/src/main.rs                      | 14 ++++++-------
 examples/svm/src/main.rs                           | 14 ++++++-------
 examples/svm/svm_demo.sh                           |  2 +-
 mesatee_config/build.rs                            |  2 +-
 tests/functional_test.sh                           |  2 +-
 tests/integration_test.sh                          |  4 ++--
 61 files changed, 211 insertions(+), 187 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index f47dc3d..14a6676 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -28,7 +28,7 @@ set(SGX_MODULE_PATHS mesatee_services/kms mesatee_services/tdfs mesatee_services
 # AUTO-GENERATE VARS
 ## parse the unix apps to build
 parse_cargo_packages(UNIX_APPS
-    CARGO_TOML_PATH ${PROJECT_SOURCE_DIR}/toolchain_deps/Cargo.unix_app.toml
+    CARGO_TOML_PATH ${PROJECT_SOURCE_DIR}/cmake/tomls/Cargo.unix_app.toml
 )
 
 include(MesaTEEGenVars)
diff --git a/toolchain_deps/Enclave_private.pem b/cert/Enclave_private.pem
similarity index 100%
rename from toolchain_deps/Enclave_private.pem
rename to cert/Enclave_private.pem
diff --git a/cmake/MesaTEEGenVars.cmake b/cmake/MesaTEEGenVars.cmake
index 0bf3120..a87a9a8 100644
--- a/cmake/MesaTEEGenVars.cmake
+++ b/cmake/MesaTEEGenVars.cmake
@@ -2,13 +2,16 @@ set(MESATEE_PROJECT_ROOT ${PROJECT_SOURCE_DIR})
 set(MESATEE_BUILD_ROOT ${PROJECT_BINARY_DIR})
 set(MESATEE_OUT_DIR ${PROJECT_BINARY_DIR}/intermediate)
 set(MESATEE_INSTALL_DIR ${PROJECT_SOURCE_DIR}/release)
-set(MESATEE_SERVICE_INSTALL_DIR ${MESATEE_INSTALL_DIR}/service)
-set(MESATEE_EXAMPLE_INSTALL_DIR ${MESATEE_INSTALL_DIR}/example)
+set(MESATEE_SERVICE_INSTALL_DIR ${MESATEE_INSTALL_DIR}/services)
+set(MESATEE_EXAMPLE_INSTALL_DIR ${MESATEE_INSTALL_DIR}/examples)
+set(MESATEE_BIN_INSTALL_DIR ${MESATEE_INSTALL_DIR}/bin)
 set(MESATEE_LIB_INSTALL_DIR ${MESATEE_INSTALL_DIR}/lib)
+set(MESATEE_DOC_INSTALL_DIR ${MESATEE_INSTALL_DIR}/docs)
+set(MESATEE_TEST_INSTALL_DIR ${MESATEE_INSTALL_DIR}/tests)
 set(MESATEE_AUDITORS_DIR ${MESATEE_SERVICE_INSTALL_DIR}/auditors)
+set(MESATEE_EXAMPLE_AUDITORS_DIR ${MESATEE_EXAMPLE_INSTALL_DIR}/auditors)
 set(MESATEE_TARGET_DIR ${PROJECT_BINARY_DIR}/target)
 
-set(TOOLCHAIN_DEPS_DIR ${PROJECT_SOURCE_DIR}/toolchain_deps)
 set(THIRD_PARTY_DIR ${PROJECT_SOURCE_DIR}/third_party)
 set(UNTRUSTED_TARGET_DIR ${MESATEE_TARGET_DIR}/untrusted)
 set(UNIX_TARGET_DIR ${MESATEE_TARGET_DIR}/unix)
@@ -109,9 +112,13 @@ set(MESATEE_COMMON_ENVS
     MESATEE_OUT_DIR=${MESATEE_OUT_DIR}
     MESATEE_SERVICE_INSTALL_DIR=${MESATEE_SERVICE_INSTALL_DIR}
     MESATEE_EXAMPLE_INSTALL_DIR=${MESATEE_EXAMPLE_INSTALL_DIR}
+    MESATEE_BIN_INSTALL_DIR=${MESATEE_BIN_INSTALL_DIR}
     MESATEE_LIB_INSTALL_DIR=${MESATEE_LIB_INSTALL_DIR}
-    MESATEE_TARGET_DIR=${MESATEE_TARGET_DIR}
+    MESATEE_DOC_INSTALL_DIR=${MESATEE_DOC_INSTALL_DIR}
+    MESATEE_TEST_INSTALL_DIR=${MESATEE_TEST_INSTALL_DIR}
     MESATEE_AUDITORS_DIR=${MESATEE_AUDITORS_DIR}
+    MESATEE_EXAMPLE_AUDITORS_DIR=${MESATEE_EXAMPLE_AUDITORS_DIR}
+    MESATEE_TARGET_DIR=${MESATEE_TARGET_DIR}
     MESATEE_CFG_DIR=${PROJECT_SOURCE_DIR}
     MESATEE_BUILD_CFG_DIR=${PROJECT_SOURCE_DIR}
     SGX_SDK=${SGX_SDK}
@@ -134,6 +141,14 @@ MESAPY_VERSION=${MESAPY_VERSION}
 SGX_EDGER8R=${SGX_EDGER8R}
 MT_EDL_FILE=${MT_EDL_FILE}
 CMAKE_AR=${CMAKE_AR}
+MESATEE_SERVICE_INSTALL_DIR=${MESATEE_SERVICE_INSTALL_DIR}
+MESATEE_EXAMPLE_INSTALL_DIR=${MESATEE_EXAMPLE_INSTALL_DIR}
+MESATEE_BIN_INSTALL_DIR=${MESATEE_BIN_INSTALL_DIR}
+MESATEE_LIB_INSTALL_DIR=${MESATEE_LIB_INSTALL_DIR}
+MESATEE_DOC_INSTALL_DIR=${MESATEE_DOC_INSTALL_DIR}
+MESATEE_TEST_INSTALL_DIR=${MESATEE_TEST_INSTALL_DIR}
+MESATEE_AUDITORS_DIR=${MESATEE_AUDITORS_DIR}
+MESATEE_EXAMPLE_AUDITORS_DIR=${MESATEE_EXAMPLE_AUDITORS_DIR}
 )
 
 set(TARGET_SGXLIB_ENVS
@@ -144,7 +159,6 @@ Service_Library_Name=${Service_Library_Name}
 Trts_Library_Name=${Trts_Library_Name}
 TRUSTED_TARGET_DIR=${TRUSTED_TARGET_DIR}
 TARGET=${TARGET}
-TOOLCHAIN_DEPS_DIR=${TOOLCHAIN_DEPS_DIR}
 )
 
 message("SGX_SDK=${SGX_SDK}")
diff --git a/cmake/UtilTargets.cmake b/cmake/UtilTargets.cmake
index 25367ba..916f0c0 100644
--- a/cmake/UtilTargets.cmake
+++ b/cmake/UtilTargets.cmake
@@ -39,7 +39,8 @@ add_custom_target(cov-clean
 set_property(DIRECTORY PROPERTY ADDITIONAL_MAKE_CLEAN_FILES
    "${MESATEE_INSTALL_DIR}"
    "${MESATEE_OUT_DIR}"
-   "${MESATEE_TARGET_DIR}")
+   "${MESATEE_TARGET_DIR}"
+   "${PROJECT_BINARY_DIR}/cmake_tomls")
 
 # doc target
 add_custom_target(doc
diff --git a/toolchain_deps/Enclave.lds b/cmake/scripts/Enclave.lds
similarity index 100%
rename from toolchain_deps/Enclave.lds
rename to cmake/scripts/Enclave.lds
diff --git a/cmake/scripts/gen_cov.sh b/cmake/scripts/gen_cov.sh
index 4e1c089..6d884b5 100755
--- a/cmake/scripts/gen_cov.sh
+++ b/cmake/scripts/gen_cov.sh
@@ -8,7 +8,7 @@ done
 
 
 LCOV=lcov
-LCOVOPT="--gcov-tool ${MESATEE_PROJECT_ROOT}/toolchain_deps/llvm-gcov"
+LCOVOPT="--gcov-tool ${MESATEE_PROJECT_ROOT}/cmake/scripts/llvm-gcov"
 GENHTML=genhtml
 
 cd ${MESATEE_PROJECT_ROOT}
diff --git a/cmake/scripts/gen_enclave_sig.sh b/cmake/scripts/gen_enclave_sig.sh
index d9c119e..3c91a19 100755
--- a/cmake/scripts/gen_enclave_sig.sh
+++ b/cmake/scripts/gen_enclave_sig.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 set -e
-REQUIRED_ENVS=("MESATEE_OUT_DIR" "MESATEE_AUDITORS_DIR" "MESATEE_SERVICE_INSTALL_DIR")
+REQUIRED_ENVS=("MESATEE_OUT_DIR" "MESATEE_AUDITORS_DIR" "MESATEE_EXAMPLE_AUDITORS_DIR" "MESATEE_SERVICE_INSTALL_DIR")
 for var in "${REQUIRED_ENVS[@]}"; do
     [ -z "${!var}" ] && echo "Please set ${var}" && exit -1
 done
@@ -15,3 +15,5 @@ openssl dgst -sha256 \
         -out ${MESATEE_AUDITORS_DIR}/${auditor}/${auditor}.sign.sha256 \
         ${MESATEE_SERVICE_INSTALL_DIR}/enclave_info.txt;
 done
+
+cp -RT ${MESATEE_AUDITORS_DIR}/ ${MESATEE_EXAMPLE_AUDITORS_DIR}/
diff --git a/toolchain_deps/llvm-gcov b/cmake/scripts/llvm-gcov
similarity index 100%
rename from toolchain_deps/llvm-gcov
rename to cmake/scripts/llvm-gcov
diff --git a/cmake/scripts/prep.sh b/cmake/scripts/prep.sh
index 0d9abb1..2d4f81b 100755
--- a/cmake/scripts/prep.sh
+++ b/cmake/scripts/prep.sh
@@ -3,16 +3,23 @@ set -e
 REQUIRED_ENVS=("CMAKE_SOURCE_DIR" "CMAKE_BINARY_DIR" 
 "MESATEE_OUT_DIR" "MESATEE_TARGET_DIR" "RUSTUP_TOOLCHAIN" "MESAPY_VERSION"
 "SGX_EDGER8R" "MT_EDL_FILE" "SGX_SDK" "RUST_SGX_SDK" "CMAKE_C_COMPILER"
-"CMAKE_AR" "SGX_UNTRUSTED_CFLAGS" "SGX_TRUSTED_CFLAGS" "MT_SCRIPT_DIR")
+"CMAKE_AR" "SGX_UNTRUSTED_CFLAGS" "SGX_TRUSTED_CFLAGS" "MT_SCRIPT_DIR"
+"MESATEE_SERVICE_INSTALL_DIR" "MESATEE_EXAMPLE_INSTALL_DIR" "MESATEE_BIN_INSTALL_DIR"
+"MESATEE_LIB_INSTALL_DIR" "MESATEE_DOC_INSTALL_DIR" "MESATEE_TEST_INSTALL_DIR"
+"MESATEE_AUDITORS_DIR" "MESATEE_EXAMPLE_AUDITORS_DIR"
+)
 
 for var in "${REQUIRED_ENVS[@]}"; do
     [ -z "${!var}" ] && echo "Please set ${var}" && exit -1
 done
 
 ${MT_SCRIPT_DIR}/setup_cmake_tomls ${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} 
-mkdir -p ${MESATEE_OUT_DIR} ${MESATEE_TARGET_DIR} ${MESATEE_EXAMPLE_INSTALL_DIR} ${MESATEE_SERVICE_INSTALL_DIR} ${MESATEE_LIB_INSTALL_DIR} ${MESATEE_SERVICE_INSTALL_DIR}/auditors
+mkdir -p ${MESATEE_OUT_DIR} ${MESATEE_TARGET_DIR} ${MESATEE_SERVICE_INSTALL_DIR} \
+    ${MESATEE_EXAMPLE_INSTALL_DIR} ${MESATEE_BIN_INSTALL_DIR} ${MESATEE_LIB_INSTALL_DIR} \
+    ${MESATEE_DOC_INSTALL_DIR} ${MESATEE_TEST_INSTALL_DIR} ${MESATEE_AUDITORS_DIR} \
+    ${MESATEE_EXAMPLE_AUDITORS_DIR}
 # copy auditors to install directory to make it easy to package all built things
-cp -RT ${CMAKE_SOURCE_DIR}/auditors/ ${MESATEE_SERVICE_INSTALL_DIR}/auditors/
+cp -RT ${CMAKE_SOURCE_DIR}/auditors/ ${MESATEE_AUDITORS_DIR}/
 # create the following symlinks to make remapped paths accessible and avoid repeated building
 mkdir -p /tmp/mesatee_symlinks
 ln -snf ${HOME}/.cargo /tmp/mesatee_symlinks/cargo_home
diff --git a/cmake/scripts/setup_cmake_tomls b/cmake/scripts/setup_cmake_tomls
index 5f12ccf..19c6513 100755
--- a/cmake/scripts/setup_cmake_tomls
+++ b/cmake/scripts/setup_cmake_tomls
@@ -49,7 +49,7 @@ def create_symlinks(root_dir, build_dir):
         cate_dir = '{build_dir}/cmake_tomls/{cate}'.format(
             build_dir=build_dir, cate=cate)
         cmd = 'mkdir -p {cate_dir} && [ ! -f {cate_dir}/Cargo.toml ] && \
-            ln -s {root_dir}/toolchain_deps/Cargo.{cate}.toml \
+            ln -s {root_dir}/cmake/tomls/Cargo.{cate}.toml \
             {cate_dir}/Cargo.toml'.format(root_dir=root_dir, cate=cate, cate_dir=cate_dir)
         exec_cmd(cmd)
 
diff --git a/cmake/scripts/sgx_link_sign.sh b/cmake/scripts/sgx_link_sign.sh
index 82c49e2..5fae616 100755
--- a/cmake/scripts/sgx_link_sign.sh
+++ b/cmake/scripts/sgx_link_sign.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 set -e
-REQUIRED_ENVS=("TOOLCHAIN_DEPS_DIR" "CMAKE_C_COMPILER" "CUR_MODULE_NAME" "CUR_MODULE_PATH"
+REQUIRED_ENVS=("CMAKE_C_COMPILER" "CUR_MODULE_NAME" "CUR_MODULE_PATH"
 "MESATEE_SERVICE_INSTALL_DIR" "MESATEE_OUT_DIR" "MESATEE_PROJECT_ROOT" "Service_Library_Name"
 "SGX_COMMON_CFLAGS" "SGX_ENCLAVE_SIGNER" "SGX_LIBRARY_PATH" "TARGET" "Trts_Library_Name"
 "TRUSTED_TARGET_DIR")
@@ -32,8 +32,8 @@ ${CMAKE_C_COMPILER} libEnclave_t.o -o \
     -Wl,-pie,-eenclave_entry -Wl,--export-dynamic  \
     -Wl,--defsym,__ImageBase=0 \
     -Wl,--gc-sections \
-    -Wl,--version-script=${TOOLCHAIN_DEPS_DIR}/Enclave.lds
-${SGX_ENCLAVE_SIGNER} sign -key ${TOOLCHAIN_DEPS_DIR}/Enclave_private.pem \
+    -Wl,--version-script=${MESATEE_PROJECT_ROOT}/cmake/scripts/Enclave.lds
+${SGX_ENCLAVE_SIGNER} sign -key ${MESATEE_PROJECT_ROOT}/cert/Enclave_private.pem \
     -enclave ${CUR_MODULE_NAME}.enclave.so \
     -out ${MESATEE_SERVICE_INSTALL_DIR}/${CUR_MODULE_NAME}.enclave.signed.so \
     -config ${MESATEE_PROJECT_ROOT}/${CUR_MODULE_PATH}/sgx_trusted_lib/Enclave.config.xml \
diff --git a/toolchain_deps/Cargo.sgx_trusted_lib.toml b/cmake/tomls/Cargo.sgx_trusted_lib.toml
similarity index 100%
rename from toolchain_deps/Cargo.sgx_trusted_lib.toml
rename to cmake/tomls/Cargo.sgx_trusted_lib.toml
diff --git a/toolchain_deps/Cargo.sgx_untrusted_app.toml b/cmake/tomls/Cargo.sgx_untrusted_app.toml
similarity index 100%
rename from toolchain_deps/Cargo.sgx_untrusted_app.toml
rename to cmake/tomls/Cargo.sgx_untrusted_app.toml
diff --git a/toolchain_deps/Cargo.unix_app.toml b/cmake/tomls/Cargo.unix_app.toml
similarity index 100%
rename from toolchain_deps/Cargo.unix_app.toml
rename to cmake/tomls/Cargo.unix_app.toml
diff --git a/config.toml b/config.toml
index 81ec67d..e5b0739 100644
--- a/config.toml
+++ b/config.toml
@@ -62,7 +62,7 @@ key = { env = "IAS_KEY" }
 # This section configures the auditors.
 # This is a required section.
 [audited_enclave_config]
-enclave_info = { path = "release/service/enclave_info.txt" }
-signature_a = { path = "release/service/auditors/godzilla/godzilla.sign.sha256" }
-signature_b = { path = "release/service/auditors/optimus_prime/optimus_prime.sign.sha256" }
-signature_c = { path = "release/service/auditors/albus_dumbledore/albus_dumbledore.sign.sha256" }
+enclave_info = { path = "release/services/enclave_info.txt" }
+signature_a = { path = "release/services/auditors/godzilla/godzilla.sign.sha256" }
+signature_b = { path = "release/services/auditors/optimus_prime/optimus_prime.sign.sha256" }
+signature_c = { path = "release/services/auditors/albus_dumbledore/albus_dumbledore.sign.sha256" }
diff --git a/docs/repo_structure.md b/docs/repo_structure.md
index a0f3e52..75da215 100644
--- a/docs/repo_structure.md
+++ b/docs/repo_structure.md
@@ -3,7 +3,7 @@
 + Project Root
 	+ [auditors](../auditors)
 		- auditor credentials
-	+ [toolchain_deps](../toolchain_deps)
+	+ [cmake](../cmake)
 		- build scripts/utilities
 	+ [cert](../cert)
 		- pre-generated keys/certificates that are used in the prototype. Note
diff --git a/examples/dbscan/dbscan_demo.sh b/examples/dbscan/dbscan_demo.sh
index b7bbd56..2325b2d 100755
--- a/examples/dbscan/dbscan_demo.sh
+++ b/examples/dbscan/dbscan_demo.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-BIN_DIR=$SCRIPT_DIR/../../release/example
+BIN_DIR=$SCRIPT_DIR/../../release/examples
 BIN=./dbscan
 cd $BIN_DIR
 
diff --git a/examples/dbscan/src/main.rs b/examples/dbscan/src/main.rs
index 413b866..b87f438 100644
--- a/examples/dbscan/src/main.rs
+++ b/examples/dbscan/src/main.rs
@@ -47,16 +47,16 @@ fn print_usage() {
 fn main() {
     let auditors = vec![
         (
-            "../service/auditors/godzilla/godzilla.public.der",
-            "../service/auditors/godzilla/godzilla.sign.sha256",
+            "../services/auditors/godzilla/godzilla.public.der",
+            "../services/auditors/godzilla/godzilla.sign.sha256",
         ),
         (
-            "../service/auditors/optimus_prime/optimus_prime.public.der",
-            "../service/auditors/optimus_prime/optimus_prime.sign.sha256",
+            "../services/auditors/optimus_prime/optimus_prime.public.der",
+            "../services/auditors/optimus_prime/optimus_prime.sign.sha256",
         ),
         (
-            "../service/auditors/albus_dumbledore/albus_dumbledore.public.der",
-            "../service/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.public.der",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
         ),
     ];
 
@@ -81,7 +81,7 @@ fn main() {
     };
 
     let input_string = serde_json::to_string(&input_payload).unwrap();
-    let enclave_info_file_path = "../service/enclave_info.txt";
+    let enclave_info_file_path = "../services/enclave_info.txt";
     let mesatee_enclave_info = MesateeEnclaveInfo::load(auditors, enclave_info_file_path).unwrap();
     let mesatee = Mesatee::new(
         &mesatee_enclave_info,
diff --git a/examples/gaussian_mixture_model/gaussian_mixture_model_demo.sh b/examples/gaussian_mixture_model/gaussian_mixture_model_demo.sh
index 650b11f..862e495 100755
--- a/examples/gaussian_mixture_model/gaussian_mixture_model_demo.sh
+++ b/examples/gaussian_mixture_model/gaussian_mixture_model_demo.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-BIN_DIR=$SCRIPT_DIR/../../release/example
+BIN_DIR=$SCRIPT_DIR/../../release/examples
 BIN=./gaussian_mixture_model
 cd $BIN_DIR
 
diff --git a/examples/gaussian_mixture_model/src/main.rs b/examples/gaussian_mixture_model/src/main.rs
index 26dd17d..a138bd8 100644
--- a/examples/gaussian_mixture_model/src/main.rs
+++ b/examples/gaussian_mixture_model/src/main.rs
@@ -51,16 +51,16 @@ fn print_usage() {
 fn main() {
     let auditors = vec![
         (
-            "../service/auditors/godzilla/godzilla.public.der",
-            "../service/auditors/godzilla/godzilla.sign.sha256",
+            "../services/auditors/godzilla/godzilla.public.der",
+            "../services/auditors/godzilla/godzilla.sign.sha256",
         ),
         (
-            "../service/auditors/optimus_prime/optimus_prime.public.der",
-            "../service/auditors/optimus_prime/optimus_prime.sign.sha256",
+            "../services/auditors/optimus_prime/optimus_prime.public.der",
+            "../services/auditors/optimus_prime/optimus_prime.sign.sha256",
         ),
         (
-            "../service/auditors/albus_dumbledore/albus_dumbledore.public.der",
-            "../service/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.public.der",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
         ),
     ];
 
@@ -90,7 +90,7 @@ fn main() {
     };
 
     let input_string = serde_json::to_string(&input_payload).unwrap();
-    let enclave_info_file_path = "../service/enclave_info.txt";
+    let enclave_info_file_path = "../services/enclave_info.txt";
     let mesatee_enclave_info = MesateeEnclaveInfo::load(auditors, enclave_info_file_path).unwrap();
     let mesatee = Mesatee::new(
         &mesatee_enclave_info,
diff --git a/examples/gaussian_processes/gaussian_processes_demo.sh b/examples/gaussian_processes/gaussian_processes_demo.sh
index 54a3671..3e2d2ff 100755
--- a/examples/gaussian_processes/gaussian_processes_demo.sh
+++ b/examples/gaussian_processes/gaussian_processes_demo.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-BIN_DIR=$SCRIPT_DIR/../../release/example
+BIN_DIR=$SCRIPT_DIR/../../release/examples
 BIN=./gaussian_processes
 cd $BIN_DIR
 
diff --git a/examples/gaussian_processes/src/main.rs b/examples/gaussian_processes/src/main.rs
index f30ada5..9eab28d 100644
--- a/examples/gaussian_processes/src/main.rs
+++ b/examples/gaussian_processes/src/main.rs
@@ -56,16 +56,16 @@ fn print_usage() {
 fn main() {
     let auditors = vec![
         (
-            "../service/auditors/godzilla/godzilla.public.der",
-            "../service/auditors/godzilla/godzilla.sign.sha256",
+            "../services/auditors/godzilla/godzilla.public.der",
+            "../services/auditors/godzilla/godzilla.sign.sha256",
         ),
         (
-            "../service/auditors/optimus_prime/optimus_prime.public.der",
-            "../service/auditors/optimus_prime/optimus_prime.sign.sha256",
+            "../services/auditors/optimus_prime/optimus_prime.public.der",
+            "../services/auditors/optimus_prime/optimus_prime.sign.sha256",
         ),
         (
-            "../service/auditors/albus_dumbledore/albus_dumbledore.public.der",
-            "../service/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.public.der",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
         ),
     ];
 
@@ -97,7 +97,7 @@ fn main() {
     };
 
     let input_string = serde_json::to_string(&input_payload).unwrap();
-    let enclave_info_file_path = "../service/enclave_info.txt";
+    let enclave_info_file_path = "../services/enclave_info.txt";
     let mesatee_enclave_info = MesateeEnclaveInfo::load(auditors, enclave_info_file_path).unwrap();
     let mesatee = Mesatee::new(
         &mesatee_enclave_info,
diff --git a/examples/gbdt/gbdt_demo.sh b/examples/gbdt/gbdt_demo.sh
index e7e77b7..b089a34 100755
--- a/examples/gbdt/gbdt_demo.sh
+++ b/examples/gbdt/gbdt_demo.sh
@@ -1,7 +1,7 @@
 #!/bin/bash
 #!/bin/bash
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-BIN_DIR=$SCRIPT_DIR/../../release/example
+BIN_DIR=$SCRIPT_DIR/../../release/examples
 BIN=./gbdt
 cd $BIN_DIR
 
diff --git a/examples/gbdt/src/main.rs b/examples/gbdt/src/main.rs
index 52307a3..2cc8892 100644
--- a/examples/gbdt/src/main.rs
+++ b/examples/gbdt/src/main.rs
@@ -97,20 +97,20 @@ fn print_usage() {
 fn main() {
     let auditors = vec![
         (
-            "../service/auditors/godzilla/godzilla.public.der",
-            "../service/auditors/godzilla/godzilla.sign.sha256",
+            "../services/auditors/godzilla/godzilla.public.der",
+            "../services/auditors/godzilla/godzilla.sign.sha256",
         ),
         (
-            "../service/auditors/optimus_prime/optimus_prime.public.der",
-            "../service/auditors/optimus_prime/optimus_prime.sign.sha256",
+            "../services/auditors/optimus_prime/optimus_prime.public.der",
+            "../services/auditors/optimus_prime/optimus_prime.sign.sha256",
         ),
         (
-            "../service/auditors/albus_dumbledore/albus_dumbledore.public.der",
-            "../service/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.public.der",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
         ),
     ];
 
-    let enclave_info_file_path = "../service/enclave_info.txt";
+    let enclave_info_file_path = "../services/enclave_info.txt";
 
     let mesatee_enclave_info = MesateeEnclaveInfo::load(auditors, enclave_info_file_path).unwrap();
     let args: Vec<String> = env::args().collect();
diff --git a/examples/gen_linear_model/gen_linear_model_demo.sh b/examples/gen_linear_model/gen_linear_model_demo.sh
index 50a750c..c1b619a 100755
--- a/examples/gen_linear_model/gen_linear_model_demo.sh
+++ b/examples/gen_linear_model/gen_linear_model_demo.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-BIN_DIR=$SCRIPT_DIR/../../release/example
+BIN_DIR=$SCRIPT_DIR/../../release/examples
 BIN=./gen_linear_model
 cd $BIN_DIR
 
diff --git a/examples/gen_linear_model/src/main.rs b/examples/gen_linear_model/src/main.rs
index 0aaa27f..0a9b035 100644
--- a/examples/gen_linear_model/src/main.rs
+++ b/examples/gen_linear_model/src/main.rs
@@ -56,16 +56,16 @@ fn print_usage() {
 fn main() {
     let auditors = vec![
         (
-            "../service/auditors/godzilla/godzilla.public.der",
-            "../service/auditors/godzilla/godzilla.sign.sha256",
+            "../services/auditors/godzilla/godzilla.public.der",
+            "../services/auditors/godzilla/godzilla.sign.sha256",
         ),
         (
-            "../service/auditors/optimus_prime/optimus_prime.public.der",
-            "../service/auditors/optimus_prime/optimus_prime.sign.sha256",
+            "../services/auditors/optimus_prime/optimus_prime.public.der",
+            "../services/auditors/optimus_prime/optimus_prime.sign.sha256",
         ),
         (
-            "../service/auditors/albus_dumbledore/albus_dumbledore.public.der",
-            "../service/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.public.der",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
         ),
     ];
 
@@ -97,7 +97,7 @@ fn main() {
     };
 
     let input_string = serde_json::to_string(&input_payload).unwrap();
-    let enclave_info_file_path = "../service/enclave_info.txt";
+    let enclave_info_file_path = "../services/enclave_info.txt";
     let mesatee_enclave_info = MesateeEnclaveInfo::load(auditors, enclave_info_file_path).unwrap();
     let mesatee = Mesatee::new(
         &mesatee_enclave_info,
diff --git a/examples/image_resizing/image_resize_demo.sh b/examples/image_resizing/image_resize_demo.sh
index a5d93b1..0ba9f66 100755
--- a/examples/image_resizing/image_resize_demo.sh
+++ b/examples/image_resizing/image_resize_demo.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-BIN_DIR=$SCRIPT_DIR/../../release/example
+BIN_DIR=$SCRIPT_DIR/../../release/examples
 
 BIN=./image_resizing
 
diff --git a/examples/image_resizing/src/main.rs b/examples/image_resizing/src/main.rs
index 3a30b2a..bf2c9c7 100644
--- a/examples/image_resizing/src/main.rs
+++ b/examples/image_resizing/src/main.rs
@@ -49,19 +49,19 @@ pub(crate) struct ImageResizePayload {
 fn main() {
     let auditors = vec![
         (
-            "../service/auditors/godzilla/godzilla.public.der",
-            "../service/auditors/godzilla/godzilla.sign.sha256",
+            "../services/auditors/godzilla/godzilla.public.der",
+            "../services/auditors/godzilla/godzilla.sign.sha256",
         ),
         (
-            "../service/auditors/optimus_prime/optimus_prime.public.der",
-            "../service/auditors/optimus_prime/optimus_prime.sign.sha256",
+            "../services/auditors/optimus_prime/optimus_prime.public.der",
+            "../services/auditors/optimus_prime/optimus_prime.sign.sha256",
         ),
         (
-            "../service/auditors/albus_dumbledore/albus_dumbledore.public.der",
-            "../service/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.public.der",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
         ),
     ];
-    let enclave_info_file_path = "../service/enclave_info.txt";
+    let enclave_info_file_path = "../services/enclave_info.txt";
 
     let mesatee_enclave_info = MesateeEnclaveInfo::load(auditors, enclave_info_file_path).unwrap();
 
diff --git a/examples/kmeans/kmeans_demo.sh b/examples/kmeans/kmeans_demo.sh
index 433156e..006a4a2 100755
--- a/examples/kmeans/kmeans_demo.sh
+++ b/examples/kmeans/kmeans_demo.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-BIN_DIR=$SCRIPT_DIR/../../release/example
+BIN_DIR=$SCRIPT_DIR/../../release/examples
 BIN=./kmeans
 cd $BIN_DIR
 
diff --git a/examples/kmeans/src/main.rs b/examples/kmeans/src/main.rs
index 477e23c..3d276fa 100644
--- a/examples/kmeans/src/main.rs
+++ b/examples/kmeans/src/main.rs
@@ -50,16 +50,16 @@ fn print_usage() {
 fn main() {
     let auditors = vec![
         (
-            "../service/auditors/godzilla/godzilla.public.der",
-            "../service/auditors/godzilla/godzilla.sign.sha256",
+            "../services/auditors/godzilla/godzilla.public.der",
+            "../services/auditors/godzilla/godzilla.sign.sha256",
         ),
         (
-            "../service/auditors/optimus_prime/optimus_prime.public.der",
-            "../service/auditors/optimus_prime/optimus_prime.sign.sha256",
+            "../services/auditors/optimus_prime/optimus_prime.public.der",
+            "../services/auditors/optimus_prime/optimus_prime.sign.sha256",
         ),
         (
-            "../service/auditors/albus_dumbledore/albus_dumbledore.public.der",
-            "../service/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.public.der",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
         ),
     ];
 
@@ -82,7 +82,7 @@ fn main() {
     };
     let input_string = serde_json::to_string(&input_payload).unwrap();
 
-    let enclave_info_file_path = "../service/enclave_info.txt";
+    let enclave_info_file_path = "../services/enclave_info.txt";
     let mesatee_enclave_info = MesateeEnclaveInfo::load(auditors, enclave_info_file_path).unwrap();
 
     let mesatee = Mesatee::new(
diff --git a/examples/lin_reg/lin_reg_demo.sh b/examples/lin_reg/lin_reg_demo.sh
index 208ee9a..e2ad75c 100755
--- a/examples/lin_reg/lin_reg_demo.sh
+++ b/examples/lin_reg/lin_reg_demo.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-BIN_DIR=$SCRIPT_DIR/../../release/example
+BIN_DIR=$SCRIPT_DIR/../../release/examples
 BIN=./lin_reg
 cd $BIN_DIR
 
diff --git a/examples/lin_reg/src/main.rs b/examples/lin_reg/src/main.rs
index 1f3f9c4..2f861e0 100644
--- a/examples/lin_reg/src/main.rs
+++ b/examples/lin_reg/src/main.rs
@@ -56,16 +56,16 @@ fn print_usage() {
 fn main() {
     let auditors = vec![
         (
-            "../service/auditors/godzilla/godzilla.public.der",
-            "../service/auditors/godzilla/godzilla.sign.sha256",
+            "../services/auditors/godzilla/godzilla.public.der",
+            "../services/auditors/godzilla/godzilla.sign.sha256",
         ),
         (
-            "../service/auditors/optimus_prime/optimus_prime.public.der",
-            "../service/auditors/optimus_prime/optimus_prime.sign.sha256",
+            "../services/auditors/optimus_prime/optimus_prime.public.der",
+            "../services/auditors/optimus_prime/optimus_prime.sign.sha256",
         ),
         (
-            "../service/auditors/albus_dumbledore/albus_dumbledore.public.der",
-            "../service/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.public.der",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
         ),
     ];
 
@@ -97,7 +97,7 @@ fn main() {
     };
 
     let input_string = serde_json::to_string(&input_payload).unwrap();
-    let enclave_info_file_path = "../service/enclave_info.txt";
+    let enclave_info_file_path = "../services/enclave_info.txt";
     let mesatee_enclave_info = MesateeEnclaveInfo::load(auditors, enclave_info_file_path).unwrap();
     let mesatee = Mesatee::new(
         &mesatee_enclave_info,
diff --git a/examples/logistic_reg/logistic_reg_demo.sh b/examples/logistic_reg/logistic_reg_demo.sh
index 64f57ae..353b294 100755
--- a/examples/logistic_reg/logistic_reg_demo.sh
+++ b/examples/logistic_reg/logistic_reg_demo.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-BIN_DIR=$SCRIPT_DIR/../../release/example
+BIN_DIR=$SCRIPT_DIR/../../release/examples
 BIN=./logistic_reg
 cd $BIN_DIR
 
diff --git a/examples/logistic_reg/src/main.rs b/examples/logistic_reg/src/main.rs
index 7449689..9f85062 100644
--- a/examples/logistic_reg/src/main.rs
+++ b/examples/logistic_reg/src/main.rs
@@ -78,20 +78,20 @@ fn print_usage() {
 fn main() {
     let auditors = vec![
         (
-            "../service/auditors/godzilla/godzilla.public.der",
-            "../service/auditors/godzilla/godzilla.sign.sha256",
+            "../services/auditors/godzilla/godzilla.public.der",
+            "../services/auditors/godzilla/godzilla.sign.sha256",
         ),
         (
-            "../service/auditors/optimus_prime/optimus_prime.public.der",
-            "../service/auditors/optimus_prime/optimus_prime.sign.sha256",
+            "../services/auditors/optimus_prime/optimus_prime.public.der",
+            "../services/auditors/optimus_prime/optimus_prime.sign.sha256",
         ),
         (
-            "../service/auditors/albus_dumbledore/albus_dumbledore.public.der",
-            "../service/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.public.der",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
         ),
     ];
 
-    let enclave_info_file_path = "../service/enclave_info.txt";
+    let enclave_info_file_path = "../services/enclave_info.txt";
 
     let mesatee_enclave_info = MesateeEnclaveInfo::load(auditors, enclave_info_file_path).unwrap();
     let args_string: Vec<String> = env::args().collect();
diff --git a/examples/naive_bayes/naive_bayes_demo.sh b/examples/naive_bayes/naive_bayes_demo.sh
index 8e9476f..63d8d68 100755
--- a/examples/naive_bayes/naive_bayes_demo.sh
+++ b/examples/naive_bayes/naive_bayes_demo.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-BIN_DIR=$SCRIPT_DIR/../../release/example
+BIN_DIR=$SCRIPT_DIR/../../release/examples
 BIN=./naive_bayes
 cd $BIN_DIR
 
diff --git a/examples/naive_bayes/src/main.rs b/examples/naive_bayes/src/main.rs
index 82bca05..509594a 100644
--- a/examples/naive_bayes/src/main.rs
+++ b/examples/naive_bayes/src/main.rs
@@ -51,16 +51,16 @@ fn print_usage() {
 fn main() {
     let auditors = vec![
         (
-            "../service/auditors/godzilla/godzilla.public.der",
-            "../service/auditors/godzilla/godzilla.sign.sha256",
+            "../services/auditors/godzilla/godzilla.public.der",
+            "../services/auditors/godzilla/godzilla.sign.sha256",
         ),
         (
-            "../service/auditors/optimus_prime/optimus_prime.public.der",
-            "../service/auditors/optimus_prime/optimus_prime.sign.sha256",
+            "../services/auditors/optimus_prime/optimus_prime.public.der",
+            "../services/auditors/optimus_prime/optimus_prime.sign.sha256",
         ),
         (
-            "../service/auditors/albus_dumbledore/albus_dumbledore.public.der",
-            "../service/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.public.der",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
         ),
     ];
 
@@ -89,7 +89,7 @@ fn main() {
     };
 
     let input_string = serde_json::to_string(&input_payload).unwrap();
-    let enclave_info_file_path = "../service/enclave_info.txt";
+    let enclave_info_file_path = "../services/enclave_info.txt";
     let mesatee_enclave_info = MesateeEnclaveInfo::load(auditors, enclave_info_file_path).unwrap();
     let mesatee = Mesatee::new(
         &mesatee_enclave_info,
diff --git a/examples/neural_net/neural_net_demo.sh b/examples/neural_net/neural_net_demo.sh
index b010913..04d4a83 100755
--- a/examples/neural_net/neural_net_demo.sh
+++ b/examples/neural_net/neural_net_demo.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-BIN_DIR=$SCRIPT_DIR/../../release/example
+BIN_DIR=$SCRIPT_DIR/../../release/examples
 BIN=./neural_net
 cd $BIN_DIR
 
diff --git a/examples/neural_net/src/main.rs b/examples/neural_net/src/main.rs
index e481a63..26e22dc 100644
--- a/examples/neural_net/src/main.rs
+++ b/examples/neural_net/src/main.rs
@@ -55,16 +55,16 @@ fn print_usage() {
 fn main() {
     let auditors = vec![
         (
-            "../service/auditors/godzilla/godzilla.public.der",
-            "../service/auditors/godzilla/godzilla.sign.sha256",
+            "../services/auditors/godzilla/godzilla.public.der",
+            "../services/auditors/godzilla/godzilla.sign.sha256",
         ),
         (
-            "../service/auditors/optimus_prime/optimus_prime.public.der",
-            "../service/auditors/optimus_prime/optimus_prime.sign.sha256",
+            "../services/auditors/optimus_prime/optimus_prime.public.der",
+            "../services/auditors/optimus_prime/optimus_prime.sign.sha256",
         ),
         (
-            "../service/auditors/albus_dumbledore/albus_dumbledore.public.der",
-            "../service/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.public.der",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
         ),
     ];
 
@@ -96,7 +96,7 @@ fn main() {
     };
 
     let input_string = serde_json::to_string(&input_payload).unwrap();
-    let enclave_info_file_path = "../service/enclave_info.txt";
+    let enclave_info_file_path = "../services/enclave_info.txt";
     let mesatee_enclave_info = MesateeEnclaveInfo::load(auditors, enclave_info_file_path).unwrap();
     let mesatee = Mesatee::new(
         &mesatee_enclave_info,
diff --git a/examples/online_decrypt/online_decrypt_demo.sh b/examples/online_decrypt/online_decrypt_demo.sh
index fcdfd73..ff606a9 100755
--- a/examples/online_decrypt/online_decrypt_demo.sh
+++ b/examples/online_decrypt/online_decrypt_demo.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-BIN_DIR=$SCRIPT_DIR/../../release/example
+BIN_DIR=$SCRIPT_DIR/../../release/examples
 BIN=./online_decrypt
 cd $BIN_DIR
 
diff --git a/examples/online_decrypt/src/main.rs b/examples/online_decrypt/src/main.rs
index bc6e787..2b6ae9b 100644
--- a/examples/online_decrypt/src/main.rs
+++ b/examples/online_decrypt/src/main.rs
@@ -142,19 +142,19 @@ fn online_decrypt(
 fn main() {
     let auditors = vec![
         (
-            "../service/auditors/godzilla/godzilla.public.der",
-            "../service/auditors/godzilla/godzilla.sign.sha256",
+            "../services/auditors/godzilla/godzilla.public.der",
+            "../services/auditors/godzilla/godzilla.sign.sha256",
         ),
         (
-            "../service/auditors/optimus_prime/optimus_prime.public.der",
-            "../service/auditors/optimus_prime/optimus_prime.sign.sha256",
+            "../services/auditors/optimus_prime/optimus_prime.public.der",
+            "../services/auditors/optimus_prime/optimus_prime.sign.sha256",
         ),
         (
-            "../service/auditors/albus_dumbledore/albus_dumbledore.public.der",
-            "../service/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.public.der",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
         ),
     ];
-    let enclave_info_file_path = "../service/enclave_info.txt";
+    let enclave_info_file_path = "../services/enclave_info.txt";
 
     let mesatee_enclave_info = MesateeEnclaveInfo::load(auditors, enclave_info_file_path).unwrap();
 
diff --git a/examples/private_join_and_compute/four_party_bench.sh b/examples/private_join_and_compute/four_party_bench.sh
index 3e19dde..555beba 100755
--- a/examples/private_join_and_compute/four_party_bench.sh
+++ b/examples/private_join_and_compute/four_party_bench.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-BIN_DIR=$SCRIPT_DIR/../../release/example
+BIN_DIR=$SCRIPT_DIR/../../release/examples
 BIN=./private_join_and_compute
 
 cd $BIN_DIR
diff --git a/examples/private_join_and_compute/four_party_demo.sh b/examples/private_join_and_compute/four_party_demo.sh
index a976fea..8350f7f 100755
--- a/examples/private_join_and_compute/four_party_demo.sh
+++ b/examples/private_join_and_compute/four_party_demo.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-BIN_DIR=$SCRIPT_DIR/../../release/example
+BIN_DIR=$SCRIPT_DIR/../../release/examples
 BIN=./private_join_and_compute
 
 cd $BIN_DIR
diff --git a/examples/private_join_and_compute/src/main.rs b/examples/private_join_and_compute/src/main.rs
index 390e11f..93f5302 100644
--- a/examples/private_join_and_compute/src/main.rs
+++ b/examples/private_join_and_compute/src/main.rs
@@ -124,19 +124,19 @@ fn get_result(info: &MesateeEnclaveInfo, user_id: &str, user_token: &str, task_i
 fn main() {
     let auditors = vec![
         (
-            "../service/auditors/godzilla/godzilla.public.der",
-            "../service/auditors/godzilla/godzilla.sign.sha256",
+            "../services/auditors/godzilla/godzilla.public.der",
+            "../services/auditors/godzilla/godzilla.sign.sha256",
         ),
         (
-            "../service/auditors/optimus_prime/optimus_prime.public.der",
-            "../service/auditors/optimus_prime/optimus_prime.sign.sha256",
+            "../services/auditors/optimus_prime/optimus_prime.public.der",
+            "../services/auditors/optimus_prime/optimus_prime.sign.sha256",
         ),
         (
-            "../service/auditors/albus_dumbledore/albus_dumbledore.public.der",
-            "../service/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.public.der",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
         ),
     ];
-    let enclave_info_file_path = "../service/enclave_info.txt";
+    let enclave_info_file_path = "../services/enclave_info.txt";
 
     let mesatee_enclave_info = MesateeEnclaveInfo::load(auditors, enclave_info_file_path).unwrap();
 
diff --git a/examples/private_join_and_compute/three_party_demo.sh b/examples/private_join_and_compute/three_party_demo.sh
index 9cd590b..1a6aa18 100755
--- a/examples/private_join_and_compute/three_party_demo.sh
+++ b/examples/private_join_and_compute/three_party_demo.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-BIN_DIR=$SCRIPT_DIR/../../release/example
+BIN_DIR=$SCRIPT_DIR/../../release/examples
 BIN=./private_join_and_compute
 
 cd $BIN_DIR
diff --git a/examples/py_file/py_file.sh b/examples/py_file/py_file.sh
index 54f3988..5555a1e 100755
--- a/examples/py_file/py_file.sh
+++ b/examples/py_file/py_file.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-BIN_DIR=$SCRIPT_DIR/../../release/example
+BIN_DIR=$SCRIPT_DIR/../../release/examples
 BIN=./py_file
 cd $BIN_DIR
 
diff --git a/examples/py_file/src/main.rs b/examples/py_file/src/main.rs
index b62090f..a50a8f0 100644
--- a/examples/py_file/src/main.rs
+++ b/examples/py_file/src/main.rs
@@ -29,19 +29,19 @@ lazy_static! {
 fn main() {
     let auditors = vec![
         (
-            "../service/auditors/godzilla/godzilla.public.der",
-            "../service/auditors/godzilla/godzilla.sign.sha256",
+            "../services/auditors/godzilla/godzilla.public.der",
+            "../services/auditors/godzilla/godzilla.sign.sha256",
         ),
         (
-            "../service/auditors/optimus_prime/optimus_prime.public.der",
-            "../service/auditors/optimus_prime/optimus_prime.sign.sha256",
+            "../services/auditors/optimus_prime/optimus_prime.public.der",
+            "../services/auditors/optimus_prime/optimus_prime.sign.sha256",
         ),
         (
-            "../service/auditors/albus_dumbledore/albus_dumbledore.public.der",
-            "../service/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.public.der",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
         ),
     ];
-    let enclave_info_file_path = "../service/enclave_info.txt";
+    let enclave_info_file_path = "../services/enclave_info.txt";
     let info = MesateeEnclaveInfo::load(auditors, enclave_info_file_path).unwrap();
 
     let args_string: Vec<String> = env::args().collect();
diff --git a/examples/py_logistic_reg/py_logistic_reg.sh b/examples/py_logistic_reg/py_logistic_reg.sh
index fd43407..6859eab 100755
--- a/examples/py_logistic_reg/py_logistic_reg.sh
+++ b/examples/py_logistic_reg/py_logistic_reg.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-BIN_DIR=$SCRIPT_DIR/../../release/example
+BIN_DIR=$SCRIPT_DIR/../../release/examples
 BIN=./py_logistic_reg
 cd $BIN_DIR
 
diff --git a/examples/py_logistic_reg/src/main.rs b/examples/py_logistic_reg/src/main.rs
index bade915..cda3b7f 100644
--- a/examples/py_logistic_reg/src/main.rs
+++ b/examples/py_logistic_reg/src/main.rs
@@ -29,19 +29,19 @@ lazy_static! {
 fn main() {
     let auditors = vec![
         (
-            "../service/auditors/godzilla/godzilla.public.der",
-            "../service/auditors/godzilla/godzilla.sign.sha256",
+            "../services/auditors/godzilla/godzilla.public.der",
+            "../services/auditors/godzilla/godzilla.sign.sha256",
         ),
         (
-            "../service/auditors/optimus_prime/optimus_prime.public.der",
-            "../service/auditors/optimus_prime/optimus_prime.sign.sha256",
+            "../services/auditors/optimus_prime/optimus_prime.public.der",
+            "../services/auditors/optimus_prime/optimus_prime.sign.sha256",
         ),
         (
-            "../service/auditors/albus_dumbledore/albus_dumbledore.public.der",
-            "../service/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.public.der",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
         ),
     ];
-    let enclave_info_file_path = "../service/enclave_info.txt";
+    let enclave_info_file_path = "../services/enclave_info.txt";
     let info = MesateeEnclaveInfo::load(auditors, enclave_info_file_path).unwrap();
 
     let args_string: Vec<String> = env::args().collect();
diff --git a/examples/py_matrix_multiply/py_matrix_multiply.sh b/examples/py_matrix_multiply/py_matrix_multiply.sh
index 2f7a3a6..a1cf421 100755
--- a/examples/py_matrix_multiply/py_matrix_multiply.sh
+++ b/examples/py_matrix_multiply/py_matrix_multiply.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-BIN_DIR=$SCRIPT_DIR/../../release/example
+BIN_DIR=$SCRIPT_DIR/../../release/examples
 BIN=./py_matrix_multiply
 cd $BIN_DIR
 
diff --git a/examples/py_matrix_multiply/src/main.rs b/examples/py_matrix_multiply/src/main.rs
index af2aeca..f5ec819 100644
--- a/examples/py_matrix_multiply/src/main.rs
+++ b/examples/py_matrix_multiply/src/main.rs
@@ -29,19 +29,19 @@ lazy_static! {
 fn main() {
     let auditors = vec![
         (
-            "../service/auditors/godzilla/godzilla.public.der",
-            "../service/auditors/godzilla/godzilla.sign.sha256",
+            "../services/auditors/godzilla/godzilla.public.der",
+            "../services/auditors/godzilla/godzilla.sign.sha256",
         ),
         (
-            "../service/auditors/optimus_prime/optimus_prime.public.der",
-            "../service/auditors/optimus_prime/optimus_prime.sign.sha256",
+            "../services/auditors/optimus_prime/optimus_prime.public.der",
+            "../services/auditors/optimus_prime/optimus_prime.sign.sha256",
         ),
         (
-            "../service/auditors/albus_dumbledore/albus_dumbledore.public.der",
-            "../service/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.public.der",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
         ),
     ];
-    let enclave_info_file_path = "../service/enclave_info.txt";
+    let enclave_info_file_path = "../services/enclave_info.txt";
     let info = MesateeEnclaveInfo::load(auditors, enclave_info_file_path).unwrap();
 
     let args_string: Vec<String> = env::args().collect();
diff --git a/examples/quickstart/run.sh b/examples/quickstart/run.sh
index 4a4db73..58a0e3e 100755
--- a/examples/quickstart/run.sh
+++ b/examples/quickstart/run.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-BIN_DIR=$SCRIPT_DIR/../../release/example
+BIN_DIR=$SCRIPT_DIR/../../release/examples
 cd $BIN_DIR
 
 # prepare test data
diff --git a/examples/quickstart/src/main.rs b/examples/quickstart/src/main.rs
index 30788ea..c6d330c 100644
--- a/examples/quickstart/src/main.rs
+++ b/examples/quickstart/src/main.rs
@@ -77,19 +77,19 @@ fn main() {
     // Load auditors' public keys and endorsement to TEE enclaves (digital signatures)
     let auditors = vec![
         (
-            "../service/auditors/godzilla/godzilla.public.der",
-            "../service/auditors/godzilla/godzilla.sign.sha256",
+            "../services/auditors/godzilla/godzilla.public.der",
+            "../services/auditors/godzilla/godzilla.sign.sha256",
         ),
         (
-            "../service/auditors/optimus_prime/optimus_prime.public.der",
-            "../service/auditors/optimus_prime/optimus_prime.sign.sha256",
+            "../services/auditors/optimus_prime/optimus_prime.public.der",
+            "../services/auditors/optimus_prime/optimus_prime.sign.sha256",
         ),
         (
-            "../service/auditors/albus_dumbledore/albus_dumbledore.public.der",
-            "../service/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.public.der",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
         ),
     ];
-    let enclave_info_file_path = "../service/enclave_info.txt";
+    let enclave_info_file_path = "../services/enclave_info.txt";
 
     let mesatee_enclave_info = MesateeEnclaveInfo::load(auditors, enclave_info_file_path).unwrap();
 
diff --git a/examples/quickstart_c/main.c b/examples/quickstart_c/main.c
index 4213d85..40ea48f 100644
--- a/examples/quickstart_c/main.c
+++ b/examples/quickstart_c/main.c
@@ -56,19 +56,19 @@ int main() {
 
   mesatee_auditor_set_t *auditors = mesatee_auditor_set_new();
   mesatee_auditor_set_add_auditor(auditors,
-                                  "../service/auditors/godzilla/godzilla.public.der",
-                                  "../service/auditors/godzilla/godzilla.sign.sha256");
+                                  "../services/auditors/godzilla/godzilla.public.der",
+                                  "../services/auditors/godzilla/godzilla.sign.sha256");
   mesatee_auditor_set_add_auditor(
-      auditors, "../service/auditors/optimus_prime/optimus_prime.public.der",
-      "../service/auditors/optimus_prime/optimus_prime.sign.sha256");
+      auditors, "../services/auditors/optimus_prime/optimus_prime.public.der",
+      "../services/auditors/optimus_prime/optimus_prime.sign.sha256");
   mesatee_auditor_set_add_auditor(
-      auditors, "../service/auditors/albus_dumbledore/albus_dumbledore.public.der",
-      "../service/auditors/albus_dumbledore/albus_dumbledore.sign.sha256");
+      auditors, "../services/auditors/albus_dumbledore/albus_dumbledore.public.der",
+      "../services/auditors/albus_dumbledore/albus_dumbledore.sign.sha256");
 
   assert(auditors != NULL);
 
   mesatee_enclave_info_t *enclave_info =
-      mesatee_enclave_info_load(auditors, "../service/enclave_info.txt");
+      mesatee_enclave_info_load(auditors, "../services/enclave_info.txt");
 
   assert(enclave_info != NULL);
 
diff --git a/examples/quickstart_c/run.sh b/examples/quickstart_c/run.sh
index 3dab233..e073a5e 100755
--- a/examples/quickstart_c/run.sh
+++ b/examples/quickstart_c/run.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-BIN_DIR=$SCRIPT_DIR/../../release/example
+BIN_DIR=$SCRIPT_DIR/../../release/examples
 cd $BIN_DIR
 
 # prepare test data
diff --git a/examples/rsa_sign/rsa_sign.sh b/examples/rsa_sign/rsa_sign.sh
index c74fdcd..86122d6 100755
--- a/examples/rsa_sign/rsa_sign.sh
+++ b/examples/rsa_sign/rsa_sign.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-BIN_DIR=$SCRIPT_DIR/../../release/example
+BIN_DIR=$SCRIPT_DIR/../../release/examples
 BIN=./rsa_sign
 cd $BIN_DIR
 
diff --git a/examples/rsa_sign/src/main.rs b/examples/rsa_sign/src/main.rs
index 3b1fdf8..93b8fe3 100644
--- a/examples/rsa_sign/src/main.rs
+++ b/examples/rsa_sign/src/main.rs
@@ -60,19 +60,19 @@ fn sign(
 fn main() {
     let auditors = vec![
         (
-            "../service/auditors/godzilla/godzilla.public.der",
-            "../service/auditors/godzilla/godzilla.sign.sha256",
+            "../services/auditors/godzilla/godzilla.public.der",
+            "../services/auditors/godzilla/godzilla.sign.sha256",
         ),
         (
-            "../service/auditors/optimus_prime/optimus_prime.public.der",
-            "../service/auditors/optimus_prime/optimus_prime.sign.sha256",
+            "../services/auditors/optimus_prime/optimus_prime.public.der",
+            "../services/auditors/optimus_prime/optimus_prime.sign.sha256",
         ),
         (
-            "../service/auditors/albus_dumbledore/albus_dumbledore.public.der",
-            "../service/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.public.der",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
         ),
     ];
-    let enclave_info_file_path = "../service/enclave_info.txt";
+    let enclave_info_file_path = "../services/enclave_info.txt";
 
     let mesatee_enclave_info = MesateeEnclaveInfo::load(auditors, enclave_info_file_path).unwrap();
 
diff --git a/examples/svm/src/main.rs b/examples/svm/src/main.rs
index 5d3a971..19d1fe6 100644
--- a/examples/svm/src/main.rs
+++ b/examples/svm/src/main.rs
@@ -56,16 +56,16 @@ fn print_usage() {
 fn main() {
     let auditors = vec![
         (
-            "../service/auditors/godzilla/godzilla.public.der",
-            "../service/auditors/godzilla/godzilla.sign.sha256",
+            "../services/auditors/godzilla/godzilla.public.der",
+            "../services/auditors/godzilla/godzilla.sign.sha256",
         ),
         (
-            "../service/auditors/optimus_prime/optimus_prime.public.der",
-            "../service/auditors/optimus_prime/optimus_prime.sign.sha256",
+            "../services/auditors/optimus_prime/optimus_prime.public.der",
+            "../services/auditors/optimus_prime/optimus_prime.sign.sha256",
         ),
         (
-            "../service/auditors/albus_dumbledore/albus_dumbledore.public.der",
-            "../service/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.public.der",
+            "../services/auditors/albus_dumbledore/albus_dumbledore.sign.sha256",
         ),
     ];
 
@@ -97,7 +97,7 @@ fn main() {
     };
 
     let input_string = serde_json::to_string(&input_payload).unwrap();
-    let enclave_info_file_path = "../service/enclave_info.txt";
+    let enclave_info_file_path = "../services/enclave_info.txt";
     let mesatee_enclave_info = MesateeEnclaveInfo::load(auditors, enclave_info_file_path).unwrap();
     let mesatee = Mesatee::new(
         &mesatee_enclave_info,
diff --git a/examples/svm/svm_demo.sh b/examples/svm/svm_demo.sh
index 1635d00..d4a38a2 100755
--- a/examples/svm/svm_demo.sh
+++ b/examples/svm/svm_demo.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-BIN_DIR=$SCRIPT_DIR/../../release/example
+BIN_DIR=$SCRIPT_DIR/../../release/examples
 BIN=./svm
 cd $BIN_DIR
 
diff --git a/mesatee_config/build.rs b/mesatee_config/build.rs
index 9e9b857..e4ffbf3 100644
--- a/mesatee_config/build.rs
+++ b/mesatee_config/build.rs
@@ -22,7 +22,7 @@ fn main() {
         .to_path_buf()
         .join("gen_build_config.rs");
     // the hardcoded path is a little ugly here, but makes it easy to debug without cmake
-    let mut cmd = Command::new("../release/example/config_gen");
+    let mut cmd = Command::new("../release/examples/config_gen");
     cmd.arg(dest_file);
     match cmd.status() {
         Ok(status) => {
diff --git a/tests/functional_test.sh b/tests/functional_test.sh
index 2db6f47..cc3f741 100755
--- a/tests/functional_test.sh
+++ b/tests/functional_test.sh
@@ -2,7 +2,7 @@
 
 trap "pkill -2 -P $$; wait" SIGINT SIGTERM EXIT
 
-cd ../release/service
+cd ../release/services
 
 # prepare test data
 cp -r ../../tests/integration_test/test_data ./
diff --git a/tests/integration_test.sh b/tests/integration_test.sh
index 6270ef4..5f813c9 100755
--- a/tests/integration_test.sh
+++ b/tests/integration_test.sh
@@ -2,7 +2,7 @@
 
 trap "pkill -2 -P $$; wait" SIGINT SIGTERM EXIT
 
-cd ../release/service
+cd ../release/services
 
 # prepare test data
 cp -r ../../tests/integration_test/test_data ./
@@ -49,7 +49,7 @@ wait_service "tms" 5555 30
 wait_service "fns" 3444 30
 
 echo "[+] run integration_test"
-../example/integration_test 2>&1 | tee integration_test.log
+../examples/integration_test 2>&1 | tee integration_test.log
 [ ${PIPESTATUS[0]} -eq 0 ] || exit ${PIPESTATUS[0]}
 
 echo "[+] run three_party_demo"


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@mesatee.apache.org
For additional commands, e-mail: commits-help@mesatee.apache.org