2 ==================================================================================
3 Copyright (c) 2019 Nokia
4 Copyright (c) 2018-2019 AT&T Intellectual Property.
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
10 http://www.apache.org/licenses/LICENSE-2.0
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 ==================================================================================
21 Mnemonic rmr_get_src.xfm
22 Abstract The manual page for the rmr_get_src function.
23 Author E. Scott Daniels
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
31 .im &{lib}/generic_ps.im
33 .gv e OUTPUT_RST use_rst
43 &h1(RMR Library Functions)
52 unsigned char* rmr_get_src( rmr_mbuf_t* mbuf, unsigned char* dest )
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
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.
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.
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.
78 &beg_dlist(.75i : ^&bold_font )
80 &di(EINVAL) The message, or an internal portion of the message, was corrupted or the pointer was invalid.