blob: c9294a7a1142a5e7e5566fe6036ccbcca61e477f [file] [log] [blame]
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership. The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License. You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing,
// software distributed under the License is distributed on an
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied. See the License for the
// specific language governing permissions and limitations
// under the License.
enclave {
from "sgx_tstd.edl" import *;
from "sgx_stdio.edl" import *;
from "sgx_fs.edl" import *;
from "sgx_net.edl" import *;
from "sgx_time.edl" import *;
from "sgx_tstdc.edl" import *;
trusted {
/* define ECALLs here. */
public size_t tls_client_new(int fd, [in, string]char* hostname, [in, string] char* cert);
public int tls_client_read(size_t session_id, [out, size=cnt] char* buf, int cnt);
public int tls_client_write(size_t session_id, [in, size=cnt] char* buf, int cnt);
public int tls_client_wants_read(size_t session_id);
public int tls_client_wants_write(size_t session_id);
public void tls_client_close(size_t session_id);
};
};