zephyr/include/net
Jukka Rissanen ca8b00a3cc net: if: Make interface IP configuration more flexible
Instead of always allocating both IPv6 and IPv4 address information
to every network interface, allow more fine grained address
configuration. So it is possible to have IPv6 or IPv4 only network
interfaces.

This commit introduces two new config options:
CONFIG_NET_IF_MAX_IPV4_COUNT and CONFIG_NET_IF_MAX_IPV6_COUNT
which tell how many IP address information structs are allocated
statically. At runtime when network interface is setup, it is then
possible to attach this IP address info struct to a specific
network interface. This can save considerable amount of memory
as the IP address information struct can be quite large (depends
on how many IP addresses user configures in the system).

Note that the value of CONFIG_NET_IF_MAX_IPV4_COUNT and
CONFIG_NET_IF_MAX_IPV6_COUNT should reflect the estimated number of
network interfaces in the system. So if if CONFIG_NET_IF_MAX_IPV6_COUNT
is set to 1 and there are two network interfaces that need IPv6
addresses, then the system will not be able to setup IPv6 addresses to
the second network interface in this case. This scenario might be
just fine if the second network interface is IPv4 only. The net_if.c
will print a warning during startup if mismatch about the counts and
the actual number of network interface is detected.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2018-03-27 10:06:54 -04:00
..
arp.h doc: net: group all networking APIs in doxygen 2017-11-17 17:14:18 -05:00
bt.h net: bt: Add advertise management command 2017-08-04 18:18:40 +03:00
buf.h net: buf: Use __noinit where possible 2018-02-14 15:44:04 +02:00
coap_link_format.h net: coap: Add multi fragment support to CoAP library 2017-10-06 22:07:37 -04:00
coap.h doc: net: group all networking APIs in doxygen 2017-11-17 17:14:18 -05:00
dhcpv4.h doc: net: group all networking APIs in doxygen 2017-11-17 17:14:18 -05:00
dns_resolve.h net: dns: Allow to initialize DNS servers from struct sockaddr[] 2018-01-18 17:30:40 +02:00
ethernet.h net: Support network packet checksum calc offloading 2018-03-23 08:37:01 +02:00
hostname.h doc: net: group all networking APIs in doxygen 2017-11-17 17:14:18 -05:00
http_parser_state.h net: lib: http: split out URL parsing as a separate CONFIG 2017-10-17 08:08:16 -04:00
http_parser_url.h net: lib: http: split out URL parsing as a separate CONFIG 2017-10-17 08:08:16 -04:00
http_parser.h net: http: Provide destination address in http replies 2018-03-05 10:23:17 +01:00
http.h doc: http: add HTTP APIs to net group 2018-03-20 14:01:30 -04:00
ieee802154_mgmt.h net/ieee802154: Split the net mgmt part from the L2 specific header 2017-12-12 09:29:48 -05:00
ieee802154_radio.h ieee802154: Make AR flag check generic and not tight to L2 2018-03-16 13:57:55 -07:00
ieee802154.h net/ieee802154: Do not set the device UP by default 2018-01-15 15:15:38 +02:00
lwm2m.h net: lwm2m: add support for DTLS 2017-12-15 16:46:48 -05:00
mii.h net: doc: Add missing defgroups to network header files 2017-07-31 20:59:09 +03:00
mqtt_types.h doc: do not show undocumented members 2018-03-20 14:01:30 -04:00
mqtt.h doc: net: group all networking APIs in doxygen 2017-11-17 17:14:18 -05:00
net_app.h net: app: Add a new API to get net pkt based on dst 2018-02-09 14:45:53 +02:00
net_context.h various: Update/fix some textual material and code comments. 2017-12-29 09:45:39 -05:00
net_core.h doc: do not show undocumented members 2018-03-20 14:01:30 -04:00
net_event.h net: Improve net management event information 2018-02-02 16:50:07 +02:00
net_if.h net: if: Make interface IP configuration more flexible 2018-03-27 10:06:54 -04:00
net_ip.h net: if: Separate IP address configuration from net_if 2018-03-27 10:06:54 -04:00
net_l2.h include: net: net_l2: Add OpenThread L2 2018-01-29 22:42:03 -05:00
net_linkaddr.h doc: net: group all networking APIs in doxygen 2017-11-17 17:14:18 -05:00
net_mgmt.h net/mgmt: Fix how event_mask is handled on layer and layer code part 2018-03-02 16:50:21 +01:00
net_offload.h net: if: Separate IP address configuration from net_if 2018-03-27 10:06:54 -04:00
net_pkt.h net: if: Separate IP address configuration from net_if 2018-03-27 10:06:54 -04:00
net_stats.h doc: net: group all networking APIs in doxygen 2017-11-17 17:14:18 -05:00
openthread.h include: net: net_l2: Add OpenThread L2 2018-01-29 22:42:03 -05:00
sntp.h net: sntp: Implement SNTP client library 2017-10-03 15:29:27 -04:00
socket.h net: sockets: Add freeaddrinfo() 2018-03-21 10:00:05 +02:00
trickle.h doc: net: group all networking APIs in doxygen 2017-11-17 17:14:18 -05:00
udp.h doc: net: group all networking APIs in doxygen 2017-11-17 17:14:18 -05:00
websocket_console.h net: websocket: Add console support 2018-03-15 15:17:36 +02:00
websocket.h net: websocket: Initial support for server websocket 2018-03-15 15:17:36 +02:00