問題タブ [enclave]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - SGX エンクレーブのファイル コンテンツを読み取る
OCalls を使用してエンクレーブからファイルの内容を読み込もうとしています。
enclave.edl:
enclave.cpp:
アプリケーションでの ocall 関数の実装:
しかし、私が受け取る結果は次のとおりです。
123456789 (ヌル)
何が間違っているのかわかりませんか?
c - SGX エンクレーブ文字列引数で [in] 属性を使用する必要がある理由
OCALL を使用して、信頼できないメモリで動的に作成された C 文字列のコピーを自分のエンクレーブに取得したいと考えています。したがって、[out, string]
属性を使用する必要があります。
[in]
ただし、属性も追加する必要があるため、それはできません。問題は、文字列のサイズが本当にわからないことと、[in]
OCALL を作成するたびにエンクレーブから信頼できないメモリに文字列を不必要にコピーすることによるオーバーヘッド (に伴う) が必要ないことです。
私のedlファイル:
error: string/wstring/sizefunc should be used with an 'in' attribute
なぜ[in]
属性を追加する必要があるのですか?
パフォーマンス上の理由から、このオーバーヘッドを回避する方法はありますか?