Add route table guide and formatting tweaks
[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)