Commit c36b9ad1 authored by Desnes Nunes's avatar Desnes Nunes Committed by Mauro Carvalho Chehab
Browse files

media: dvb-usb-v2: af9035: fix ISO C90 compilation error on af9035_i2c_master_xfer



This fixes a 'ISO C90 forbids mixed declarations and code' compilation
error on af9035_i2c_master_xfer, which is caused by the sanity check added
on user controlled msg[i], before declaring the demodulator register.

Fixes: 7bf744f2 ("media: dvb-usb-v2: af9035: Fix null-ptr-deref in af9035_i2c_master_xfer")
Signed-off-by: default avatarDesnes Nunes <desnesn@redhat.com>
Link: https://lore.kernel.org/r/20240919172755.196907-1-desnesn@redhat.com


Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+huawei@kernel.org>
parent 94794b5c
Loading
Loading
Loading
Loading
+12 −6
Original line number Diff line number Diff line
@@ -322,12 +322,15 @@ static int af9035_i2c_master_xfer(struct i2c_adapter *adap,
			ret = -EOPNOTSUPP;
		} else if ((msg[0].addr == state->af9033_i2c_addr[0]) ||
			   (msg[0].addr == state->af9033_i2c_addr[1])) {
			/* demod access via firmware interface */
			u32 reg;

			if (msg[0].len < 3 || msg[1].len < 1) {
				ret = -EOPNOTSUPP;
				goto unlock;
			}
			/* demod access via firmware interface */
			u32 reg = msg[0].buf[0] << 16 | msg[0].buf[1] << 8 |

			reg = msg[0].buf[0] << 16 | msg[0].buf[1] << 8 |
				msg[0].buf[2];

			if (msg[0].addr == state->af9033_i2c_addr[1])
@@ -385,12 +388,15 @@ static int af9035_i2c_master_xfer(struct i2c_adapter *adap,
			ret = -EOPNOTSUPP;
		} else if ((msg[0].addr == state->af9033_i2c_addr[0]) ||
			   (msg[0].addr == state->af9033_i2c_addr[1])) {
			/* demod access via firmware interface */
			u32 reg;

			if (msg[0].len < 3) {
				ret = -EOPNOTSUPP;
				goto unlock;
			}
			/* demod access via firmware interface */
			u32 reg = msg[0].buf[0] << 16 | msg[0].buf[1] << 8 |

			reg = msg[0].buf[0] << 16 | msg[0].buf[1] << 8 |
				msg[0].buf[2];

			if (msg[0].addr == state->af9033_i2c_addr[1])