Merge "Fix rmr_call() parameter checking bug"
[ric-plt/lib/rmr.git] / docs / rmr_str2xact.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_str2xact 
12 ============================================================================================ 
13  
14 RMR Library Functions 
15 ============================================================================================ 
16  
17  
18 NAME 
19 -------------------------------------------------------------------------------------------- 
20  
21 rmr_str2xact 
22  
23 SYNOPSIS 
24 -------------------------------------------------------------------------------------------- 
25  
26  
27 :: 
28   
29  #include <rmr/rmr.h>
30  int rmr_str2xact( rmr_mbuf_t* mbuf, unsigned char* src, int len )
31  
32  
33  
34 DESCRIPTION 
35 -------------------------------------------------------------------------------------------- 
36  
37 The rmr_str2xact function will copy the string pointed to by 
38 src to the transaction ID (xaction) field in the given 
39 message. The field is a fixed length, gated by the constant 
40 RMR_MAX_XID and if string length is larger than this value, 
41 then **nothing** will be copied. (Note, this differs slightly 
42 from the behaviour of the lrmr_bytes2xact() function.) 
43  
44  
45 RETURN VALUE 
46 -------------------------------------------------------------------------------------------- 
47  
48 On success, the value RMR_OK is returned. If the string 
49 cannot be copied to the message, the return value will be 
50 one of the errors listed below. 
51  
52 ERRORS 
53 -------------------------------------------------------------------------------------------- 
54  
55 If the return value is not RMR_OK, then it will be set to 
56 one of the values below. 
57  
58  
59 RMR_ERR_BADARG 
60    
61   The message, or an internal portion of the message, was 
62   corrupted or the pointer was invalid. 
63    
64  
65 RMR_ERR_OVERFLOW 
66    
67   The length passed in was larger than the maximum length of 
68   the field; only a portion of the source bytes were copied. 
69  
70  
71 EXAMPLE 
72 -------------------------------------------------------------------------------------------- 
73  
74  
75 SEE ALSO 
76 -------------------------------------------------------------------------------------------- 
77  
78 rmr_alloc_msg(3), rmr_bytes2meid(3), rmr_bytes2xact(3), 
79 rmr_call(3), rmr_free_msg(3), rmr_get_meid(3), 
80 rmr_get_rcvfd(3), rmr_get_xact(3), rmr_payload_size(3), 
81 rmr_send_msg(3), rmr_rcv_msg(3), rmr_rcv_specific(3), 
82 rmr_rts_msg(3), rmr_ready(3), rmr_fib(3), rmr_has_str(3), 
83 rmr_tokenise(3), rmr_mk_ring(3), rmr_ring_free(3), 
84 rmr_str2meid(3), rmr_wh_open(3), rmr_wh_send_msg(3)