From aee2b91fe278fa0bdd6e8274119e37efae8323fd Mon Sep 17 00:00:00 2001 From: Frediano Ziglio Date: Wed, 21 Nov 2018 09:12:26 +0000 Subject: [PATCH] docs: Document to_ptr protocol attribute Signed-off-by: Frediano Ziglio Acked-by: Snir Sheriber --- docs/spice_protocol.txt | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/docs/spice_protocol.txt b/docs/spice_protocol.txt index daab7f2..97beea7 100644 --- a/docs/spice_protocol.txt +++ b/docs/spice_protocol.txt @@ -365,7 +365,30 @@ the attribute was attached to a `len`-sized array). to_ptr ~~~~~~ -TODO +This specifies that the corresponding C structure field contains a pointer to +the data. On marshalling the pointer is used, on demarshalling the data is +allocated in the memory block that holds the returned structure. +The type of this field must be a structure. + +Example: + + struct test { + uint16 num; + }; + + struct msg { + test ptr @to_ptr; + }; + +Output C structure: + + struct test { + uint16_t num; + }; + + struct msg { + struct test *ptr; + }; nocopy ~~~~~~