Add ability to control route table req frequency
[ric-plt/lib/rmr.git] / docs / rmr_get_src.3.rst
1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2 .. SPDX-License-Identifier: CC-BY-4.0
3 .. CAUTION: this document is generated from source in doc/src/rtd.
4 .. To make changes edit the source and recompile the document.
5 .. Do NOT make changes directly to .rst or .md files.
6
7 ============================================================================================
8 Man Page: rmr_get_src
9 ============================================================================================
10
11
12
13
14 RMR LIBRARY FUNCTIONS
15 =====================
16
17
18
19 NAME
20 ----
21
22 rmr_get_src
23
24
25 SYNOPSIS
26 --------
27
28
29 ::
30
31   #include <rmr/rmr.h>
32
33   unsigned char* rmr_get_src( rmr_mbuf_t* mbuf, unsigned char* dest )
34
35
36
37 DESCRIPTION
38 -----------
39
40 The ``rmr_get_src`` function will copy the *source*
41 information from the message to a buffer (dest) supplied by
42 the user. In an RMR message, the source is the sender's
43 information that is used for return to sender function calls,
44 and is generally the hostname and port in the form *name*.
45 The source might be an IP address port combination; the data
46 is populated by the sending process and the only requirement
47 is that it be capable of being used to start a TCP session
48 with the sender.
49
50 The maximum size allowed by RMR is 64 bytes (including the
51 nil string terminator), so the user must ensure that the
52 destination buffer given is at least 64 bytes.
53
54
55 RETURN VALUE
56 ------------
57
58 On success, a pointer to the destination buffer is given as a
59 convenience to the user programme. On failure, a nil pointer
60 is returned and the value of errno is set.
61
62
63 ERRORS
64 ------
65
66 If an error occurs, the value of the global variable
67 ``errno`` will be set to one of the following with the
68 indicated meaning.
69
70     .. list-table::
71       :widths: auto
72       :header-rows: 0
73       :class: borderless
74
75       * - **EINVAL**
76         -
77           The message, or an internal portion of the message, was
78           corrupted or the pointer was invalid.
79
80
81
82
83 SEE ALSO
84 --------
85
86 rmr_alloc_msg(3), rmr_bytes2xact(3), rmr_bytes2meid(3),
87 rmr_call(3), rmr_free_msg(3), rmr_get_rcvfd(3),
88 rmr_get_srcip(3), rmr_payload_size(3), rmr_send_msg(3),
89 rmr_rcv_msg(3), rmr_rcv_specific(3), rmr_rts_msg(3),
90 rmr_ready(3), rmr_fib(3), rmr_has_str(3), rmr_tokenise(3),
91 rmr_mk_ring(3), rmr_ring_free(3), rmr_str2meid(3),
92 rmr_str2xact(3), rmr_wh_open(3), rmr_wh_send_msg(3)