#define LWIP_NETIF_REMOVE_CALLBACK 1
#define LWIP_TIMEVAL_PRIVATE 0
#define LWIP_NETIF_STATUS_CALLBACK 1
+#define LWIP_NETIF_HOSTNAME 1
#if CONFIG_LWIP_NETIF_EXT_STATUS_CALLBACK
#define LWIP_NETIF_EXT_STATUS_CALLBACK 1
ip4_addr_t *mask4_arg;
ip4_addr_t gw4;
ip4_addr_t *gw4_arg;
+ const char *hostname_arg;
#endif /* LWIP_IPV4 */
#endif /* CONFIG_LWIP_UKNETDEV && CONFIG_LWIP_AUTOIFACE */
devid);
#if LWIP_IPV4
- ip4_arg = NULL;
- mask4_arg = NULL;
- gw4_arg = NULL;
+ ip4_arg = NULL;
+ mask4_arg = NULL;
+ gw4_arg = NULL;
+ hostname_arg = NULL;
/* CIDR (IP and mask) */
strcfg = uk_netdev_einfo_get(dev, UK_NETDEV_IPV4_CIDR);
}
gw4_arg = &gw4;
}
+
no_conf:
- nf = uknetdev_addif(dev, ip4_arg, mask4_arg, gw4_arg);
+ /* hostname */
+ strcfg = uk_netdev_einfo_get(dev, UK_NETDEV_IPV4_HOSTNAME);
+ if (strcfg)
+ hostname_arg = strcfg;
+
+ nf = uknetdev_addif(dev, ip4_arg, mask4_arg, gw4_arg,
+ hostname_arg);
#else /* LWIP_IPV4 */
/*
* TODO: Add support for IPv6 device configuration from
* netdev's econf interface
*/
- nf = uknetdev_addif(dev);
+ nf = uknetdev_addif(dev, NULL);
#endif /* LWIP_IPV4 */
if (!nf) {
uk_pr_err("Failed to attach network device %u to lwIP\n",
,
const ip4_addr_t *ipaddr,
const ip4_addr_t *netmask,
- const ip4_addr_t *gw
+ const ip4_addr_t *gw,
#endif /* LWIP_IPV4 */
+ const char *hostname
)
{
/*
return NULL;
}
+ if (hostname)
+ netif_set_hostname(nf, hostname);
+
return ret;
}