:orphan: .. index:: pair: struct; rpc_msghdr .. _doxid-structrpc__msghdr: struct rpc_msghdr ================= .. toctree:: :hidden: Overview ~~~~~~~~ Store information about message :ref:`More...` .. ref-code-block:: cpp :class: doxyrest-overview-code-block #include struct rpc_msghdr { // fields void* :ref:`msg_name`; socklen_t :ref:`msg_namelen`; struct :ref:`rpc_iovec`* :ref:`msg_iov`; size_t :ref:`msg_iovlen`; void* :ref:`msg_control`; size_t :ref:`msg_controllen`; :ref:`rpc_send_recv_flags` :ref:`msg_flags`; size_t :ref:`real_msg_controllen`; size_t :ref:`got_msg_controllen`; int :ref:`msg_cmsghdr_num`; :ref:`rpc_msghdr_field_mode` :ref:`msg_control_mode`; :ref:`rpc_msghdr_field_mode` :ref:`msg_name_mode`; bool :ref:`msg_namelen_exact`; socklen_t :ref:`got_msg_namelen`; socklen_t :ref:`msg_rnamelen`; size_t :ref:`msg_riovlen`; :ref:`rpc_msg_flags_mode` :ref:`msg_flags_mode`; :ref:`rpc_send_recv_flags` :ref:`in_msg_flags`; }; .. _details-structrpc__msghdr: Detailed Documentation ~~~~~~~~~~~~~~~~~~~~~~ Store information about message Fields ------ .. index:: pair: variable; msg_name .. _doxid-structrpc__msghdr_1a59930410c22f7d517b1eece9fe852a45: .. ref-code-block:: cpp :class: doxyrest-title-code-block void* msg_name protocol address .. index:: pair: variable; msg_namelen .. _doxid-structrpc__msghdr_1ab55da6a09a3bdde0b2d129725858447a: .. ref-code-block:: cpp :class: doxyrest-title-code-block socklen_t msg_namelen size of protocol address .. index:: pair: variable; msg_iov .. _doxid-structrpc__msghdr_1a69cf025aaa172207647b1b08211cc9f2: .. ref-code-block:: cpp :class: doxyrest-title-code-block struct :ref:`rpc_iovec`* msg_iov scatter/gather array .. index:: pair: variable; msg_iovlen .. _doxid-structrpc__msghdr_1a53e0a157366a3217b8aa129c3e9dc757: .. ref-code-block:: cpp :class: doxyrest-title-code-block size_t msg_iovlen elements in msg_iov .. index:: pair: variable; msg_control .. _doxid-structrpc__msghdr_1a882ea14ec3a3191bc413f56fc8227002: .. ref-code-block:: cpp :class: doxyrest-title-code-block void* msg_control ancillary data .. index:: pair: variable; msg_controllen .. _doxid-structrpc__msghdr_1ad45d6123eae14ae17108f2fa725c577f: .. ref-code-block:: cpp :class: doxyrest-title-code-block size_t msg_controllen length of ancillary data .. index:: pair: variable; msg_flags .. _doxid-structrpc__msghdr_1a0d32d1d08dceebba76f7abe8a9840455: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`rpc_send_recv_flags` msg_flags flags returned by recvmsg() .. index:: pair: variable; real_msg_controllen .. _doxid-structrpc__msghdr_1ae9f00ecaba898a92b97f09a6ef3fd950: .. ref-code-block:: cpp :class: doxyrest-title-code-block size_t real_msg_controllen Real length of msg_control buffer. Ignored if zero; if non-zero. value of msg_controllen will be used explicitly on TA. .. index:: pair: variable; got_msg_controllen .. _doxid-structrpc__msghdr_1a797c370d8d89094080831fdf58240a81: .. ref-code-block:: cpp :class: doxyrest-title-code-block size_t got_msg_controllen msg_controllen value obtained on TA .. index:: pair: variable; msg_cmsghdr_num .. _doxid-structrpc__msghdr_1a07d138a7755f7de1c9085bf1ec0cf43f: .. ref-code-block:: cpp :class: doxyrest-title-code-block int msg_cmsghdr_num Number of valid **cmsghdr** structures in **msg_control** .. index:: pair: variable; msg_control_mode .. _doxid-structrpc__msghdr_1a707fd1c4c4a8ba3c26488a5cd90a60c7: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`rpc_msghdr_field_mode` msg_control_mode How to process msg_control when calling RPC: in case of default mode, msg_control will be parsed only for send calls, and will be passed as a raw value for receive calls. .. index:: pair: variable; msg_name_mode .. _doxid-structrpc__msghdr_1a056ecd24184220f8248d70a9246905bd: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`rpc_msghdr_field_mode` msg_name_mode How to process msg_name (in case of default mode, address will be parsed for send calls but passed as raw value for receive calls on input). .. index:: pair: variable; msg_namelen_exact .. _doxid-structrpc__msghdr_1aa0b371df10d38213e725f61204cf01eb: .. ref-code-block:: cpp :class: doxyrest-title-code-block bool msg_namelen_exact If ``true``, use specified msg_namelen value on a remote host; otherwise compute it on remote host from address type. .. index:: pair: variable; got_msg_namelen .. _doxid-structrpc__msghdr_1ac15ffddc4e7d2d544e9ced011f8e7d74: .. ref-code-block:: cpp :class: doxyrest-title-code-block socklen_t got_msg_namelen Here msg_namelen obtained on remote host will be retrieved. .. index:: pair: variable; msg_rnamelen .. _doxid-structrpc__msghdr_1ac1302daf2479e2ace22971ca1747b578: .. ref-code-block:: cpp :class: doxyrest-title-code-block socklen_t msg_rnamelen Real size of protocol address buffer. .. index:: pair: variable; msg_riovlen .. _doxid-structrpc__msghdr_1a6c0f9075bc5b59a9afc719dc174bbe5e: .. ref-code-block:: cpp :class: doxyrest-title-code-block size_t msg_riovlen real number of elements in msg_iov .. index:: pair: variable; msg_flags_mode .. _doxid-structrpc__msghdr_1af5d4e84cfdd840c1e45dc0b5e90bd024: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`rpc_msg_flags_mode` msg_flags_mode determine how to process field msg_flags .. index:: pair: variable; in_msg_flags .. _doxid-structrpc__msghdr_1ad52b9b5eaa298310c509bfd16f7fed45: .. ref-code-block:: cpp :class: doxyrest-title-code-block :ref:`rpc_send_recv_flags` in_msg_flags msg_flags value passed in