all: Make usbi_os_backend.get_[active_]config_descriptor return len
Since commit
5e479f1821d3294fb1cc70c5867c69eca2551de7:
"Core: Avoid short read failures on broken descriptors"
usbi_os_backend.get_[active_]config_descriptor no longer return on error
(under Linux) when returning less bytes then requested. But
libusb_get_[active_]config_descriptor still not only requests wTotalLength
bytes, but also blindly assumes that on success it has gotten wTotalLength
bytes.
This patch fixes this, it changes all usbi_os_backend.get_*config_descriptor
implementations to return the actual length on success and uses this value as
the descriptor size in parse_configuration().
Note that the linux and wince backends were already returning the actual
length and thus are not touched.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>