Bug#399154: vdradmin-am: crashes when used thru apache reverse proxy

Anssi Kolehmainen anssi at aketzu.net
Sat Nov 18 08:06:28 CET 2006


Package: vdradmin-am
Version: 3.4.7-2
Severity: normal
Tags: patch

When I try to access vdradmin remotely proxying it through apache
vdradmin gives out "can't find mime-type" and crashes. After some
digging I found out that this is caused by apache prepending another
slash in the requested URL (i.e. "//vdradmin.pl"). Since vdradmin
doesn't check for multiple slashes in beginning it gets request for
nonexisting file and somehow crashes.

Attached is a simple patch to make vdradmin working. It just removes the
extra slash from beginning.

Apache config example
<Location /vdradmin>
	ProxyPass         http://localhost:8002/
	ProxyPassReverse  http://localhost:8002/
</Location>


-- System Information:
Debian Release: testing/unstable
  APT prefers testing
  APT policy: (900, 'testing'), (300, 'unstable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/dash
Kernel: Linux 2.6.16.14
Locale: LANG=en_US, LC_CTYPE=en_US (charmap=ISO-8859-1)

Versions of packages vdradmin-am depends on:
ii  adduser                       3.99       Add and remove users and groups
ii  libcompress-zlib-perl         1.42-1     Perl module for creation and manip
ii  libio-socket-inet6-perl       2.51-1     Object interface for AF_INET6 doma
ii  liblocale-gettext-perl        1.05-1     Using libc functions for internati
ii  libsocket6-perl               0.19-1     Perl extensions for IPv6
ii  libtemplate-perl              2.14-1     template processing system written
ii  liburi-perl                   1.35-2     Manipulates and accesses URI strin
ii  perl                          5.8.8-6.1  Larry Wall's Practical Extraction 

vdradmin-am recommends no packages.

-- no debconf information
-------------- next part --------------
--- vdradmind-old.pl	2006-11-18 07:38:01.000000000 +0200
+++ vdradmind.pl	2006-11-18 07:39:56.000000000 +0200
@@ -517,6 +517,8 @@
         close($Client);
         next;
     }
+    
+    $Request =~ s/^\/\//\//g;
 
     # serve request
     $SVDRP = SVDRP->new;
@@ -1046,7 +1048,7 @@
 sub SendFile {
     my ($File) = @_;
     my ($buf, $temp);
-    $File =~ s/^\///;
+    $File =~ s/^\///g;
     $File =~ s/^bilder/$CONFIG{SKIN}/i
       if (defined $CONFIG{SKIN});
     my $FileWithPath = sprintf(


More information about the pkg-vdr-dvb-devel mailing list