Hello community,

here is the log from the commit of package newsbeuter for openSUSE:Factory 
checked in at 2018-01-20 11:27:06
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/newsbeuter (Old)
 and      /work/SRC/openSUSE:Factory/.newsbeuter.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "newsbeuter"

Sat Jan 20 11:27:06 2018 rev:15 rq:567458 version:2.9

Changes:
--------
--- /work/SRC/openSUSE:Factory/newsbeuter/newsbeuter.changes    2017-05-24 
16:51:04.596563386 +0200
+++ /work/SRC/openSUSE:Factory/.newsbeuter.new/newsbeuter.changes       
2018-01-20 11:27:07.955193754 +0100
@@ -1,0 +2,12 @@
+Thu Jan 18 11:16:05 UTC 2018 - mvet...@suse.com
+
+- Get rid of json-c is_error() because it is deprecated in the
+  library. Fixes build on Tumbleweed.
+  * Add newsbeuter-2.9_json-c_is_error.patch
+
+-------------------------------------------------------------------
+Thu Jan 18 10:57:57 UTC 2018 - mvet...@suse.com
+
+- bsc#1054578: Add newsbeuter-2.9-CVE-2017-12904.patch
+
+-------------------------------------------------------------------

New:
----
  newsbeuter-2.9-CVE-2017-12904.patch
  newsbeuter-2.9_json-c_is_error.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ newsbeuter.spec ++++++
--- /var/tmp/diff_new_pack.mG1jyP/_old  2018-01-20 11:27:08.755156343 +0100
+++ /var/tmp/diff_new_pack.mG1jyP/_new  2018-01-20 11:27:08.759156157 +0100
@@ -29,6 +29,10 @@
 Patch3:         newsbeuter-ncurses6.patch
 # PATCH-FIX-UPSTREAM bmwiedemann -- 
https://github.com/akrennmair/newsbeuter/pull/550
 Patch4:         reproducible.patch
+# PATCH-FIX-UPSTREAM mvetter -- 
https://github.com/akrennmair/newsbeuter/commit/96e9506ae9e252c548665152d1b8968297128307
+Patch5:         newsbeuter-2.9-CVE-2017-12904.patch
+# PATCH-FIX-UPSTREAM mvetter -- 
https://github.com/akrennmair/newsbeuter/commit/a21139043efb3b875f3d76cddf6bf90f5cf7642c
+Patch6:         newsbeuter-2.9_json-c_is_error.patch
 Url:            http://www.newsbeuter.org
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  libstfl-devel
@@ -63,6 +67,8 @@
 %patch3 -p1
 %endif
 %patch4 -p1
+%patch5 -p1
+%patch6 -p1
 
 %build
 ./config.sh

++++++ newsbeuter-2.9-CVE-2017-12904.patch ++++++
diff -urEbwB newsbeuter-2.9/src/controller.cpp 
newsbeuter-2.9.new/src/controller.cpp
--- newsbeuter-2.9/src/controller.cpp   2015-02-19 11:56:59.000000000 +0100
+++ newsbeuter-2.9.new/src/controller.cpp       2018-01-18 11:49:48.479317816 
+0100
@@ -1275,9 +1275,11 @@
        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",
-                                                      bookmark_cmd.c_str(), 
utils::replace_all(url,"'", "%27").c_str(),
-                                                      
stfl::quote(title).c_str(), stfl::quote(description).c_str());
+               std::string cmdline = utils::strprintf("%s '%s' '%s' '%s'",
+                                                                               
                bookmark_cmd.c_str(),
+                                                                               
                utils::replace_all(url,"'", "%27").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());
 
++++++ newsbeuter-2.9_json-c_is_error.patch ++++++
Adapted from: 
https://github.com/akrennmair/newsbeuter/commit/a21139043efb3b875f3d76cddf6bf90f5cf7642c
Index: newsbeuter-2.9/src/feedhq_api.cpp
===================================================================
--- newsbeuter-2.9.orig/src/feedhq_api.cpp
+++ newsbeuter-2.9/src/feedhq_api.cpp
@@ -132,7 +132,7 @@ std::vector<tagged_feedurl> feedhq_api::
        // TODO: parse result
 
        struct json_object * reply = json_tokener_parse(result.c_str());
-       if (is_error(reply)) {
+       if (reply == NULL) {
                LOG(LOG_ERROR, "feedhq_api::get_subscribed_urls: failed to 
parse response as JSON.");
                return urls;
        }
Index: newsbeuter-2.9/src/oldreader_api.cpp
===================================================================
--- newsbeuter-2.9.orig/src/oldreader_api.cpp
+++ newsbeuter-2.9/src/oldreader_api.cpp
@@ -134,7 +134,7 @@ std::vector<tagged_feedurl> oldreader_ap
        // TODO: parse result
 
        struct json_object * reply = json_tokener_parse(result.c_str());
-       if (is_error(reply)) {
+       if (reply == NULL) {
                LOG(LOG_ERROR, "oldreader_api::get_subscribed_urls: failed to 
parse response as JSON.");
                return urls;
        }
Index: newsbeuter-2.9/src/ttrss_api.cpp
===================================================================
--- newsbeuter-2.9.orig/src/ttrss_api.cpp
+++ newsbeuter-2.9/src/ttrss_api.cpp
@@ -113,19 +113,19 @@ struct json_object * ttrss_api::run_op(c
        LOG(LOG_DEBUG, "ttrss_api::run_op(%s,...): post=%s reply = %s", 
op.c_str(), req_data.c_str(), result.c_str());
 
        struct json_object * reply = json_tokener_parse(result.c_str());
-       if (is_error(reply)) {
+       if (reply == NULL) {
                LOG(LOG_ERROR, "ttrss_api::run_op: reply failed to parse: %s", 
result.c_str());
                return NULL;
        }
 
        struct json_object * status = json_object_object_get(reply, "status");
-       if (is_error(status)) {
+       if (status == NULL) {
                LOG(LOG_ERROR, "ttrss_api::run_op: no status code");
                return NULL;
        }
 
        struct json_object * content = json_object_object_get(reply, "content");
-       if (is_error(content)) {
+       if (content == NULL) {
                LOG(LOG_ERROR, "ttrss_api::run_op: no content part in answer 
from server");
                return NULL;
        }

Reply via email to