Ethernet services
This is a refactored sysmodule added with [15.0.0+] for handling ethernet communication.
eth:nd
This is "nn::anif::detail::ISfDriverServiceCreator".
This was added with [15.0.0+].
Cmd | Name |
---|---|
0 | #CreateDriverService |
CreateDriverService
No input. Returns an #ISfDriverService.
ISfDriverService
This is "nn::anif::detail::ISfDriverService".
This was added with [15.0.0+].
Cmd | Name |
---|---|
0 | #OpenNetworkInterface |
128 | GetDriverInfo |
129 | GetNetworkInterfaceList |
130 | GetStateChangedEvent |
131 | GetNetworkInterfaceListUpdatedEvent |
384 | Ioctl |
385 | IoctlRead |
386 | IoctlWrite |
387 | IoctlReadWrite |
388 | IoctlSetHandle |
389 | IoctlGetHandle |
OpenNetworkInterface
Takes a type-0x21 input buffer. Returns an #ISfNetworkInterfaceService.
ISfNetworkInterfaceService
This is "nn::anif::detail::ISfNetworkInterfaceService".
This was added with [15.0.0+].
Cmd | Name |
---|---|
0 | Duplicate |
1 | BringUp |
2 | BringDown |
3 | StartCommunication |
4 | StopCommunication |
5 | CreateSharedMemory |
6 | DestroySharedMemory |
128 | GetNetworkInterfaceInfo |
129 | GetStateChangedEvent |
130 | GetRxQueue |
131 | GetTxQueue |
256 | SetMacAddress |
257 | SetMru |
258 | SetMtu |
259 | SetFeatures |
260 | SetMulticastFilter |
261 | SetRxBufferSize |
262 | SetTxBufferSize |
384 | Ioctl |
385 | IoctlRead |
386 | IoctlWrite |
387 | IoctlReadWrite |
388 | IoctlSetHandle |
389 | IoctlGetHandle |
Notes
CreateInterfaceAvailableEvent is used with an all-zero DeviceFilter. QueryAvailableInterfaces is used multiple times, each time with flags=0x3. The used filters include at least the following:
System Version | VendorId | ProductId | Description |
---|---|---|---|
0x057E | 0x201B | RTL8154B CrdA NIC | |
0x0B95 | 0x1790 | AX88179 Gigabit Ethernet | |
0x0B95 | 0x7720 | AX88772 | |
0x2001 | 0x4A00 | DUB-1312 Gigabit Ethernet Adapter | |
0x0BDA | 0x8153 | RTL8153 Gigabit Ethernet Adapter |