# Setup for self-contained net testing without requiring a SLIP driver
CONFIG_NET_TEST=y

# General config
CONFIG_NEWLIB_LIBC=y

# Networking config
CONFIG_NETWORKING=y
CONFIG_NET_IPV4=y
CONFIG_NET_IPV6=y
CONFIG_NET_IPV6_ND=n
CONFIG_NET_TCP=y
CONFIG_NET_SOCKETS=y
CONFIG_NET_SOCKETS_POSIX_NAMES=y
CONFIG_POSIX_MAX_FDS=20

# Network driver config
CONFIG_NET_DRIVERS=y
CONFIG_NET_LOOPBACK=y
CONFIG_NET_LOOPBACK_MTU=1280
CONFIG_NET_LOOPBACK_SIMULATE_PACKET_DROP=y
CONFIG_TEST_RANDOM_GENERATOR=y

CONFIG_MAIN_STACK_SIZE=2048
CONFIG_TEST_USERSPACE=y

# Allow tapping into the number of transmitted packets
CONFIG_NET_MGMT=y
CONFIG_NET_STATISTICS=y
CONFIG_NET_STATISTICS_IPV4=y
CONFIG_NET_STATISTICS_USER_API=y

CONFIG_NET_PKT_RX_COUNT=16
CONFIG_NET_PKT_TX_COUNT=16
CONFIG_NET_BUF_RX_COUNT=64
CONFIG_NET_BUF_TX_COUNT=64

# Reduce the retry count, so the close always finishes within a second
CONFIG_NET_TCP_RETRY_COUNT=3
CONFIG_NET_TCP_INIT_RETRANSMISSION_TIMEOUT=120

CONFIG_ZTEST=y
CONFIG_ZTEST_NEW_API=y
CONFIG_ZTEST_STACK_SIZE=2048

CONFIG_NET_CONTEXT_RCVTIMEO=y
CONFIG_NET_CONTEXT_SNDTIMEO=y
CONFIG_NET_CONTEXT_RCVBUF=y
CONFIG_NET_CONTEXT_SNDBUF=y
