Intel® Software Guard Extensions (Intel® SGX)
Discussion board focused on hardware-based isolation and memory encryption to provide extended code protection in solutions.

edger8r: Cannot import both "sgx_tprotected_fs.edl" and "sgx_tkey_exchange.edl"

AArya2
New Contributor I
1,024 Views

Consider the following enclave definition:

enclave
{
  from "sgx_tprotected_fs.edl" import *;
  from "sgx_tkey_exchange.edl" import *;

  trsuted
  {
    public sgx_status_t dance_securely();
  };

  untrusted
  {
  };
};

edger8r's output is an error message "detected circled import for `C:\Program Files (x86)\Intel\IntelSGXSDK\\include\sgx_tae_service.edl'"

0 Kudos
1 Solution
Juan_d_Intel
Employee
1,024 Views

As a temporary workaround, please comment out the line "from "sgx_tae_service.edl" import *;" from either sgx_tprotected_fs.edl or sgx_tkey_exchange.edl.

We're trying to find a solution to this issue.

View solution in original post

0 Kudos
5 Replies
Juan_d_Intel
Employee
1,025 Views

As a temporary workaround, please comment out the line "from "sgx_tae_service.edl" import *;" from either sgx_tprotected_fs.edl or sgx_tkey_exchange.edl.

We're trying to find a solution to this issue.

0 Kudos
AArya2
New Contributor I
1,024 Views

Thank you Juan.

To me it seems that edger8r does not mark already imported enclaves off, and that causes problems when the dependency trees of two imported enclaves coincide. The little extension that I have written for edger8r that I use for my own programs doesn't seem to have that problem.

0 Kudos
Juan_d_Intel
Employee
1,024 Views

Your assessment is correct.

You may submit a PR with your changes to the edger8r.

0 Kudos
AArya2
New Contributor I
1,024 Views

But the Windows SDK is not open source, is it?

0 Kudos
Juan_d_Intel
Employee
1,024 Views

No, the Windows SDK is not open source. I thought you had modified the edger8r source code.

Could you post your extension here?

Thanks.

0 Kudos
Reply