parlay

yet another gentoo overlay
git clone https://git.parazyd.org/parlay
Log | Files | Refs | README

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:
MREADME.md | 6++++--
Dnet-libs/rb_libtorrent/Manifest | 2--
Dnet-libs/rb_libtorrent/rb_libtorrent-0.16.17.ebuild | 82-------------------------------------------------------------------------------
Dnet-libs/rb_libtorrent/rb_libtorrent-1.0.9-r1.ebuild | 106-------------------------------------------------------------------------------
Dnet-p2p/ctorrent/Manifest | 1-
Dnet-p2p/ctorrent/ctorrent-3.3.2-r3.ebuild | 33---------------------------------
Dnet-p2p/ctorrent/files/ctorrent-3.3.2-empty-path-components.patch | 38--------------------------------------
Dnet-p2p/ctorrent/files/ctorrent-3.3.2-negative-ints.patch | 17-----------------
Dnet-p2p/ctorrent/files/ctorrent-CVE-2009-1759.patch | 364-------------------------------------------------------------------------------
Dx11-terms/cool-retro-term/cool-retro-term-9999.ebuild | 37-------------------------------------
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 -} -