:orphan: .. index:: pair: struct; rcf_rpc_server .. _doxid-structrcf__rpc__server: struct rcf_rpc_server ===================== .. toctree:: :hidden: Overview ~~~~~~~~ RPC server context :ref:`More...` .. ref-code-block:: cpp :class: doxyrest-overview-code-block #include struct rcf_rpc_server { // fields :ref:`rcf_rpc_op` :ref:`op`; :ref:`rcf_rpc_op` :ref:`last_op`; uint64_t :ref:`start`; uint16_t :ref:`seqno`; uint32_t :ref:`def_timeout`; uint32_t :ref:`timeout`; bool :ref:`err_jump`; bool :ref:`iut_err_jump`; bool :ref:`err_log`; bool :ref:`timed_out`; bool :ref:`errno_change_check`; char* :ref:`nv_lib`; bool :ref:`use_libc`; bool :ref:`use_libc_once`; bool :ref:`last_use_libc`; bool :ref:`use_syscall`; char :ref:`ta`[RCF_MAX_NAME]; char :ref:`name`[RCF_MAX_NAME]; int :ref:`sid`; uint64_t :ref:`duration`; int :ref:`_errno`; char :ref:`err_msg`[RPC_ERROR_MAX_LEN]; uint64_t :ref:`jobid0`; char :ref:`proc`[RCF_MAX_NAME]; bool :ref:`silent`; bool :ref:`silent_default`; bool :ref:`silent_pass`; bool :ref:`silent_pass_default`; char** :ref:`namespaces`; size_t :ref:`namespaces_len`; }; .. _details-structrcf__rpc__server: Detailed Documentation ~~~~~~~~~~~~~~~~~~~~~~ RPC server context Fields ------ .. index:: pair: variable; op .. _doxid-structrcf__rpc__server_1a1abaf4ae738264d46d7ab8e08107b9bb: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`rcf_rpc_op` op Instruction for RPC call .. index:: pair: variable; last_op .. _doxid-structrcf__rpc__server_1aa3ef7b961adbe30eab31418762768597: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`rcf_rpc_op` last_op op value in the last call .. index:: pair: variable; start .. _doxid-structrcf__rpc__server_1a1ee9de51f063b0cab54c0bbde32bba26: .. ref-code-block:: cpp :class: doxyrest-title-code-block uint64_t start Time when RPC should be called on the server (in milliseconds since Epoch; 0 if it should be called immediately) .. index:: pair: variable; seqno .. _doxid-structrcf__rpc__server_1a791f2b116440b84a5747f5e23a7dd659: .. ref-code-block:: cpp :class: doxyrest-title-code-block uint16_t seqno Sequence number of the next RPC call. Only incremented by completed calls. The number should not be taken as a globally unique id, it may wrap up relatively quickly .. index:: pair: variable; def_timeout .. _doxid-structrcf__rpc__server_1aa835a7a8023dd9b241a0498fd2790ea4: .. ref-code-block:: cpp :class: doxyrest-title-code-block uint32_t def_timeout Default RPC call timeout in milliseconds .. index:: pair: variable; timeout .. _doxid-structrcf__rpc__server_1abccbb37268a800712d9d66a5674afc5a: .. ref-code-block:: cpp :class: doxyrest-title-code-block uint32_t timeout Next RPC call timeout in milliseconds (after call it's automatically reset to def_timeout) .. index:: pair: variable; err_jump .. _doxid-structrcf__rpc__server_1a15a6af500de6b2b13439520f5c21333b: .. ref-code-block:: cpp :class: doxyrest-title-code-block bool err_jump Jump if RPC call failed (this may occur if the function called via this RPC returned error, or for other reasons such as segfault or timeout; true by default) .. index:: pair: variable; iut_err_jump .. _doxid-structrcf__rpc__server_1a3da253166322eaf62dc0e8976e02ea12: .. ref-code-block:: cpp :class: doxyrest-title-code-block bool iut_err_jump Jump if RPC call failed because function called via this RPC returned error (true by default; overrides err_jump) .. index:: pair: variable; err_log .. _doxid-structrcf__rpc__server_1a2ac95304bce4853d8bb1fde02b0feb1a: .. ref-code-block:: cpp :class: doxyrest-title-code-block bool err_log Log error with ERROR log level .. index:: pair: variable; timed_out .. _doxid-structrcf__rpc__server_1a435fe0334d6b6f0ba9e87a9ed4b5a581: .. ref-code-block:: cpp :class: doxyrest-title-code-block bool timed_out Timeout was received from this RPC server - it is unusable unless someone has restarted it .. index:: pair: variable; errno_change_check .. _doxid-structrcf__rpc__server_1a5e35c1656db40e9f75b61423c6e0aa34: .. ref-code-block:: cpp :class: doxyrest-title-code-block bool errno_change_check Check errno changes in the case of success .. index:: pair: variable; nv_lib .. _doxid-structrcf__rpc__server_1a985faf55c73b2174ca4ec7a870c621a1: .. ref-code-block:: cpp :class: doxyrest-title-code-block char* nv_lib Library name set for the server .. index:: pair: variable; use_libc .. _doxid-structrcf__rpc__server_1ae100880f0869b9f2ab49f90ae2b3019b: .. ref-code-block:: cpp :class: doxyrest-title-code-block bool use_libc Use libc library instead of set one .. index:: pair: variable; use_libc_once .. _doxid-structrcf__rpc__server_1a738376169b9adb76c38bbdf08e1e84b0: .. ref-code-block:: cpp :class: doxyrest-title-code-block bool use_libc_once Same as use_libc, but one call only .. index:: pair: variable; last_use_libc .. _doxid-structrcf__rpc__server_1a8a51eaaa1057c4519daae9cba15bf3bf: .. ref-code-block:: cpp :class: doxyrest-title-code-block bool last_use_libc Last value of use_libc_once .. index:: pair: variable; use_syscall .. _doxid-structrcf__rpc__server_1a70f0817a3ad50fce6523999ff7feef8b: .. ref-code-block:: cpp :class: doxyrest-title-code-block bool use_syscall Try to use syscall with library according to flag use_libc .. index:: pair: variable; ta .. _doxid-structrcf__rpc__server_1ac5fcf4fe3f92bc8d7dd0b571459a046c: .. ref-code-block:: cpp :class: doxyrest-title-code-block char ta[RCF_MAX_NAME] Test Agent name .. index:: pair: variable; name .. _doxid-structrcf__rpc__server_1a7cf5917abc7946d920db82e58d456068: .. ref-code-block:: cpp :class: doxyrest-title-code-block char name[RCF_MAX_NAME] RPC server name .. index:: pair: variable; sid .. _doxid-structrcf__rpc__server_1a9865ffe410b5f074456b3feca1ae972e: .. ref-code-block:: cpp :class: doxyrest-title-code-block int sid RCF session identifier .. index:: pair: variable; duration .. _doxid-structrcf__rpc__server_1a8f8eaf7435e998011d5a5e0c6834325c: .. ref-code-block:: cpp :class: doxyrest-title-code-block uint64_t duration Call Duration in microseconds .. index:: pair: variable; _errno .. _doxid-structrcf__rpc__server_1aec78c154ab346e6141d55826dff9fa69: .. ref-code-block:: cpp :class: doxyrest-title-code-block int _errno error number .. index:: pair: variable; err_msg .. _doxid-structrcf__rpc__server_1aeb1044c4d8c0d0b8ab391f45ed74014c: .. ref-code-block:: cpp :class: doxyrest-title-code-block char err_msg[RPC_ERROR_MAX_LEN] Optional error message. .. index:: pair: variable; jobid0 .. _doxid-structrcf__rpc__server_1a3633cda6cd0eb3b0fcfa5e4fc365670a: .. ref-code-block:: cpp :class: doxyrest-title-code-block uint64_t jobid0 Identifier of a deferred operation .. index:: pair: variable; proc .. _doxid-structrcf__rpc__server_1a59d9badd30a4a29fcc0d894ab1d3d099: .. ref-code-block:: cpp :class: doxyrest-title-code-block char proc[RCF_MAX_NAME] Last called function .. index:: pair: variable; silent .. _doxid-structrcf__rpc__server_1a55d7c1867ba2d094f9be57141572f8ed: .. ref-code-block:: cpp :class: doxyrest-title-code-block bool silent Perform next RPC call without logging .. index:: pair: variable; silent_default .. _doxid-structrcf__rpc__server_1a7a8b1dc028ee080239621dd4a29da72b: .. ref-code-block:: cpp :class: doxyrest-title-code-block bool silent_default Turn on/off RPC calls logging, can be used to change the behavior for a few calls. .. index:: pair: variable; silent_pass .. _doxid-structrcf__rpc__server_1a10dabe94ffc3cdc306f8c142cdd5fa9d: .. ref-code-block:: cpp :class: doxyrest-title-code-block bool silent_pass The same as :ref:`silent `, but error log still will be logged. .. index:: pair: variable; silent_pass_default .. _doxid-structrcf__rpc__server_1a50162159aa10d3ce61e2ec808fb833f6: .. ref-code-block:: cpp :class: doxyrest-title-code-block bool silent_pass_default The same as :ref:`silent_default `, applicable for :ref:`silent_pass `. .. index:: pair: variable; namespaces .. _doxid-structrcf__rpc__server_1a2b9d7ab2e568b9cdbcfff79e227274cf: .. ref-code-block:: cpp :class: doxyrest-title-code-block char** namespaces Array of namespaces for memory pointers (rpc_ptr). .. index:: pair: variable; namespaces_len .. _doxid-structrcf__rpc__server_1a62aa3bfbdb348ba457f7c8da1a74bd46: .. ref-code-block:: cpp :class: doxyrest-title-code-block size_t namespaces_len Amount of elements in ``namespaces``