command qXfer

Format: ‘qXfer:object:read:annex:offset,length’ or ‘qXfer:object:write:annex:offset:data…’ or ‘qXfer:object:operation:…’

Meaning: (‘qXfer:object:read:annex:offset,length’) Read uninterpreted bytes from the target’s special data area identified by the keyword object. Request length bytes starting at offset bytes into the data. The content and encoding of annex is specific to object; it can supply additional details about what data to access.

Here are the specific requests of this form defined so far.

If the trace buffer overflowed, returns an error indicating the overflow. This packet is not probed by default; the remote stub must request it by supplying an appropriate ‘qSupported’ response.

Arguments that are not understood by the remote stub will be silently ignored.

(‘qXfer:object:write:annex:offset:data…’) Write uninterpreted bytes into the target’s special data area identified by the keyword object, starting at offset bytes into the data. The binary-encoded data (see Binary Data) to be written is given by data…. The content and encoding of annex is specific to object; it can supply additional details about what data to access. Here are the specific requests of this form defined so far:

(‘qXfer:object:operation:…’) Requests of this form may be added in the future. When a stub does not recognize the object keyword, or its support for object does not recognize the operation keyword, the stub must respond with an empty packet.

Reply: (‘qXfer:object:read:annex:offset,length’)

m data

Data data (binary) has been read from the target. There may be more data at a higher address (although it is permitted to return ‘m’ even for the last valid block of data, as long as at least one byte of data was read). It is possible for data to have fewer bytes than the length in the request.

l data

Data data (binary) has been read from the target. There is no more data to be read. It is possible for data to have fewer bytes than the length in the request.

‘l’

The offset in the request is at the end of the data. There is no more data to be read.

(‘qXfer:object:write:annex:offset:data…’)

nn

nn (hex encoded) is the number of bytes written. This may be fewer bytes than supplied in the request.