diff --git a/src/core/netif.c b/src/core/netif.c index 1a43ddb7..8712cef7 100644 --- a/src/core/netif.c +++ b/src/core/netif.c @@ -60,24 +60,29 @@ netif_add(struct ip_addr *ipaddr, struct ip_addr *netmask, { struct netif *netif; static int netifnum = 0; - + + /* allocate netif structure */ netif = mem_malloc(sizeof(struct netif)); if(netif == NULL) { + DEBUGF(NETIF_DEBUG, ("netif_add(): out of memory for netif\n")); return NULL; } + /* remember netif specific state information data */ netif->state = state; netif->num = netifnum++; netif->input = input; netif_set_addr(netif, ipaddr, netmask, gw); + /* call user specified initialization function for netif */ if (init(netif) != ERR_OK) { mem_free(netif); return NULL; } + /* add this netif to the list */ netif->next = netif_list; netif_list = netif; #if NETIF_DEBUG