Page MenuHomeFreeBSD

D31981.id100880.diff
No OneTemporary

D31981.id100880.diff

diff --git a/usr.sbin/bhyve/fwctl.c b/usr.sbin/bhyve/fwctl.c
--- a/usr.sbin/bhyve/fwctl.c
+++ b/usr.sbin/bhyve/fwctl.c
@@ -472,16 +472,18 @@
static void
fwctl_outw(uint16_t val)
{
- switch (be_state) {
- case IDENT_WAIT:
- if (val == 0) {
- be_state = IDENT_SEND;
- ident_idx = 0;
- }
- break;
- default:
- /* ignore */
- break;
+ if (be_state == DORMANT) {
+ return;
+ }
+
+ if (val == 0) {
+ /*
+ * The guest wants to read the signature. It's possible that the
+ * guest is unaware of the fwctl state at this moment. For that
+ * reason, reset the state machine unconditionally.
+ */
+ be_state = IDENT_SEND;
+ ident_idx = 0;
}
}

File Metadata

Mime Type
text/plain
Expires
Sun, Feb 8, 6:41 PM (16 h, 50 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
28485403
Default Alt Text
D31981.id100880.diff (662 B)

Event Timeline