diff options
author | wiz <wiz> | 2014-01-08 23:07:09 +0000 |
---|---|---|
committer | wiz <wiz> | 2014-01-08 23:07:09 +0000 |
commit | bb6260b555a729d11f48939fe2c64d498bea951d (patch) | |
tree | bfdf3c42900614f35e5e095d02aa838e0fdd30b3 /multimedia | |
parent | 7bd2ce49d8220a474e6ab1ea23d73213d440c6aa (diff) | |
download | pkgsrc-bb6260b555a729d11f48939fe2c64d498bea951d.tar.gz |
Import libbdplus-0.1.0 as multimedia/libbdplus.
BD+ is a part of the Blu-ray Disc DRM system. This library provides
an open source implementation of the standard.
This library is not complete, in that it will never be complete
and will always require updates to stay up to date with the latest
Bluray disks released.
The general flow on this library is that the higher level 'player'
code will call us if there exist a "BDSVM/00000.svm" file on the
disk. If this is the case it will call bdplus_init(), connect the
library with other parts of BluRay player and call bdplus_start().
BD+ VM executes the DLX assembled code inside the SVM file. This
will perform thousands of AES, SHA, file reads and detailed memory
checks to guess the authenticity of the player.
If all goes well, the SVM will eventually spit out a 'conversion
table'. This is a large table (usually about 1-2MB but it varies)
which contains offsets into the M2TS video file. (usually the main
title).
Diffstat (limited to 'multimedia')
-rw-r--r-- | multimedia/libbdplus/DESCR | 20 | ||||
-rw-r--r-- | multimedia/libbdplus/Makefile | 20 | ||||
-rw-r--r-- | multimedia/libbdplus/PLIST | 5 | ||||
-rw-r--r-- | multimedia/libbdplus/distinfo | 7 | ||||
-rw-r--r-- | multimedia/libbdplus/patches/patch-src_libbdplus_bdsvm_segment.c | 24 | ||||
-rw-r--r-- | multimedia/libbdplus/patches/patch-src_libbdplus_bdsvm_trap.c | 15 |
6 files changed, 91 insertions, 0 deletions
diff --git a/multimedia/libbdplus/DESCR b/multimedia/libbdplus/DESCR new file mode 100644 index 00000000000..89a262b843b --- /dev/null +++ b/multimedia/libbdplus/DESCR @@ -0,0 +1,20 @@ +BD+ is a part of the Blu-ray Disc DRM system. This library provides +an open source implementation of the standard. + +This library is not complete, in that it will never be complete +and will always require updates to stay up to date with the latest +Bluray disks released. + +The general flow on this library is that the higher level 'player' +code will call us if there exist a "BDSVM/00000.svm" file on the +disk. If this is the case it will call bdplus_init(), connect the +library with other parts of BluRay player and call bdplus_start(). + +BD+ VM executes the DLX assembled code inside the SVM file. This +will perform thousands of AES, SHA, file reads and detailed memory +checks to guess the authenticity of the player. + +If all goes well, the SVM will eventually spit out a 'conversion +table'. This is a large table (usually about 1-2MB but it varies) +which contains offsets into the M2TS video file. (usually the main +title). diff --git a/multimedia/libbdplus/Makefile b/multimedia/libbdplus/Makefile new file mode 100644 index 00000000000..5a6141ecd94 --- /dev/null +++ b/multimedia/libbdplus/Makefile @@ -0,0 +1,20 @@ +# $NetBSD: Makefile,v 1.1 2014/01/08 23:07:09 wiz Exp $ + +DISTNAME= libbdplus-0.1.0 +CATEGORIES= multimedia +MASTER_SITES= ftp://ftp.videolan.org/pub/videolan/libbdplus/0.1.0/ +EXTRACT_SUFX= .tar.bz2 + +MAINTAINER= pkgsrc-users@NetBSD.org +HOMEPAGE= https://www.videolan.org/developers/libbdplus.html +COMMENT= Research project to implement the BD+ System Specifications +LICENSE= gnu-lgpl-v2.1 + +GNU_CONFIGURE= yes +USE_LIBTOOL= yes +USE_TOOLS+= pkg-config + +PKGCONFIG_OVERRIDE+= src/libbdplus.pc.in + +.include "../../multimedia/libaacs/buildlink3.mk" +.include "../../mk/bsd.pkg.mk" diff --git a/multimedia/libbdplus/PLIST b/multimedia/libbdplus/PLIST new file mode 100644 index 00000000000..8f54f7b51db --- /dev/null +++ b/multimedia/libbdplus/PLIST @@ -0,0 +1,5 @@ +@comment $NetBSD: PLIST,v 1.1 2014/01/08 23:07:09 wiz Exp $ +include/libbdplus/bdplus-version.h +include/libbdplus/bdplus.h +lib/libbdplus.la +lib/pkgconfig/libbdplus.pc diff --git a/multimedia/libbdplus/distinfo b/multimedia/libbdplus/distinfo new file mode 100644 index 00000000000..4c6a626bcf6 --- /dev/null +++ b/multimedia/libbdplus/distinfo @@ -0,0 +1,7 @@ +$NetBSD: distinfo,v 1.1 2014/01/08 23:07:09 wiz Exp $ + +SHA1 (libbdplus-0.1.0.tar.bz2) = 67069a4d70e6c06bda560c2d2b623574880394ab +RMD160 (libbdplus-0.1.0.tar.bz2) = cc73bf0d4b40925e3f823c7c49cc278118fb689c +Size (libbdplus-0.1.0.tar.bz2) = 317810 bytes +SHA1 (patch-src_libbdplus_bdsvm_segment.c) = 2f6a70a98bb740cc9f41c210a9ff76f5e82880c5 +SHA1 (patch-src_libbdplus_bdsvm_trap.c) = a028bbfc8801ddb7675e7aeef0a200d18730acbc diff --git a/multimedia/libbdplus/patches/patch-src_libbdplus_bdsvm_segment.c b/multimedia/libbdplus/patches/patch-src_libbdplus_bdsvm_segment.c new file mode 100644 index 00000000000..7c8ead5a514 --- /dev/null +++ b/multimedia/libbdplus/patches/patch-src_libbdplus_bdsvm_segment.c @@ -0,0 +1,24 @@ +$NetBSD: patch-src_libbdplus_bdsvm_segment.c,v 1.1 2014/01/08 23:07:09 wiz Exp $ + +fseeko is a Linuxism. + +--- src/libbdplus/bdsvm/segment.c.orig 2013-12-18 12:13:09.000000000 +0000 ++++ src/libbdplus/bdsvm/segment.c +@@ -950,7 +950,7 @@ int32_t segment_patchfile(conv_table_t * + offset); + } + +- if (fseeko(fd, offset, SEEK_SET)) { ++ if (fseek(fd, offset, SEEK_SET)) { + printf("Seek to offset %"PRIx64" failed. Stopping at table %d, segment %d, entry %d.\n", + offset, table, currseg, currentry); + return -1; +@@ -975,7 +975,7 @@ int32_t segment_patchfile(conv_table_t * + offset); + } + +- if (fseeko(fd, offset, SEEK_SET)) { ++ if (fseek(fd, offset, SEEK_SET)) { + printf("Seek to offset %"PRIx64" failed. Stopping at table %d, segment %d, entry %d.\n", + offset, table, currseg, currentry); + return -1; diff --git a/multimedia/libbdplus/patches/patch-src_libbdplus_bdsvm_trap.c b/multimedia/libbdplus/patches/patch-src_libbdplus_bdsvm_trap.c new file mode 100644 index 00000000000..ffda463e556 --- /dev/null +++ b/multimedia/libbdplus/patches/patch-src_libbdplus_bdsvm_trap.c @@ -0,0 +1,15 @@ +$NetBSD: patch-src_libbdplus_bdsvm_trap.c,v 1.1 2014/01/08 23:07:09 wiz Exp $ + +fseeko is a Linuxism. + +--- src/libbdplus/bdsvm/trap.c.orig 2013-12-18 12:13:09.000000000 +0000 ++++ src/libbdplus/bdsvm/trap.c +@@ -1310,7 +1310,7 @@ uint32_t TRAP_MediaCheck(const char *dev + return j; + } + +- if (fseeko(fd, seek, SEEK_SET)) { ++ if (fseek(fd, seek, SEEK_SET)) { + DEBUG(DBG_BDPLUS|DBG_CRIT, "[TRAP] TRAP_MediaCheck: failed to seek %s to %"PRIu64"\n", (char *)FileName, seek); + fclose(fd); + return STATUS_INVALID_PARAMETER; |