zephyr/samples/net/zoap_server
Tomasz Bursztyka db11fcd174 net/net_pkt: Fully separate struct net_pkt from struct net_buf
- net_pkt becomes a stand-alone structure with network packet meta
  information.
- network packet data is still managed through net_buf, mostly named
  'frag'.
- net_pkt memory management is done through k_mem_slab
- function got introduced or relevantly renamed to target eithe net_pkt
  or net_buf fragments.
- net_buf's sent_list ends up in net_pkt now, and thus helps to save
  memory when TCP is enabled.

Change-Id: Ibd5c17df4f75891dec79db723a4c9fc704eb843d
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2017-04-21 14:19:50 +03:00
..
src net/net_pkt: Fully separate struct net_pkt from struct net_buf 2017-04-21 14:19:50 +03:00
Makefile
prj_bt.conf
prj_cc2520.conf
prj.conf
README.rst
testcase.ini

.. _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 testcases 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 testcases:

.. 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://gerrit.zephyrproject.org/r/gitweb?p=net-tools.git;a=tree

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