summaryrefslogtreecommitdiffstats
path: root/src/include/ipxe/efi
diff options
context:
space:
mode:
authorMichael Brown2020-10-01 19:41:37 +0200
committerMichael Brown2020-10-02 00:27:53 +0200
commit02201417104c751545dda261eb33f0012703d1ff (patch)
treeee42eeb837abb133d62bcde1d9072144845c7013 /src/include/ipxe/efi
parent[efi] Avoid integer underflow on malformed USB string descriptors (diff)
downloadipxe-02201417104c751545dda261eb33f0012703d1ff.tar.gz
ipxe-02201417104c751545dda261eb33f0012703d1ff.tar.xz
ipxe-02201417104c751545dda261eb33f0012703d1ff.zip
[efi] Fix reporting of USB supported languages array
The length as returned by UsbGetSupportedLanguages() should not include the length of the descriptor header itself. Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/include/ipxe/efi')
-rw-r--r--src/include/ipxe/efi/efi_usb.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/include/ipxe/efi/efi_usb.h b/src/include/ipxe/efi/efi_usb.h
index 05b4fad00..41d9cc665 100644
--- a/src/include/ipxe/efi/efi_usb.h
+++ b/src/include/ipxe/efi/efi_usb.h
@@ -24,7 +24,9 @@ struct efi_usb_device {
/** Configuration descriptor */
struct usb_configuration_descriptor *config;
/** Supported languages */
- struct usb_descriptor_header *languages;
+ uint16_t *lang;
+ /** Length of supported languages */
+ size_t lang_len;
/** List of interfaces */
struct list_head interfaces;
};