Hi Antoine,

> > Whilst I've fixed that bit at least, the new attached patch doesn't
> > grab devices that are renabled via "xinput enable" although we do
> > successfully detect that "edge" event now.
> 
> Cool! I'm not sure whether this other edge case is important -- are
> there situations where an attacker in front of a locked computer could
> manage to pull this off?

An attacker being able to run xinput? No we should not care about that
but I was _only_ using that to *emulate* your example of plugging in a
USB multitouch device, not caring about that particular vector per se.

Unfortunately, it turns out my touchpad is a PCI device and I can't
thus follow the exact same testcase as you (ie. via the "authorized")
file. Not only that when I try and emulate it using "rmmod i2c_hid &&
sleep 5 && modprobe i2c_hid" I cannot reproduce that the device is not
regrabbed.

I wonder; could you try the patch I attached previously and see
whether that actually works for USB devices? If so, I would be happy
with rolling it out. If it does not appear to work, please could you
add a quick:

  fprintf(stderr, "grabbing\n"); 

… at the top of the the handle_multitouch function and see whether
that's even called when it gets re-enabled?


Regards,

-- 
      ,''`.
     : :'  :     Chris Lamb
     `. `'`      la...@debian.org 🍥 chris-lamb.co.uk
       `-

Reply via email to