# Kconfig - Zoap, CoAP implementation for Zephyr

#
# Copyright (c) 2015 Intel Corporation
#
# SPDX-License-Identifier: Apache-2.0
#

config ZOAP
	bool
	prompt "CoAP Support"
	default n
	help
	This option enables the Zoap implementation of CoAP.

# This setting is only used by unit test. Do not enable it in applications
config ZOAP_TEST_API_ENABLE
	bool "Enable test API for ZoAP unit tests"
	default n
	depends on ZOAP
	help
	Do not enable this for normal use.

config ZOAP_WELL_KNOWN_BLOCK_WISE
	bool
	prompt "CoAP ./well-known/core services block wise support"
	default n
	depends on ZOAP
	help
	This option enables the block wise support of CoAP response
	to ./well-known/core request. Without this option all resource's
	information will be sent in a single IP packet (can be multiple
	fragments depends on MTU size). This will be useful in mesh kind
	of networks.

config ZOAP_WELL_KNOWN_BLOCK_WISE_SIZE
	int
	prompt "CoAP ./well-known/core services block wise support"
	default 32
	depends on ZOAP_WELL_KNOWN_BLOCK_WISE
	help
	Maximum size of CoAP block. Valid values are 16, 32, 64, 128,
	256, 512 and 1024.
