zephyr/samples/net/sockets/civetweb
Alberto Escolar Piedras 0b8678a2b0 samples & tests: Correct main() type
The application main() in Zephyr is defined as having a prototype:
void main(void), as expected by the kernel init (bg_thread_main).

So, correct the different samples and tests that were defined
otherwise.

Signed-off-by: Alberto Escolar Piedras <alpi@oticon.com>
2019-12-16 11:27:56 +01:00
..
src samples & tests: Correct main() type 2019-12-16 11:27:56 +01:00
CMakeLists.txt
README.rst
prj.conf
sample.yaml

README.rst

.. _sockets-civetweb-sample:

Civetweb sample
###############

Overview
********

This sample application uses the HTTP APIs provided by the external `Civetweb <https://github.com/civetweb/civetweb>`_ module to create an HTTP server demonstrating selected Civetweb features.
The Civetweb module is available as a west :ref:`module <modules>`.

The source code for this sample application can be found at:
:zephyr_file:`samples/net/sockets/civetweb`.

Requirements
************

- A board with hardware networking
- The Civetweb module (made available via west)

Building and Running
********************

This sample was tested on the Atmel SAM E70 Xplained board, so this is the recommended target.

Build it with:

.. zephyr-app-commands::
   :zephyr-app: samples/net/sockets/civetweb
   :board: sam_e70_xplained
   :goals: build
   :compact:

The sample application uses a static IP configuration.

After flashing the board, the server can be accessed with the web browser of your choice at ``10.0.0.111:8080``.

The sample does not serve any files like HTTP (it does not use any filesystem).
Instead it serves the following three URLs:

- ``/`` - a basic hello world handler
- ``/info`` - shows OS information, uses the JSON format to achieve that
- ``/history`` - demonstrates the usage of cookies

A regular 404 status code is returned when trying to access any other URL.

The IP configuration can be changed in Zephyr config.
The default port can be changed in the sources of the sample.