ArduPilot / ArduPilot/MissionPlanner

MAVFTP: Check CRC after file upload

Open
#3,308 6 comments 0 reactions 0 assignees View on GitHub
Dominant language
C#
Stars
2.4k
Forks
2.9k
Avg merge
19h 16m
Merged PRs (30d)
4

Description

The FTP protocol has a option to get the CRC32 checksum of a file, this could be fetched after a file upload to confirm it was uploaded correctly.

This can be currently be done manually:

Grab the CRC from the file:
![image](https://github.com/ArduPilot/MissionPlanner/assets/33176108/c0307e10-de4b-45c1-bee2-8bf3fa30496c)

![image](https://github.com/ArduPilot/MissionPlanner/assets/33176108/9d3dff41-cdb0-40d3-82a7-80ecbc83e77f)

Then a online tool can be used to get the expected checksum from the local copy: https://www.lddgo.net/en/encrypt/crc

It needs a little custom setup to get the correct result:

![image](https://github.com/ArduPilot/MissionPlanner/assets/33176108/2fe53d27-4537-46f6-b344-c4d7abffb943)

If they don't match the file should be deleted and/or the upload give a failed warning.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by tracing the MAVFTP file-upload flow and locating how CRC32 values can be requested and compared after transfer. Done means an upload mismatch produces the requested failure behavior, such as deleting the file or showing a failed warning, while matching uploads complete normally.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
desktop, networking
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.