diff --git a/kernel-src/include/kernel/net.h b/kernel-src/include/kernel/net.h index f1fd592c..78a1ec29 100644 --- a/kernel-src/include/kernel/net.h +++ b/kernel-src/include/kernel/net.h @@ -95,5 +95,6 @@ void ipv4_process(netdev_t *netdev, void *nextbuff); int ipv4_addroute(netdev_t *netdev, uint32_t addr, uint32_t gateway, uint32_t mask, int weight); int netdev_register(netdev_t *netdev, char *name); netdev_t *netdev_getdev(char *name); +netdev_t *netdev_from_minor(uint16_t minor); #endif diff --git a/kernel-src/io/net/netdev.c b/kernel-src/io/net/netdev.c index 44b7858f..41ca7a5e 100644 --- a/kernel-src/io/net/netdev.c +++ b/kernel-src/io/net/netdev.c @@ -246,6 +246,10 @@ static devops_t devops = { .ioctl = netdev_ioctl }; +netdev_t *netdev_from_minor(uint16_t minor) { + return minors[minor]; +} + int netdev_register(netdev_t *netdev, char *name) { // TODO: better allocation strategy (copy wlan's?) int minor = __atomic_fetch_add(¤t_minor, 1, __ATOMIC_RELAXED);