aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Brown <mcb30@ipxe.org>2014-12-20 21:20:52 +0000
committerMichael Brown <mcb30@ipxe.org>2014-12-20 21:33:59 +0000
commitf6a3bc0aa1f9cd81b3999efab15a648089872040 (patch)
treeb794513d5a9b487e7ff0d501d3f9a2bbdeb90a83
parent639632b0595a30e2a23c7009bf2ccf1d371158bc (diff)
downloadipxe-f6a3bc0aa1f9cd81b3999efab15a648089872040.tar.gz
[rndis] Ignore start-of-day RNDIS_INDICATE_STATUS_MSG with status 0x40020006
Windows Server 2012 R2 generates an RNDIS_INDICATE_STATUS_MSG with a status code of 0x4002006. This status code does not appear to be documented anywhere within the sphere of human knowledge. Explicitly ignore this status code in order to avoid unnecessarily cluttering the display when RNDIS debugging is enabled. Signed-off-by: Michael Brown <mcb30@ipxe.org>
-rw-r--r--src/include/ipxe/rndis.h2
-rw-r--r--src/net/rndis.c4
2 files changed, 6 insertions, 0 deletions
diff --git a/src/include/ipxe/rndis.h b/src/include/ipxe/rndis.h
index bd6793e46..b7c9c0648 100644
--- a/src/include/ipxe/rndis.h
+++ b/src/include/ipxe/rndis.h
@@ -191,6 +191,8 @@ enum rndis_status {
RNDIS_STATUS_MEDIA_CONNECT = 0x4001000bUL,
/** Device is disconnected from the medium */
RNDIS_STATUS_MEDIA_DISCONNECT = 0x4001000cUL,
+ /** Unknown start-of-day status code */
+ RNDIS_STATUS_WTF_WORLD = 0x40020006UL,
};
/** RNDIS keepalive message */
diff --git a/src/net/rndis.c b/src/net/rndis.c
index dde4fcdd0..cd710a49c 100644
--- a/src/net/rndis.c
+++ b/src/net/rndis.c
@@ -686,6 +686,10 @@ static void rndis_rx_status ( struct rndis_device *rndis,
netdev_link_down ( netdev );
break;
+ case RNDIS_STATUS_WTF_WORLD:
+ /* Ignore */
+ break;
+
default:
DBGC ( rndis, "RNDIS %s unexpected status %#08x:\n",
rndis->name, status );