libbluray | branch: master | hpi1 <[email protected]> | Mon Nov 14 21:26:09 2011 +0200| [03b7af965bbdcd356ec068351234c9f013cae845] | committer: hpi1
Removed linking against libaacs/libbdplus > http://git.videolan.org/gitweb.cgi/libbluray.git/?a=commit;h=03b7af965bbdcd356ec068351234c9f013cae845 --- configure.ac | 35 +++-------------------------------- src/libbluray/bluray.c | 48 +----------------------------------------------- 2 files changed, 4 insertions(+), 79 deletions(-) diff --git a/configure.ac b/configure.ac index 0bc428b..273a81f 100644 --- a/configure.ac +++ b/configure.ac @@ -29,17 +29,10 @@ esac # messages library_not_found="Could not find required library!" function_not_found="Could not find required function!" -using_dlopen_crypto_libs="Using libaacs and libbdplus via dlopen." -using_normal_linking="Using libaacs and libbdplus via normal linking." libxml2_missing="Could not find libxml2 - disclib meta parser disabled." pkg_config_missing="Could not find pkg-config. Assuming..." # configure options -AC_ARG_WITH([dlopen-crypto-libs], - [AS_HELP_STRING([--with-dlopen-crypto-libs], - [use libaacs and libbdplus via dlopen (default is auto)])], - [use_dlopen_crypto_libs=$withval], - [use_dlopen_crypto_libs=auto]) AC_ARG_WITH([jdk], AS_HELP_STRING([--with-jdk=DIR], @@ -122,33 +115,11 @@ fi if test "${SYS}" != "mingw32" ; then AC_CHECK_FUNCS( [dlopen], - [DLOPEN_LDFLAGS=""; have_dlopen="yes"], + [DLOPEN_LDFLAGS=""], [AC_CHECK_LIB([dl], [dlopen], - [DLOPEN_LDFLAGS="-ldl"; have_dlopen="yes"], - [have_dlopen="no"])]) -else - have_dlopen="yes" -fi - -# dlopen check -if [[ $use_dlopen_crypto_libs = "auto" ]]; then - use_dlopen_crypto_libs=$have_dlopen -fi -if [[ $use_dlopen_crypto_libs = "yes" ]]; then - if [[ $have_dlopen = "no" ]]; then - AC_MSG_ERROR($library_not_found) - fi - AC_MSG_NOTICE($using_dlopen_crypto_libs) - AC_DEFINE([DLOPEN_CRYPTO_LIBS], [1], ["Define to 1 if dlopening crypto libs"]) -else - AC_CHECK_LIB([aacs], [aacs_open],, - [AC_MSG_ERROR($library_not_found)]) - AC_CHECK_LIB([bdplus], [bdplus_init],, - [AC_MSG_ERROR($library_not_found)]) - AC_MSG_NOTICE($using_normal_linking) + [DLOPEN_LDFLAGS="-ldl"], + [AC_MSG_ERROR($library_not_found)])]) fi -AM_CONDITIONAL([DLOPEN_CRYPTO_LIBS], - [test $use_dlopen_crypto_libs = "auto" || test $use_dlopen_crypto_libs = "yes"]) # check for pkg-config itself so we don't try the m4 macro without pkg-config AC_CHECK_PROG(HAVE_PKG_CONFIG, pkg-config, yes) diff --git a/src/libbluray/bluray.c b/src/libbluray/bluray.c index 9699f58..c56d61d 100644 --- a/src/libbluray/bluray.c +++ b/src/libbluray/bluray.c @@ -36,17 +36,11 @@ #include "hdmv/hdmv_vm.h" #include "decoders/graphics_controller.h" #include "file/file.h" -#ifdef DLOPEN_CRYPTO_LIBS #include "file/dl.h" -#endif #ifdef USING_BDJAVA #include "bdj/bdj.h" #endif -#ifndef DLOPEN_CRYPTO_LIBS -#include <libaacs/aacs.h> -#include <libbdplus/bdplus.h> -#endif #include <stdlib.h> #include <inttypes.h> #include <string.h> @@ -121,17 +115,13 @@ struct bluray { uint64_t next_chapter_start; /* aacs */ -#ifdef DLOPEN_CRYPTO_LIBS void *h_libaacs; // library handle -#endif void *aacs; fptr_p_void libaacs_open; fptr_int libaacs_decrypt_unit; /* BD+ */ -#ifdef DLOPEN_CRYPTO_LIBS void *h_libbdplus; // library handle -#endif void *bdplus; fptr_p_void bdplus_init; fptr_int32 bdplus_seek; @@ -151,18 +141,13 @@ struct bluray { GRAPHICS_CONTROLLER *graphics_controller; }; -#ifdef DLOPEN_CRYPTO_LIBS -# define DL_CALL(lib,func,param,...) \ +#define DL_CALL(lib,func,param,...) \ do { \ fptr_p_void fptr = (fptr_p_void)dl_dlsym(lib, #func); \ if (fptr) { \ fptr(param, ##__VA_ARGS__); \ } \ } while (0) -#else -# define DL_CALL(lib,func,param,...) \ - func (param, ##__VA_ARGS__) -#endif /* * Navigation mode event queue @@ -540,12 +525,10 @@ static void _libaacs_unload(BLURAY *bd) { _libaacs_close(bd); -#ifdef DLOPEN_CRYPTO_LIBS if (bd->h_libaacs) { dl_dlclose(bd->h_libaacs); bd->h_libaacs = NULL; } -#endif bd->libaacs_open = NULL; bd->libaacs_decrypt_unit = NULL; @@ -575,7 +558,6 @@ static int _libaacs_required(BLURAY *bd) static int _libaacs_load(BLURAY *bd) { -#ifdef DLOPEN_CRYPTO_LIBS if (bd->h_libaacs) { return 1; } @@ -604,16 +586,6 @@ static int _libaacs_load(BLURAY *bd) _libaacs_unload(bd); return 0; - -#else - BD_DEBUG(DBG_BLURAY, "Using libaacs via normal linking\n"); - - bd->libaacs_open = &aacs_open; - bd->libaacs_decrypt_unit = &aacs_decrypt_unit; - bd->disc_info.libaacs_detected = 1; - - return 1; -#endif } static int _libaacs_open(BLURAY *bd, const char *keyfile_path) @@ -648,16 +620,12 @@ static int _libaacs_open(BLURAY *bd, const char *keyfile_path) static uint8_t *_libaacs_get_vid(BLURAY *bd) { if (bd->aacs) { -#ifdef DLOPEN_CRYPTO_LIBS fptr_p_void fptr = (fptr_p_void)dl_dlsym(bd->h_libaacs, "aacs_get_vid"); if (fptr) { return (uint8_t*)fptr(bd->aacs); } BD_DEBUG(DBG_BLURAY, "aacs_get_vid() dlsym failed! (%p)", bd); return NULL; -#else - return aacs_get_vid(bd->aacs); -#endif } BD_DEBUG(DBG_BLURAY, "_libaacs_get_vid(): libaacs not initialized! (%p)", bd); @@ -676,12 +644,10 @@ static void _libbdplus_unload(BLURAY *bd) { _libbdplus_close(bd); -#ifdef DLOPEN_CRYPTO_LIBS if (bd->h_libbdplus) { dl_dlclose(bd->h_libbdplus); bd->h_libbdplus = NULL; } -#endif bd->bdplus_init = NULL; bd->bdplus_seek = NULL; @@ -714,7 +680,6 @@ static int _libbdplus_load(BLURAY *bd) { BD_DEBUG(DBG_BDPLUS, "attempting to load libbdplus\n"); -#ifdef DLOPEN_CRYPTO_LIBS if (bd->h_libbdplus) { return 1; } @@ -743,17 +708,6 @@ static int _libbdplus_load(BLURAY *bd) _libbdplus_unload(bd); return 0; - -#else - BD_DEBUG(DBG_BLURAY,"Using libbdplus via normal linking\n"); - - bd->bdplus_init = &bdplus_init; - bd->bdplus_seek = &bdplus_seek; - bd->bdplus_fixup = &bdplus_fixup; - bd->disc_info.libbdplus_detected = 1; - - return 1; -#endif } static int _libbdplus_open(BLURAY *bd, const char *keyfile_path) _______________________________________________ libbluray-devel mailing list [email protected] http://mailman.videolan.org/listinfo/libbluray-devel
