From 3a8a81b986e3e554b3c76bff62bc60f1386c472f Mon Sep 17 00:00:00 2001 From: songnannan Date: Fri, 10 Jan 2020 20:09:07 +0800 Subject: [PATCH] optimization the spec --- 0002-Use-proper-datatypes-for-long-long.patch | 84 ------------------- 0002-chmod-x-xml-rpc-api2txt.patch | 16 ---- 0003-allow-30x-redirections.patch | 27 ------ xmlrpc-c.spec | 15 ++-- 4 files changed, 9 insertions(+), 133 deletions(-) delete mode 100644 0002-Use-proper-datatypes-for-long-long.patch delete mode 100644 0002-chmod-x-xml-rpc-api2txt.patch delete mode 100644 0003-allow-30x-redirections.patch diff --git a/0002-Use-proper-datatypes-for-long-long.patch b/0002-Use-proper-datatypes-for-long-long.patch deleted file mode 100644 index 25c7efe..0000000 --- a/0002-Use-proper-datatypes-for-long-long.patch +++ /dev/null @@ -1,84 +0,0 @@ -From aca713786debd68c81a823c5989afb3de82da45b Mon Sep 17 00:00:00 2001 -From: Enrico Scholz -Date: Sat, 5 Apr 2008 11:41:34 +0200 -Subject: [PATCH 2/3] Use proper datatypes for 'long long' - -xmlrpc-c uses 'long long' at some places (e.g. in printf -statements with PRId64) under the assumption that it has a -width of exactly 64 bits. - -On 64 bit machines 'long long' has a width of 128 bit and -will cause overhead both in memory and cpu usage there. As -'long long' is used only to handle datatypes, the patch -uses a plain 64 integer type there. - -It is arguable whether 'int_least64_t' (and 'int_least32_t') -would be a better choice for 'int64_t' (and 'int32_t'), but -for now, the patch uses datatypes with exact widths. ---- - include/xmlrpc-c/base.h | 7 ++++--- - lib/libutil/string_number.c | 1 + - src/cpp/param_list.cpp | 2 +- - 3 files changed, 6 insertions(+), 4 deletions(-) - -diff --git a/include/xmlrpc-c/base.h b/include/xmlrpc-c/base.h -index e74e2c5..90f2c91 100644 ---- a/include/xmlrpc-c/base.h -+++ b/include/xmlrpc-c/base.h -@@ -5,6 +5,7 @@ - - #include - #include -+#include - #include - #include /* For XMLRPC_DLLEXPORT */ - #include -@@ -73,9 +74,9 @@ xmlrpc_version(unsigned int * const majorP, - - typedef signed int xmlrpc_int; - /* An integer of the type defined by XML-RPC ; i.e. 32 bit */ --typedef XMLRPC_INT32 xmlrpc_int32; -+typedef int32_t xmlrpc_int32; - /* An integer of the type defined by XML-RPC ; i.e. 32 bit */ --typedef XMLRPC_INT64 xmlrpc_int64; -+typedef int64_t xmlrpc_int64; - /* An integer of the type defined by "XML-RPC" ; i.e. 64 bit */ - typedef int xmlrpc_bool; - /* A boolean (of the type defined by XML-RPC , but there's -@@ -112,7 +113,7 @@ typedef int xmlrpc_socket; - #define XMLRPC_INT32_MAX 0x7fffffff - #define XMLRPC_INT32_MIN (-XMLRPC_INT32_MAX - 1) - --#define XMLRPC_INT64_MAX 0x7fffffffffffffffll -+#define XMLRPC_INT64_MAX ((xmlrpc_int64)0x7fffffffffffffffll) - #define XMLRPC_INT64_MIN (-XMLRPC_INT64_MAX - 1) - - -diff --git a/lib/libutil/string_number.c b/lib/libutil/string_number.c -index 1c284af..a7e78ad 100644 ---- a/lib/libutil/string_number.c -+++ b/lib/libutil/string_number.c -@@ -6,6 +6,7 @@ - ============================================================================*/ - #include - #include -+#include - #include - - #include -diff --git a/src/cpp/param_list.cpp b/src/cpp/param_list.cpp -index 1f7ae41..60f7df9 100644 ---- a/src/cpp/param_list.cpp -+++ b/src/cpp/param_list.cpp -@@ -277,7 +277,7 @@ paramList::getI8(unsigned int const paramNumber, - throw(fault("Parameter that is supposed to be 64-bit integer is not", - fault::CODE_TYPE)); - -- long long const longlongvalue(static_cast( -+ xmlrpc_int64 const longlongvalue(static_cast( - value_i8(this->paramVector[paramNumber]))); - - if (longlongvalue < minimum) --- -2.13.1 - diff --git a/0002-chmod-x-xml-rpc-api2txt.patch b/0002-chmod-x-xml-rpc-api2txt.patch deleted file mode 100644 index dd03ca8..0000000 --- a/0002-chmod-x-xml-rpc-api2txt.patch +++ /dev/null @@ -1,16 +0,0 @@ -From d97ec6e652690a321d7ce8c81aa30f87d9c0de8f Mon Sep 17 00:00:00 2001 -From: Igor Gnatenko -Date: Mon, 19 Dec 2016 21:33:47 +0100 -Subject: [PATCH 2/2] chmod +x xml-rpc-api2txt - -It's script which is installing into $bindir, so it must be executable. - -Signed-off-by: Igor Gnatenko ---- - tools/xml-rpc-api2txt/xml-rpc-api2txt | 0 - 1 file changed, 0 insertions(+), 0 deletions(-) - mode change 100644 => 100755 tools/xml-rpc-api2txt/xml-rpc-api2txt - -diff --git a/tools/xml-rpc-api2txt/xml-rpc-api2txt b/tools/xml-rpc-api2txt/xml-rpc-api2txt -old mode 100644 -new mode 100755 diff --git a/0003-allow-30x-redirections.patch b/0003-allow-30x-redirections.patch deleted file mode 100644 index 7446fa6..0000000 --- a/0003-allow-30x-redirections.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 9bb040a9ae29e1b5afcb674c74f107114b316818 Mon Sep 17 00:00:00 2001 -From: Enrico Scholz -Date: Thu, 29 Jul 2010 19:25:32 +0200 -Subject: [PATCH 3/3] allow 30x redirections - ---- - lib/curl_transport/curltransaction.c | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/lib/curl_transport/curltransaction.c b/lib/curl_transport/curltransaction.c -index f0aafae..b5392a9 100644 ---- a/lib/curl_transport/curltransaction.c -+++ b/lib/curl_transport/curltransaction.c -@@ -671,6 +671,10 @@ setupCurlSession(xmlrpc_env * const envP, - curl_easy_setopt(curlSessionP, CURLOPT_POST, 1); - curl_easy_setopt(curlSessionP, CURLOPT_URL, transP->serverUrl); - -+ curl_easy_setopt(curlSessionP, CURLOPT_FOLLOWLOCATION, 1); -+ curl_easy_setopt(curlSessionP, CURLOPT_MAXREDIRS, (long)10); -+ curl_easy_setopt(curlSessionP, CURLOPT_POSTREDIR, CURL_REDIR_POST_ALL); -+ - XMLRPC_MEMBLOCK_APPEND(char, envP, transP->postDataP, "\0", 1); - if (!envP->fault_occurred) { - curl_easy_setopt(curlSessionP, CURLOPT_POSTFIELDS, --- -2.13.1 - diff --git a/xmlrpc-c.spec b/xmlrpc-c.spec index f1e35a3..f9efea0 100644 --- a/xmlrpc-c.spec +++ b/xmlrpc-c.spec @@ -2,18 +2,15 @@ Name: xmlrpc-c Version: 1.51.03 -Release: 1 +Release: 2 Summary: Library implementing XML-based Remote Procedure Calls License: BSD and MIT URL: http://xmlrpc-c.sourceforge.net/ Source0: https://sourceforge.net/projects/xmlrpc-c/files/Xmlrpc-c%20Super%20Stable/1.51.03/xmlrpc-c-1.51.03.tgz Patch0001: 0001-xmlrpc_server_abyss-use-va_args-properly.patch -Patch0002: 0002-Use-proper-datatypes-for-long-long.patch -Patch0003: 0003-allow-30x-redirections.patch -Patch0004: 0001-Remove-trace-statements-accidentally-committed-with-.patch -Patch0005: 0001-add-meson-buildsystem-definitions.patch -Patch0006: 0002-chmod-x-xml-rpc-api2txt.patch +Patch0002: 0001-Remove-trace-statements-accidentally-committed-with-.patch +Patch0003: 0001-add-meson-buildsystem-definitions.patch BuildRequires: git-core meson >= 0.36.0 gcc gcc-c++ ncurses-devel BuildRequires: libcurl-devel readline-devel pkgconfig(openssl) @@ -87,6 +84,12 @@ Header files for xmlrpc-c. %{_mandir}/man1/* %changelog +* Fri Jan 10 2020 openEuler Buildteam - 1.51.03-2 +- Type:NA +- ID:NA +- SUG:NA +- DESC:optimization the spec + * Tue Dec 31 2019 openEuler Buildteam - 1.51.03-1 - Type:NA - ID:NA