zephyr/samples/net/virtual
Gerard Marull-Paretas c7b5b3c419 samples: migrate includes to contain <zephyr/...> prefix
In order to bring consistency in-tree, migrate all samples to the use
the new prefix <zephyr/...>. Note that the conversion has been scripted:

```python
from pathlib import Path
import re

EXTENSIONS = ("c", "h", "cpp", "rst")

for p in Path(".").glob("samples/**/*"):
    if not p.is_file() or p.suffix and p.suffix[1:] not in EXTENSIONS:
        continue

    content = ""
    with open(p) as f:
        for line in f:
            m = re.match(r"^(.*)#include <(.*)>(.*)$", line)
            if (m and
                not m.group(2).startswith("zephyr/") and
                (Path(".") / "include" / "zephyr" / m.group(2)).exists()):
                content += (
                    m.group(1) +
                    "#include <zephyr/" + m.group(2) +">" +
                    m.group(3) + "\n"
                )
            else:
                content += line

    with open(p, "w") as f:
        f.write(content)
```

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2022-05-06 11:29:59 +02:00
..
src samples: migrate includes to contain <zephyr/...> prefix 2022-05-06 11:29:59 +02:00
CMakeLists.txt
Kconfig
prj.conf
README.rst
sample.yaml

.. _virtual_network_interface-sample:

Virtual Network Interface Application
#####################################

Overview
********

This sample application creates a sample virtual network interface for
demonstrative purposes, it does not do anything useful here.
There are total 4 network interfaces.
Ethernet network interface is providing the real network interface and
all the virtual interfaces are running on top of it.
On top of Ethernet interface there are two virtual network interfaces,
one provides only IPv6 tunnel, and the other only IPv4. These two tunnels
are provided by IPIP tunnel.
The sample provides tunnel interface which runs on top of the IPv6 tunnel.

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

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

- :ref:`networking_with_host`

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

The `net-tools`_ project provides a configuration that can be used
to create a sample tunnels in host side.

.. code-block:: console

	net-setup.sh -c zeth-tunnel.conf

Note that the sample application expects that the board provides
an Ethernet network interface. Build the sample application like this:

.. zephyr-app-commands::
   :zephyr-app: samples/net/virtual
   :board: <board to use>
   :goals: build
   :compact:

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