commit 4ef8667993fe1abb761ee55573a4292c475d1a85
parent 0a8d8e186750173e4ec67293df39e801549e46d4
Author: parazyd <parazyd@dyne.org>
Date: Thu, 4 Aug 2016 20:14:11 +0200
net-libs/rb_libtorren;net-p2p/ctorrent;x11-terms/cool-retro-term: Remove.
Diffstat:
10 files changed, 4 insertions(+), 682 deletions(-)
diff --git a/README.md b/README.md
@@ -4,14 +4,16 @@ Yet another Gentoo overlay
* app-crypt
* steghide
* tomb
+* app-laptop
+ * tp_smapi
+* app-misc
+ * tbt
* mail-client
* mutt-kz
* media-video
* simplescreenrecorder
* net-analyzer
* ettercap
-* net-libs
- * rb_libtorrent
* net-wireless
* aircrack-ng
* pixiewps
diff --git a/net-libs/rb_libtorrent/Manifest b/net-libs/rb_libtorrent/Manifest
@@ -1,2 +0,0 @@
-DIST libtorrent-rasterbar-0.16.17.tar.gz 3018881 SHA256 67a1d29c626d991d6e39c2f9828ca70c4053d057070ce01fff9b4ad37e64aff0 SHA512 532b2438e24c3ecad239480a1bd6241a0d73d40f8d5bdcf61ddfcee1a41f1644c9004d4f234968efd50158224219b78852ec936a05b75b15f3442b594460cdd6 WHIRLPOOL 755e201741ed77cf91cb0976cbaa83c645647341d2cfe40564552599f2792ba76bd02e82a94669d80b199f1a1d6290824686d2bb52d6b0da8663d2274176f3eb
-DIST rb_libtorrent-1.0.9.tar.gz 2977503 SHA256 f4eadcbc779edc590d0162b0188c1b179d2cc72519c3756989ef925e376ddecd SHA512 0980ebb5567310ad6f235899770cfc7a23ef754f5a8513e1baa8bbec139ff26006a6b47a1cca62e45da496b901c6646eee3dd76ab4bb5410ce3fc119e717c072 WHIRLPOOL 7c6862d9d4fbc27d6de04cba8ac605dbffafcf1b26a3519bc94964727416655450b74cb62928f27fa568dcc163c8a599ca78f080a86171b6e1283d9b794924b8
diff --git a/net-libs/rb_libtorrent/rb_libtorrent-0.16.17.ebuild b/net-libs/rb_libtorrent/rb_libtorrent-0.16.17.ebuild
@@ -1,82 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="4"
-PYTHON_DEPEND="python? 2:2.7"
-PYTHON_USE_WITH="threads"
-PYTHON_USE_WITH_OPT="python"
-
-inherit multilib python versionator
-
-MY_P=${P/rb_/}
-MY_P=${MY_P/torrent/torrent-rasterbar}
-S=${WORKDIR}/${MY_P}
-
-DESCRIPTION="C++ BitTorrent implementation focusing on efficiency and scalability"
-HOMEPAGE="http://libtorrent.org"
-SRC_URI="mirror://sourceforge/libtorrent/${MY_P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 arm ppc ppc64 sparc x86 ~x86-fbsd"
-IUSE="debug doc examples python ssl libressl static-libs test"
-RESTRICT="test"
-
-DEPEND=">=dev-libs/boost-1.48[python?,threads(+)]
- >=sys-devel/libtool-2.2
- sys-libs/zlib
- examples? ( !net-p2p/mldonkey )
- ssl? (
- !libressl? ( dev-libs/openssl )
- libressl? ( dev-libs/libressl )
- )"
-RDEPEND="${DEPEND}"
-
-pkg_setup() {
- if use python; then
- python_set_active_version 2
- python_pkg_setup
- fi
-}
-
-src_prepare() {
- use python && python_convert_shebangs -r 2 .
-}
-
-src_configure() {
- local myconf
-
- # bug 441842
- myconf="--disable-silent-rules"
-
- # use multi-threading versions of boost libs
- if has_version '>=dev-libs/boost-1.52.0-r1'; then
- myconf+=" --with-boost-python=boost_python-${PYTHON_ABI}"
- else
- myconf+=" --with-boost-system=boost_system-mt \
- --with-boost-python=boost_python-${PYTHON_ABI}-mt"
- fi
-
- local LOGGING
- use debug && myconf+=" --enable-logging=verbose"
-
- econf $(use_enable debug) \
- $(use_enable test tests) \
- $(use_enable examples) \
- $(use_enable python python-binding) \
- $(use_enable ssl encryption) \
- $(use_enable static-libs static) \
- --with-boost-libdir=/usr/$(get_libdir) \
- --with-boost-system=boost_system-mt \
- ${myconf}
-}
-
-src_install() {
- emake DESTDIR="${D}" install
- use static-libs || find "${D}" -name '*.la' -exec rm -f {} +
- dodoc ChangeLog AUTHORS NEWS README
- if use doc; then
- dohtml docs/*
- fi
-}
diff --git a/net-libs/rb_libtorrent/rb_libtorrent-1.0.9-r1.ebuild b/net-libs/rb_libtorrent/rb_libtorrent-1.0.9-r1.ebuild
@@ -1,106 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=6
-
-PYTHON_COMPAT=( python2_7 python3_{4,5} )
-PYTHON_REQ_USE="threads"
-DISTUTILS_OPTIONAL=true
-DISTUTILS_IN_SOURCE_BUILD=true
-
-inherit autotools distutils-r1 versionator
-
-MY_PV=$(replace_all_version_separators '_' )
-S=${WORKDIR}/libtorrent-libtorrent-${MY_PV}
-
-DESCRIPTION="C++ BitTorrent implementation focusing on efficiency and scalability"
-HOMEPAGE="http://libtorrent.org"
-SRC_URI="https://github.com/arvidn/libtorrent/archive/libtorrent-${MY_PV}.tar.gz -> rb_libtorrent-${PV}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
-IUSE="debug +dht doc examples python +ssl libressl static-libs test"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-RDEPEND="
- >=dev-libs/boost-1.53:=[threads]
- sys-libs/zlib
- virtual/libiconv
- examples? ( !net-p2p/mldonkey )
- ssl? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- )
- python? (
- ${PYTHON_DEPS}
- dev-libs/boost:=[python,${PYTHON_USEDEP}]
- )"
-DEPEND="${RDEPEND}
- >=sys-devel/libtool-2.2"
-
-RESTRICT="test"
-
-src_prepare() {
- default
-
- # make sure lib search dir points to the main `S` dir and not to python copies
- sed -i "s|-L[^ ]*/src/\.libs|-L${S}/src/.libs|" \
- -- 'bindings/python/link_flags.in' || die
-
- # needed or else eautoreconf fails
- mkdir build-aux && cp {m4,build-aux}/config.rpath || die
-
- eautoreconf
-
- use python && python_copy_sources
-}
-
-src_configure() {
- local myeconfargs=(
- --disable-silent-rules # bug 441842
- --with-boost-system=mt
- --with-libiconv
- $(use_enable debug)
- $(usex debug "--enable-logging=verbose" "")
- $(use_enable dht)
- $(use_enable examples)
- $(use_enable ssl encryption)
- $(use_enable static-libs static)
- $(use_enable test tests)
- )
- econf "${myeconfargs[@]}"
-
- python_configure() {
- local myeconfargs+=(
- --enable-python-binding
- --with-boost-python=yes
- )
- econf "${myeconfargs[@]}"
- }
- use python && distutils-r1_src_configure
-}
-
-src_compile() {
- default
-
- python_compile() {
- cd "${BUILD_DIR}/../bindings/python" || die
- distutils-r1_python_compile
- }
- use python && distutils-r1_src_compile
-}
-
-src_install() {
- use doc && HTML_DOCS+=( "${S}"/docs )
-
- default
-
- python_install() {
- cd "${BUILD_DIR}/../bindings/python" || die
- distutils-r1_python_install
- }
- use python && distutils-r1_src_install
-}
diff --git a/net-p2p/ctorrent/Manifest b/net-p2p/ctorrent/Manifest
@@ -1 +0,0 @@
-DIST ctorrent-dnh3.3.2.tar.gz 219053 SHA256 c87366c91475931f75b924119580abd06a7b3cb3f00fef47346552cab1e24863 SHA512 e59b2b899b8603e42a5754d5ce65f661b135b8e107140e0472af379b2b06ee2985239ed0ebf19dcaef788e617b99eac35ad32ad2d10352e2fcf5a6dc084d27dd WHIRLPOOL e89518e8fccd27e91027b954e0a25367536ebab1d91a959d51229a6779cdd0649154536df61316b88c4d9f236af90e0638d81df5c56d8230a4081a35604dc910
diff --git a/net-p2p/ctorrent/ctorrent-3.3.2-r3.ebuild b/net-p2p/ctorrent/ctorrent-3.3.2-r3.ebuild
@@ -1,33 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="5"
-
-inherit eutils
-
-MY_P="${PN}-dnh${PV}"
-
-DESCRIPTION="Enhanced CTorrent is a BitTorrent console client written in C and C++"
-HOMEPAGE="http://www.rahul.net/dholmes/ctorrent/"
-SRC_URI="mirror://sourceforge/dtorrent/${MY_P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
-IUSE="libressl"
-
-S=${WORKDIR}/${MY_P}
-
-DEPEND="
- !libressl? ( dev-libs/openssl:= )
- libressl? ( dev-libs/libressl:= )
-"
-
-RDEPEND="${DEPEND}"
-
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-CVE-2009-1759.patch
- epatch "${FILESDIR}"/${P}-negative-ints.patch
- epatch "${FILESDIR}"/${P}-empty-path-components.patch
-}
diff --git a/net-p2p/ctorrent/files/ctorrent-3.3.2-empty-path-components.patch b/net-p2p/ctorrent/files/ctorrent-3.3.2-empty-path-components.patch
@@ -1,38 +0,0 @@
-rTorrent sometimes creates invalid torrents which has empty path components.
-the bitorrent spec allows for "" strings, but they make no sense in paths.
-so instead of always adding a / in between, skip them. ugh.
-
-for example:
-dict {
- 'info' => dict {
- 'name' => str = "some dir" (len = 8)
- 'files' => list [
- dict {
- 'length' => int = 12345567
- 'path' => list [
- str = "" (len = 0)
- str = "foo.bin" (len = 7)
- ]
- }
- ...
- ]
- ...
- }
- ...
-}
-
-ctorrent will then try to fetch the file "/some dir/foo.bin" instead of
-"some dir/foo.bin" (relative to $PWD).
-
---- a/bencode.cpp
-+++ b/bencode.cpp
-@@ -258,7 +258,8 @@
- n -= r;
- if( 'e' == *pb ) break;
- if( pathname >= endmax ) return 0;
-- *pathname++ = PATH_SP;
-+ if (q)
-+ *pathname++ = PATH_SP;
- }
- *pathname = '\0';
- return (pb - b + 1);
diff --git a/net-p2p/ctorrent/files/ctorrent-3.3.2-negative-ints.patch b/net-p2p/ctorrent/files/ctorrent-3.3.2-negative-ints.patch
@@ -1,17 +0,0 @@
-allow negative integers ... should fix random "error, initial meta info failed"
-
-https://sourceforge.net/tracker/?func=detail&aid=3159066&group_id=202532&atid=981959
-
---- ctorrent-dnh3.3.2/bencode.cpp
-+++ ctorrent-dnh3.3.2/bencode.cpp
-@@ -44,6 +44,10 @@
- p++; len--;
- }
-
-+ if( *p == '-'){
-+ p++; len--;
-+ }
-+
- for(psave = p; len && isdigit(*p); p++,len--) ;
-
- if(!len || MAX_INT_SIZ < (p - psave) || *p != endchar) return 0;
diff --git a/net-p2p/ctorrent/files/ctorrent-CVE-2009-1759.patch b/net-p2p/ctorrent/files/ctorrent-CVE-2009-1759.patch
@@ -1,364 +0,0 @@
-Patch for CVE-2009-1759.
-Source: Upstream SVN, rev 302 from the drorrent-3 branch.
-
-Index: bencode.h
-===================================================================
---- bencode.h (revision 300)
-+++ bencode.h (revision 302)
-@@ -25,7 +25,7 @@
- size_t decode_list(const char *b,size_t len,const char *keylist);
- size_t decode_rev(const char *b,size_t len,const char *keylist);
- size_t decode_query(const char *b,size_t len,const char *keylist,const char **ps,size_t *pi,int64_t *pl,int method);
--size_t decode_list2path(const char *b, size_t n, char *pathname);
-+size_t decode_list2path(const char *b, size_t n, char *pathname, size_t maxlen);
- size_t bencode_buf(const char *str,size_t len,FILE *fp);
- size_t bencode_str(const char *str, FILE *fp);
- size_t bencode_int(const uint64_t integer, FILE *fp);
-Index: bencode.cpp
-===================================================================
---- bencode.cpp (revision 300)
-+++ bencode.cpp (revision 302)
-@@ -233,22 +233,28 @@
- return bencode_end_dict_list(fp);
- }
-
--size_t decode_list2path(const char *b, size_t n, char *pathname)
-+size_t decode_list2path(const char *b, size_t n, char *pathname, size_t maxlen)
- {
- const char *pb = b;
- const char *s = (char *) 0;
-+ const char *endmax = pathname + maxlen - 1;
- size_t r,q;
-
- if( 'l' != *pb ) return 0;
- pb++;
- n--;
- if( !n ) return 0;
-- for(; n;){
-+ while( n && pathname < endmax ){
- if(!(r = buf_str(pb, n, &s, &q)) ) return 0;
-+ if( q >= maxlen ) return 0;
- memcpy(pathname, s, q);
- pathname += q;
-- pb += r; n -= r;
-- if( 'e' != *pb ){*pathname = PATH_SP, pathname++;} else break;
-+ maxlen -= q;
-+ pb += r;
-+ n -= r;
-+ if( 'e' == *pb ) break;
-+ if( pathname >= endmax ) return 0;
-+ *pathname++ = PATH_SP;
- }
- *pathname = '\0';
- return (pb - b + 1);
-Index: btfiles.cpp
-===================================================================
---- btfiles.cpp (revision 300)
-+++ btfiles.cpp (revision 302)
-@@ -449,7 +449,8 @@
- return 0;
- }
-
--int btFiles::BuildFromMI(const char *metabuf, const size_t metabuf_len, const char *saveas)
-+int btFiles::BuildFromMI(const char *metabuf, const size_t metabuf_len,
-+ const char *saveas, unsigned char exam_only)
- {
- char path[MAXPATHLEN];
- const char *s, *p;
-@@ -458,11 +459,19 @@
- int f_warned = 0;
-
- if( !decode_query(metabuf, metabuf_len, "info|name", &s, &q, (int64_t*)0,
-- QUERY_STR) || MAXPATHLEN <= q )
-+ QUERY_STR) || MAXPATHLEN <= q ){
-+ errno = EINVAL;
- return -1;
-+ }
-
- memcpy(path, s, q);
- path[q] = '\0';
-+ if( !exam_only &&
-+ (PATH_SP == path[0] || '/' == path[0] || 0==strncmp("..", path, 2)) ){
-+ CONSOLE.Warning(1, "error, unsafe path \"%s\" in torrent data", path);
-+ errno = EINVAL;
-+ return -1;
-+ }
-
- r = decode_query(metabuf, metabuf_len, "info|files", (const char**)0, &q,
- (int64_t*)0, QUERY_POS);
-@@ -471,21 +480,31 @@
- BTFILE *pbf_last = (BTFILE*) 0;
- BTFILE *pbf = (BTFILE*) 0;
- size_t dl;
-+ unsigned long nfiles = 0;
-+
- if( decode_query(metabuf,metabuf_len,"info|length",
-- (const char**) 0,(size_t*) 0,(int64_t*) 0,QUERY_LONG) )
-+ (const char**) 0,(size_t*) 0,(int64_t*) 0,QUERY_LONG) ){
-+ errno = EINVAL;
- return -1;
-+ }
-
- if( saveas ){
- m_directory = new char[strlen(saveas) + 1];
- #ifndef WINDOWS
-- if(!m_directory) return -1;
-+ if( !m_directory ){
-+ errno = ENOMEM;
-+ return -1;
-+ }
- #endif
- strcpy(m_directory,saveas);
- }else{
- int f_conv;
- char *tmpfn = new char[strlen(path)*2+5];
- #ifndef WINDOWS
-- if( !tmpfn ) return -1;
-+ if( !tmpfn ){
-+ errno = ENOMEM;
-+ return -1;
-+ }
- #endif
- if( f_conv = ConvertFilename(tmpfn, path, strlen(path)*2+5) ){
- if( arg_flg_convert_filenames ){
-@@ -493,6 +512,7 @@
- #ifndef WINDOWS
- if( !m_directory ){
- delete []tmpfn;
-+ errno = ENOMEM;
- return -1;
- }
- #endif
-@@ -507,7 +527,10 @@
- if( !f_conv || !arg_flg_convert_filenames ){
- m_directory = new char[strlen(path) + 1];
- #ifndef WINDOWS
-- if( !m_directory ) return -1;
-+ if( !m_directory ){
-+ errno = ENOMEM;
-+ return -1;
-+ }
- #endif
- strcpy(m_directory,path);
- }
-@@ -517,24 +540,50 @@
- p = metabuf + r + 1;
- q--;
- for(; q && 'e' != *p; p += dl, q -= dl){
-- if(!(dl = decode_dict(p, q, (const char*) 0)) ) return -1;
-- if( !decode_query(p, dl, "length", (const char**) 0,
-- (size_t*) 0,&t,QUERY_LONG) ) return -1;
-+ if( !(dl = decode_dict(p, q, (const char*) 0)) ||
-+ !decode_query(p, dl, "length", (const char**) 0, (size_t*) 0, &t,
-+ QUERY_LONG) ){
-+ errno = EINVAL;
-+ return -1;
-+ }
- pbf = _new_bfnode();
- #ifndef WINDOWS
-- if( !pbf ) return -1;
-+ if( !pbf ){
-+ errno = ENOMEM;
-+ return -1;
-+ }
- #endif
-+ nfiles++;
- pbf->bf_length = t;
- m_total_files_length += t;
- r = decode_query(p, dl, "path", (const char **)0, &n, (int64_t*)0,
- QUERY_POS);
-- if( !r ) return -1;
-- if(!decode_list2path(p + r, n, path)) return -1;
-+ if( !r || !decode_list2path(p + r, n, path, sizeof(path)) ){
-+ CONSOLE.Warning(1,
-+ "error, invalid path in torrent data for file %lu at offset %llu",
-+ nfiles, m_total_files_length - t);
-+ delete pbf;
-+ errno = EINVAL;
-+ return -1;
-+ }
-+ if( !exam_only &&
-+ (PATH_SP == path[0] || '/' == path[0] || 0==strncmp("..", path, 2)) ){
-+ CONSOLE.Warning(1,
-+ "error, unsafe path \"%s\" in torrent data for file %lu",
-+ path, nfiles);
-+ delete pbf;
-+ errno = EINVAL;
-+ return -1;
-+ }
-
-+
- int f_conv;
- char *tmpfn = new char[strlen(path)*2+5];
- #ifndef WINDOWS
-- if( !tmpfn ) return -1;
-+ if( !tmpfn ){
-+ errno = ENOMEM;
-+ return -1;
-+ }
- #endif
- if( f_conv = ConvertFilename(tmpfn, path, strlen(path)*2+5) ){
- if( arg_flg_convert_filenames ){
-@@ -542,6 +591,7 @@
- #ifndef WINDOWS
- if( !pbf->bf_filename ){
- delete []tmpfn;
-+ errno = ENOMEM;
- return -1;
- }
- #endif
-@@ -556,7 +606,10 @@
- if( !f_conv || !arg_flg_convert_filenames ){
- pbf->bf_filename = new char[strlen(path) + 1];
- #ifndef WINDOWS
-- if( !pbf->bf_filename ) return -1;
-+ if( !pbf->bf_filename ){
-+ errno = ENOMEM;
-+ return -1;
-+ }
- #endif
- strcpy(pbf->bf_filename, path);
- }
-@@ -564,30 +617,42 @@
- pbf_last = pbf;
- }
- }else{
-- if( !decode_query(metabuf,metabuf_len,"info|length",
-- (const char**) 0,(size_t*) 0,&t,QUERY_LONG) )
-+ if( !decode_query(metabuf,metabuf_len, "info|length",
-+ (const char**)0, (size_t*) 0, &t, QUERY_LONG) ){
-+ errno = EINVAL;
- return -1;
-+ }
- m_btfhead = _new_bfnode();
- #ifndef WINDOWS
-- if( !m_btfhead) return -1;
-+ if( !m_btfhead ){
-+ errno = ENOMEM;
-+ return -1;
-+ }
- #endif
- m_btfhead->bf_length = m_total_files_length = t;
- if( saveas ){
- m_btfhead->bf_filename = new char[strlen(saveas) + 1];
- #ifndef WINDOWS
-- if(!m_btfhead->bf_filename ) return -1;
-+ if( !m_btfhead->bf_filename ){
-+ errno = ENOMEM;
-+ return -1;
-+ }
- #endif
- strcpy(m_btfhead->bf_filename, saveas);
- }else if( arg_flg_convert_filenames ){
- char *tmpfn = new char[strlen(path)*2+5];
- #ifndef WINDOWS
-- if( !tmpfn ) return -1;
-+ if( !tmpfn ){
-+ errno = ENOMEM;
-+ return -1;
-+ }
- #endif
- ConvertFilename(tmpfn, path, strlen(path)*2+5);
- m_btfhead->bf_filename = new char[strlen(tmpfn) + 1];
- #ifndef WINDOWS
- if( !m_btfhead->bf_filename ){
- delete []tmpfn;
-+ errno = ENOMEM;
- return -1;
- }
- #endif
-@@ -596,7 +661,10 @@
- }else{
- m_btfhead->bf_filename = new char[strlen(path) + 1];
- #ifndef WINDOWS
-- if(!m_btfhead->bf_filename ) return -1;
-+ if( !m_btfhead->bf_filename ){
-+ errno = ENOMEM;
-+ return -1;
-+ }
- #endif
- strcpy(m_btfhead->bf_filename, path);
- }
-@@ -694,6 +762,32 @@
- size_t btFiles::FillMetaInfo(FILE* fp)
- {
- BTFILE *p;
-+ const char *refname, *s;
-+ char path[MAXPATHLEN];
-+
-+ refname = m_directory ? m_directory : m_btfhead->bf_filename;
-+ while( (s = strchr(refname, PATH_SP)) && *(s + 1) ){
-+ refname = s + 1;
-+ }
-+ if( m_directory && '.' == *refname ){
-+ char dir[MAXPATHLEN];
-+ if( getcwd(dir, sizeof(dir)) && 0==chdir(m_directory) ){
-+ if( getcwd(path, sizeof(path)) ){
-+ refname = path;
-+ while( (s = strchr(refname, PATH_SP)) && *(s + 1) ){
-+ refname = s + 1;
-+ }
-+ }
-+ chdir(dir);
-+ }
-+ }
-+ if( '/' == *refname || '\0' == *refname || '.' == *refname ){
-+ CONSOLE.Warning(1, "error, inappropriate file or directory name \"%s\"",
-+ m_directory ? m_directory : m_btfhead->bf_filename);
-+ errno = EINVAL;
-+ return 0;
-+ }
-+
- if( m_directory ){
- // multi files
- if( bencode_str("files", fp) != 1 ) return 0;
-@@ -715,16 +809,15 @@
- if(bencode_end_dict_list(fp) != 1 ) return 0;
-
- if(bencode_str("name", fp) != 1) return 0;
-- return bencode_str(m_directory, fp);
--
-+ return bencode_str(refname, fp);
- }else{
- if( bencode_str("length", fp) != 1 ) return 0;
- if( bencode_int(m_btfhead->bf_length, fp) != 1) return 0;
-
- if( bencode_str("name", fp) != 1 ) return 0;
-- return bencode_str(m_btfhead->bf_filename, fp);
-+ return bencode_str(refname, fp);
- }
-- return 1;
-+ return 0;
- }
-
-
-Index: btcontent.cpp
-===================================================================
---- btcontent.cpp (revision 300)
-+++ btcontent.cpp (revision 302)
-@@ -357,7 +357,11 @@
-
- cfg_req_queue_length = (m_piece_length / cfg_req_slice_size) * 2 - 1;
-
-- if( m_btfiles.BuildFromMI(b, flen, saveas) < 0 ) ERR_RETURN();
-+ if( m_btfiles.BuildFromMI(b, flen, saveas, arg_flg_exam_only) < 0 ){
-+ if( EINVAL == errno )
-+ CONSOLE.Warning(1, "Torrent metainfo file data is invalid or unusable.");
-+ ERR_RETURN();
-+ }
-
- delete []b;
- b = (char *)0;
-Index: btfiles.h
-===================================================================
---- btfiles.h (revision 300)
-+++ btfiles.h (revision 302)
-@@ -61,7 +61,7 @@
-
- int BuildFromFS(const char *pathname);
- int BuildFromMI(const char *metabuf, const size_t metabuf_len,
-- const char *saveas);
-+ const char *saveas, unsigned char exam_only);
-
- char *GetDataName() const;
- uint64_t GetTotalLength() const { return m_total_files_length; }
diff --git a/x11-terms/cool-retro-term/cool-retro-term-9999.ebuild b/x11-terms/cool-retro-term/cool-retro-term-9999.ebuild
@@ -1,37 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=6
-
-inherit qmake-utils git-r3
-
-DESCRIPTION="A good looking terminal emulator which mimics the old cathode display"
-HOMEPAGE="https://github.com/Swordfish90/cool-retro-term"
-
-EGIT_REPO_URI="git://github.com/Swordfish90/${PN}.git"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS=""
-IUSE=""
-
-DEPEND="
- dev-qt/qtquickcontrols:5[widgets]
- dev-qt/qtgraphicaleffects:5
- dev-qt/qtdeclarative:5[localstorage]
-"
-
-RDEPEND="${DEPEND}"
-
-src_configure() {
- local myeqmakeargs=(
- PREFIX="${EPREFIX}/usr"
- )
- eqmake5 ${myeqmakeargs[@]}
-}
-
-src_install() {
- emake INSTALL_ROOT="${D}" install || die
-}
-