/* * Copyright (c) 2018 Intel Corporation * * SPDX-License-Identifier: Apache-2.0 */ /** @file * @brief Private functions for native posix ethernet driver. */ #ifndef ZEPHYR_DRIVERS_ETHERNET_ETH_NATIVE_POSIX_PRIV_H_ #define ZEPHYR_DRIVERS_ETHERNET_ETH_NATIVE_POSIX_PRIV_H_ #define ETH_NATIVE_POSIX_DRV_NAME CONFIG_ETH_NATIVE_POSIX_DRV_NAME #define ETH_NATIVE_POSIX_DEV_NAME CONFIG_ETH_NATIVE_POSIX_DEV_NAME #if defined(CONFIG_ETH_NATIVE_POSIX_STARTUP_AUTOMATIC) #define ETH_NATIVE_POSIX_SETUP_SCRIPT CONFIG_ETH_NATIVE_POSIX_SETUP_SCRIPT #define ETH_NATIVE_POSIX_STARTUP_SCRIPT CONFIG_ETH_NATIVE_POSIX_STARTUP_SCRIPT #define ETH_NATIVE_POSIX_STARTUP_SCRIPT_USER \ CONFIG_ETH_NATIVE_POSIX_STARTUP_SCRIPT_USER #else #define ETH_NATIVE_POSIX_SETUP_SCRIPT "" #define ETH_NATIVE_POSIX_STARTUP_SCRIPT "" #define ETH_NATIVE_POSIX_STARTUP_SCRIPT_USER "" #endif int eth_iface_create(const char *if_name, bool tun_only); int eth_iface_remove(int fd); int eth_setup_host(const char *if_name); int eth_start_script(const char *if_name); int eth_wait_data(int fd); ssize_t eth_read_data(int fd, void *buf, size_t buf_len); ssize_t eth_write_data(int fd, void *buf, size_t buf_len); int eth_if_up(const char *if_name); int eth_if_down(const char *if_name); #if defined(CONFIG_NET_GPTP) int eth_clock_gettime(struct net_ptp_time *time); #endif #if defined(CONFIG_NET_PROMISCUOUS_MODE) int eth_promisc_mode(const char *if_name, bool enable); #else static inline int eth_promisc_mode(const char *if_name, bool enable) { ARG_UNUSED(if_name); ARG_UNUSED(enable); return -ENOTSUP; } #endif #endif /* ZEPHYR_DRIVERS_ETHERNET_ETH_NATIVE_POSIX_PRIV_H_ */