mirror of
https://github.com/clearlinux/graphene.git
synced 2026-09-05 21:31:36 +00:00
Non-PIE binaries support requires ELRANGE to start at low addresses, which on older SGX drivers required root permissions or reconfiguring the host, so this mapping strategy was made optional by us. This issue was fixed long time ago, so we can drop this option and always start enclaves at 0.
Bash example
This directory contains an example for running Bash in Graphene, including the Makefile and a template for generating the manifest. The application is tested on Ubuntu 16.04, with both normal Linux and SGX platforms.
Generating the manifest
Building for Linux
Run make (non-debug) or make DEBUG=1 (debug) in the directory.
Building for SGX
Run make SGX=1 (non-debug) or make SGX=1 DEBUG=1 (debug) in the directory.
Running Bash with Graphene
Here's an example of running Bash scripts under Graphene:
Without SGX:
./pal_loader ./bash -c "ls"
./pal_loader ./bash -c "cd scripts && bash bash_test.sh 2"
With SGX:
SGX=1 ./pal_loader ./bash -c "ls"
SGX=1 ./pal_loader ./bash -c "cd scripts && bash bash_test.sh 2"