zephyr/samples/net/zoap_server
Robert Chou 33c54ee6fd net: zoap: advance block context by checking M bit from block option
According to RFC7959 page 30, "The end of a block-wise transfer is
governed by the M bits in the Block options, _not_ by exhausting the
size estimates exchanges."

Therefore, we should check the M bit instead of total size (which
is not always available, too)

Signed-off-by: Robert Chou <robert.ch.chou@acer.com>
2017-07-14 11:06:54 +03:00
..
src net: zoap: advance block context by checking M bit from block option 2017-07-14 11:06:54 +03:00
Makefile Revert "net: zoap_server: Unify Makefile and add prj file" 2017-05-18 15:09:15 +03:00
prj_bt.conf net: samples: Add CONFIG_NET_L2_BLUETOOTH_ZEP1656 2017-02-03 15:59:20 +02:00
prj_cc2520.conf Revert "net: zoap_server: Unify Makefile and add prj file" 2017-05-18 15:09:15 +03:00
prj.conf Revert "net: zoap_server: Unify Makefile and add prj file" 2017-05-18 15:09:15 +03:00
README.rst doc: spelling fixes in samples/ and boards/ 2017-06-12 18:28:08 -04:00
sample.yaml tests: samples: remove duplicate filtering 2017-06-27 17:44:23 -04:00

.. _zoap-server-sample:

CoAP Server
###########

Overview
********

A simple CoAP server showing how to expose a simple resource.

This demo assumes that the platform of choice has networking support,
some adjustments to the configuration may be needed.

The sample will listen for requests in the CoAP UDP port (5683) in the
site-local IPv6 multicast address reserved for CoAP nodes.

The sample exports the following resources:

.. code-block:: none

   /test
   /seg1/seg2/seg3
   /query
   /separate
   /large
   /location-query
   /large-update

These resources allow a good part of the ETSI test cases to be run
against zoap-server.

Building And Running
********************

This project has no output in case of success, the correct
functionality can be verified by using some external tool like tcpdump
or wireshark.

See the `net-tools`_ project for more details

It can be built and executed on QEMU as follows:

.. code-block:: console

    make run


Use this command on the host to run the`libcoap`_ implementation of
the ETSI test cases:

.. code-block:: console

   sudo ./examples/etsi_coaptest.sh -i tap0 2001:db8::1

To build the version supporting the TI CC2520 radio, use the supplied
configuration file enabling IEEE 802.15.4:

.. code-block:: console

    make CONF_FILE=prj_cc2520.conf run


.. _`net-tools`: https://github.com/zephyrproject-rtos/net-tools

.. _`libcoap`: https://github.com/obgm/libcoap