VDR 1.7.22 obsoletes cap_net_raw patch.

Added cap_net_raw patch for VDR 1.7.5 - 1.7.21.
This commit is contained in:
Frank Schmirler 2011-12-09 09:04:00 +01:00
parent d93ca82bd1
commit 59c6558ce3
4 changed files with 19 additions and 4 deletions

View File

@ -1,6 +1,8 @@
VDR Plugin 'streamdev' Revision History
---------------------------------------
- VDR 1.7.22 obsoletes cap_net_raw patch. Added cap_net_raw patch for VDR
1.7.5 - 1.7.21.
- Update and UTF-8 conversion of Finnish po files (thanks to Rolf Ahrenberg)
- Added "Hide mainmenu entry" option on server (thanks to Rolf Ahrenberg)
- Added server menu with list of clients. Connections can be terminated

10
README
View File

@ -287,10 +287,12 @@ reserved according to RFC-2365).
Before you can use streamdev's multicast server, you might need to patch VDR.
Binding an IGMP socket is a privileged operation, so you must start VDR as root.
If you pass the -u option to VDR, it will drop almost all priviledges before
streamdev is even loaded. Apply vdr-cap_net_raw.diff to keep VDR from dropping
the CAP_NET_RAW capability required to bind the IGMP socket. The patch is part
of streamdev's source distribution. Check the patches subdirectory. There's no
need to patch VDR if it is kept running as root (not recommended).
streamdev is even loaded. In VDR < 1.7.22 this prevented streamdev from binding
the socket. Apply either patch vdr-1.6.0-cap_net_raw.diff (VDR < 1.7.5) or
vdr-1.7.21-cap_net_raw.diff (VDR < 1.7.22) to keep VDR from dropping capability
CAP_NET_RAW. The patch is part of streamdev's source distribution. Check the
patches subdirectory. There's no need to patchif you are running VDR >= 1.7.22
or if VDR is kept running as root (not recommended).
The multicast server is disabled by default. Enter the streamdev-server setup
menu to enable it and - IMPORTANT - bind the multicast server to the IP of your

View File

@ -0,0 +1,11 @@
--- vdr.c.orig 2011-12-09 08:47:52.000000000 +0100
+++ vdr.c 2011-12-09 08:48:14.000000000 +0100
@@ -116,7 +116,7 @@
static bool DropCaps(void)
{
// drop all capabilities except selected ones
- cap_t caps = cap_from_text("= cap_sys_nice,cap_sys_time=ep");
+ cap_t caps = cap_from_text("= cap_sys_nice,cap_sys_time,cap_net_raw=ep");
if (!caps) {
fprintf(stderr, "vdr: cap_from_text failed: %s\n", strerror(errno));
return false;