/* * Copyright (c) 2020-2023, Arm Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ #include "rpc_caller.h" rpc_status_t rpc_caller_open_session(struct rpc_caller_interface *caller, const struct rpc_uuid *service_uuid, uint16_t endpoint_id) { if (!caller) return RPC_ERROR_INVALID_VALUE; return caller->open_session(caller->context, service_uuid, endpoint_id); } rpc_status_t rpc_caller_find_and_open_session(struct rpc_caller_interface *caller, const struct rpc_uuid *service_uuid) { if (!caller) return RPC_ERROR_INVALID_VALUE; return caller->find_and_open_session(caller->context, service_uuid); } rpc_status_t rpc_caller_close_session(struct rpc_caller_interface *caller) { if (!caller) return RPC_ERROR_INVALID_VALUE; return caller->close_session(caller->context); } rpc_status_t rpc_caller_create_shared_memory(struct rpc_caller_interface *caller, size_t length, struct rpc_caller_shared_memory *shared_memory) { if (!caller) return RPC_ERROR_INVALID_VALUE; return caller->create_shared_memory(caller->context, length, shared_memory); } rpc_status_t rpc_caller_release_shared_memory(struct rpc_caller_interface *caller, struct rpc_caller_shared_memory *shared_memory) { if (!caller) return RPC_ERROR_INVALID_VALUE; return caller->release_shared_memory(caller->context, shared_memory); } rpc_status_t rpc_caller_call(struct rpc_caller_interface *caller, uint16_t opcode, struct rpc_caller_shared_memory *shared_memory, size_t request_length, size_t *response_length, service_status_t *service_status) { if (!caller) return RPC_ERROR_INVALID_VALUE; return caller->call(caller->context, opcode, shared_memory, request_length, response_length, service_status); }