"Shim" driver for backward compatibility with io-net


io-pkt-variant -d shim options "io-net_drvr [drvr_opt,...]"

where variant is one of v4, v4-hc, or v6-hc.

Runs on:

QNX Neutrino


Specify how packets are copied:
  • 1 — copy each received packet in the shim layer as it's passed from the driver to io-pkt. You can safely remove the driver and shim via the ifconfig enX destroy command or by physically removing the device (if supported by the driver). This is the default.
  • 0 — pass each received packet from the driver through the shim directly to io-pkt. This may improve performance, but driver and shim removal is blocked.


The shared object is a "shim" driver that lets io-pkt support devn-* drivers that were written for io-net.

Explicitly loading the shim driver is usually unnecessary; io-pkt loads the shim automatically. For example, if you type:

io-pkt -d some_driver

then io-pkt searches for and loads it as a native driver if found. If not found, io-pkt tries to load via the shim.

If you type:

io-pkt -d /lib/dll/

then io-pkt notices that the driver is an io-net one and loads it via the shim.

  • Shim drivers name their interface entries enX, but native drivers use a naming scheme that depends on the chipset.
  • You can tell if the shim has been loaded by using pidin me.


io-pkt -d shim
io-pkt -d shim "/lib/dll/ transmit=1024,receive=1024"