Lines Matching full:interface

9  * @brief Public API for network interface
16 * @brief Network Interface abstraction layer
17 * @defgroup net_if Network Interface abstraction layer
52 * @brief Network Interface unicast IP addresses
54 * Stores the unicast IP addresses assigned to this network interface.
121 /** What interface the conflict detection is running */
143 * @brief Network Interface multicast IP addresses
145 * Stores the multicast IP addresses assigned to this network interface.
172 * @brief Network Interface IPv6 prefixes
174 * Stores the IPV6 prefixes assigned to this network interface.
183 /** Backpointer to network interface where this prefix is used */
210 /** Network interface the router is connected to */
231 /** Network interface flags. */
233 /** Interface is admin up. */
236 /** Interface is pointopoint */
239 /** Interface is in promiscuous mode */
242 /** Do not start the interface immediately after initialization.
244 * will need to manually take the interface up when needed.
250 /** Power management specific: interface is being suspended */
253 /** Flag defines if received multicasts of other interface are
254 * forwarded on this interface. This activates multicast
255 * routing / forwarding for this interface.
259 /** Interface supports IPv4 */
262 /** Interface supports IPv6 */
265 /** Interface up and running (ready to receive and transmit). */
280 /** Mutex locking on TX data path disabled on the interface. */
289 /** @brief Network interface operational status (RFC 2863). */
293 NET_IF_OPER_DOWN, /**< Interface is down */
294 NET_IF_OPER_LOWERLAYERDOWN, /**< Lower layer interface is down */
297 NET_IF_OPER_UP, /**< Interface is up */
337 /** IID (Interface Identifier) pointer used for link local address */
340 /** Incremented when network interface goes down so that we can
341 * generate new stable addresses when interface comes back up.
447 * @brief Network Interface unicast IPv4 address and netmask
536 /** Backpointer to correct network interface */
554 * @brief Network interface IP address configuration.
567 * @brief IP and other configuration related data for network interface.
590 * that are attached to this network interface.
597 * Network interface can have a name and it is possible
598 * to search a network interface using this name.
633 * @brief Network Interface Device structure
635 * Used to handle a network interface on top of a device driver instance.
638 * Such interface is mainly to be used by the link layer, but is also tight
643 * network interface, each net_if_dev should be instantiated by one of the
650 /** Interface's L2 layer */
653 /** Interface's private L2 data pointer */
666 * network interface.
676 * If non-NULL, the interface is considered offloaded at socket level.
686 * @brief Network Interface structure
688 * Used to handle a network interface on top of a net_if_dev instance.
697 /** Network statistics related to this network interface */
700 /** Promethus collector for this network interface */
705 /** Network interface instance configuration */
716 /** Mutex protecting this network interface instance */
722 /** Network interface specific flags */
729 * are preferred over temporary ones for this interface.
781 * @brief Set a value in network interface flags
783 * @param iface Pointer to network interface
797 * @brief Test and set a value in network interface flags
799 * @param iface Pointer to network interface
815 * @brief Clear a value in network interface flags
817 * @param iface Pointer to network interface
831 * @brief Test and clear a value in network interface flags
833 * @param iface Pointer to network interface
849 * @brief Check if a value in network interface flags is set
851 * @param iface Pointer to network interface
867 * @brief Set an operational state on an interface
869 * @param iface Pointer to network interface
872 * @return The new operational state of an interface
890 * @brief Get an operational state of an interface
892 * @param iface Pointer to network interface
894 * @return Operational state of an interface
908 * @param iface Pointer to a network interface structure
916 * @brief Get a pointer to the interface L2
918 * @param iface a valid pointer to a network interface structure
934 * @param iface Pointer to a network interface structure
942 * @brief Get a pointer to the interface L2 private data
944 * @param iface a valid pointer to a network interface structure
958 * @brief Get an network interface's device
960 * @param iface Pointer to a network interface structure
974 * @brief Queue a packet to the net interface TX queue
976 * @param iface Pointer to a network interface structure
984 * @param iface Network interface
1001 * @brief Return offload status of a given network interface.
1003 * @param iface Network interface
1012 * @param iface Network interface
1034 * @param iface Network interface
1056 * @param iface Network interface
1077 * @param iface Network interface
1079 * @return NULL if the interface is not socket offloaded, valid pointer otherwise
1097 * @brief Get an network interface's link address
1099 * @param iface Pointer to a network interface structure
1113 * @brief Return network configuration for this network interface
1115 * @param iface Pointer to a network interface structure
1131 * @param iface Pointer to a network interface structure
1145 * @param iface Pointer to a network interface structure
1153 * @param iface Pointer to a network interface structure
1173 * @param iface A pointer to the network interface.
1237 * @brief Set a network interface's link address
1239 * @param iface Pointer to a network interface structure
1241 * The buffer must remain valid throughout interface lifetime.
1259 * @brief Get an network interface's MTU
1261 * @param iface Pointer to a network interface structure
1275 * @brief Set an network interface's MTU
1277 * @param iface Pointer to a network interface structure
1291 * @brief Set the infinite status of the network interface address
1293 * @param ifaddr IP address for network interface
1307 * @brief Get an interface according to link layer address.
1311 * @return Network interface or NULL if not found.
1316 * @brief Find an interface from it's related device
1318 * @param dev A valid struct device pointer to relate with an interface
1325 * @brief Get network interface IP config
1327 * @param iface Interface to use.
1348 * @brief Set the default network interface.
1350 * @param iface New default interface, or NULL to revert to the one set by Kconfig.
1355 * @brief Get the default network interface.
1357 * @return Default interface or NULL if no interfaces are configured.
1362 * @brief Get the first network interface according to its type.
1364 * @param l2 Layer 2 type of the network interface.
1366 * @return First network interface of a given type or NULL if no such
1372 * @brief Get the first network interface which is up.
1374 * @return First network interface which is up or NULL if all
1381 * @brief Get the first IEEE 802.15.4 network interface.
1383 * @return First IEEE 802.15.4 network interface or NULL if no such
1393 * @brief Allocate network interface IPv6 config.
1397 * @param iface Interface to use.
1406 * @brief Release network interface IPv6 config.
1408 * @param iface Interface to use.
1418 * @param iface Pointer to interface is returned
1420 * @return Pointer to interface address, NULL if not found.
1428 * @param iface Network interface
1431 * @return Pointer to interface address, NULL if not found.
1437 * @brief Check if this IPv6 address belongs to one of the interface indices.
1441 * @return >0 if address was found in given network interface index,
1447 * @brief Add a IPv6 address to an interface
1449 * @param iface Network interface
1454 * @return Pointer to interface address, NULL if cannot be added
1462 * @brief Add a IPv6 address to an interface by index
1464 * @param index Network interface index
1486 * @brief Remove an IPv6 address from an interface
1488 * @param iface Network interface
1496 * @brief Remove an IPv6 address from an interface by index
1498 * @param index Network interface index
1508 * @brief Callback used while iterating over network interface IP addresses
1510 * @param iface Pointer to the network interface the address belongs to
1519 * @brief Go through all IPv6 addresses on a network interface and call callback
1522 * @param iface Pointer to the network interface
1530 * @brief Add a IPv6 multicast address to an interface
1532 * @param iface Network interface
1535 * @return Pointer to interface multicast address, NULL if cannot be added
1541 * @brief Remove an IPv6 multicast address from an interface
1543 * @param iface Network interface
1552 * @brief Callback used while iterating over network interface multicast IP addresses
1554 * @param iface Pointer to the network interface the address belongs to
1563 * @brief Go through all IPv6 multicast addresses on a network interface and call
1566 * @param iface Pointer to the network interface
1574 * @brief Check if this IPv6 multicast address belongs to a specific interface
1578 * @param iface If *iface is null, then pointer to interface is returned,
1581 * @return Pointer to interface multicast address, NULL if not found.
1612 /** Network interface */
1624 * @param iface Network interface or NULL for all interfaces
1641 * @param iface Network interface
1651 * @param iface Network interface the address belongs to
1676 * @param iface Network interface the address belongs to
1685 * @param iface Network interface
1694 * @brief Check if this IPv6 prefix belongs to this interface
1696 * @param iface Network interface
1707 * @brief Add a IPv6 prefix to an network interface.
1709 * @param iface Network interface
1722 * @brief Remove an IPv6 prefix from an interface
1724 * @param iface Network interface
1763 * network interface.
1765 * @param iface Network interface. This is returned to the caller.
1803 * @param iface Network interface
1814 * @param iface Network interface. This can be NULL in which case we
1835 * @param iface Network interface
1855 * @brief Get IPv6 hop limit specified for a given interface. This is the
1858 * @param iface Network interface
1874 * @brief Set the default IPv6 hop limit of a given interface.
1876 * @param iface Network interface
1906 * @brief Get IPv6 multicast hop limit specified for a given interface. This is the
1909 * @param iface Network interface
1925 * @brief Set the default IPv6 multicast hop limit of a given interface.
1927 * @param iface Network interface
1942 * @brief Set IPv6 reachable time for a given interface
1944 * @param iface Network interface
1968 * @brief Get IPv6 reachable timeout specified for a given interface
1970 * @param iface Network interface
2002 * @brief Set IPv6 reachable time for a given interface. This requires
2003 * that base reachable time is set for the interface.
2021 * @brief Set IPv6 retransmit timer for a given interface
2023 * @param iface Network interface
2046 * @brief Get IPv6 retransmit timer specified for a given interface
2048 * @param iface Network interface
2074 * @param iface Interface that was used when packet was received.
2075 * If the interface is not known, then NULL can be given.
2100 * @param iface Interface that was used when packet was received.
2101 * If the interface is not known, then NULL can be given.
2125 * @brief Get a network interface that should be used when sending
2130 * @return Pointer to network interface to use, NULL if no suitable interface
2148 * @param iface Interface to use. Must be a valid pointer to an interface.
2158 * @brief Return link local IPv6 address from the first interface that has
2162 * @param iface Pointer to interface is returned
2173 * @param iface Interface where the DAD was running.
2179 * @brief Return global IPv6 address from the first interface that has
2183 * @param iface Caller can give an interface to check. If iface is set to NULL,
2184 * then all the interfaces are checked. Pointer to interface where the IPv6
2193 * @brief Allocate network interface IPv4 config.
2197 * @param iface Interface to use.
2206 * @brief Release network interface IPv4 config.
2208 * @param iface Interface to use.
2215 * @brief Get IPv4 time-to-live value specified for a given interface
2217 * @param iface Network interface
2224 * @brief Set IPv4 time-to-live value specified to a given interface
2226 * @param iface Network interface
2232 * @brief Get IPv4 multicast time-to-live value specified for a given interface
2234 * @param iface Network interface
2241 * @brief Set IPv4 multicast time-to-live value specified to a given interface
2243 * @param iface Network interface
2252 * @param iface Interface is returned
2254 * @return Pointer to interface address, NULL if not found.
2260 * @brief Add a IPv4 address to an interface
2262 * @param iface Network interface
2267 * @return Pointer to interface address, NULL if cannot be added
2275 * @brief Remove a IPv4 address from an interface
2277 * @param iface Network interface
2285 * @brief Check if this IPv4 address belongs to one of the interface indices.
2289 * @return >0 if address was found in given network interface index,
2295 * @brief Add a IPv4 address to an interface by network interface index
2297 * @param index Network interface index
2310 * @brief Remove a IPv4 address from an interface by interface index
2312 * @param index Network interface index
2321 * @brief Go through all IPv4 addresses on a network interface and call callback
2324 * @param iface Pointer to the network interface
2332 * @brief Add a IPv4 multicast address to an interface
2334 * @param iface Network interface
2337 * @return Pointer to interface multicast address, NULL if cannot be added
2343 * @brief Remove an IPv4 multicast address from an interface
2345 * @param iface Network interface
2353 * @brief Go through all IPv4 multicast addresses on a network interface and call
2356 * @param iface Pointer to the network interface
2364 * @brief Check if this IPv4 multicast address belongs to a specific interface
2368 * @param iface If *iface is null, then pointer to interface is returned,
2371 * @return Pointer to interface multicast address, NULL if not found.
2379 * @param iface Network interface the address belongs to
2404 * @param iface Network interface the address belongs to
2440 * @param iface Network interface
2451 * @param iface Network interface. This can be NULL in which case we
2462 * @param iface Network interface
2486 * @param iface Interface to use. Must be a valid pointer to an interface.
2497 * @param iface Interface to use. Must be a valid pointer to an interface.
2506 * @brief Get a network interface that should be used when sending
2511 * @return Pointer to network interface to use, NULL if no suitable interface
2530 * @param iface Interface to use when sending the packet.
2531 * If the interface is not known, then NULL can be given.
2554 * @param iface Interface to use. Must be a valid pointer to an interface.
2566 * @param iface Interface to use. Must be a valid pointer to an interface.
2576 * @brief Get IPv4 netmask related to an address of an interface.
2578 * @param iface Interface to use.
2581 * @return The netmask set on the interface related to the give address,
2588 * @brief Get IPv4 netmask of an interface.
2592 * @param iface Interface to use.
2594 * @return The netmask set on the interface, unspecified address if not found.
2599 * @brief Set IPv4 netmask for an interface.
2603 * @param iface Interface to use.
2610 * @brief Set IPv4 netmask for an interface index.
2614 * @param index Network interface index
2623 * @brief Set IPv4 netmask for an interface index for a given address.
2625 * @param index Network interface index
2636 * @brief Set IPv4 netmask for an interface index for a given address.
2638 * @param iface Network interface
2649 * @brief Get IPv4 gateway of an interface.
2651 * @param iface Interface to use.
2653 * @return The gateway set on the interface, unspecified address if not found.
2658 * @brief Set IPv4 gateway for an interface.
2660 * @param iface Interface to use.
2666 * @brief Set IPv4 gateway for an interface index.
2668 * @param index Network interface index
2676 * @brief Get a network interface that should be used when sending
2681 * @return Pointer to network interface to use. Note that the function
2682 * will return the default network interface if the best network interface
2734 * @param iface Network interface.
2759 * @brief Type of checksum for which support in the interface will be queried.
2762 /** Interface supports IP version 4 header checksum calculation */
2764 /** Interface supports checksum calculation for TCP payload in IPv4 */
2767 /** Interface supports checksum calculation for UDP payload in IPv4 */
2770 /** Interface supports checksum calculation for ICMP4 payload in IPv4 */
2772 /** Interface supports IP version 6 header checksum calculation */
2774 /** Interface supports checksum calculation for TCP payload in IPv6 */
2777 /** Interface supports checksum calculation for UDP payload in IPv6 */
2780 /** Interface supports checksum calculation for ICMP6 payload in IPv6 */
2789 * @param iface Network interface
2803 * @param iface Network interface
2812 * @brief Get interface according to index
2817 * @param index Interface index
2819 * @return Pointer to interface or NULL if not found.
2824 * @brief Get interface index according to pointer
2826 * @param iface Pointer to network interface
2828 * @return Interface index
2836 * @param iface Pointer to current network interface
2843 * for each interface.
2851 * @brief Bring interface up
2853 * @param iface Pointer to network interface
2860 * @brief Check if interface is up and running.
2862 * @param iface Pointer to network interface
2864 * @return True if interface is up, False if it is down.
2877 * @brief Bring interface down
2879 * @param iface Pointer to network interface
2886 * @brief Check if interface was brought up by the administrator.
2888 * @param iface Pointer to network interface
2890 * @return True if interface is admin up, false otherwise.
2905 * or L2 implementation to update its state on a network interface.
2907 * @param iface Pointer to network interface
2915 * or L2 implementation to update its state on a network interface.
2917 * @param iface Pointer to network interface
2924 * @param iface Pointer to network interface
2938 * @brief Mark interface as dormant. Dormant state indicates that the interface
2943 * or L2 implementation to update its state on a network interface.
2945 * @param iface Pointer to network interface
2950 * @brief Mark interface as not dormant.
2953 * or L2 implementation to update its state on a network interface.
2955 * @param iface Pointer to network interface
2960 * @brief Check if the interface is dormant.
2962 * @param iface Pointer to network interface
2964 * @return True if interface is dormant, false otherwise.
3002 /** Net interface for which the callback is needed.
3017 * @param iface Net interface for which the callback is. NULL for all
3049 * @brief Set network interface into promiscuous mode
3053 * @param iface Pointer to network interface
3069 * @brief Set network interface into normal mode
3071 * @param iface Pointer to network interface
3085 * @param iface Pointer to network interface
3087 * @return True if interface is in promisc mode,
3088 * False if interface is not in promiscuous mode.
3103 * interface.
3105 * @param iface Pointer to network interface
3108 * interface, False otherwise.
3123 * @brief Suspend a network interface from a power management perspective
3125 * @param iface Pointer to network interface
3132 * @brief Resume a network interface from a power management perspective
3134 * @param iface Pointer to network interface
3141 * @brief Check if the network interface is suspended or not.
3143 * @param iface Pointer to network interface
3145 * @return True if interface is suspended, False otherwise.
3151 * @brief Check if the network interface supports Wi-Fi.
3153 * @param iface Pointer to network interface
3155 * @return True if interface supports Wi-Fi, False otherwise.
3160 * @brief Get first Wi-Fi network interface.
3162 * @return Pointer to network interface, NULL if not found.
3167 * @brief Get Wi-Fi network station interface.
3169 * @return Pointer to network interface, NULL if not found.
3174 * @brief Get first Wi-Fi network Soft-AP interface.
3176 * @return Pointer to network interface, NULL if not found.
3181 * @brief Get network interface name.
3183 * @details If interface name support is not enabled, empty string is returned.
3185 * @param iface Pointer to network interface
3189 * @return Length of the interface name copied to buf,
3192 * -ENOTSUP if interface name support is disabled,
3197 * @brief Set network interface name.
3200 * will automatically assign a name to the network interface.
3202 * @param iface Pointer to network interface
3206 * -ENOTSUP interface name support is disabled
3213 * @brief Get interface index according to its name
3215 * @param name Name of the network interface
3217 * @return Interface index
3336 * @brief Create a network interface and bind it to network device.
3350 * @param l2 Network L2 layer for this network interface.
3352 * @param mtu Maximum transfer unit in bytes for this network interface.
3361 * Create a network interface and bind it to network device.
3373 * @param l2 Network L2 layer for this network interface.
3375 * @param mtu Maximum transfer unit in bytes for this network interface.
3396 * If your network device needs more than one instance of a network interface,
3413 * @param l2 Network L2 layer for this network interface.
3415 * @param mtu Maximum transfer unit in bytes for this network interface.
3427 * If your network device needs more than one instance of a network interface,
3442 * @param l2 Network L2 layer for this network interface.
3444 * @param mtu Maximum transfer unit in bytes for this network interface.
3476 * @brief Create a offloaded network interface and bind it to network device.
3477 * The offloaded network interface is implemented by a device vendor HAL or
3492 * @param mtu Maximum transfer unit in bytes for this network interface.
3502 * node. Create a offloaded network interface and bind it to network device.
3503 * The offloaded network interface is implemented by a device vendor HAL or
3516 * @param mtu Maximum transfer unit in bytes for this network interface.