From 99294b204021a0508ef646b3c24427e11aa3e022 Mon Sep 17 00:00:00 2001 From: David Sidrane Date: Mon, 22 Oct 2018 10:51:21 -0700 Subject: [PATCH] fmu:Add Range checking for PWM5 modes --- src/drivers/px4fmu/fmu.cpp | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/drivers/px4fmu/fmu.cpp b/src/drivers/px4fmu/fmu.cpp index ea8f83c0ac..1c514180df 100644 --- a/src/drivers/px4fmu/fmu.cpp +++ b/src/drivers/px4fmu/fmu.cpp @@ -1835,10 +1835,14 @@ PX4FMU::pwm_ioctl(file *filp, int cmd, unsigned long arg) /* FALLTHROUGH */ case PWM_SERVO_SET(5): + if (_mode < MODE_6PWM) { + ret = -EINVAL; + break; + } /* FALLTHROUGH */ case PWM_SERVO_SET(4): - if (_mode < MODE_6PWM) { + if (_mode < MODE_5PWM1CAP) { ret = -EINVAL; break; } @@ -1901,12 +1905,17 @@ PX4FMU::pwm_ioctl(file *filp, int cmd, unsigned long arg) /* FALLTHROUGH */ case PWM_SERVO_GET(5): - case PWM_SERVO_GET(4): if (_mode < MODE_6PWM) { ret = -EINVAL; break; } + case PWM_SERVO_GET(4): + if (_mode < MODE_5PWM1CAP) { + ret = -EINVAL; + break; + } + #endif /* FALLTHROUGH */