xref: /linux/Documentation/userspace-api/media/dvb/net-add-if.rst (revision cbecf716ca618fd44feda6bd9a64a8179d031fc5)
1059b1c5bSMauro Carvalho Chehab.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
2f9b2e8aaSMauro Carvalho Chehab.. c:namespace:: DTV.net
354f38fcaSMauro Carvalho Chehab
454f38fcaSMauro Carvalho Chehab.. _NET_ADD_IF:
554f38fcaSMauro Carvalho Chehab
654f38fcaSMauro Carvalho Chehab****************
754f38fcaSMauro Carvalho Chehabioctl NET_ADD_IF
854f38fcaSMauro Carvalho Chehab****************
954f38fcaSMauro Carvalho Chehab
1054f38fcaSMauro Carvalho ChehabName
1154f38fcaSMauro Carvalho Chehab====
1254f38fcaSMauro Carvalho Chehab
1354f38fcaSMauro Carvalho ChehabNET_ADD_IF - Creates a new network interface for a given Packet ID.
1454f38fcaSMauro Carvalho Chehab
1554f38fcaSMauro Carvalho ChehabSynopsis
1654f38fcaSMauro Carvalho Chehab========
1754f38fcaSMauro Carvalho Chehab
18f9b2e8aaSMauro Carvalho Chehab.. c:macro:: NET_ADD_IF
1954f38fcaSMauro Carvalho Chehab
20f9b2e8aaSMauro Carvalho Chehab``int ioctl(int fd, NET_ADD_IF, struct dvb_net_if *net_if)``
2154f38fcaSMauro Carvalho Chehab
2254f38fcaSMauro Carvalho ChehabArguments
2354f38fcaSMauro Carvalho Chehab=========
2454f38fcaSMauro Carvalho Chehab
2554f38fcaSMauro Carvalho Chehab``fd``
26f9b2e8aaSMauro Carvalho Chehab    File descriptor returned by :c:func:`open()`.
2754f38fcaSMauro Carvalho Chehab
2854f38fcaSMauro Carvalho Chehab``net_if``
2954f38fcaSMauro Carvalho Chehab    pointer to struct :c:type:`dvb_net_if`
3054f38fcaSMauro Carvalho Chehab
3154f38fcaSMauro Carvalho ChehabDescription
3254f38fcaSMauro Carvalho Chehab===========
3354f38fcaSMauro Carvalho Chehab
3454f38fcaSMauro Carvalho ChehabThe NET_ADD_IF ioctl system call selects the Packet ID (PID) that
3554f38fcaSMauro Carvalho Chehabcontains a TCP/IP traffic, the type of encapsulation to be used (MPE or
3654f38fcaSMauro Carvalho ChehabULE) and the interface number for the new interface to be created. When
3754f38fcaSMauro Carvalho Chehabthe system call successfully returns, a new virtual network interface is
3854f38fcaSMauro Carvalho Chehabcreated.
3954f38fcaSMauro Carvalho Chehab
4054f38fcaSMauro Carvalho ChehabThe struct :c:type:`dvb_net_if`::ifnum field will be
4154f38fcaSMauro Carvalho Chehabfilled with the number of the created interface.
4254f38fcaSMauro Carvalho Chehab
4354f38fcaSMauro Carvalho ChehabReturn Value
4454f38fcaSMauro Carvalho Chehab============
4554f38fcaSMauro Carvalho Chehab
4654f38fcaSMauro Carvalho ChehabOn success 0 is returned, and :c:type:`ca_slot_info` is filled.
4754f38fcaSMauro Carvalho Chehab
4854f38fcaSMauro Carvalho ChehabOn error -1 is returned, and the ``errno`` variable is set
4954f38fcaSMauro Carvalho Chehabappropriately.
5054f38fcaSMauro Carvalho Chehab
5154f38fcaSMauro Carvalho ChehabThe generic error codes are described at the
5254f38fcaSMauro Carvalho Chehab:ref:`Generic Error Codes <gen-errors>` chapter.
53