opengnsys_ipxe/src/net
Michael Brown 0a48bb3214 [x509] Ensure certificate remains valid during x509_append()
The allocation of memory for the certificate chain link may cause the
certificate itself to be freed by the cache discarder, if the only
current reference to the certificate is held by the certificate store
and the system runs out of memory during the call to malloc().

Ensure that this cannot happen by taking out a temporary additional
reference to the certificate within x509_append(), rather than
requiring the caller to do so.

Signed-off-by: Michael Brown <mcb30@ipxe.org>
2025-03-31 18:05:11 +01:00
..
80211 [eap] Define a supplicant model for EAP and EAPoL 2023-09-18 12:07:28 +01:00
infiniband [netdevice] Allocate private data for each network upper-layer driver 2023-09-13 20:23:46 +01:00
oncrpc [nfs] Rewrite NFS URI handling 2014-05-18 21:53:39 +01:00
tcp [xfer] Use xfer_alloc_iob() for transmit I/O buffers on stream sockets 2025-03-30 21:47:34 +01:00
udp [ipv6] Expose router address for DHCPv6 leased addresses 2024-06-27 13:43:37 +01:00
aoe.c [libc] Make static_assert() available via assert.h 2024-01-16 13:35:08 +00:00
arp.c [arp] Validate length of ARP packet 2016-03-12 01:24:03 +00:00
dhcpopts.c [legal] Relicense files under GPL2_OR_LATER_OR_UBDL 2015-03-02 14:50:42 +00:00
dhcppkt.c [legal] Relicense files under GPL2_OR_LATER_OR_UBDL 2015-03-02 14:17:31 +00:00
eap.c [eap] Allow MD5-Challenge authentication method to be disabled 2024-02-23 16:24:44 +00:00
eap_md5.c [eap] Allow MD5-Challenge authentication method to be disabled 2024-02-23 16:24:44 +00:00
eap_mschapv2.c [eap] Add support for the MS-CHAPv2 authentication method 2024-02-23 16:37:07 +00:00
eapol.c [eapol] Limit number of EAPoL-Start packets transmitted per attempt 2023-11-07 13:51:16 +00:00
eth_slow.c [lacp] Ignore (and do not echo) trailing padding on received packets 2020-10-14 14:18:49 +01:00
ethernet.c [ethernet] Avoid false positive Coverity warning 2019-08-17 17:30:09 +01:00
fakedhcp.c [pxe] Populate ciaddr in fake PXE Boot Server ACK packet 2015-09-01 21:24:02 +01:00
fc.c [build] Fix the REQUIRE_SYMBOL mechanism 2015-03-05 00:59:38 +00:00
fcels.c [legal] Relicense files under GPL2_OR_LATER_OR_UBDL 2015-03-02 14:17:31 +00:00
fcns.c [legal] Relicense files under GPL2_OR_LATER_OR_UBDL 2015-03-02 14:17:31 +00:00
fcoe.c [fcoe] Use driver-private data to hold FCoE port structure 2023-09-14 13:25:19 +01:00
fcp.c [fcp] Allow Fibre Channel device to be described using an EFI device path 2020-10-22 14:16:55 +01:00
fragment.c [legal] Relicense files under GPL2_OR_LATER_OR_UBDL 2015-03-02 14:17:31 +00:00
icmp.c [legal] Relicense files under GPL2_OR_LATER_OR_UBDL 2015-03-02 14:17:31 +00:00
icmpv4.c [legal] Relicense files under GPL2_OR_LATER_OR_UBDL 2015-03-02 14:17:31 +00:00
icmpv6.c [ipv6] Disambiguate received ICMPv6 errors 2015-05-11 12:45:14 +01:00
infiniband.c [infiniband] Require drivers to specify the number of ports 2021-01-27 01:15:35 +00:00
iobpad.c [legal] Relicense files under GPL2_OR_LATER_OR_UBDL 2015-03-02 14:17:31 +00:00
ipv4.c [ipv4] Support small subnets with no directed broadcast address 2024-06-26 05:01:58 -07:00
ipv6.c [ipv6] Use driver-private data to hold link-local IPv6 settings block 2023-09-13 23:02:54 +01:00
lldp.c [lldp] Use driver-private data to hold LLDP settings block 2023-09-13 23:02:47 +01:00
ndp.c [ipv6] Expose router address for DHCPv6 leased addresses 2024-06-27 13:43:37 +01:00
neighbour.c [netdevice] Allocate private data for each network upper-layer driver 2023-09-13 20:23:46 +01:00
netdev_settings.c [netdevice] Add "linktype" setting 2024-04-03 12:53:46 +01:00
netdevice.c [netdevice] Allocate private data for each network upper-layer driver 2023-09-13 20:23:46 +01:00
nullnet.c [legal] Relicense files under GPL2_OR_LATER_OR_UBDL 2015-03-02 14:17:31 +00:00
pccrc.c [crypto] Simplify internal HMAC API 2022-10-10 12:21:54 +01:00
pccrd.c [peerdist] Add support for constructing and decoding discovery messages 2015-07-28 16:09:14 +01:00
peerblk.c [crypto] Allow initialisation vector length to vary from cipher blocksize 2022-10-25 13:21:28 +01:00
peerdisc.c [netdevice] Separate concept of scope ID from network device name index 2023-01-14 00:09:20 +00:00
peerdist.c [peerdist] Allow PeerDist to be globally enabled or disabled 2019-12-13 14:44:22 +00:00
peermux.c [peerdist] Gather and report peer statistics during download 2017-09-05 23:23:22 +01:00
ping.c [xfer] Remove address family from definition of a socket opener 2020-07-15 18:46:58 +01:00
rarp.c [legal] Relicense files under GPL2_OR_LATER_OR_UBDL 2015-03-02 14:17:31 +00:00
retry.c [retry] Colourise debug output 2015-03-05 11:25:54 +00:00
rndis.c [rndis] Clean up error handling path in register_rndis() 2018-07-09 10:35:57 +01:00
socket.c [legal] Relicense files under GPL2_OR_LATER_OR_UBDL 2015-03-02 14:17:31 +00:00
stp.c [time] Allow timer to be selected at runtime 2017-01-26 08:17:37 +00:00
tcp.c [xfer] Remove address family from definition of a socket opener 2020-07-15 18:46:58 +01:00
tcpip.c [netdevice] Limit MTU by hardware maximum frame length 2017-01-25 14:55:09 +00:00
tls.c [x509] Ensure certificate remains valid during x509_append() 2025-03-31 18:05:11 +01:00
udp.c [xfer] Remove address family from definition of a socket opener 2020-07-15 18:46:58 +01:00
validator.c [crypto] Fix debug name for empty certificate chain validators 2024-08-14 14:07:41 +01:00
vlan.c [netdevice] Allocate private data for each network upper-layer driver 2023-09-13 20:23:46 +01:00