diff options
author | Jan Kiszka <jan.kiszka@siemens.com> | 2012-03-05 19:50:39 +0100 |
---|---|---|
committer | Jan Kiszka <jan.kiszka@siemens.com> | 2012-03-13 14:05:48 +0100 |
commit | 953e7f54e679cd40fff28e29189ed9e24bfb0758 (patch) | |
tree | 3b1632e6352987c9370546509564f177c51983a1 /slirp/slirp.h | |
parent | d6536b2c971f7323e58dfbe1e6f3b7c7c0c4edf3 (diff) | |
download | qemu-953e7f54e679cd40fff28e29189ed9e24bfb0758.zip qemu-953e7f54e679cd40fff28e29189ed9e24bfb0758.tar.gz qemu-953e7f54e679cd40fff28e29189ed9e24bfb0758.tar.bz2 |
slirp: Prevent recursion of if_start
if_start can be called recursively via if_encap. Avoid this as our
scheme of dequeuing packets is not compatible with this.
CC: Fabien Chouteau <chouteau@adacore.com>
CC: Zhi Yong Wu <wuzhy@linux.vnet.ibm.com>
CC: Stefan Weil <sw@weilnetz.de>
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Diffstat (limited to 'slirp/slirp.h')
-rw-r--r-- | slirp/slirp.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/slirp/slirp.h b/slirp/slirp.h index 28a5c037..416d44a 100644 --- a/slirp/slirp.h +++ b/slirp/slirp.h @@ -239,6 +239,7 @@ struct Slirp { struct mbuf if_fastq; /* fast queue (for interactive data) */ struct mbuf if_batchq; /* queue for non-interactive data */ struct mbuf *next_m; /* pointer to next mbuf to output */ + bool if_start_busy; /* avoid if_start recursion */ /* ip states */ struct ipq ipq; /* ip reass. queue */ |