Griasdebou!
O.K. I'm back from hospital an will play and search, what happens ...
Am Montag, 1. Mai 2006 07:53 schrieb Jörg Wendel:
please can you check if the file "/video/Clips/Tito_&_Tarantula_-_After_Dark/2005-02-04.22.50.99.99.rec/prot ection.fsk" was created by the script.
No, there's no protection.fsk in the subdirectory.
Does you have changed the script "/usr/bin/fskprotect.sh" to the new one?
Jepp, I've made some symlinks to use the right new scripts: tecvdr:/usr/bin # ls -al fs* lrwxrwxrwx 1 root root 43 Apr 30 22:54 fskcheck -> /usr/local/src/VDR/PLUGINS/src/pin/fskcheck lrwxrwxrwx 1 root root 59 Apr 30 22:53 fskcheck-demo.sh -> /usr/local/src/VDR/PLUGINS/src/pin/scripts/fskcheck-demo.sh lrwxrwxrwx 1 root root 56 Apr 30 22:53 fskprotect.sh -> /usr/local/src/VDR/PLUGINS/src/pin/scripts/fskprotect.sh
fsprotect.sh contains: tecvdr:/usr/bin # cat fskprotect.sh
fskcheck check
if [ $? != 1 ]; then fskcheck info "Please enable pin protection first" exit 1 fi
if [ "$1" == "protect" ]; then
if [ -f $2/protection.fsk ]; then fskcheck info "Recording was already protected!" exit 1 fi
touch $2/protection.fsk fskcheck info "Recording now protected!"
fi
if [ "$1" == "unprotect" ]; then
if [ ! -f $2/protection.fsk ]; then echo fskcheck info "Recording was not protected!" exit 1 fi
rm -f $2/protection.fsk fskcheck info "Removed protection of recording!"
fi
exit 0
errno 13 looks like "Permission denied", is it possible, that you have started the vdr first as 'one' user (e.g. root) and than as an 'other' user?
Hmmm, I'm using my own old startupscript:
DVBDIR="/usr/local/src/DVB/driver" DVBREM="/usr/local/src/DVB/apps/av7110_loadkeys" VDRPRG="/usr/local/src/VDR/vdr" PLUGIN="/usr/local/src/VDR/PLUGINS/lib/libvdr" VDRCMD="$VDRPRG -c /etc/vdr -g /video -s /usr/local/bin/vdrshutdown -L /usr/local/src/VDR/PLUGINS/lib $*" VDRUSR=vdr
# DVD Dma Mode: # [ -e /dev/dvd ] && (/sbin/hdparm -u1 /dev/cdrom; /sbin/hdparm -X34 /dev/dvd) /sbin/hdparm -u1 -d1 -X udma2 /dev/hdc #/sbin/hdparm -u0 -d1 /dev/hdc
VDRCOMMAND="$VDRCMD \ -D 1 \ `[ -x $PLUGIN-pin* ] && echo "-P pin"`\ `[ -x $PLUGIN-femon.* ] && echo "-P femon"`\ `[ -x $PLUGIN-burn.* ] && echo "-P 'burn -i /video'"`\ `[ -x $PLUGIN-remote* ] && echo "-P 'remote -i /dev/input/event0'"`\ -w 60"
LSMOD="`/sbin/lsmod | grep -w '^dvb' | wc -l`" KILL="/usr/bin/killall -q -TERM"
# Load driver if it hasn't been loaded already: if [ $LSMOD -eq 0 ] ; then (cd $DVBDIR; make insmod) fi
while (true) do # next line is _not_ required if autodetect mode is used $DVBREM/av7110_loadkeys $DVBREM/tecvdr.rc5 > /proc/av7110_ir su $VDRUSR -c "$VDRCOMMAND" if test $? -eq 0 -o $? -eq 2; then exit; fi date echo "restarting VDR" $KILL $VDRPRG sleep 10 (cd $DVBDIR; make rmmod; make insmod) date done
While vdr is running, top shows me: top: top - 12:44:46 up 10 min, 2 users, load average: 1.69, 1.23, 0.63 Tasks: 73 total, 2 running, 71 sleeping, 0 stopped, 0 zombie Cpu(s): 86.5% user, 13.5% system, 0.0% nice, 0.0% idle Mem: 223292k total, 154928k used, 68364k free, 11304k buffers Swap: 530136k total, 0k used, 530136k free, 64864k cached
USER PID PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND vdr 773 15 0 8692 8692 1824 S 0.0 3.9 0:00.04 vdradmind.pl vdr 1831 18 0 920 920 764 S 0.0 0.4 0:00.02 su vdr 1832 15 0 21560 21m 2760 S 0.0 9.7 0:03.83 vdr vdr 1833 15 0 21560 21m 2760 S 0.0 9.7 0:00.01 vdr vdr 1842 15 0 0 0 0 S 0.0 0.0 0:00.01 kdvb-fe-1:0 vdr 1846 15 0 21560 21m 2760 S 0.0 9.7 0:00.02 vdr vdr 1847 34 19 21560 21m 2760 S 0.0 9.7 0:00.27 vdr vdr 1848 25 0 21560 21m 2760 R 57.8 9.7 2:22.01 vdr vdr 1849 34 19 21560 21m 2760 S 0.0 9.7 0:00.00 vdr vdr 1850 18 0 21560 21m 2760 S 0.0 9.7 0:00.00 vdr
What says "ipcs -q", when vdr (with the plugin) is running, can you post the output please?
ecvdr:/usr/bin # ipcs -q
------ Message Queues -------- key msqid owner perms used-bytes messages 0xd8000000 0 vdr 0 0 0
To make shure that i have interpreted errno 13 correctly i have posted a version 0.0.15a with an extended error message.
O.K. I've build the new 15a version: Plugin pin: make[1]: Entering directory `/usr/local/src/vdr-1.4.0.PIN/PLUGINS/src/pin-0.0.15a' make[1]: Leaving directory `/usr/local/src/vdr-1.4.0.PIN/PLUGINS/src/pin-0.0.15a' make[1]: Entering directory `/usr/local/src/vdr-1.4.0.PIN/PLUGINS/src/pin-0.0.15a' make[2]: Entering directory `/usr/local/src/vdr-1.4.0.PIN/PLUGINS/src/pin-0.0.15a' g++ -O2 -Wall -Woverloaded-virtual -c -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"pin"' -I../../../include -I../../../../DVB/include fskcheck.c g++ -O2 -Wall -Woverloaded-virtual fskcheck.o -o fskcheck make[2]: Leaving directory `/usr/local/src/vdr-1.4.0.PIN/PLUGINS/src/pin-0.0.15a' make[2]: Entering directory `/usr/local/src/vdr-1.4.0.PIN/PLUGINS/src/pin-0.0.15a' g++ -O2 -Wall -Woverloaded-virtual -c -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"pin"' -I../../../include -I../../../../DVB/include pin.c g++ -O2 -Wall -Woverloaded-virtual -c -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"pin"' -I../../../include -I../../../../DVB/include setupmenu.c g++ -O2 -Wall -Woverloaded-virtual -c -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"pin"' -I../../../include -I../../../../DVB/include menu.c g++ -O2 -Wall -Woverloaded-virtual -c -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"pin"' -I../../../include -I../../../../DVB/include locks.c g++ -O2 -Wall -Woverloaded-virtual -c -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"pin"' -I../../../include -I../../../../DVB/include brdclocks.c g++ -O2 -Wall -Woverloaded-virtual -c -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"pin"' -I../../../include -I../../../../DVB/include brdcmenu.c g++ -O2 -Wall -Woverloaded-virtual -c -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"pin"' -I../../../include -I../../../../DVB/include i18n.c g++ -O2 -Wall -Woverloaded-virtual -c -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"pin"' -I../../../include -I../../../../DVB/include rep.c g++ -O2 -Wall -Woverloaded-virtual -c -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"pin"' -I../../../include -I../../../../DVB/include msgreceiver.c g++ -O2 -Wall -Woverloaded-virtual -shared pin.o setupmenu.o menu.o locks.o brdclocks.o brdcmenu.o i18n.o rep.o msgreceiver.o -o libvdr-pin.so make[2]: Leaving directory `/usr/local/src/vdr-1.4.0.PIN/PLUGINS/src/pin-0.0.15a' make[1]: Leaving directory `/usr/local/src/vdr-1.4.0.PIN/PLUGINS/src/pin-0.0.15a'
I think nothing bad here, isn't ist so?
If I try to protect a recording, now syslog shows:
May 1 12:45:25 tecvdr vdr: [1832] executing command '/usr/bin/fskprotect.sh protect "/video/Willi_wills_wissen/2006-04-04.14.50.99.99.rec"' May 1 12:45:25 tecvdr vdr: [1848] Receiving message failed, errno (13), 'Permission denied'
... and there's no protection.fsk there: ls: drwxr-xr-x 3 vdr vdrdaem 4096 Apr 6 20:31 Willi_wills_wissen drwxr-xr-x 2 vdr vdrdaem 4096 Apr 29 14:08 2006-04-04.14.50.99.99.rec -rw-r--r-- 1 vdr vdrdaem 717096461 Apr 4 21:17 001.vdr -rw-r--r-- 1 vdr vdrdaem 292824 Apr 4 21:17 index.vdr -rw-r--r-- 1 vdr vdrdaem 238 Apr 4 21:16 info.vdr -rw-r--r-- 1 vdr vdrdaem 22 Apr 4 21:17 marks.vdr
Tanks for testing ;)
Null Problemo! ;)
I think, there's a problem with my runvdr, 'cause if I run vdr as user root, there are no errormessages in my syslog!
May 1 13:21:30 tecvdr vdr: [2344] executing command '/usr/bin/fskprotect.sh protect "/video/Willi_wills_wissen/2006-04-04.14.50.99.99.rec"' May 1 13:21:30 tecvdr vdr: [2357] Message (0) from (425985) received [-] May 1 13:21:31 tecvdr vdr: [2357] Message (1) from (458753) received [Recording now protected!] May 1 13:21:31 tecvdr vdr: [2357] Got 'Recording now protected!' May 1 13:21:31 tecvdr vdr: [2344] info: Recording now protected!
May 1 13:22:25 tecvdr vdr: [2344] info: Kinderschutz aktiviert May 1 13:22:34 tecvdr vdr: [2344] checking protection of recording '(null)' May 1 13:22:34 tecvdr vdr: [2344] checking rights, protection file is '/video/Willi_wills_wissen/2006-04-04.14.50.99.99.rec/protection.fsk' May 1 13:22:34 tecvdr vdr: [2344] pin: no translation found for 'Recording protected, enter pin code first' in language 1 (Deutsch) May 1 13:22:34 tecvdr vdr: [2344] ERROR: Recording protected, enter pin code first
Pfiadenachad!
Michael