mirror of
https://github.com/corda/corda.git
synced 2025-06-23 09:25:36 +00:00
Linux 1.7 Open Source Gold release
Signed-off-by: Li, Xun <xun.li@email.com>
This commit is contained in:
@ -168,24 +168,24 @@
|
||||
</cconfiguration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||
<project id="SimpleEnclave.null.1312290154" name="SimpleEnclave"/>
|
||||
<project id="LocalAttestation.null.1312290154" name="LocalAttestation"/>
|
||||
</storageModule>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
|
||||
<storageModule moduleId="refreshScope" versionNumber="2">
|
||||
<configuration configurationName="SGX Debug HW Mode">
|
||||
<resource resourceType="PROJECT" workspacePath="/SimpleEnclave"/>
|
||||
<resource resourceType="PROJECT" workspacePath="/LocalAttestation"/>
|
||||
</configuration>
|
||||
<configuration configurationName="SGX Debug Sim Mode">
|
||||
<resource resourceType="PROJECT" workspacePath="/SimpleEnclave"/>
|
||||
<resource resourceType="PROJECT" workspacePath="/LocalAttestation"/>
|
||||
</configuration>
|
||||
<configuration configurationName="Debug">
|
||||
<resource resourceType="PROJECT" workspacePath="/SimpleEnclave"/>
|
||||
<resource resourceType="PROJECT" workspacePath="/LocalAttestation"/>
|
||||
</configuration>
|
||||
<configuration configurationName="Release">
|
||||
<resource resourceType="PROJECT" workspacePath="/SimpleEnclave"/>
|
||||
<resource resourceType="PROJECT" workspacePath="/LocalAttestation"/>
|
||||
</configuration>
|
||||
<configuration configurationName="SGX Release HW Mode">
|
||||
<resource resourceType="PROJECT" workspacePath="/SimpleEnclave"/>
|
||||
<resource resourceType="PROJECT" workspacePath="/LocalAttestation"/>
|
||||
</configuration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="scannerConfiguration">
|
||||
|
@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>SimpleEnclave</name>
|
||||
<name>LocalAttestation</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
|
@ -38,6 +38,9 @@
|
||||
#include "../Enclave3/Enclave3_u.h"
|
||||
#include "sgx_eid.h"
|
||||
#include "sgx_urts.h"
|
||||
#define __STDC_FORMAT_MACROS
|
||||
#include <inttypes.h>
|
||||
|
||||
|
||||
#define UNUSED(val) (void)(val)
|
||||
#define TCHAR char
|
||||
@ -59,9 +62,10 @@ sgx_enclave_id_t e3_enclave_id = 0;
|
||||
|
||||
void waitForKeyPress()
|
||||
{
|
||||
uint8_t ch;
|
||||
char ch;
|
||||
int temp;
|
||||
printf("\n\nHit a key....\n");
|
||||
scanf_s("%c", &ch);
|
||||
temp = scanf_s("%c", &ch);
|
||||
}
|
||||
|
||||
uint32_t load_enclaves()
|
||||
@ -115,9 +119,9 @@ int _tmain(int argc, _TCHAR* argv[])
|
||||
}
|
||||
|
||||
printf("\nAvaliable Enclaves");
|
||||
printf("\nEnclave1 - EnclaveID %llx",e1_enclave_id);
|
||||
printf("\nEnclave2 - EnclaveID %llx",e2_enclave_id);
|
||||
printf("\nEnclave3 - EnclaveID %llx",e3_enclave_id);
|
||||
printf("\nEnclave1 - EnclaveID %" PRIx64, e1_enclave_id);
|
||||
printf("\nEnclave2 - EnclaveID %" PRIx64, e2_enclave_id);
|
||||
printf("\nEnclave3 - EnclaveID %" PRIx64, e3_enclave_id);
|
||||
|
||||
do
|
||||
{
|
||||
|
@ -32,8 +32,9 @@
|
||||
######## SGX SDK Settings ########
|
||||
|
||||
SGX_SDK ?= /opt/intel/sgxsdk
|
||||
SGX_MODE ?= SIM
|
||||
SGX_MODE ?= HW
|
||||
SGX_ARCH ?= x64
|
||||
SGX_DEBUG ?= 1
|
||||
|
||||
ifeq ($(shell getconf LONG_BIT), 32)
|
||||
SGX_ARCH := x86
|
||||
@ -71,7 +72,8 @@ Trust_Lib_Name := libLocalAttestation_Trusted.a
|
||||
TrustLib_Cpp_Files := $(wildcard LocalAttestationCode/*.cpp)
|
||||
TrustLib_Cpp_Objects := $(TrustLib_Cpp_Files:.cpp=.o)
|
||||
TrustLib_Include_Paths := -I$(SGX_SDK)/include -I$(SGX_SDK)/include/tlibc -I$(SGX_SDK)/include/stlport -I$(SGX_SDK)/include/epid -I./Include
|
||||
TrustLib_Compile_Flags := $(SGX_COMMON_CFLAGS) -nostdinc -fvisibility=hidden -fpie -fstack-protector -std=c++03 -nostdinc++ $(TrustLib_Include_Paths)
|
||||
TrustLib_Compile_Flags := $(SGX_COMMON_CFLAGS) -nostdinc -fvisibility=hidden -fpie -fstack-protector $(TrustLib_Include_Paths)
|
||||
TrustLib_Compile_Cxx_Flags := -std=c++03 -nostdinc++
|
||||
|
||||
UnTrustLib_Name := libLocalAttestation_unTrusted.a
|
||||
UnTrustLib_Cpp_Files := $(wildcard Untrusted_LocalAttestation/*.cpp)
|
||||
@ -155,10 +157,20 @@ Enclave_Name_2 := libenclave2.so
|
||||
Enclave_Name_3 := libenclave3.so
|
||||
|
||||
ifeq ($(SGX_MODE), HW)
|
||||
ifneq ($(SGX_DEBUG), 1)
|
||||
ifneq ($(SGX_PRERELEASE), 1)
|
||||
Build_Mode = HW_RELEASE
|
||||
ifeq ($(SGX_DEBUG), 1)
|
||||
Build_Mode = HW_DEBUG
|
||||
else ifeq ($(SGX_PRERELEASE), 1)
|
||||
Build_Mode = HW_PRERELEASE
|
||||
else
|
||||
Build_Mode = HW_RELEASE
|
||||
endif
|
||||
else
|
||||
ifeq ($(SGX_DEBUG), 1)
|
||||
Build_Mode = SIM_DEBUG
|
||||
else ifeq ($(SGX_PRERELEASE), 1)
|
||||
Build_Mode = SIM_PRERELEASE
|
||||
else
|
||||
Build_Mode = SIM_RELEASE
|
||||
endif
|
||||
endif
|
||||
|
||||
@ -174,6 +186,17 @@ all: $(Trust_Lib_Name) $(UnTrustLib_Name) Enclave1.so Enclave2.so Enclave3.so $(
|
||||
@echo "To build the project in simulation mode set SGX_MODE=SIM. To build the project in prerelease mode set SGX_PRERELEASE=1 and SGX_MODE=HW."
|
||||
else
|
||||
all: $(Trust_Lib_Name) $(UnTrustLib_Name) $(Enclave_Name_1) $(Enclave_Name_2) $(Enclave_Name_3) $(App_Name)
|
||||
ifeq ($(Build_Mode), HW_DEBUG)
|
||||
@echo "The project has been built in debug hardware mode."
|
||||
else ifeq ($(Build_Mode), SIM_DEBUG)
|
||||
@echo "The project has been built in debug simulation mode."
|
||||
else ifeq ($(Build_Mode), HW_PRERELEASE)
|
||||
@echo "The project has been built in pre-release hardware mode."
|
||||
else ifeq ($(Build_Mode), SIM_PRERELEASE)
|
||||
@echo "The project has been built in pre-release simulation mode."
|
||||
else
|
||||
@echo "The project has been built in release simulation mode."
|
||||
endif
|
||||
endif
|
||||
|
||||
######## Library Objects ########
|
||||
@ -187,7 +210,7 @@ LocalAttestationCode/LocalAttestationCode_t.o: LocalAttestationCode/LocalAttesta
|
||||
@echo "CC <= $<"
|
||||
|
||||
LocalAttestationCode/%.o: LocalAttestationCode/%.cpp LocalAttestationCode/LocalAttestationCode_t.h
|
||||
@$(CXX) $(TrustLib_Compile_Flags) -c $< -o $@
|
||||
@$(CXX) $(TrustLib_Compile_Flags) $(TrustLib_Compile_Cxx_Flags) -c $< -o $@
|
||||
@echo "CC <= $<"
|
||||
|
||||
$(Trust_Lib_Name): LocalAttestationCode/LocalAttestationCode_t.o $(TrustLib_Cpp_Objects)
|
||||
|
@ -11,17 +11,17 @@ How to Build/Execute the Sample Code
|
||||
1. Install Intel(R) SGX SDK for Linux* OS
|
||||
2. Build the project with the prepared Makefile:
|
||||
a. Hardware Mode, Debug build:
|
||||
$ make SGX_MODE=HW SGX_DEBUG=1
|
||||
b. Hardware Mode, Pre-release build:
|
||||
$ make SGX_MODE=HW SGX_PRERELEASE=1
|
||||
c. Hardware Mode, Release build:
|
||||
$ make SGX_MODE=HW
|
||||
d. Simulation Mode, Debug build:
|
||||
$ make SGX_DEBUG=1
|
||||
e. Simulation Mode, Pre-release build:
|
||||
$ make SGX_PRERELEASE=1
|
||||
f. Simulation Mode, Release build:
|
||||
$ make
|
||||
b. Hardware Mode, Pre-release build:
|
||||
$ make SGX_PRERELEASE=1 SGX_DEBUG=0
|
||||
c. Hardware Mode, Release build:
|
||||
$ make SGX_DEBUG=0
|
||||
d. Simulation Mode, Debug build:
|
||||
$ make SGX_MODE=SIM
|
||||
e. Simulation Mode, Pre-release build:
|
||||
$ make SGX_MODE=SIM SGX_PRERELEASE=1 SGX_DEBUG=0
|
||||
f. Simulation Mode, Release build:
|
||||
$ make SGX_MODE=SIM SGX_DEBUG=0
|
||||
3. Execute the binary directly:
|
||||
$ ./app
|
||||
|
||||
4. Remember to "make clean" before switching build mode
|
||||
|
@ -168,24 +168,24 @@
|
||||
</cconfiguration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||
<project id="SimpleEnclave.null.1312290154" name="SimpleEnclave"/>
|
||||
<project id="PowerTransition.null.1312290154" name="PowerTransition"/>
|
||||
</storageModule>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
|
||||
<storageModule moduleId="refreshScope" versionNumber="2">
|
||||
<configuration configurationName="SGX Debug HW Mode">
|
||||
<resource resourceType="PROJECT" workspacePath="/SimpleEnclave"/>
|
||||
<resource resourceType="PROJECT" workspacePath="/PowerTransition"/>
|
||||
</configuration>
|
||||
<configuration configurationName="SGX Debug Sim Mode">
|
||||
<resource resourceType="PROJECT" workspacePath="/SimpleEnclave"/>
|
||||
<resource resourceType="PROJECT" workspacePath="/PowerTransition"/>
|
||||
</configuration>
|
||||
<configuration configurationName="Debug">
|
||||
<resource resourceType="PROJECT" workspacePath="/SimpleEnclave"/>
|
||||
<resource resourceType="PROJECT" workspacePath="/PowerTransition"/>
|
||||
</configuration>
|
||||
<configuration configurationName="Release">
|
||||
<resource resourceType="PROJECT" workspacePath="/SimpleEnclave"/>
|
||||
<resource resourceType="PROJECT" workspacePath="/PowerTransition"/>
|
||||
</configuration>
|
||||
<configuration configurationName="SGX Release HW Mode">
|
||||
<resource resourceType="PROJECT" workspacePath="/SimpleEnclave"/>
|
||||
<resource resourceType="PROJECT" workspacePath="/PowerTransition"/>
|
||||
</configuration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="scannerConfiguration">
|
||||
|
@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>SimpleEnclave</name>
|
||||
<name>PowerTransition</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
|
@ -158,7 +158,7 @@ int increase_and_seal_data(size_t tid, struct sealed_buf_t* sealed_buf)
|
||||
// Ocall to print the unsealed secret data outside.
|
||||
// In theory, the secret data(s) SHOULD NOT be transferred outside the enclave as clear text(s).
|
||||
// So please DO NOT print any secret outside. Here printing the secret data to outside is only for demo.
|
||||
snprintf(string_buf, BUFSIZ, "Thread %#x>: %d\n", (unsigned int)tid, temp_secret);
|
||||
snprintf(string_buf, BUFSIZ, "Thread %#x>: %u\n", (unsigned int)tid, (unsigned int)temp_secret);
|
||||
print(string_buf);
|
||||
return 0;
|
||||
}
|
||||
|
@ -32,8 +32,9 @@
|
||||
####### SGX SDK Settings ########
|
||||
|
||||
SGX_SDK ?= /opt/intel/sgxsdk
|
||||
SGX_MODE ?= SIM
|
||||
SGX_MODE ?= HW
|
||||
SGX_ARCH ?= x64
|
||||
SGX_DEBUG ?= 1
|
||||
|
||||
ifeq ($(shell getconf LONG_BIT), 32)
|
||||
SGX_ARCH := x86
|
||||
@ -149,10 +150,20 @@ Signed_Enclave_Name := libenclave.signed.so
|
||||
Enclave_Config_File := Enclave/Enclave.config.xml
|
||||
|
||||
ifeq ($(SGX_MODE), HW)
|
||||
ifneq ($(SGX_DEBUG), 1)
|
||||
ifneq ($(SGX_PRERELEASE), 1)
|
||||
Build_Mode = HW_RELEASE
|
||||
ifeq ($(SGX_DEBUG), 1)
|
||||
Build_Mode = HW_DEBUG
|
||||
else ifeq ($(SGX_PRERELEASE), 1)
|
||||
Build_Mode = HW_PRERELEASE
|
||||
else
|
||||
Build_Mode = HW_RELEASE
|
||||
endif
|
||||
else
|
||||
ifeq ($(SGX_DEBUG), 1)
|
||||
Build_Mode = SIM_DEBUG
|
||||
else ifeq ($(SGX_PRERELEASE), 1)
|
||||
Build_Mode = SIM_PRERELEASE
|
||||
else
|
||||
Build_Mode = SIM_RELEASE
|
||||
endif
|
||||
endif
|
||||
|
||||
@ -166,9 +177,17 @@ all: $(App_Name) $(Enclave_Name)
|
||||
@echo "To build the project in simulation mode set SGX_MODE=SIM. To build the project in prerelease mode set SGX_PRERELEASE=1 and SGX_MODE=HW."
|
||||
else
|
||||
all: $(App_Name) $(Signed_Enclave_Name)
|
||||
@echo "Build $(App_Name) [$(SGX_MODE)|$(SGX_ARCH)] Success!"
|
||||
@echo "Please RUN the project with command:"
|
||||
@echo " $(App_Name)"
|
||||
ifeq ($(Build_Mode), HW_DEBUG)
|
||||
@echo "The project has been built in debug hardware mode."
|
||||
else ifeq ($(Build_Mode), SIM_DEBUG)
|
||||
@echo "The project has been built in debug simulation mode."
|
||||
else ifeq ($(Build_Mode), HW_PRERELEASE)
|
||||
@echo "The project has been built in pre-release hardware mode."
|
||||
else ifeq ($(Build_Mode), SIM_PRERELEASE)
|
||||
@echo "The project has been built in pre-release simulation mode."
|
||||
else
|
||||
@echo "The project has been built in release simulation mode."
|
||||
endif
|
||||
endif
|
||||
|
||||
######## App Objects ########
|
||||
|
@ -10,17 +10,17 @@ How to Build/Execute the Sample Code
|
||||
1. Install Intel(R) SGX SDK for Linux* OS
|
||||
2. Build the project with the prepared Makefile:
|
||||
a. Hardware Mode, Debug build:
|
||||
$ make SGX_MODE=HW SGX_DEBUG=1
|
||||
b. Hardware Mode, Pre-release build:
|
||||
$ make SGX_MODE=HW SGX_PRERELEASE=1
|
||||
c. Hardware Mode, Release build:
|
||||
$ make SGX_MODE=HW
|
||||
d. Simulation Mode, Debug build:
|
||||
$ make SGX_DEBUG=1
|
||||
e. Simulation Mode, Pre-release build:
|
||||
$ make SGX_PRERELEASE=1
|
||||
f. Simulation Mode, Release build:
|
||||
$ make
|
||||
b. Hardware Mode, Pre-release build:
|
||||
$ make SGX_PRERELEASE=1 SGX_DEBUG=0
|
||||
c. Hardware Mode, Release build:
|
||||
$ make SGX_DEBUG=0
|
||||
d. Simulation Mode, Debug build:
|
||||
$ make SGX_MODE=SIM
|
||||
e. Simulation Mode, Pre-release build:
|
||||
$ make SGX_MODE=SIM SGX_PRERELEASE=1 SGX_DEBUG=0
|
||||
f. Simulation Mode, Release build:
|
||||
$ make SGX_MODE=SIM SGX_DEBUG=0
|
||||
3. Execute the binary directly:
|
||||
$ ./app
|
||||
|
||||
4. Remember to "make clean" before switching build mode
|
||||
|
@ -168,24 +168,24 @@
|
||||
</cconfiguration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||
<project id="SimpleEnclave.null.1312290154" name="SimpleEnclave"/>
|
||||
<project id="RemoteAttestation.null.1312290154" name="RemoteAttestation"/>
|
||||
</storageModule>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
|
||||
<storageModule moduleId="refreshScope" versionNumber="2">
|
||||
<configuration configurationName="SGX Debug HW Mode">
|
||||
<resource resourceType="PROJECT" workspacePath="/SimpleEnclave"/>
|
||||
<resource resourceType="PROJECT" workspacePath="/RemoteAttestation"/>
|
||||
</configuration>
|
||||
<configuration configurationName="SGX Debug Sim Mode">
|
||||
<resource resourceType="PROJECT" workspacePath="/SimpleEnclave"/>
|
||||
<resource resourceType="PROJECT" workspacePath="/RemoteAttestation"/>
|
||||
</configuration>
|
||||
<configuration configurationName="Debug">
|
||||
<resource resourceType="PROJECT" workspacePath="/SimpleEnclave"/>
|
||||
<resource resourceType="PROJECT" workspacePath="/RemoteAttestation"/>
|
||||
</configuration>
|
||||
<configuration configurationName="Release">
|
||||
<resource resourceType="PROJECT" workspacePath="/SimpleEnclave"/>
|
||||
<resource resourceType="PROJECT" workspacePath="/RemoteAttestation"/>
|
||||
</configuration>
|
||||
<configuration configurationName="SGX Release HW Mode">
|
||||
<resource resourceType="PROJECT" workspacePath="/SimpleEnclave"/>
|
||||
<resource resourceType="PROJECT" workspacePath="/RemoteAttestation"/>
|
||||
</configuration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="scannerConfiguration">
|
||||
|
@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>SimpleEnclave</name>
|
||||
<name>RemoteAttestation</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
|
@ -32,8 +32,9 @@
|
||||
######## SGX SDK Settings ########
|
||||
|
||||
SGX_SDK ?= /opt/intel/sgxsdk
|
||||
SGX_MODE ?= SIM
|
||||
SGX_MODE ?= HW
|
||||
SGX_ARCH ?= x64
|
||||
SGX_DEBUG ?= 1
|
||||
|
||||
ifeq ($(shell getconf LONG_BIT), 32)
|
||||
SGX_ARCH := x86
|
||||
@ -156,10 +157,20 @@ Signed_Enclave_Name := isv_enclave.signed.so
|
||||
Enclave_Config_File := isv_enclave/isv_enclave.config.xml
|
||||
|
||||
ifeq ($(SGX_MODE), HW)
|
||||
ifneq ($(SGX_DEBUG), 1)
|
||||
ifneq ($(SGX_PRERELEASE), 1)
|
||||
Build_Mode = HW_RELEASE
|
||||
ifeq ($(SGX_DEBUG), 1)
|
||||
Build_Mode = HW_DEBUG
|
||||
else ifeq ($(SGX_PRERELEASE), 1)
|
||||
Build_Mode = HW_PRERELEASE
|
||||
else
|
||||
Build_Mode = HW_RELEASE
|
||||
endif
|
||||
else
|
||||
ifeq ($(SGX_DEBUG), 1)
|
||||
Build_Mode = SIM_DEBUG
|
||||
else ifeq ($(SGX_PRERELEASE), 1)
|
||||
Build_Mode = SIM_PRERELEASE
|
||||
else
|
||||
Build_Mode = SIM_RELEASE
|
||||
endif
|
||||
endif
|
||||
|
||||
@ -176,6 +187,17 @@ all: libservice_provider.so $(App_Name) $(Enclave_Name)
|
||||
@echo "To build the project in simulation mode set SGX_MODE=SIM. To build the project in prerelease mode set SGX_PRERELEASE=1 and SGX_MODE=HW."
|
||||
else
|
||||
all: libservice_provider.so $(App_Name) $(Signed_Enclave_Name)
|
||||
ifeq ($(Build_Mode), HW_DEBUG)
|
||||
@echo "The project has been built in debug hardware mode."
|
||||
else ifeq ($(Build_Mode), SIM_DEBUG)
|
||||
@echo "The project has been built in debug simulation mode."
|
||||
else ifeq ($(Build_Mode), HW_PRERELEASE)
|
||||
@echo "The project has been built in pre-release hardware mode."
|
||||
else ifeq ($(Build_Mode), SIM_PRERELEASE)
|
||||
@echo "The project has been built in pre-release simulation mode."
|
||||
else
|
||||
@echo "The project has been built in release simulation mode."
|
||||
endif
|
||||
endif
|
||||
|
||||
run: all
|
||||
|
@ -11,17 +11,17 @@ How to Build/Execute the Sample Code
|
||||
1. Install Intel(R) SGX SDK for Linux* OS
|
||||
2. Build the project with the prepared Makefile:
|
||||
a. Hardware Mode, Debug build:
|
||||
$ make SGX_MODE=HW SGX_DEBUG=1
|
||||
b. Hardware Mode, Pre-release build:
|
||||
$ make SGX_MODE=HW SGX_PRERELEASE=1
|
||||
c. Hardware Mode, Release build:
|
||||
$ make SGX_MODE=HW
|
||||
d. Simulation Mode, Debug build:
|
||||
$ make SGX_DEBUG=1
|
||||
e. Simulation Mode, Pre-release build:
|
||||
$ make SGX_PRERELEASE=1
|
||||
f. Simulation Mode, Release build:
|
||||
$ make
|
||||
b. Hardware Mode, Pre-release build:
|
||||
$ make SGX_PRERELEASE=1 SGX_DEBUG=0
|
||||
c. Hardware Mode, Release build:
|
||||
$ make SGX_DEBUG=0
|
||||
d. Simulation Mode, Debug build:
|
||||
$ make SGX_MODE=SIM
|
||||
e. Simulation Mode, Pre-release build:
|
||||
$ make SGX_MODE=SIM SGX_PRERELEASE=1 SGX_DEBUG=0
|
||||
f. Simulation Mode, Release build:
|
||||
$ make SGX_MODE=SIM SGX_DEBUG=0
|
||||
3. Execute the binary directly:
|
||||
$ ./app
|
||||
|
||||
4. Remember to "make clean" before switching build mode
|
||||
|
@ -168,24 +168,24 @@
|
||||
</cconfiguration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||
<project id="SimpleEnclave.null.1312290154" name="SimpleEnclave"/>
|
||||
<project id="SampleEnclave.null.1312290154" name="SampleEnclave"/>
|
||||
</storageModule>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
|
||||
<storageModule moduleId="refreshScope" versionNumber="2">
|
||||
<configuration configurationName="SGX Debug HW Mode">
|
||||
<resource resourceType="PROJECT" workspacePath="/SimpleEnclave"/>
|
||||
<resource resourceType="PROJECT" workspacePath="/SampleEnclave"/>
|
||||
</configuration>
|
||||
<configuration configurationName="SGX Debug Sim Mode">
|
||||
<resource resourceType="PROJECT" workspacePath="/SimpleEnclave"/>
|
||||
<resource resourceType="PROJECT" workspacePath="/SampleEnclave"/>
|
||||
</configuration>
|
||||
<configuration configurationName="Debug">
|
||||
<resource resourceType="PROJECT" workspacePath="/SimpleEnclave"/>
|
||||
<resource resourceType="PROJECT" workspacePath="/SampleEnclave"/>
|
||||
</configuration>
|
||||
<configuration configurationName="Release">
|
||||
<resource resourceType="PROJECT" workspacePath="/SimpleEnclave"/>
|
||||
<resource resourceType="PROJECT" workspacePath="/SampleEnclave"/>
|
||||
</configuration>
|
||||
<configuration configurationName="SGX Release HW Mode">
|
||||
<resource resourceType="PROJECT" workspacePath="/SimpleEnclave"/>
|
||||
<resource resourceType="PROJECT" workspacePath="/SampleEnclave"/>
|
||||
</configuration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="scannerConfiguration">
|
||||
|
@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>SimpleEnclave</name>
|
||||
<name>SampleEnclave</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
|
@ -78,7 +78,7 @@ size_t ecall_pointer_user_check(void *val, size_t sz)
|
||||
|
||||
int32_t sum = checksum_internal((char *)tmp, len);
|
||||
printf("Checksum(0x%p, %zu) = 0x%x\n",
|
||||
val, len, sum);
|
||||
val, len, (unsigned int)sum);
|
||||
|
||||
/* modify outside memory directly */
|
||||
memcpy(val, "SGX_SUCCESS", len>12?12:len);
|
||||
|
@ -32,8 +32,9 @@
|
||||
######## SGX SDK Settings ########
|
||||
|
||||
SGX_SDK ?= /opt/intel/sgxsdk
|
||||
SGX_MODE ?= SIM
|
||||
SGX_MODE ?= HW
|
||||
SGX_ARCH ?= x64
|
||||
SGX_DEBUG ?= 1
|
||||
|
||||
ifeq ($(shell getconf LONG_BIT), 32)
|
||||
SGX_ARCH := x86
|
||||
@ -142,10 +143,20 @@ Signed_Enclave_Name := enclave.signed.so
|
||||
Enclave_Config_File := Enclave/Enclave.config.xml
|
||||
|
||||
ifeq ($(SGX_MODE), HW)
|
||||
ifneq ($(SGX_DEBUG), 1)
|
||||
ifneq ($(SGX_PRERELEASE), 1)
|
||||
Build_Mode = HW_RELEASE
|
||||
ifeq ($(SGX_DEBUG), 1)
|
||||
Build_Mode = HW_DEBUG
|
||||
else ifeq ($(SGX_PRERELEASE), 1)
|
||||
Build_Mode = HW_PRERELEASE
|
||||
else
|
||||
Build_Mode = HW_RELEASE
|
||||
endif
|
||||
else
|
||||
ifeq ($(SGX_DEBUG), 1)
|
||||
Build_Mode = SIM_DEBUG
|
||||
else ifeq ($(SGX_PRERELEASE), 1)
|
||||
Build_Mode = SIM_PRERELEASE
|
||||
else
|
||||
Build_Mode = SIM_RELEASE
|
||||
endif
|
||||
endif
|
||||
|
||||
@ -162,6 +173,17 @@ all: $(App_Name) $(Enclave_Name)
|
||||
@echo "To build the project in simulation mode set SGX_MODE=SIM. To build the project in prerelease mode set SGX_PRERELEASE=1 and SGX_MODE=HW."
|
||||
else
|
||||
all: $(App_Name) $(Signed_Enclave_Name)
|
||||
ifeq ($(Build_Mode), HW_DEBUG)
|
||||
@echo "The project has been built in debug hardware mode."
|
||||
else ifeq ($(Build_Mode), SIM_DEBUG)
|
||||
@echo "The project has been built in debug simulation mode."
|
||||
else ifeq ($(Build_Mode), HW_PRERELEASE)
|
||||
@echo "The project has been built in pre-release hardware mode."
|
||||
else ifeq ($(Build_Mode), SIM_PRERELEASE)
|
||||
@echo "The project has been built in pre-release simulation mode."
|
||||
else
|
||||
@echo "The project has been built in release simulation mode."
|
||||
endif
|
||||
endif
|
||||
|
||||
run: all
|
||||
|
@ -13,17 +13,18 @@ How to Build/Execute the Sample Code
|
||||
1. Install Intel(R) SGX SDK for Linux* OS
|
||||
2. Build the project with the prepared Makefile:
|
||||
a. Hardware Mode, Debug build:
|
||||
$ make SGX_MODE=HW SGX_DEBUG=1
|
||||
b. Hardware Mode, Pre-release build:
|
||||
$ make SGX_MODE=HW SGX_PRERELEASE=1
|
||||
c. Hardware Mode, Release build:
|
||||
$ make SGX_MODE=HW
|
||||
d. Simulation Mode, Debug build:
|
||||
$ make SGX_DEBUG=1
|
||||
e. Simulation Mode, Pre-release build:
|
||||
$ make SGX_PRERELEASE=1
|
||||
f. Simulation Mode, Release build:
|
||||
$ make
|
||||
b. Hardware Mode, Pre-release build:
|
||||
$ make SGX_PRERELEASE=1 SGX_DEBUG=0
|
||||
c. Hardware Mode, Release build:
|
||||
$ make SGX_DEBUG=0
|
||||
d. Simulation Mode, Debug build:
|
||||
$ make SGX_MODE=SIM
|
||||
e. Simulation Mode, Pre-release build:
|
||||
$ make SGX_MODE=SIM SGX_PRERELEASE=1 SGX_DEBUG=0
|
||||
f. Simulation Mode, Release build:
|
||||
$ make SGX_MODE=SIM SGX_DEBUG=0
|
||||
3. Execute the binary directly:
|
||||
$ ./app
|
||||
4. Remember to "make clean" before switching build mode
|
||||
|
||||
|
Reference in New Issue
Block a user