Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-12:GA
libdvdread
libdvdread-no-internal-crypto.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File libdvdread-no-internal-crypto.patch of Package libdvdread
--- src/dvd_reader.c.orig +++ src/dvd_reader.c @@ -32,6 +32,7 @@ #include <unistd.h> #include <limits.h> #include <dirent.h> +#include <openssl/evp.h> /* misc win32 helpers */ #ifdef WIN32 @@ -68,7 +69,6 @@ static inline int _private_gettimeofday( #include "dvdread/dvd_udf.h" #include "dvd_input.h" #include "dvdread/dvd_reader.h" -#include "md5.h" #define DEFAULT_UDF_CACHE_LEVEL 1 @@ -1326,7 +1326,7 @@ ssize_t DVDFileSize( dvd_file_t *dvd_fil int DVDDiscID( dvd_reader_t *dvd, unsigned char *discid ) { - struct md5_ctx ctx; + EVP_MD_CTX *ctx; int title; int nr_of_files = 0; @@ -1336,7 +1336,9 @@ int DVDDiscID( dvd_reader_t *dvd, unsign /* Go through the first 10 IFO:s, in order, * and md5sum them, i.e VIDEO_TS.IFO and VTS_0?_0.IFO */ - md5_init_ctx( &ctx ); + ctx = EVP_MD_CTX_create(); + EVP_DigestInit_ex(ctx, EVP_md5(), NULL); + for( title = 0; title < 10; title++ ) { dvd_file_t *dvd_file = DVDOpenFile( dvd, title, DVD_READ_INFO_FILE ); if( dvd_file != NULL ) { @@ -1360,15 +1362,14 @@ int DVDDiscID( dvd_reader_t *dvd, unsign free( buffer_base ); return -1; } - - md5_process_bytes( buffer, file_size, &ctx ); - + EVP_DigestUpdate(ctx, buffer, file_size); DVDCloseFile( dvd_file ); free( buffer_base ); nr_of_files++; } } - md5_finish_ctx( &ctx, discid ); + EVP_DigestFinal_ex(ctx, discid, NULL); + EVP_MD_CTX_destroy(ctx); if(!nr_of_files) return -1; --- src/Makefile.am.orig +++ src/Makefile.am @@ -2,17 +2,17 @@ include $(top_srcdir)/misc/Makefile.comm includedir = ${prefix}/include/dvdread -AM_CPPFLAGS = -I$(top_srcdir)/src +AM_CPPFLAGS = -include $(top_builddir)/config.h -I$(top_srcdir)/src lib_LTLIBRARIES = libdvdread.la libdvdread_la_SOURCES = dvd_reader.c nav_read.c ifo_read.c \ - dvd_input.c dvd_udf.c md5.c nav_print.c ifo_print.c bitreader.c \ - bswap.h dvd_input.h dvdread_internal.h dvd_udf.h md5.h bitreader.h + dvd_input.c dvd_udf.c nav_print.c ifo_print.c bitreader.c \ + bswap.h dvd_input.h dvdread_internal.h dvd_udf.h bitreader.h -libdvdread_la_LIBADD = $(DYNAMIC_LD_LIBS) +libdvdread_la_LIBADD = $(DYNAMIC_LD_LIBS) $(OPENSSL_LIBS) -libdvdread_la_LDFLAGS = -version-info $(DVDREAD_LT_CURRENT):$(DVDREAD_LT_REVISION):$(DVDREAD_LT_AGE) \ +libdvdread_la_LDFLAGS = -no-undefined -version-info $(DVDREAD_LT_CURRENT):$(DVDREAD_LT_REVISION):$(DVDREAD_LT_AGE) \ -export-symbols-regex "(^dvd.*|^nav.*|^ifo.*|^DVD.*|^UDF.*)" include_HEADERS = dvdread/dvd_reader.h dvdread/nav_read.h dvdread/ifo_read.h \ --- configure.ac.orig +++ configure.ac @@ -82,10 +82,9 @@ dnl ------------------------------------ dnl Checks for programs. dnl -------------------------------------------------------------- dnl Save CFLAGS, AC_ISC_POSIX set some unwanted default CFLAGS -saved_CFLAGS="$CFLAGS" -AC_ISC_POSIX -CFLAGS="$saved_CFLAGS" -AC_PROG_CC +AC_PROG_CC_STDC +AC_USE_SYSTEM_EXTENSIONS +AC_SYS_LARGEFILE AC_PROG_MAKE_SET AC_PROG_INSTALL AC_PROG_LN_S @@ -95,17 +94,7 @@ dnl Libtool dnl -------------------------------------------------------------- dnl LT_PREREQ only available in libtool-2.2+ dnl LT_PREREQ([1.4.0]) -AC_LIBTOOL_DLOPEN -AC_DISABLE_STATIC -AC_PROG_LIBTOOL -AC_SUBST(LIBTOOL_DEPS) -if ${CONFIG_SHELL} ./libtool --features | grep "enable static" >/dev/null; then - STATIC="-static" -else - STATIC= -fi -AC_SUBST(STATIC) - +LT_INIT([disable-static pic-only]) dnl -------------------------------------------------------------- dnl Checks for header files. dnl -------------------------------------------------------------- @@ -158,14 +147,11 @@ case $host in ;; esac +PKG_CHECK_MODULES(OPENSSL, openssl) dnl --------------------------------------------- dnl cflags dnl --------------------------------------------- dnl Common cflags for all platforms -CFLAGS="-O3 -Wall -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE $CFLAGS" -DEBUG_CFLAGS="-g -DDEBUG $CFLAGS" - -AC_SUBST(DEBUG_CFLAGS) dnl --------------------------------------------- dnl Check for doxygen (dynamic documentation generator)
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor