numam-dpdk/lib
Marvin Liu 134228ca39 vhost: fix split ring potential buffer overflow
In vhost datapath, descriptor's length are mostly used in two coherent
operations. First step is used for address translation, second step is
used for memory transaction from guest to host. But the interval between
two steps will give a window for malicious guest, in which can change
descriptor length after vhost calculated buffer size. Thus may lead to
buffer overflow in vhost side. This potential risk can be eliminated by
accessing the descriptor length once.

Fixes: 1be4ebb1c4 ("vhost: support indirect descriptor in mergeable Rx")
Cc: stable@dpdk.org

Signed-off-by: Marvin Liu <yong.liu@intel.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
2021-03-31 09:34:17 +02:00
..
librte_acl build: remove library name from version map file name 2020-10-19 22:13:59 +02:00
librte_bbdev build: remove library name from version map file name 2020-10-19 22:13:59 +02:00
librte_bitratestats bitrate: fix missing header include 2021-01-21 10:27:44 +01:00
librte_bpf build: force pkg-config for dependency detection 2021-01-26 00:43:59 +01:00
librte_cfgfile build: remove library name from version map file name 2020-10-19 22:13:59 +02:00
librte_cmdline cmdline: avoid name clash with Windows system types 2020-11-05 17:49:00 +01:00
librte_compressdev lib: fix doxygen for parameters of function pointers 2021-01-29 15:58:06 +01:00
librte_cryptodev lib: fix doxygen for parameters of function pointers 2021-01-29 15:58:06 +01:00
librte_distributor build: remove library name from version map file name 2020-10-19 22:13:59 +02:00
librte_eal mem: fix cleanup when multi-process is disabled 2021-03-26 17:17:45 +01:00
librte_efd efd: fix tailq entry leak in error path 2020-10-22 22:07:15 +02:00
librte_ethdev ethdev: install driver headers 2021-03-30 14:46:33 +02:00
librte_eventdev eventdev: fix a return value comment 2021-02-04 13:51:45 +01:00
librte_fib fib: fix missing header includes 2021-01-21 10:27:47 +01:00
librte_flow_classify build: remove library name from version map file name 2020-10-19 22:13:59 +02:00
librte_graph build: standardize component names and defines 2020-10-19 22:15:34 +02:00
librte_gro gro: fix packet type detection with IPv6 tunnel 2020-11-14 10:56:30 +01:00
librte_gso gso: support VXLAN UDP/IPv4 2021-01-15 11:31:28 +01:00
librte_hash build: add header includes check 2021-01-29 20:59:37 +01:00
librte_ip_frag ip_frag: remove padding length of fragment 2021-01-15 11:31:28 +01:00
librte_ipsec build: add header includes check 2021-01-29 20:59:37 +01:00
librte_jobstats build: remove library name from version map file name 2020-10-19 22:13:59 +02:00
librte_kni build: align wording of non-support reasons 2020-11-20 16:05:35 +01:00
librte_kvargs kvargs: support multiple lists 2021-03-16 20:15:29 +01:00
librte_latencystats latency: switch Rx timestamp to dynamic mbuf field 2020-11-03 16:21:15 +01:00
librte_lpm build: add header includes check 2021-01-29 20:59:37 +01:00
librte_mbuf mbuf: rename outer IP checksum macro 2021-03-02 10:57:28 +01:00
librte_member build: remove library name from version map file name 2020-10-19 22:13:59 +02:00
librte_mempool mempool: fix panic on dump or audit 2021-02-05 17:40:23 +01:00
librte_meter build: remove library name from version map file name 2020-10-19 22:13:59 +02:00
librte_metrics telemetry: rename internal-only header file 2021-03-25 17:35:10 +01:00
librte_net net: clarify endianness of 32-bit fields in VXLAN headers 2021-03-22 17:19:16 +01:00
librte_node node: fix missing header include 2021-01-21 10:27:47 +01:00
librte_pci build: remove library name from version map file name 2020-10-19 22:13:59 +02:00
librte_pdump pdump: cleanup logs and variables 2021-01-19 15:24:46 +01:00
librte_pipeline pipeline: add meter array to SWX 2021-03-24 19:18:45 +01:00
librte_port port: add file descriptor SWX port 2021-03-23 19:50:44 +01:00
librte_power power: check sysfs base frequency 2021-03-24 22:04:48 +01:00
librte_rawdev lib: fix doxygen for parameters of function pointers 2021-01-29 15:58:06 +01:00
librte_rcu rcu: use EAL memory barrier API 2021-01-11 15:34:21 +01:00
librte_regexdev build: add header includes check 2021-01-29 20:59:37 +01:00
librte_reorder reorder: switch sequence number to dynamic mbuf field 2020-10-31 22:14:30 +01:00
librte_rib rib: fix missing header include 2021-01-29 20:59:09 +01:00
librte_ring build: add header includes check 2021-01-29 20:59:37 +01:00
librte_sched build: remove library name from version map file name 2020-10-19 22:13:59 +02:00
librte_security lib: fix doxygen for parameters of function pointers 2021-01-29 15:58:06 +01:00
librte_stack build: add header includes check 2021-01-29 20:59:37 +01:00
librte_table table: add wildcard match table type 2021-03-23 19:47:20 +01:00
librte_telemetry telemetry: cleanup internal header 2021-03-26 17:17:45 +01:00
librte_timer build: remove library name from version map file name 2020-10-19 22:13:59 +02:00
librte_vhost vhost: fix split ring potential buffer overflow 2021-03-31 09:34:17 +02:00
meson.build ethdev: install driver headers 2021-03-30 14:46:33 +02:00