Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for signing configuration for separate MAVLink channels #28736

Open
IdoBuchman opened this issue Nov 25, 2024 · 0 comments
Open

Add support for signing configuration for separate MAVLink channels #28736

IdoBuchman opened this issue Nov 25, 2024 · 0 comments

Comments

@IdoBuchman
Copy link
Contributor

Feature request

I want to activate signing on my MAVlink communication channel between the FCU and the Mission Planner. When I activate signing, all the mavlink ports get activated, including the mavlink port that communicates with my companion computer. Usually, there's no need to protect a wired Point to Point serial communication, and it requires ongoing support to keep the companion computer signing-key updated (If we want to change it from time to time).

Solution Proposal

I suggest adding a new bitmask parameter that states which of the mavlink serial ports should work with signing. For keeping backward compatibility, we will make sure the default is 11111 (All ports activated).

Specifically, I found this code snippet under libraries/GCS_MAVLink/GCS_Signing.cpp lines 93-100, in updated master (commit 4b040ee):

    // activate it immediately on all links:
    for (uint8_t i=0; i<MAVLINK_COMM_NUM_BUFFERS; i++) {
        GCS_MAVLINK *backend = gcs().chan(i);
        if (backend == nullptr) {
            return;
        }
        backend->load_signing_key();
    }

I assume that adding here a simple condition can do the job 😄 .

Alternatives

  • Using another existing parameter with a similar meaning to this I want to add, and use it instead of introducing a new one.
    • I searched through all the parameters in the copter documentation and did not find a good enough candidate.
  • Adding a way to easily update my secret key on my companion computer
    • I found that it makes the operations and ongoing support inconvenient, and would be happy to have a better option.

Platform
[X] All
[ ] AntennaTracker
[ ] Copter
[ ] Plane
[ ] Rover
[ ] Submarine

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant