Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 13 Jul 2003 15:18:30 +0200 (CEST)
From:      Melvyn Sopacua <melvyn@webteckies.org>
To:        FreeBSD-gnats-submit@FreeBSD.org
Cc:        MAINTAINER <lioux@FreeBSD.org>
Subject:   ports/54435: [PATCH] multimedia/libdvdread dvdcss_crack symbol revisited
Message-ID:  <20030713131830.D533021BB8@ghost.lan.webteckies.org>
Resent-Message-ID: <200307131320.h6DDK9Hn066568@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         54435
>Category:       ports
>Synopsis:       [PATCH] multimedia/libdvdread dvdcss_crack symbol revisited
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sun Jul 13 06:20:08 PDT 2003
>Closed-Date:
>Last-Modified:
>Originator:     Melvyn Sopacua
>Release:        FreeBSD 4.8-STABLE i386
>Organization:
>Environment:
System: FreeBSD ghost.lan.webteckies.org 4.8-STABLE FreeBSD 4.8-STABLE #0: Sat Jul 5 18:39:46 CEST 2003 root@ghost.lan.webteckies.org:/usr/obj/usr/src/sys/GHOST i386


	
>Description:
	When using transcode with divx[45] or xvid encoding, the following message is generated:
	Undefined symbol "dvdcss_crack"Failed to init XviD codec[transcode] warning : (encoder.c) video export module error: init failed

	I've done some fair ammount of testing, like:
find /usr/local/lib -name "*.so" -print | while read LIB; do nm $LIB | grep 'dvdcss_crack' ; done
for DIR in libdvdcss libdvdnav libdvdplay libdvdread xvid libdivxdecore libdivxencore transcode ; do (cd $DIR && make patch) ; done ; find . -type f -print | xargs grep dvdcss_crack

	The only reference found, was the assertion in dvd_input.c, from libdvdread, which assumes that if the dlsym works, there's an undefined symbol.
	This was already pointed out by Hendrik Scholz in:
<http://www.theorie.physik.uni-goettingen.de/pipermail/transcode-users/2003-February/006545.html>;

	After removing the assertion, things work correctly.
>How-To-Repeat:
	Use DVD::Rip to transcode a dvd with divx[45] or xvid encoding.
>Fix:
	Add the following 'patch-dvdread::dvd_input.c' to files/

--- dvdread/dvd_input.c.orig	Sun Jul 13 14:42:27 2003
+++ dvdread/dvd_input.c	Sun Jul 13 14:42:41 2003
@@ -297,14 +297,7 @@
     
     dvdcss_version = (char **)dlsym(dvdcss_library, U_S "dvdcss_interface_2");
 
-    if(dlsym(dvdcss_library, U_S "dvdcss_crack")) {
-      fprintf(stderr, 
-	      "libdvdread: Old (pre-0.0.2) version of libdvdcss found.\n"
-	      "libdvdread: You should get the latest version from "
-	      "http://www.videolan.org/\n" );
-      dlclose(dvdcss_library);
-      dvdcss_library = NULL;
-    } else if(!DVDcss_open  || !DVDcss_close || !DVDcss_title || !DVDcss_seek
+    if(!DVDcss_open  || !DVDcss_close || !DVDcss_title || !DVDcss_seek
 	      || !DVDcss_read || !DVDcss_error || !dvdcss_version) {
       fprintf(stderr,  "libdvdread: Missing symbols in libdvdcss.so.2, "
 	      "this shouldn't happen !\n");
>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030713131830.D533021BB8>