net-add-if.rst 1.7 KB
Newer Older
1 2 3 4 5 6 7 8
.. -*- coding: utf-8; mode: rst -*-

.. _NET_ADD_IF:

****************
ioctl NET_ADD_IF
****************

9
Name
10
====
11

12
NET_ADD_IF - Creates a new network interface for a given Packet ID.
13

14 15

Synopsis
16 17
========

18
.. c:function:: int ioctl( int fd, int request, struct dvb_net_if *net_if )
19

20

21
Arguments
22 23 24 25 26 27 28 29 30 31 32 33
=========

``fd``
    File descriptor returned by :ref:`open() <frontend_f_open>`.

``request``
    FE_SET_TONE

``net_if``
    pointer to struct :ref:`dvb_net_if <dvb-net-if>`


34
Description
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84
===========

The NET_ADD_IF ioctl system call selects the Packet ID (PID) that
contains a TCP/IP traffic, the type of encapsulation to be used (MPE or
ULE) and the interface number for the new interface to be created. When
the system call successfully returns, a new virtual network interface is
created.

The struct :ref:`dvb_net_if <dvb-net-if>`::ifnum field will be
filled with the number of the created interface.


.. _dvb-net-if-t:

struct dvb_net_if description
=============================

.. _dvb-net-if:

.. flat-table:: struct dvb_net_if
    :header-rows:  1
    :stub-columns: 0


    -  .. row 1

       -  ID

       -  Description

    -  .. row 2

       -  pid

       -  Packet ID (PID) of the MPEG-TS that contains data

    -  .. row 3

       -  ifnum

       -  number of the DVB interface.

    -  .. row 4

       -  feedtype

       -  Encapsulation type of the feed. It can be:
	  ``DVB_NET_FEEDTYPE_MPE`` for MPE encoding or
	  ``DVB_NET_FEEDTYPE_ULE`` for ULE encoding.

85

86
Return Value
87
============
88 89 90 91

On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.