3

I'm trying to write a Cisco CDP protocol driver for Windows IoT core running on Raspberry Pi. This will allow me to register the installed location of the device with an upstream server.

To do this, I attempted to use the sample NDISPROT example as part of the Windows DDK Samples. This failed because the project is seemingly inherently incompatible with Windows IoT (specifically ARM)

What I need to do is write a protocol handler that operates on raw Ethernet packets as CDP is built on 802.2 LLC which is very different than 802.3. To do this, on Windows, I would write an NDIS 6.x protocol driver, cache the latest CDP frame from each source, then use DeviceIOControl() to communicate with the device to download the latest CDP packets or upload formatted CDP packets.

Is there a boilerplate driver I could use to do the same on Windows IOT Core?

1 Answers1

3

Unfortunately there's not a way to install NDIS protocol drivers onto Windows IoT Core right now. (The OS doesn't understand the INF dialect used by netcfg.)

This feature is on our backlog. You can help raise its priority by sending feedback directly to Microsoft (either via the feedback hub, forums, or by emailing the IoT team directly).

Jeffrey Tippet
  • 3,146
  • 1
  • 14
  • 15
  • 1
    Hi,@Darren Starr, as Jeffrey mentioned,NDIS filter drivers are not supported on IoT Core since there is no facility to register the filter with the network driver binding engine. You can refer to this [issue](https://github.com/Microsoft/Windows-driver-samples/issues/34) or this [topic](https://social.msdn.microsoft.com/Forums/lync/en-US/ed7711f8-84f9-4fcd-9d56-8331bca76064/sampleinstructions-to-install-netservice-ndis-filter-driver-on-windows-iot-core). – Michael Xu Jun 21 '18 at 06:55
  • 1
    jeffrey and @MichaelXu-MSFT, thank you for your replies and sorry for the late response. I have switched to using Linux instead as it seems to me that using IoT core may be a bit premature. It was a combination of this issue and that IoT core cost would have more than tripled the overall 10 year budget for the project. Sadly this means no IoT core for me :/ – Darren Starr Sep 21 '18 at 06:37
  • This answer is now more than a year old; has the ability to install protocol drivers on IoT Core bubbled to the top of the team's backlog yet? I have a situation where I'd like to read and write a set of OIDs, but since ndisuio.sys isn't documented for Windows 10 (IoT or otherwise), I'd like to make use of code similar to the IOCTL_NDISPROT_SET_OID_VALUE and IOCTL_NDISPROT_QUERY_OID_VALUE handlers from the NDISPROT sample. – Dave Ruske Jul 29 '19 at 14:59