Files
kaptan/firmware/libs/kaptan-mavlink/definitions/transfer/file_control.xml
T

47 lines
2.5 KiB
XML

<?xml version="1.0"?>
<mavlink>
<version>3</version>
<dialect>0</dialect>
<enums>
<enum name="FILE_OPERATION">
<entry value="1" name="FILE_OPERATION_OPEN_READ"/>
<entry value="2" name="FILE_OPERATION_OPEN_WRITE"/>
<entry value="3" name="FILE_OPERATION_READ"/>
<entry value="4" name="FILE_OPERATION_WRITE_ACK"/>
<entry value="5" name="FILE_OPERATION_CLOSE"/>
<entry value="6" name="FILE_OPERATION_ABORT"/>
</enum>
<enum name="FILE_STATUS">
<entry value="0" name="FILE_STATUS_UNSPECIFIED"/>
<entry value="1" name="FILE_STATUS_OK"/>
<entry value="2" name="FILE_STATUS_BUSY"/>
<entry value="3" name="FILE_STATUS_INVALID_TRANSFER"/>
<entry value="4" name="FILE_STATUS_INVALID_STATE"/>
<entry value="5" name="FILE_STATUS_INVALID_PATH"/>
<entry value="6" name="FILE_STATUS_NOT_FOUND"/>
<entry value="7" name="FILE_STATUS_TOO_LARGE"/>
<entry value="8" name="FILE_STATUS_INVALID_POSITION"/>
<entry value="9" name="FILE_STATUS_CHECKSUM_MISMATCH"/>
<entry value="10" name="FILE_STATUS_CONTENT_REJECTED"/>
<entry value="11" name="FILE_STATUS_STORAGE_FAILURE"/>
<entry value="12" name="FILE_STATUS_REQUEST_CONFLICT"/>
<entry value="13" name="FILE_STATUS_INTERNAL"/>
</enum>
</enums>
<messages>
<message id="51025" name="FILE_CONTROL">
<description>Opens, advances, completes, or aborts one bounded Kaptan virtual-file transfer.</description>
<field type="uint32_t" name="position">Requested or next accepted byte position.</field>
<field type="uint32_t" name="file_size">Exact complete file size advertised when the transfer is opened.</field>
<field type="uint32_t" name="checksum_crc32c">CRC-32C of the complete file.</field>
<field type="uint16_t" name="transfer_id">Client-selected nonzero transfer identity retained for the complete transfer and not reused by that source during the ten-second replay lease.</field>
<field type="uint8_t" name="target_system"/>
<field type="uint8_t" name="target_component"/>
<field type="uint8_t" name="operation" enum="FILE_OPERATION"/>
<field type="uint8_t" name="status" enum="FILE_STATUS">Requests use UNSPECIFIED; responses carry the authoritative outcome.</field>
<field type="uint8_t" name="content_length">Logical bytes initialized in content.</field>
<field type="uint8_t[64]" name="content">Canonical path for open requests or bounded outcome detail in responses.</field>
</message>
</messages>
</mavlink>