//asylo/bazel:dlopen_enclave.bzl
asylo_dlopen_backend
asylo_dlopen_backend(name)
Declares name of the Asylo dlopen backend. Used in backend transitions.
ATTRIBUTES
Name | Description | Type | Mandatory |
---|---|---|---|
name | A unique name for this target. | Name | required |
DlopenEnclaveInfo
DlopenEnclaveInfo()
A provider attached to a dlopen enclave target for compile-time type-checking purposes
FIELDS
dlopen_enclave_loader
dlopen_enclave_loader(name, enclaves, embedded_enclaves, loader_args, remote_proxy, kwargs)
Thin wrapper around enclave loader, adds necessary linkopts and testonly=1
Parameters
name |
required.
Name for build target. |
enclaves |
optional. default is {}
Dictionary from enclave names to target dependencies. The dictionary must be injective. This dictionary is used to format each string in `loader_args` after each enclave target is interpreted as the path to its output binary. |
embedded_enclaves |
optional. default is {}
Dictionary from ELF section names (that do not start with '.') to target dependencies. Each target in the dictionary is embedded in the loader binary under the corresponding ELF section. |
loader_args |
optional. default is []
List of arguments to be passed to `loader`. Arguments may contain {enclave_name}-style references to keys from the `enclaves` dict, each of which will be replaced with the path to the named enclave. |
remote_proxy |
optional. default is None
Host-side executable that is going to run remote enclave proxy server which will actually load the enclave(s). If empty, the enclave(s) are loaded locally. |
kwargs |
optional.
cc_binary arguments. |
dlopen_enclave_test
dlopen_enclave_test(name, kwargs)
Thin wrapper around enclave test, adds ‘asylo-dlopen’ tag and necessary linkopts
Parameters
name |
required.
enclave_test name |
kwargs |
optional.
same as enclave_test kwargs |
primitives_dlopen_enclave
primitives_dlopen_enclave(name, kwargs)
Defines a cc_binary enclave that uses the dlopen backend.
Parameters
name |
required.
The rule name. |
kwargs |
optional.
The arguments to cc_binary. |