mirror of
https://github.com/lwip-tcpip/lwip.git
synced 2024-10-01 04:12:07 +00:00
opt.h, netif.h, dhcp.h, dhcp.c: New configuration option LWIP_NETIF_HOSTNAME allow to define a hostname in netif struct (this is just a pointer, so, you can use a hardcoded string, point on one of your's ethernetif field, or alloc a string you will free yourself). It will be used by DHCP to register a client hostname, but can also be use when you call snmp_set_sysname.
This commit is contained in:
parent
cd1c96db56
commit
c1fe7517ec
@ -23,6 +23,13 @@ HISTORY
|
|||||||
|
|
||||||
++ New features:
|
++ New features:
|
||||||
|
|
||||||
|
2007-03-28 Frédéric Bernon
|
||||||
|
* opt.h, netif.h, dhcp.h, dhcp.c: New configuration option LWIP_NETIF_HOSTNAME allow to
|
||||||
|
define a hostname in netif struct (this is just a pointer, so, you can use a hardcoded
|
||||||
|
string, point on one of your's ethernetif field, or alloc a string you will free yourself).
|
||||||
|
It will be used by DHCP to register a client hostname, but can also be use when you call
|
||||||
|
snmp_set_sysname.
|
||||||
|
|
||||||
2007-03-28 Frédéric Bernon
|
2007-03-28 Frédéric Bernon
|
||||||
* netif.h, netif.c: A new NETIF_FLAG_ETHARP flag is defined in netif.h, to allow to
|
* netif.h, netif.c: A new NETIF_FLAG_ETHARP flag is defined in netif.h, to allow to
|
||||||
initialize a network interface's flag with. It tell this interface is an ethernet
|
initialize a network interface's flag with. It tell this interface is an ethernet
|
||||||
|
@ -217,6 +217,10 @@ static err_t dhcp_select(struct netif *netif)
|
|||||||
struct dhcp *dhcp = netif->dhcp;
|
struct dhcp *dhcp = netif->dhcp;
|
||||||
err_t result;
|
err_t result;
|
||||||
u16_t msecs;
|
u16_t msecs;
|
||||||
|
#if LWIP_NETIF_HOSTNAME
|
||||||
|
const char *p;
|
||||||
|
#endif /* LWIP_NETIF_HOSTNAME */
|
||||||
|
|
||||||
LWIP_DEBUGF(DHCP_DEBUG | DBG_TRACE | 3, ("dhcp_select(netif=%p) %c%c%"U16_F"\n", (void*)netif, netif->name[0], netif->name[1], (u16_t)netif->num));
|
LWIP_DEBUGF(DHCP_DEBUG | DBG_TRACE | 3, ("dhcp_select(netif=%p) %c%c%"U16_F"\n", (void*)netif, netif->name[0], netif->name[1], (u16_t)netif->num));
|
||||||
|
|
||||||
/* create and initialize the DHCP message header */
|
/* create and initialize the DHCP message header */
|
||||||
@ -242,6 +246,16 @@ static err_t dhcp_select(struct netif *netif)
|
|||||||
dhcp_option_byte(dhcp, DHCP_OPTION_BROADCAST);
|
dhcp_option_byte(dhcp, DHCP_OPTION_BROADCAST);
|
||||||
dhcp_option_byte(dhcp, DHCP_OPTION_DNS_SERVER);
|
dhcp_option_byte(dhcp, DHCP_OPTION_DNS_SERVER);
|
||||||
|
|
||||||
|
#if LWIP_NETIF_HOSTNAME
|
||||||
|
p = ( const char *)netif->hostname;
|
||||||
|
if (p!=NULL) {
|
||||||
|
dhcp_option(dhcp, DHCP_OPTION_HOSTNAME, strlen(p));
|
||||||
|
while(*p) {
|
||||||
|
dhcp_option_byte(dhcp, *p++);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif /* LWIP_NETIF_HOSTNAME */
|
||||||
|
|
||||||
dhcp_option_trailer(dhcp);
|
dhcp_option_trailer(dhcp);
|
||||||
/* shrink the pbuf to the actual content length */
|
/* shrink the pbuf to the actual content length */
|
||||||
pbuf_realloc(dhcp->p_out, sizeof(struct dhcp_msg) - DHCP_OPTIONS_LEN + dhcp->options_out_len);
|
pbuf_realloc(dhcp->p_out, sizeof(struct dhcp_msg) - DHCP_OPTIONS_LEN + dhcp->options_out_len);
|
||||||
|
@ -210,6 +210,7 @@ void dhcp_fine_tmr(void);
|
|||||||
|
|
||||||
#define DHCP_OPTION_T1 58 /* T1 renewal time */
|
#define DHCP_OPTION_T1 58 /* T1 renewal time */
|
||||||
#define DHCP_OPTION_T2 59 /* T2 rebinding time */
|
#define DHCP_OPTION_T2 59 /* T2 rebinding time */
|
||||||
|
#define DHCP_OPTION_US 60
|
||||||
#define DHCP_OPTION_CLIENT_ID 61
|
#define DHCP_OPTION_CLIENT_ID 61
|
||||||
#define DHCP_OPTION_TFTP_SERVERNAME 66
|
#define DHCP_OPTION_TFTP_SERVERNAME 66
|
||||||
#define DHCP_OPTION_BOOTFILE 67
|
#define DHCP_OPTION_BOOTFILE 67
|
||||||
|
@ -104,6 +104,10 @@ struct netif {
|
|||||||
/** the DHCP client state information for this netif */
|
/** the DHCP client state information for this netif */
|
||||||
struct dhcp *dhcp;
|
struct dhcp *dhcp;
|
||||||
#endif /* LWIP_DHCP */
|
#endif /* LWIP_DHCP */
|
||||||
|
#if LWIP_NETIF_HOSTNAME
|
||||||
|
/* the hostname for this netif, NULL is a valid value */
|
||||||
|
char* hostname;
|
||||||
|
#endif /* LWIP_NETIF_HOSTNAME */
|
||||||
/** number of bytes used in hwaddr */
|
/** number of bytes used in hwaddr */
|
||||||
u8_t hwaddr_len;
|
u8_t hwaddr_len;
|
||||||
/** link level hardware address of this interface */
|
/** link level hardware address of this interface */
|
||||||
|
@ -383,6 +383,13 @@ a lot of data that needs to be copied, this should be set high. */
|
|||||||
#define TCP_SNDLOWAT TCP_SND_BUF/2
|
#define TCP_SNDLOWAT TCP_SND_BUF/2
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* ---- Network Interfaces options ---- */
|
||||||
|
/* 1 if you want to use DHCP_OPTION_HOSTNAME with netif's hostname field */
|
||||||
|
#ifndef LWIP_NETIF_HOSTNAME
|
||||||
|
#define LWIP_NETIF_HOSTNAME 0
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Support network interface callbacks */
|
/* Support network interface callbacks */
|
||||||
#ifndef LWIP_NETIF_CALLBACK
|
#ifndef LWIP_NETIF_CALLBACK
|
||||||
#define LWIP_NETIF_CALLBACK 0
|
#define LWIP_NETIF_CALLBACK 0
|
||||||
@ -401,6 +408,8 @@ a lot of data that needs to be copied, this should be set high. */
|
|||||||
#define LWIP_CALLBACK_API 0
|
#define LWIP_CALLBACK_API 0
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* ---------- Thread options ---------- */
|
||||||
#ifndef TCPIP_THREAD_PRIO
|
#ifndef TCPIP_THREAD_PRIO
|
||||||
#define TCPIP_THREAD_PRIO 1
|
#define TCPIP_THREAD_PRIO 1
|
||||||
#endif
|
#endif
|
||||||
@ -418,7 +427,7 @@ a lot of data that needs to be copied, this should be set high. */
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
/* ---------- Socket Options ---------- */
|
/* ---------- Socket options ---------- */
|
||||||
/* Enable BSD-style sockets functions names */
|
/* Enable BSD-style sockets functions names */
|
||||||
#ifndef LWIP_COMPAT_SOCKETS
|
#ifndef LWIP_COMPAT_SOCKETS
|
||||||
#define LWIP_COMPAT_SOCKETS 1
|
#define LWIP_COMPAT_SOCKETS 1
|
||||||
|
Loading…
Reference in New Issue
Block a user