On Thu, Jul 21, 2011 at 11:02:53AM -0600, Alex Williamson wrote:
> This is crazy, why would we only test this for PCI_CAP_ID_EXP? If the
> test is going to go in device-assignment, we need to wrap
> pci_add_capability and do it for all callers. However, maybe we can get
> MST to take it in pci_add_capability() if we make the test more
> complete... something like:
>
> if ((pos < 256 && size > 256 - pos) ||
> (pci_config_size() > 256 && pos > 256 &&
> size > pci_config_size() - pos)) {
> ... badness
>
> Thanks,
>
> Alex
We expect device assignment to be able to corrupt
guest memory but not qemu memory. So we must validate
whatever we get from the device, and I think this
validation belongs in device-assignment.c:
IOW I think input should be validated where it's
input, while we still know it's untrusted,
instead of relying on core to validate parameters.
Makes sense?
--
MST
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html