net.h 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. /* SPDX-License-Identifier: LGPL-2.1+ WITH Linux-syscall-note */
  2. /*
  3. * net.h
  4. *
  5. * Copyright (C) 2000 Marcus Metzler <[email protected]>
  6. * & Ralph Metzler <[email protected]>
  7. * for convergence integrated media GmbH
  8. *
  9. * This program is free software; you can redistribute it and/or
  10. * modify it under the terms of the GNU Lesser General Public License
  11. * as published by the Free Software Foundation; either version 2.1
  12. * of the License, or (at your option) any later version.
  13. *
  14. * This program is distributed in the hope that it will be useful,
  15. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  16. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  17. * GNU General Public License for more details.
  18. *
  19. * You should have received a copy of the GNU Lesser General Public License
  20. * along with this program; if not, write to the Free Software
  21. * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  22. *
  23. */
  24. #ifndef _DVBNET_H_
  25. #define _DVBNET_H_
  26. #include <linux/types.h>
  27. /**
  28. * struct dvb_net_if - describes a DVB network interface
  29. *
  30. * @pid: Packet ID (PID) of the MPEG-TS that contains data
  31. * @if_num: number of the Digital TV interface.
  32. * @feedtype: Encapsulation type of the feed.
  33. *
  34. * A MPEG-TS stream may contain packet IDs with IP packages on it.
  35. * This struct describes it, and the type of encoding.
  36. *
  37. * @feedtype can be:
  38. *
  39. * - %DVB_NET_FEEDTYPE_MPE for MPE encoding
  40. * - %DVB_NET_FEEDTYPE_ULE for ULE encoding.
  41. */
  42. struct dvb_net_if {
  43. __u16 pid;
  44. __u16 if_num;
  45. __u8 feedtype;
  46. #define DVB_NET_FEEDTYPE_MPE 0 /* multi protocol encapsulation */
  47. #define DVB_NET_FEEDTYPE_ULE 1 /* ultra lightweight encapsulation */
  48. };
  49. #define NET_ADD_IF _IOWR('o', 52, struct dvb_net_if)
  50. #define NET_REMOVE_IF _IO('o', 53)
  51. #define NET_GET_IF _IOWR('o', 54, struct dvb_net_if)
  52. /* binary compatibility cruft: */
  53. struct __dvb_net_if_old {
  54. __u16 pid;
  55. __u16 if_num;
  56. };
  57. #define __NET_ADD_IF_OLD _IOWR('o', 52, struct __dvb_net_if_old)
  58. #define __NET_GET_IF_OLD _IOWR('o', 54, struct __dvb_net_if_old)
  59. #endif /*_DVBNET_H_*/