5ea92f33870686ea4df4ea404080fe54cf93f79c
[ric-plt/lib/rmr.git] / doc / src / man / rmr_get_src.3.xfm
1 .if false
2 ==================================================================================
3         Copyright (c) 2019 Nokia
4         Copyright (c) 2018-2019 AT&T Intellectual Property.
5
6    Licensed under the Apache License, Version 2.0 (the "License");
7    you may not use this file except in compliance with the License.
8    You may obtain a copy of the License at
9
10        http://www.apache.org/licenses/LICENSE-2.0
11
12    Unless required by applicable law or agreed to in writing, software
13    distributed under the License is distributed on an "AS IS" BASIS,
14    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15    See the License for the specific language governing permissions and
16    limitations under the License.
17 ==================================================================================
18 .fi
19
20 .if false
21         Mnemonic        rmr_get_src.xfm
22         Abstract        The manual page for the rmr_get_src function.
23         Author          E. Scott Daniels
24         Date            8 March 2019
25 .fi
26
27 .** if formatting with tfm, the roff.im will cause roff output to be generated
28 .** if formatting with pfm, then pretty postscript will be generated
29 .gv e LIB lib
30 .if pfm
31         .im &{lib}/generic_ps.im
32 .ei
33         .gv e OUTPUT_RST use_rst
34         .if .ev &use_rst 1 =
35                 .im &{lib}/rst.im
36         .ei
37                 .im &{lib}/roff.im
38         .fi
39 .fi
40
41 &line_len(6i)
42
43 &h1(RMR Library Functions)
44 &h2(NAME)
45         rmr_get_src
46
47 &h2(SYNOPSIS)
48 &indent
49 &ex_start
50 #include <rmr/rmr.h>
51
52 unsigned char* rmr_get_src( rmr_mbuf_t* mbuf, unsigned char* dest )
53 &ex_end
54
55 &uindent
56
57 &h2(DESCRIPTION)
58 The &cw(rmr_get_src) function will copy the &ital(source) information from the message to a buffer
59 (dest) supplied by the user.
60 In an RMr message, the source is the sender's information that is used for return to sender
61 function calls, and is generally the hostname and port in the form &ital(name:port).
62 The source might be an IP address port combination; the data is populated by the sending process
63 and the only requirement is that it be capable of being used to start a TCP session with the
64 sender.
65 .sp
66
67 The maximum size allowed by RMr is 64 bytes (including the nil string terminator), so the user
68 must ensure that the destination buffer given is at least 64 bytes.
69
70 &h2(RETURN VALUE)
71 On success, a pointer to the destination buffer is given as a convenience to the user programme.
72 On failure, a nil pointer is returned and the value of errno is set.
73
74 &h2(ERRORS)
75 If an error occurs, the value of the global variable &cw( errno ) will be set to one of
76 the following with the indicated meaning.
77
78 &beg_dlist(.75i : ^&bold_font )
79 &half_space
80 &di(EINVAL) The message, or an internal portion of the message, was corrupted or the pointer was invalid.
81 &end_dilist
82
83
84
85 &h2(SEE ALSO )
86 .ju off
87 rmr_alloc_msg(3),
88 rmr_bytes2xact(3),
89 rmr_bytes2meid(3),
90 rmr_call(3),
91 rmr_free_msg(3),
92 rmr_get_rcvfd(3),
93 rmr_payload_size(3),
94 rmr_send_msg(3),
95 rmr_rcv_msg(3),
96 rmr_rcv_specific(3),
97 rmr_rts_msg(3),
98 rmr_ready(3),
99 rmr_fib(3),
100 rmr_has_str(3),
101 rmr_tokenise(3),
102 rmr_mk_ring(3),
103 rmr_ring_free(3),
104 rmr_str2meid(3),
105 rmr_str2xact(3),
106 rmr_wh_open(3),
107 rmr_wh_send_msg(3)
108 .ju on
109
110
111 .qu
112