opengnsys_ipxe/src
Michael Brown 5b41b9a80f [efi] Nullify interfaces and leak memory on uninstallation failure
The UEFI specification allows uninstallation of a protocol interface
to fail.  There is no sensible way for code to react to this, since
uninstallation is likely to be taking place on a code path that cannot
itself fail (e.g. a code path that is itself a failure path).

Where the protocol structure exists within a dynamically allocated
block of memory, this leads to possible use-after-free bugs.  Work
around this unfortunate design choice by nullifying the protocol
(i.e. overwriting the method pointers with no-ops) and leaking the
memory containing the protocol structure.

Signed-off-by: Michael Brown <mcb30@ipxe.org>
2020-10-26 15:24:00 +00:00
..
arch [pci] Update drivers to use pci_ioremap() 2020-09-25 14:17:07 +01:00
bin Rename .cvsignore files to .gitignore 2007-06-09 22:57:00 +01:00
config [efi] Enable NET_PROTO_IPV6 by default 2020-10-14 14:51:29 +01:00
core [libc] Fix memcmp() to return proper values 2020-07-21 15:29:18 +01:00
crypto [deflate] Fix typo in comment describing length codes 2020-07-21 15:59:04 +01:00
doc [build] Rename gPXE to iPXE 2010-04-19 23:43:39 +01:00
drivers [usbblk] Allow USB block device to be described using an EFI device path 2020-10-16 15:38:20 +01:00
hci [cmdline] Add "--timeout" parameter to "ifconf" command 2020-07-22 12:44:51 +01:00
image [efi] Split device path functions out to efi_path.c 2020-10-16 15:36:37 +01:00
include [efi] Nullify interfaces and leak memory on uninstallation failure 2020-10-26 15:24:00 +00:00
interface [efi] Nullify interfaces and leak memory on uninstallation failure 2020-10-26 15:24:00 +00:00
libgcc [libgcc] Change __divmoddi4 from int64 [unknown] to int64_t 2020-07-21 14:33:32 +01:00
net [infiniband] Allow SRP device to be described using an EFI device path 2020-10-23 15:34:35 +01:00
scripts [efi] Centralise architecture-independent EFI Makefile and linker script 2016-03-12 21:47:13 +00:00
tests [libc] Fix memcmp() to return proper values 2020-07-21 15:29:18 +01:00
usr [cmdline] Add "--timeout" parameter to "ifconf" command 2020-07-22 12:44:51 +01:00
util [build] Fix default target in sdsk image 2020-07-21 14:29:12 +01:00
.gitignore [build] Add support for local configuration files 2010-03-26 19:07:22 +00:00
Makefile [bnxt] Add driver support for Broadcom NetXtreme-E Adapters 2020-05-06 15:41:45 +01:00
Makefile.efi [efi] Enable stack protection where possible 2020-06-24 16:23:21 +01:00
Makefile.housekeeping [build] Provide a testable platform macro alongside -DPLATFORM 2020-10-16 15:16:00 +01:00
doxygen.cfg [build] Remove PACKED macro 2010-05-29 23:49:47 +01:00