diff options
author | Kevin O'Connor <kevin@koconnor.net> | 2018-11-28 20:26:49 -0500 |
---|---|---|
committer | Kevin O'Connor <kevin@koconnor.net> | 2018-11-30 11:50:50 -0500 |
commit | 3a47d972db205cac77b9bf22a3675e823cc45884 (patch) | |
tree | 2d883c7376bb5ea03db0843190701e2fa216d518 /src/i2ccmds.c | |
parent | db4f0c24cd04ca1b71a87b5fbc0c8bd9f0ffe500 (diff) | |
download | kutter-3a47d972db205cac77b9bf22a3675e823cc45884.tar.gz kutter-3a47d972db205cac77b9bf22a3675e823cc45884.tar.xz kutter-3a47d972db205cac77b9bf22a3675e823cc45884.zip |
i2ccmds: Validate the i2c address
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'src/i2ccmds.c')
-rw-r--r-- | src/i2ccmds.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/i2ccmds.c b/src/i2ccmds.c index 43b05f7e..d880b46f 100644 --- a/src/i2ccmds.c +++ b/src/i2ccmds.c @@ -16,9 +16,12 @@ struct i2cdev_s { void command_config_i2c(uint32_t *args) { + uint8_t addr = args[3]; + if (addr & 1) + shutdown("Invalid I2C address"); struct i2cdev_s *i2c = oid_alloc(args[0], command_config_i2c , sizeof(*i2c)); - i2c->i2c_config = i2c_setup(args[1], args[2], args[3]); + i2c->i2c_config = i2c_setup(args[1], args[2], addr); } DECL_COMMAND(command_config_i2c, "config_i2c oid=%c bus=%u rate=%u addr=%u"); |