[media] cec: ignore messages when log_addr_mask == 0
authorHans Verkuil <hans.verkuil@cisco.com>
Fri, 12 Aug 2016 16:32:07 +0000 (13:32 -0300)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Mon, 22 Aug 2016 17:02:03 +0000 (14:02 -0300)
Most CEC adapters will still receive broadcast messages, even if no logical
addresses are claimed. But those messages should only be passed on for
monitoring purposes, but not for processing by either kernel or userspace
if userspace didn't call CEC_ADAP_S_LOG_ADDRS first.

So if adap->log_addrs.log_addr_mask is 0, then just return before passing
the received message on to the processing code.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
drivers/staging/media/cec/cec-adap.c

index 6cc7d79044465b55d57b2820039035f1c2d0d76a..e980ac9c927925ac2161e5d26bfbffbe5706bf0f 100644 (file)
@@ -851,6 +851,9 @@ void cec_received_msg(struct cec_adapter *adap, struct cec_msg *msg)
        if (!valid_la || msg->len <= 1)
                return;
 
+       if (adap->log_addrs.log_addr_mask == 0)
+               return;
+
        /*
         * Process the message on the protocol level. If is_reply is true,
         * then cec_receive_notify() won't pass on the reply to the listener(s)
This page took 0.025104 seconds and 5 git commands to generate.