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