summaryrefslogtreecommitdiffstats
path: root/python_modules
Commit message (Collapse)AuthorAgeFilesLines
...
* codegen: Allow @to_ptr to make inline structs demarshal as pointersAlexander Larsson2012-03-203-9/+37
|
* codegen: Various cleanupsAlexander Larsson2012-03-202-58/+44
| | | | | | | | | | | | Remove all uses of @end in the marshaller, instead just using the C struct array-at-end-of-struct. To make this work we also remove all use of @end for switches (making them C unions). We drop the zero member of the notify message so that we can avoid this use of @end for a primitive in the marshaller (plus its useless to send over the wire). We change the offsets and stuff in the migration messages to real pointers.
* codegen: Pass member to SubMarshallingSource rather than nameAlexander Larsson2012-03-201-9/+10
| | | | This way we can check attributes on the member.
* codegen: Remove unused methos has_pointer()Alexander Larsson2012-03-201-27/+0
|
* Make distcheck workAlexander Larsson2012-03-201-1/+1
|
* Fix inclusion of common files, no need for common/ partAlexander Larsson2012-03-201-1/+1
|
* codegen: No SPICE_ADDRESS types left, drop @c_ptrAlexander Larsson2012-03-202-19/+12
|
* Properly parse QXLImage to the new-world SpiceImageGerd Hoffmann2012-03-203-10/+27
| | | | | SpiceImage now replaces RedImage and has all image types in it. All image data are now chunked (and as such not copied when demarshalling).
* codegen: support @chunk on non-pointer arraysAlexander Larsson2012-03-202-5/+29
| | | | This is similar to @as_ptr, but generates a single chunk of data.
* Add support for @chunkAlexander Larsson2012-03-201-2/+18
|
* marshaller: Make get_nw_offset() handle deep member referencesAlexander Larsson2012-03-201-7/+32
|
* Convert SpicePath.segments to a pointer arrayAlexander Larsson2012-03-201-23/+28
|
* Handle extra size for switch and array the right wayAlexander Larsson2012-03-201-23/+20
| | | | | | Even for is_extra_size() we should calculate the mem_size for arrays, its just that the parent type (in this case switch) should request mem_size if the type is_extra_size.
* marshaller: Add some docs describing the types of sizesAlexander Larsson2012-03-201-0/+29
|
* marshaller: Make @nonnull a propagated attributeAlexander Larsson2012-03-203-6/+3
| | | | This cleans up some stuff
* marshaller: Make @c_ptr a propagated attributeAlexander Larsson2012-03-202-17/+18
| | | | This simplifies some code
* marshaller: Add generic way to handle propagating attributesAlexander Larsson2012-03-203-11/+18
| | | | Also switches @ptr_array to use this
* Properly parse and marshall SpiceStringGerd Hoffmann2012-03-203-11/+61
|
* Fix 32bit failure in demarshallerAlexander Larsson2012-03-201-2/+2
| | | | Due to a typo we always read offsets as pointers, never as SPICE_ADDRESS.
* Simplify SpiceLineAttr by removing unsed stuffAlexander Larsson2012-03-202-5/+21
| | | | Also in new protocol don't send style data if not needed.
* Support @marshall to automatically marshall pointersAlexander Larsson2012-03-202-28/+40
|
* Store SpicePath segment count rather than sizeAlexander Larsson2012-03-203-12/+33
| | | | | | | | | | | | | | | | | | | Internally and in the network protocol (for the new version) we now store the actual number of segments rather than the size of the full segments array in bytes. This change consists of multiple changes to handle this: * Make the qxl parser calculate num_segments * Make the canvas stroke code handle the new SpicePath layout. * Fix up is_equal_path in red_worker.c for the new layout * replace multiple calls to spice_marshall_PathSegment with a single spice_marshall_Path call * Make the byte_size() array size handling do the conversion from network size to number of elements when marshalling/demarshalling. * Update the current spice protocol to send the segment count rather than the size * Update the old spice protocol to use the new byte_size functionallity to calculate the size sent and the number of elements recieved
* demarshaller: Support @c_ptr attributes for pointersAlexander Larsson2012-03-201-7/+16
| | | | | | A @c_ptr pointer is stored in memory as a real pointer rather than a SPICE_ADDRESS. This is a temporary thing that will be removed again when all SPICE_ADDRESSes have been converted to real pointer.
* demarshaller: Don't parse @zero membersAlexander Larsson2012-03-201-1/+4
| | | | | | These just write zeros at the right place in the network protocol typically for old back-compat things. We don't want to read these back in.
* Fix build error due to member "SpiceMsgEmpty" same name as typeAlexander Larsson2012-03-201-0/+2
|
* Make pointers 32bit in new protocol formatAlexander Larsson2012-03-203-12/+11
|
* marshaller: Correctly determine if switches are fixed sizeAlexander Larsson2012-03-201-1/+9
| | | | | Switches are fixed size only if all cases have the same size *and* it has a default case or all the valid cases are listed.
* Fix handling of @ptr32 network sizeAlexander Larsson2012-03-201-4/+10
|
* Add support for @virtual markup in spice protocolAlexander Larsson2012-03-203-0/+14
| | | | | | | This means the member is not sent on the network at all. Instead its initialized to the attribute argument when demarshalled. This is useful for backwards compatibility support.
* Make internal generated marshaller functions staticAlexander Larsson2012-03-202-4/+4
|
* Support extra prefix in code generatorsAlexander Larsson2012-03-203-6/+7
| | | | | This is require when we add a new spice.proto for the old (major 1) protocol description.
* Support creating marshallers that are called indirectlyAlexander Larsson2012-03-201-6/+25
| | | | | This is needed if we want to switch marshallers depending on what major version the remote side has.
* Add destructor for demarshalled messagesAlexander Larsson2012-03-201-7/+18
| | | | | | | This is required because we don't want to free messages that just refer to the unparsed message (like SpiceMsgData). Also, in the future we might need it for more complex demarshalling.
* Make generated marshallers build on win32Alexander Larsson2012-03-201-0/+1
|
* Support @as_ptr in demarshaller to avoid copying data unnecessaryAlexander Larsson2012-03-201-1/+13
|
* Add support for generating message and structure marshallersAlexander Larsson2012-03-201-0/+357
|
* Add python code to automake systemAlexander Larsson2012-03-201-0/+6
|
* Initial import of spice protocol description and demarshall generatorAlexander Larsson2012-03-205-0/+2509
The "spice.proto" file describes in detail the networking prototcol that spice uses and spice_codegen.py can parse this and generate demarshallers for such network messages.