aboutsummaryrefslogtreecommitdiff
path: root/src/modules/mavlink/mavlink_main.cpp
diff options
context:
space:
mode:
authorJulian Oes <julian@oes.ch>2014-07-24 17:57:30 +0200
committerJulian Oes <julian@oes.ch>2014-07-24 17:57:30 +0200
commitb4e6f535ea15055f39b122eb87004c97796eb584 (patch)
treedb3e12512103fcca7f31f8c1846cf9f3938a7af6 /src/modules/mavlink/mavlink_main.cpp
parent1fdc666bb0be393f048c85b1827494beedff0426 (diff)
downloadpx4-firmware-b4e6f535ea15055f39b122eb87004c97796eb584.tar.gz
px4-firmware-b4e6f535ea15055f39b122eb87004c97796eb584.tar.bz2
px4-firmware-b4e6f535ea15055f39b122eb87004c97796eb584.zip
mavlink: onboard links should only pass on messages from the same system ID
Diffstat (limited to 'src/modules/mavlink/mavlink_main.cpp')
-rw-r--r--src/modules/mavlink/mavlink_main.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/modules/mavlink/mavlink_main.cpp b/src/modules/mavlink/mavlink_main.cpp
index 0c6f8c42f..8cb0152fd 100644
--- a/src/modules/mavlink/mavlink_main.cpp
+++ b/src/modules/mavlink/mavlink_main.cpp
@@ -483,7 +483,12 @@ Mavlink::forward_message(const mavlink_message_t *msg, Mavlink *self)
Mavlink *inst;
LL_FOREACH(_mavlink_instances, inst) {
if (inst != self) {
- inst->pass_message(msg);
+
+ /* if not in normal mode, we are an onboard link
+ * onboard links should only pass on messages from the same system ID */
+ if(!(self->_mode != MAVLINK_MODE_NORMAL && msg->sysid != mavlink_system.sysid)) {
+ inst->pass_message(msg);
+ }
}
}
}