1.. Permission is granted to copy, distribute and/or modify this
2.. document under the terms of the GNU Free Documentation License,
3.. Version 1.1 or any later version published by the Free Software
4.. Foundation, with no Invariant Sections, no Front-Cover Texts
5.. and no Back-Cover Texts. A copy of the license is included at
6.. Documentation/userspace-api/media/fdl-appendix.rst.
7..
8.. TODO: replace it to GFDL-1.1-or-later WITH no-invariant-sections
9
10.. _NET_ADD_IF:
11
12****************
13ioctl NET_ADD_IF
14****************
15
16Name
17====
18
19NET_ADD_IF - Creates a new network interface for a given Packet ID.
20
21
22Synopsis
23========
24
25.. c:function:: int ioctl( int fd, NET_ADD_IF, struct dvb_net_if *net_if )
26    :name: NET_ADD_IF
27
28
29Arguments
30=========
31
32``fd``
33    File descriptor returned by :ref:`open() <frontend_f_open>`.
34
35``net_if``
36    pointer to struct :c:type:`dvb_net_if`
37
38
39Description
40===========
41
42The NET_ADD_IF ioctl system call selects the Packet ID (PID) that
43contains a TCP/IP traffic, the type of encapsulation to be used (MPE or
44ULE) and the interface number for the new interface to be created. When
45the system call successfully returns, a new virtual network interface is
46created.
47
48The struct :c:type:`dvb_net_if`::ifnum field will be
49filled with the number of the created interface.
50
51Return Value
52============
53
54On success 0 is returned, and :c:type:`ca_slot_info` is filled.
55
56On error -1 is returned, and the ``errno`` variable is set
57appropriately.
58
59The generic error codes are described at the
60:ref:`Generic Error Codes <gen-errors>` chapter.
61