summaryrefslogtreecommitdiffstats
path: root/video_in_hal/otherservice/rpc_library/library/include/other_service/rpc.h
diff options
context:
space:
mode:
Diffstat (limited to 'video_in_hal/otherservice/rpc_library/library/include/other_service/rpc.h')
-rwxr-xr-xvideo_in_hal/otherservice/rpc_library/library/include/other_service/rpc.h765
1 files changed, 0 insertions, 765 deletions
diff --git a/video_in_hal/otherservice/rpc_library/library/include/other_service/rpc.h b/video_in_hal/otherservice/rpc_library/library/include/other_service/rpc.h
deleted file mode 100755
index f669331..0000000
--- a/video_in_hal/otherservice/rpc_library/library/include/other_service/rpc.h
+++ /dev/null
@@ -1,765 +0,0 @@
-/*
- * @copyright Copyright (c) 2016-2020 TOYOTA MOTOR CORPORATION.
- *
- * Licensed 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.
- */
-
-/**
- * @file rpc.h
- * @brief \~english RPC library --API define header file
- */
-/** @addtogroup BaseSystem
- * @{
- */
-/** @addtogroup other_service
- * @ingroup BaseSystem
- * @{
- */
-/** @addtogroup rpc_library
- * @ingroup other_service
- * @{
- */
-#ifndef OTHERSERVICE_RPC_H_ // NOLINT(build/header_guard)
-#define OTHERSERVICE_RPC_H_ // NOLINT(build/header_guard)
-
-#include <stdio.h>
-#include <unistd.h>
-
-#include <other_service/rpc_id.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/**
-* @brief \~english RPC_ID max number
-*/
-#define RPC_MAX_THREADS_IN_PROCESS 64
-
-/** @brief \~english fd max number in one process.
- * 0 = main/sub thread communication pipe fd.
- * 1 = inotify() process listen fd.
- * 2~129 = even num : API request data socket.
- * odd num : secure stream socket.
- * */
-#define RPC_MAX_FD_IN_PROCESS 130
-
-
-#define RPC_MAX_API_ARG_NUM 8
-///< \~english API call parameter max num
-
-
-#define RPC_MAX_API_ARG_SIZE 1024
-///< \~english API call one parameter max byte
-
-#define RPC_MAX_API_ARG_TOTAL_SIZE 1500
-///< \~english API call all parameter max byte
-
-#define RPC_MAX_APICALL_QUEUE 16
-///< \~english API call max queue num
-
-#define RPC_NO_PORT 0
-///< \~english invalid port num
-
-/** @brief \~english RPC library function return value
- */
-enum rpc_result { // NOLINT (readability/nolint)
- RPC_OK = 0, ///< \~english ok
- RPC_ERR_No_Response = 0x8fff0000, ///< \~english has no response
- RPC_ERR_Timeout, ///< \~english timeout
- RPC_ERR_Busy, ///< \~english busy
- RPC_ERR_API_Error, ///< \~english API error
- RPC_ERR_API_Fatal, ///< \~english API fatal
- RPC_ERR_Fatal, ///< \~english fatal
- RPC_ERR_Configuration, ///< \~english configuration
- RPC_ERR_Server_DeadLock, ///< \~english server deadlock
- RPC_ERR_Server_Finish, ///< \~english server finish
- RPC_ERR_Reject_connect, ///< \~english reject connect
-};
-/** @brief \~english RPC library function return type
- * @see rpc_result
- * */
-typedef INT32 RPC_Result;
-
-/** @brief \~english RPC ID
- *
- */
-typedef UINT32 RPC_ID;
-
-#define RPC_NO_ID RPC_NO_PORT
-///< \~english The ID when destination is invalid
-
-#define RPC_SELF_ID RPC_NO_PORT
-///< \~english The ID when destination is self
-
-/** @brief \~english The ID when destination is any
- * */
-#define RPC_ANY_ID RPC_NO_PORT
-
-
-typedef RPC_Result (*RPC_dispatch_func_t)(UINT16 api_num,
- const char *args_string,
- unsigned int args_size,
- char **ret_string,
- unsigned int *ret_bytes);
-
-#ifdef RPC_DISPATCH_FUNC
-#error "Please include <rpc.h> before \"*_srvr.h\"."
-#else /* !RPC_DISPATCH_FUNC */
-#define RPC_DISPATCH_FUNC NULL
-#endif /* !RPC_DISPATCH_FUNC */
-
-/* RPC Library Start Function Macro */
-/////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup RPC_START_SERVER
-/// \~english @par Brief
-/// server start(certification of the client by UID)
-/// \~english @param [in] ID
-/// RPC_ID - program's RPC_ID
-/// \~english @retval RPC_OK Normal End
-/// \~english @retval RPC_ERR_Fatal Fatal Error
-/// \~english @par Prerequisite
-/// None
-/// \~english @par Change of internal state
-/// None
-/// \~english @par Conditions of processing failure
-/// - Case of an input parameter error
-/// - Case of fail to information generation
-/// - When RPC_start has already been issued
-/// - Case of space reservation fails
-/// - Case of socket generation fails
-/// - Case of socket allocation fails
-/// - Case of creating a pipe fails
-/// - RPC_ERR_Fatal
-/// \~english @par Classification
-/// Public
-/// \~english @par Type
-/// Sync Only
-/// \~english @par Detail
-/// - Used when the server program of RPC-API performs RPC library use start processing
-/// - ID specifies a symbol in the form of XXX_RPC_ID defined by rpc_id.h
-/// - Only one server program is permitted per thread
-/// - When the server program calls the API as a client of another server,
-/// it only needs to call RPC_START_SERVER, there is no need to call RPC_START_CLIENT
-/// \~english @see RPC_start, RPC_end
-////////////////////////////////////////////////////////////////////////////////////
-#define RPC_START_SERVER(ID) RPC_start((ID), RPC_DISPATCH_FUNC, NULL, NO_SECURE_CHECK)
-
-/////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup RPC_START_SECURE_SERVER
-/// \~english @par Brief
-/// server start(certification of the client by UID)
-/// \~english @param [in] ID
-/// RPC_ID - program's RPC_ID
-/// \~english @retval RPC_OK Normal End
-/// \~english @retval RPC_ERR_Fatal Fatal Error
-/// \~english @par Prerequisite
-/// None
-/// \~english @par Change of internal state
-/// None
-/// \~english @par Conditions of processing failure
-/// - Case of an input parameter error
-/// - Case of fail to information generation
-/// - When RPC_start has already been issued
-/// - Case of space reservation fails
-/// - Case of socket generation fails
-/// - Case of socket allocation fails
-/// - Case of creating a pipe fails
-/// - RPC_ERR_Fatal
-/// \~english @par Classification
-/// Public
-/// \~english @par Type
-/// Sync Only
-/// \~english @par Detail
-/// - Used when the server program of RPC-API performs RPC library use start processing
-/// - ID specifies a symbol in the form of XXX_RPC_ID defined by rpc_id.h
-/// - Only one server program is permitted per thread
-/// - When the server program calls the API as a client of another server,
-/// it only needs to call RPC_START_SERVER, there is no need to call RPC_START_CLIENT
-/// \~english @see RPC_start, RPC_end
-////////////////////////////////////////////////////////////////////////////////////
-#define RPC_START_SECURE_SERVER(ID) RPC_start((ID), RPC_DISPATCH_FUNC, NULL, NEED_SECURE_CHECK)
-
-/////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup RPC_START_CLIENT
-/// \~english @par Brief
-/// client start
-/// \~english @param [out] pID
-/// RPC_ID * - auto allocated program's RPC_ID
-/// \~english @retval RPC_OK Normal End
-/// \~english @retval RPC_ERR_Fatal Fatal Error
-/// \~english @par Prerequisite
-/// None
-/// \~english @par Change of internal state
-/// None
-/// \~english @par Conditions of processing failure
-/// - input parameter error
-/// - Unable to get the rpc lib info for the self-thread.
-/// - Memory allocation fail for id info.
-/// - Socket generation fail.
-/// - Socket allocation fail.
-/// - Unable to get the socket name.
-/// - RPC_ERR_Fatal
-/// \~english @par Classification
-/// Public
-/// \~english @par Type
-/// Sync Only
-/// \~english @par Detail
-/// - This macro supports only client function of RPC library.
-/// - Run the start processing by using this macro only when the APIs provided by the other program are called.
-/// \~english @see RPC_start, RPC_end
-////////////////////////////////////////////////////////////////////////////////////
-#define RPC_START_CLIENT(pID) RPC_start((UINT16)RPC_NO_ID, NULL, (pID), NO_SECURE_CHECK)
-//!< \~english client start
-
-/* Client authentication by registering the server's UID list */
-#define NEED_SECURE_CHECK 1 ///< \~english has secure check
-#define NO_SECURE_CHECK 0 ///< \~english has no secure check
-
-/* Setting whether to register UID list of server */
-#define REGISTERED 1 ///< \~english registered
-#define NO_REGISTERED 0 ///< \~english not registered
-
-/* API Function Prototypes in the RPC Library */
-RPC_Result RPC_start(RPC_ID id, RPC_dispatch_func_t func, RPC_ID *pID, INT32 secure_check); // NOLINT (readability/nolint)
-
-/////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup RPC_get_fd
-/// \~english @par Brief
-/// Get the file descriptor to judge whether there is the request of RPC-API call or not.
-/// \~english @param [in] id
-/// RPC_ID - server program's RPC_ID
-/// \~english @param [out] fd
-/// int * - area for fd
-/// \~english @retval RPC_OK Normal End
-/// \~english @retval RPC_ERR_Fatal Fatal Error
-/// \~english @par Prerequisite
-/// RPC_START_SERVER or RPC_START_SECURE_SERVER is already called.
-/// \~english @par Change of internal state
-/// None
-/// \~english @par Conditions of processing failure
-/// - Argument(id) is RPC_NO_ID.
-/// - Argument(fd) is NULL.
-/// - Unable to get the rpc lib info for the self-thread.
-/// - RPC sub thread doesn't exist.
-/// - RPC_ERR_Fatal
-/// \~english @par Classification
-/// Public
-/// \~english @par Type
-/// Sync Only
-/// \~english @par Detail
-/// - This function returns the fd(file descriptor) to judge whether there is the request to server.
-/// - Return value(fd) is used only for poll function or select function parameter.
-/// - Usage
-/// - To get fd from this function.
-/// - Wait for the data to use poll function or select function.
-/// - After that, call RPC_process_API_request function.
-/// - As a result, the API call request from client is done(that is, run the server API).
-/// \~english @see None
-////////////////////////////////////////////////////////////////////////////////////
-RPC_Result RPC_get_fd(RPC_ID id, int *fd); // NOLINT (readability/nolint)
-
-/////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup RPC_process_API_request
-/// \~english @par Brief
-/// Run the processing of RPC-API call
-/// \~english @param [in] id
-/// RPC_ID - server program's RPC_ID
-/// \~english @retval RPC_OK Normal End
-/// \~english @retval RPC_ERR_Fatal Fatal Error
-/// \~english @par Prerequisite
-/// RPC_START_SERVER or RPC_START_SECURE_SERVER is already called.
-/// \~english @par Change of internal state
-/// None
-/// \~english @par Conditions of processing failure
-/// - Argument(id) is RPC_NO_ID.
-/// - Unable to get the rpc lib info for the self-thread.
-/// - RPC sub thread doesn't exist.
-/// - fail to send UDP packet.
-/// - API processing from the client returns the error.
-/// - RPC_ERR_Fatal
-/// \~english @par Classification
-/// Public
-/// \~english @par Type
-/// Sync Only
-/// \~english @par Detail
-/// - Process all the queued API running requests from the client.
-/// - API function of server program is called in this function.
-/// - If there are no requests to run API, this function doesn't wait and return immediately.
-/// \~english @see None
-////////////////////////////////////////////////////////////////////////////////////
-RPC_Result RPC_process_API_request(RPC_ID id); // NOLINT (readability/nolint)
-
-/////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup RPC_end
-/// \~english @par Brief
-/// End processing of RPC library.
-/// \~english @param [in] id
-/// RPC_ID - program's RPC_ID
-/// \~english @retval None
-/// \~english @par Prerequisite
-/// RPC_START_SERVER or RPC_START_SECURE_SERVER or RPC_START_CLIENT is already called.
-/// \~english @par Change of internal state
-/// None
-/// \~english @par Conditions of processing failure
-/// None
-/// \~english @par Classification
-/// Public
-/// \~english @par Type
-/// Sync Only
-/// \~english @par Detail
-/// - End processing(socket close and memory release etc) is done.
-/// - When there are no more program that uses RPC_ID, RPC sub thread started by RPC_start will be ended.
-/// - Need to call this function before the program is ended.
-/// - Need to call this function from which the thread called RPC_start.
-/// - Nothing is done when incorrect or no more used RPC_ID is designated.
-/// \~english @see None
-////////////////////////////////////////////////////////////////////////////////////
-void RPC_end(RPC_ID id); // NOLINT (readability/nolint)
-
-////////////////////////////////////////////////////////////////////////////////
-/// \ingroup RPC_end_all
-/// \~english @par Brief
-/// End processing of RPC library(forcing to clean up).
-/// \~english @par Prerequisite
-/// - None
-/// \~english @par Change of internal state
-/// - None
-/// \~english @par Conditions of processing failure
-/// - None
-/// \~english @par Classification
-/// Public
-/// \~english @par Type
-/// Sync Only
-/// \~english @par Detail
-/// Delete the socket files created in process for communication. /n
-/// The program which use RPC library must call RPC_end() to free resource, /n
-/// This API is used for insurance processing when socket file's link lost. /n
-/// 1,Before process ends, call this API. /n
-/// When process is ending, auto running socket's close and memory free is not work. /n
-/// 2,After called this API, all the RPC's process(both server and client) become to useless. /n
-/// Even if after called this API, call RPC_START to repair it also can't make sure to active. /n
-/// RPC library which use Unix autobind is nothing to do. /n
-/// \~english @see None
-////////////////////////////////////////////////////////////////////////////////
-void RPC_end_all(void); // NOLINT (readability/nolint)
-
-/////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup RPC_set_API_timeout
-/// \~english @par Brief
-/// Set timeout time for server side API processing time
-/// \~english @param [in] sec
-/// INT32 - timeout time
-/// \~english @retval RPC_OK Normal End
-/// \~english @retval RPC_ERR_Fatal Fatal Error
-/// \~english @retval RPC_ERR_Configuration Argument is out of range
-/// \~english @par Prerequisite
-/// RPC_START_SERVER or RPC_START_SECURE_SERVER is already called.
-/// \~english @par Change of internal state
-/// None
-/// \~english @par Conditions of processing failure
-/// - Unable to get the rpc lib info for the self-thread.
-/// - Server id info doesn't exist.
-/// - Info for API call reception processing doesn't exist.
-/// - RPC_ERR_Fatal
-/// - The value of the argument(sec) is out of range.
-/// - RPC_ERR_Configuration
-/// \~english @par Classification
-/// Public
-/// \~english @par Type
-/// Sync Only
-/// \~english @par Detail
-/// None
-/// \~english @see None
-////////////////////////////////////////////////////////////////////////////////////
-RPC_Result RPC_set_API_timeout(INT32 sec); // NOLINT (readability/nolint)
-
-
-////////////////////////////////////////////////////////////////////////////////
-/// \ingroup RPC_is_server_ready
-/// \~english @par Brief
-/// Return RPC server's status
-/// \~english @param [in] id
-/// RPC_ID - server program's RPC_ID
-///
-/// \~english @retval RPC_OK : Success
-/// \~english @retval RPC_ERR_No_Response : No response
-///
-/// \~english @par Prerequisite
-/// - None
-/// \~english @par Change of internal state
-/// - None
-/// \~english @par Conditions of processing failure
-/// - None
-/// \~english @par Classification
-/// Public
-/// \~english @par Type
-/// Sync Only
-/// \~english @par Detail
-/// return the server's work status.
-/// \~english @see None
-////////////////////////////////////////////////////////////////////////////////
-RPC_Result RPC_is_server_ready(RPC_ID id); // NOLINT (readability/nolint)
-
-/////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup RPC_regist_credential
-/// \~english @par Brief
-/// Register UID and GID list
-/// \~english @param [in] uid_num
-/// int - UID number to regist(number of elements of UID list)
-/// \~english @param [in] uid_list
-/// uid_t* - head pointer of UID list
-/// \~english @param [in] gid_num
-/// int - GID number to regist(number of elements of GID list)
-/// \~english @param [in] uid_list
-/// gid_t* - head pointer of GID list
-/// \~english @retval RPC_OK Normal End
-/// \~english @retval RPC_ERR_Fatal Fatal Error
-/// \~english @retval RPC_ERR_Configuration Argument is out of range
-/// \~english @par Prerequisite
-/// RPC_START_SECURE_SERVER is already called.
-/// \~english @par Change of internal state
-/// None
-/// \~english @par Conditions of processing failure
-/// - Unable to get the rpc lib info for the self-thread.
-/// - Server id info doesn't exist.
-/// - Info for API call reception processing doesn't exist.
-/// - Arguments(client_uid and client_gid) are NULL.
-/// - Client authentication check is not necessary.
-/// - Authentication info is already registered.
-/// - Memory allocation fail for UID and GID lists.
-/// - RPC_ERR_Fatal
-/// - Values of Arguments(uid_num and gid_num) are out of range.
-/// - RPC_ERR_Configuration
-/// \~english @par Classification
-/// Public
-/// \~english @par Type
-/// Sync Only
-/// \~english @par Detail
-/// - Register the UID and GID lists acceptable by the RPC server.
-/// - If RPC_START_SECURE_SERVER is not called, this function returns the error.
-/// \~english @see None
-////////////////////////////////////////////////////////////////////////////////////
-RPC_Result RPC_regist_credential(int uid_num, uid_t *uid_list, int gid_num, gid_t *gid_list); // NOLINT (readability/nolint)
-
-/////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup RPC_get_client_credential
-/// \~english @par Brief
-/// Get UID and GID of client that requested to run APIs processing
-/// \~english @param [out] client_uid
-/// uid_t* - UID of client that requested to run APIs processing
-/// \~english @param [out] client_gid
-/// gid_t* - GID of client that requested to run APIs processing
-/// \~english @retval RPC_OK Normal End
-/// \~english @retval RPC_ERR_Fatal Fatal Error
-/// \~english @par Prerequisite
-/// RPC_START_SECURE_SERVER is already called.
-/// \~english @par Change of internal state
-/// None
-/// \~english @par Conditions of processing failure
-/// - Server id info doesn't exist.
-/// - Info for API call reception processing doesn't exist.
-/// - Arguments(client_uid and client_gid) are NULL.
-/// - Client authentication check is not necessary.
-/// - There are no running clients.
-/// - Info for the running client is not applicable.
-/// - RPC_ERR_Fatal
-/// \~english @par Classification
-/// Public
-/// \~english @par Type
-/// Sync Only
-/// \~english @par Detail
-/// - This function is to get UID and GID of client that requested to run APIs processing.
-/// - If RPC_START_SECURE_SERVER is not called, this function returns the error.
-/// - If the running client doesn't exist, this function returns the error.
-/// \~english @see None
-////////////////////////////////////////////////////////////////////////////////////
-RPC_Result RPC_get_client_credential(uid_t *client_uid, gid_t *client_gid); // NOLINT (readability/nolint)
-
-/*
- * The following are only used in stub files
- */
-#define RPC_RETCODE_LEN 9
-
-#define RPC_MARSHALL_FLAG_BITS_CODE 12
-#define RPC_MARSHALL_FLAG_BITS_IS_VARARRAY 1
-#define RPC_MARSHALL_FLAG_BITS_IS_POINTER 1
-#define RPC_MARSHALL_FLAG_BITS_IN_OUT 2
-
-/** @brief \~english APIcall property stored struct
- *
- */
-typedef union {
- UINT32 all; ///< \~english all property
- struct {
- unsigned int code: RPC_MARSHALL_FLAG_BITS_CODE; ///< \~english value type
- /** @brief \~english vararray or not
- *
- */
- unsigned int is_vararray: RPC_MARSHALL_FLAG_BITS_IS_VARARRAY;
- /** @brief \~english pointer or not
- *
- */
- unsigned int is_pointer: RPC_MARSHALL_FLAG_BITS_IS_POINTER;
- /** @brief \~english in/out parameter property
- *
- */
- unsigned int in_out: RPC_MARSHALL_FLAG_BITS_IN_OUT;
- /** @brief \~english string or user define type byte num.other is 0
- *
- */
- UINT16 bytes;
- } bits; ///< \~english variable properties
-} RPC_marshall_flag;
-
-/////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup RPC_API_call
-/// \~english @par brief
-/// API call execution function (client)
-/// \~english @param [in] id
-/// RPC_ID - RPC_ID of server program
-/// \~english @param [in] api_num
-/// UINT16 - Request API number
-/// \~english @param [in] args_string
-/// const char* - Argument string
-/// \~english @param [in] args_size
-/// unsigned int - Argument string length
-/// \~english @param [out] ret_string
-/// char** - Process result string
-/// \~english @param [out] ret_size
-/// unsigned int* - Process result string length
-/// \~english @retval RPC_OK Normal End
-/// \~english @retval RPC_ERR_Fatal Fatal error
-/// \~english @retval RPC_ERR_No_Response No response
-/// \~english @retval RPC_ERR_Busy API call queue overflow
-/// \~english @retval RPC_ERR_Server_DeadLock RPC server deadlock
-/// \~english @retval RPC_ERR_Reject_connect The RPC server does not allow communication
-/// \~english @par Prerequisite
-/// The RPC server is running.
-/// \~english @par Change of internal state
-/// None
-/// \~english @par Conditions of processing failure
-/// - Acquisition of rpc library information for self thread fails
-/// - Generation of self-thread rpc library information fails
-/// - The RPC ID information does not exist
-/// - Failed to receive data from the server at initial authentication
-/// - Analysis of received data failed during initial authentication
-/// - Commands not expected to be received during initial authentication
-/// - Server response when initial authentication is API call error
-/// - Failed to receive data from the server at API processing request
-/// - Analysis of received data failed during API processing request
-/// - Commands not expected to be received during API processing request
-/// - Server response when API processing request is API call error
-/// - Error in server response other than deadlock when processing results are received
-/// - Server shut down
-/// - RPC_ERR_Fatal
-/// - UDP packet transmission fails at initial authentication
-/// - A timeout occurred in response from the server during initial authentication
-/// - UDP packet transmission failed at API processing request
-/// - A timeout occurred in response from the server during API processing request
-/// - RPC_ERR_No_Response
-/// - Server response when initial authentication is API call queue overflow
-/// - Server response when API processing request is API call queue overflow
-/// - RPC_ERR_Busy
-/// - When the server response is deadlocked on initial authentication
-/// - When the server response is deadlocked on API processing request
-/// - Server response is deadlocked when processing result is received
-/// - RPC_ERR_Server_DeadLock
-/// - Server response is not authenticated at initial authentication
-/// - RPC_ERR_Reject_connect
-/// \~english @par Classification
-/// Public
-/// \~english @par Type
-/// Sync Only
-/// \~english @par Detail
-/// - Request execution of RPC-API from the client side.
-/// - However, since this API is called from the automatically generated code, it is not used directly by the user.
-/// \~english @see None
-////////////////////////////////////////////////////////////////////////////////////
-RPC_Result RPC_API_call(RPC_ID id, UINT16 api_num, // NOLINT (readability/nolint)
- const char *args_string, unsigned int args_size,
- char **ret_string, unsigned int *ret_size);
-
-/////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup RPC_demarshall_arguments
-/// \~english @par Brief
-/// Confirm whether the input character string conforms to the prescribed format.
-/// \~english @param [in] from
-/// const char * - Input string
-/// \~english @param [in] size
-/// unsigned int - Byte length of the input string
-/// \~english @param [in] need_alloc
-/// int - Flag whether memory allocation is necessary or not.
-/// \~english @param [in] num_args
-/// int - Number of the variable length arguments
-/// \~english @param [in] ...
-/// void * - Variable length arguments
-/// \~english @retval 0 Normal End
-/// \~english @retval -1 Abnormal End
-/// \~english @par Prerequisite
-/// None
-/// \~english @par Change of internal state
-/// None
-/// \~english @par Conditions of processing failure
-/// - Byte length of the input string is 0 bytes or less or larger than 1024 bytes.
-/// - The input character string doesn't conform to the prescribed format.
-/// - -1
-/// \~english @par Classification
-/// Public
-/// \~english @par Type
-/// Sync Only
-/// \~english @par Detail
-/// This function is used in the stub file only and user must not call this function directly.
-/// \~english @see RPC_marshall_arguments
-////////////////////////////////////////////////////////////////////////////////////
-int RPC_demarshall_arguments(const char *from, unsigned int size, // NOLINT (readability/nolint)
- int need_alloc, int num_args, ...);
-
-/////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup RPC_marshall_arguments
-/// \~english @par Brief
-/// Collect variable arguments, convert them to a format that matches the receiver's specification,
-/// and stuff them into the message buffer.
-/// \~english @param [in] size
-/// unsigned int * - data size after conversion
-/// \~english @param [in] dont_marshall_out_args
-/// int - input/output kind(when the argument is a pointer)
-/// \~english @param [in] num_args
-/// int - value of variable argument
-/// \~english @param [in] ...
-/// void * - variable argument
-/// \~english @retval char * Message buffer after conversion
-/// \~english @retval NULL Abnormal
-/// \~english @par Prerequisite
-/// None
-/// \~english @par Change of internal state
-/// None
-/// \~english @par Conditions of processing failure
-/// - When marshall work securing work area fails
-/// - When the specified type size is abnormal
-/// - When securing the area of the message buffer after conversion fails
-/// - NULL
-/// \~english @par Classification
-/// Public
-/// \~english @par Type
-/// Sync Only
-/// \~english @par Detail
-/// This function is used in the stub file for client only and user must not call this function directly.
-/// \~english @see RPC_demarshalol_arguments
-////////////////////////////////////////////////////////////////////////////////////
-char *RPC_marshall_arguments(unsigned int *size, int dont_marshall_out_args, // NOLINT (readability/nolint)
- int num_args, ...);
-
-/////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup RPC_marshall_free
-/// \~english @par Brief
-/// Variadic function for memory release
-/// \~english @param [in] num
-/// int - number of memory to be released
-/// \~english @param [in] ...
-/// void * - allocated memory
-/// \~english @retval None
-/// \~english @par Prerequisite
-/// None
-/// \~english @par Change of internal state
-/// None
-/// \~english @par Conditions of processing failure
-/// None
-/// \~english @par Classification
-/// Public
-/// \~english @par Type
-/// Sync Only
-/// \~english @par Detail
-/// - This function is used in the stub file only and user must not call this function directly.
-/// \~english @see None
-////////////////////////////////////////////////////////////////////////////////////
-void RPC_marshall_free(int num, ...); // NOLINT (readability/nolint)
-
-/////////////////////////////////////////////////////////////////////////////////////
-/// \ingroup RPC_free_return_string
-/// \~english @par Brief
-/// release memory allocated during running API call.
-/// \~english @param [in] ptr
-/// void * - allocated memory
-/// \~english @retval None
-/// \~english @par Prerequisite
-/// RPC_API_call is already called.
-/// \~english @par Change of internal state
-/// None
-/// \~english @par Conditions of processing failure
-/// None
-/// \~english @par Classification
-/// Public
-/// \~english @par Type
-/// Sync Only
-/// \~english @par Detail
-/// - This function is used in the stub file for client only and user must not call this function directly.
-/// \~english @see None
-////////////////////////////////////////////////////////////////////////////////////
-void RPC_free_return_string(void *ptr); // NOLINT (readability/nolint)
-
-#ifdef DBG_ENABLE
-
-////////////////////////////////////////////////////////////////////////////////
-/// \ingroup RPC_record_dbg_log
-/// \~english @par Brief
-/// RPC-API call process's log
-/// \~english @param [in] filename
-/// const char - filename's point
-/// \~english @param [in] funcname
-/// const char - function name's point
-/// \~english @param [in] line
-/// int - file's line
-/// \~english @param [in] apiname
-/// const char - called API name's point
-/// \~english @param [out]
-///
-/// \~english @retval 0 : Success
-///
-/// \~english @par Prerequisite
-/// - DBG_ENABLE is defined.
-/// \~english @par Change of internal state
-/// - None
-/// \~english @par Conditions of processing failure
-/// - None
-/// \~english @par Classification
-/// Public
-/// \~english @par Type
-/// Sync Only
-/// \~english @par Detail
-/// Receipt and record the client's filename, function name,
-/// line and called API's function name which called this API.
-/// \~english @see None
-////////////////////////////////////////////////////////////////////////////////
-int RPC_record_dbg_log(const char *filename, const char *funcname, int line,
- const char *apiname);
-#endif
-
-#define rpc_malloc malloc
-#define rpc_free free
-
-/*
- * RPC debug message control
- * if set to non-null and some critical information is displayed.
- */
-extern char *RPC_DEBUG; // NOLINT (readability/nolint)
-
-/** @}*/ // end of rpc_library
-/** @}*/ // end of other_service
-/** @}*/ // end of BaseSystem
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif // OTHERSERVICE_RPC_H_