diff options
Diffstat (limited to 'net-news/newsbeuter')
-rw-r--r-- | net-news/newsbeuter/Manifest | 1 | ||||
-rw-r--r-- | net-news/newsbeuter/files/newsbeuter-2.9-fix-mem-leak.patch | 88 | ||||
-rw-r--r-- | net-news/newsbeuter/files/newsbeuter-2.9-fix-segfault.patch | 57 | ||||
-rw-r--r-- | net-news/newsbeuter/files/newsbeuter-2.9-ncurses6.patch | 11 | ||||
-rw-r--r-- | net-news/newsbeuter/files/newsbeuter-2.9-security-fix.patch | 20 | ||||
-rw-r--r-- | net-news/newsbeuter/metadata.xml | 12 | ||||
-rw-r--r-- | net-news/newsbeuter/newsbeuter-2.9-r3.ebuild | 76 | ||||
-rw-r--r-- | net-news/newsbeuter/newsbeuter-9999.ebuild | 69 |
8 files changed, 0 insertions, 334 deletions
diff --git a/net-news/newsbeuter/Manifest b/net-news/newsbeuter/Manifest deleted file mode 100644 index 699412a1246f..000000000000 --- a/net-news/newsbeuter/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST newsbeuter-2.9.tar.gz 432763 BLAKE2B 5a875f99f0c6ece735f17e78e7292250dfd4edd0d031435fb16814055f1df8a4bae4d6b40ab41413ca8c05918965fddecfcc6dc3b99988cb141c1366bcfe98e3 SHA512 b173008c8c8d3729f8ccef3ce62645a05c1803fb842d5c0afdf9ffd4ed3726030f9c359c20bc817402a6a0ea12af742d0ae7faf9b92d52c11f420f62b430b0aa diff --git a/net-news/newsbeuter/files/newsbeuter-2.9-fix-mem-leak.patch b/net-news/newsbeuter/files/newsbeuter-2.9-fix-mem-leak.patch deleted file mode 100644 index 214d8ed9fba1..000000000000 --- a/net-news/newsbeuter/files/newsbeuter-2.9-fix-mem-leak.patch +++ /dev/null @@ -1,88 +0,0 @@ -From cdacfbde9fe3ae2489fc96d35dfb7d263ab03f50 Mon Sep 17 00:00:00 2001 -From: cpubug <admin@crtx.ru> -Date: Sun, 8 Nov 2015 13:15:25 +0300 -Subject: [PATCH] fixed a memory leak - ---- - include/rss.h | 4 ++-- - src/rss.cpp | 7 +++++-- - 2 files changed, 7 insertions(+), 4 deletions(-) - -diff --git a/include/rss.h b/include/rss.h -index bc0ef03..f8c87f2 100644 ---- a/include/rss.h -+++ b/include/rss.h -@@ -117,7 +117,7 @@ class rss_item : public matchable { - - void set_feedptr(std::shared_ptr<rss_feed> ptr); - inline std::shared_ptr<rss_feed> get_feedptr() { -- return feedptr; -+ return feedptr_.lock(); - } - - inline bool deleted() const { -@@ -167,7 +167,7 @@ class rss_item : public matchable { - bool enqueued_; - std::string flags_; - std::string oldflags_; -- std::shared_ptr<rss_feed> feedptr; -+ std::weak_ptr<rss_feed> feedptr_; - bool deleted_; - unsigned int idx; - std::string base; -diff --git a/src/rss.cpp b/src/rss.cpp -index 1687cbe..9cf0cce 100644 ---- a/src/rss.cpp -+++ b/src/rss.cpp -@@ -27,7 +27,6 @@ rss_item::rss_item(cache * c) : pubDate_(0), unread_(true), ch(c), enqueued_(fal - } - - rss_item::~rss_item() { -- feedptr.reset(); - // LOG(LOG_CRITICAL, "delete rss_item"); - } - -@@ -91,6 +90,7 @@ void rss_item::set_unread_nowrite(bool u) { - - void rss_item::set_unread_nowrite_notify(bool u, bool notify) { - unread_ = u; -+ std::shared_ptr<rss_feed> feedptr = feedptr_.lock(); - if (feedptr && notify) { - feedptr->get_item_by_guid(guid_)->set_unread_nowrite(unread_); // notify parent feed - } -@@ -100,6 +100,7 @@ void rss_item::set_unread(bool u) { - if (unread_ != u) { - bool old_u = unread_; - unread_ = u; -+ std::shared_ptr<rss_feed> feedptr = feedptr_.lock(); - if (feedptr) - feedptr->get_item_by_guid(guid_)->set_unread_nowrite(unread_); // notify parent feed - try { -@@ -243,6 +244,7 @@ bool rss_item::has_attribute(const std::string& attribname) { - return true; - - // if we have a feed, then forward the request -+ std::shared_ptr<rss_feed> feedptr = feedptr_.lock(); - if (feedptr) - return feedptr->rss_feed::has_attribute(attribname); - -@@ -276,6 +278,7 @@ std::string rss_item::get_attribute(const std::string& attribname) { - return utils::to_string<unsigned int>(idx); - - // if we have a feed, then forward the request -+ std::shared_ptr<rss_feed> feedptr = feedptr_.lock(); - if (feedptr) - return feedptr->rss_feed::get_attribute(attribname); - -@@ -563,7 +566,7 @@ void rss_feed::set_feedptrs(std::shared_ptr<rss_feed> self) { - } - - void rss_item::set_feedptr(std::shared_ptr<rss_feed> ptr) { -- feedptr = ptr; -+ feedptr_ = std::weak_ptr<rss_feed>(ptr); - } - - std::string rss_feed::get_status() { --- -2.9.3 - diff --git a/net-news/newsbeuter/files/newsbeuter-2.9-fix-segfault.patch b/net-news/newsbeuter/files/newsbeuter-2.9-fix-segfault.patch deleted file mode 100644 index aa6d1b2a817d..000000000000 --- a/net-news/newsbeuter/files/newsbeuter-2.9-fix-segfault.patch +++ /dev/null @@ -1,57 +0,0 @@ -diff --git a/include/poddlthread.h b/include/poddlthread.h -index a10b9e7..cf0f1da 100644 ---- a/include/poddlthread.h -+++ b/include/poddlthread.h -@@ -7,6 +7,7 @@ - - #include <sys/time.h> - #include <time.h> -+#include <memory> - - #include <configcontainer.h> - -@@ -24,7 +25,7 @@ class poddlthread { - private: - void mkdir_p(const char * file); - download * dl; -- std::ofstream *f; -+ std::shared_ptr<std::ofstream> f; - timeval tv1; - timeval tv2; - size_t bytecount; -diff --git a/src/pb_controller.cpp b/src/pb_controller.cpp -index 09b5e89..da8ffcb 100644 ---- a/src/pb_controller.cpp -+++ b/src/pb_controller.cpp -@@ -287,6 +287,7 @@ void pb_controller::start_downloads() { - if (it->status() == DL_QUEUED) { - std::thread t {poddlthread(&(*it), cfg)}; - --dl2start; -+ t.detach(); - } - } - } -diff --git a/src/pb_view.cpp b/src/pb_view.cpp -index fb61c72..f3cb478 100644 ---- a/src/pb_view.cpp -+++ b/src/pb_view.cpp -@@ -111,6 +111,7 @@ void pb_view::run(bool auto_download) { - if (idx != -1) { - if (ctrl->downloads()[idx].status() != DL_DOWNLOADING) { - std::thread t {poddlthread(&ctrl->downloads()[idx], ctrl->get_cfgcont())}; -+ t.detach(); - } - } - } -diff --git a/src/poddlthread.cpp b/src/poddlthread.cpp -index 583481e..3a1b390 100644 ---- a/src/poddlthread.cpp -+++ b/src/poddlthread.cpp -@@ -22,7 +22,6 @@ poddlthread::poddlthread(download * dl_, newsbeuter::configcontainer * c) : dl(d - } - - poddlthread::~poddlthread() { -- delete f; - } - - void poddlthread::operator()() { diff --git a/net-news/newsbeuter/files/newsbeuter-2.9-ncurses6.patch b/net-news/newsbeuter/files/newsbeuter-2.9-ncurses6.patch deleted file mode 100644 index f645d7c53fcb..000000000000 --- a/net-news/newsbeuter/files/newsbeuter-2.9-ncurses6.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/config.sh -+++ b/config.sh -@@ -110,7 +110,7 @@ - if [ `uname -s` = "Darwin" ]; then - check_custom "ncurses5.4" "ncurses5.4-config" || fail "ncurses5.4" - elif [ `uname -s` != "OpenBSD" ]; then -- check_custom "ncursesw5" "ncursesw5-config" || fail "ncursesw" -+ check_pkg "ncursesw" || fail "ncursesw" - fi - check_ssl_implementation - all_aboard_the_fail_boat diff --git a/net-news/newsbeuter/files/newsbeuter-2.9-security-fix.patch b/net-news/newsbeuter/files/newsbeuter-2.9-security-fix.patch deleted file mode 100644 index 5e7b39a5f20f..000000000000 --- a/net-news/newsbeuter/files/newsbeuter-2.9-security-fix.patch +++ /dev/null @@ -1,20 +0,0 @@ -Newsbeuter didn't properly shell-escape the arguments passed to bookmarking -command, which allows a remote attacker to perform remote code execution by -crafting an RSS item whose title and/or URL contain something interpretable by -the shell (most notably subshell invocations.) - ---- a/src/controller.cpp -+++ b/src/controller.cpp -@@ -1275,9 +1275,10 @@ std::string controller::bookmark(const std::string& url, const std::string& titl - std::string bookmark_cmd = cfg.get_configvalue("bookmark-cmd"); - bool is_interactive = cfg.get_configvalue_as_bool("bookmark-interactive"); - if (bookmark_cmd.length() > 0) { -- std::string cmdline = utils::strprintf("%s '%s' %s %s", -+ std::string cmdline = utils::strprintf("%s '%s' '%s' '%s'", - bookmark_cmd.c_str(), utils::replace_all(url,"'", "%27").c_str(), -- stfl::quote(title).c_str(), stfl::quote(description).c_str()); -+ utils::replace_all(title,"'", "%27").c_str(), -+ utils::replace_all(description,"'", "%27").c_str()); - - LOG(LOG_DEBUG, "controller::bookmark: cmd = %s", cmdline.c_str()); - diff --git a/net-news/newsbeuter/metadata.xml b/net-news/newsbeuter/metadata.xml deleted file mode 100644 index 8a4fa59c9afd..000000000000 --- a/net-news/newsbeuter/metadata.xml +++ /dev/null @@ -1,12 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> -<pkgmetadata> - <maintainer type="person"> - <email>radhermit@gentoo.org</email> - <name>Tim Harder</name> - </maintainer> - <longdescription lang="en"> - newsbeuter is an RSS feed reader for the text console. It is designed - to run Unix-like operating systems such as Linux. - </longdescription> -</pkgmetadata> diff --git a/net-news/newsbeuter/newsbeuter-2.9-r3.ebuild b/net-news/newsbeuter/newsbeuter-2.9-r3.ebuild deleted file mode 100644 index 85de96fbfdf1..000000000000 --- a/net-news/newsbeuter/newsbeuter-2.9-r3.ebuild +++ /dev/null @@ -1,76 +0,0 @@ -# Copyright 1999-2016 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -if [[ ${PV} == 9999 ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/akrennmair/newsbeuter.git" -else - KEYWORDS="amd64 ~ppc x86" - SRC_URI="http://www.newsbeuter.org/downloads/${P}.tar.gz" -fi - -inherit toolchain-funcs - -DESCRIPTION="A RSS/Atom feed reader for the text console" -HOMEPAGE="http://www.newsbeuter.org/index.html" - -LICENSE="MIT" -SLOT="0" -IUSE="test" - -RDEPEND=" - >=dev-db/sqlite-3.5:3 - >=dev-libs/stfl-0.21 - >=net-misc/curl-7.18.0 - >=dev-libs/json-c-0.11:= - dev-libs/libxml2 - sys-libs/ncurses:0=[unicode] -" -DEPEND="${RDEPEND} - dev-lang/perl - virtual/pkgconfig - sys-devel/gettext - test? ( - dev-libs/boost - sys-devel/bc - ) -" -[[ ${PV} == 9999 ]] && DEPEND+=" app-text/asciidoc" - -# tests require network access -RESTRICT="test" - -PATCHES=( - "${FILESDIR}"/${PN}-2.9-ncurses6.patch - "${FILESDIR}"/${PN}-2.9-fix-mem-leak.patch - "${FILESDIR}"/${PN}-2.9-fix-segfault.patch - "${FILESDIR}"/${PN}-2.9-security-fix.patch -) - -src_prepare() { - default - sed -i 's:-ggdb::' Makefile || die -} - -src_configure() { - ./config.sh || die -} - -src_compile() { - emake prefix="/usr" CXX="$(tc-getCXX)" AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" - [[ ${PV} == 9999 ]] && emake doc -} - -src_test() { - emake test - # Tests fail if in ${S} rather than in ${S}/test - cd "${S}"/test || die - ./test || die -} - -src_install() { - emake DESTDIR="${D}" prefix="/usr" docdir="/usr/share/doc/${PF}" install - dodoc AUTHORS README CHANGES -} diff --git a/net-news/newsbeuter/newsbeuter-9999.ebuild b/net-news/newsbeuter/newsbeuter-9999.ebuild deleted file mode 100644 index 90c3b59ea882..000000000000 --- a/net-news/newsbeuter/newsbeuter-9999.ebuild +++ /dev/null @@ -1,69 +0,0 @@ -# Copyright 1999-2016 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -if [[ ${PV} == 9999 ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/akrennmair/newsbeuter.git" -else - KEYWORDS="~amd64 ~ppc ~x86" - SRC_URI="http://www.newsbeuter.org/downloads/${P}.tar.gz" -fi - -inherit toolchain-funcs - -DESCRIPTION="A RSS/Atom feed reader for the text console" -HOMEPAGE="http://www.newsbeuter.org/index.html" - -LICENSE="MIT" -SLOT="0" -IUSE="test" - -RDEPEND=" - >=dev-db/sqlite-3.5:3 - >=dev-libs/stfl-0.21 - >=net-misc/curl-7.18.0 - >=dev-libs/json-c-0.11:= - dev-libs/libxml2 - sys-libs/ncurses:0=[unicode] -" -DEPEND="${RDEPEND} - dev-lang/perl - virtual/pkgconfig - sys-devel/gettext - test? ( - dev-libs/boost - sys-devel/bc - ) -" -[[ ${PV} == 9999 ]] && DEPEND+=" app-text/asciidoc" - -# tests require network access -RESTRICT="test" - -src_prepare() { - default - sed -i 's:-ggdb::' Makefile || die -} - -src_configure() { - ./config.sh || die -} - -src_compile() { - emake prefix="/usr" CXX="$(tc-getCXX)" AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" - [[ ${PV} == 9999 ]] && emake doc -} - -src_test() { - emake test - # Tests fail if in ${S} rather than in ${S}/test - cd "${S}"/test || die - ./test || die -} - -src_install() { - emake DESTDIR="${D}" prefix="/usr" docdir="/usr/share/doc/${PF}" install - dodoc AUTHORS CHANGES README.md TODO -} |