From: Laszlo Boszormenyi (GCS) Date: Sun, 28 Aug 2022 10:41:21 +0000 (+0100) Subject: Import thrift_0.16.0-6.debian.tar.xz X-Git-Tag: archive/raspbian/0.16.0-6+rpi1^2~18^2 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=10d215b060c1f297a80b4113113a642b806ffed1;p=thrift.git Import thrift_0.16.0-6.debian.tar.xz [dgit import tarball thrift 0.16.0-6 thrift_0.16.0-6.debian.tar.xz] --- 10d215b060c1f297a80b4113113a642b806ffed1 diff --git a/README.md b/README.md new file mode 100644 index 0000000..8ebfeea --- /dev/null +++ b/README.md @@ -0,0 +1,41 @@ +## Some tips on Debian Packaging + +- Debian New Maintainers' Guide [http://www.debian.org/doc/debian-policy/] +- Debian Policy Manual [http://www.debian.org/doc/manuals/maint-guide/] +- Machine-readable debian/copyright file [http://dep.debian.net/deps/dep5/] +- DebSrc 3.0 guidelines [https://wiki.debian.org/Projects/DebSrc3.0] + + +## Build using dpkg-buildpackage: + +```bash +$ dpkg-buildpackage -d -tc + -d # do not check build dependencies and conflicts. + -tc # clean source tree when finished. +``` + + +## Update changelog: + +```bash +$ date -R +``` + +One can also install `devscripts` package and run: + +```bash +$ dch -i +``` + + +## Check packages: + +```bash +$ dpkg -c *.deb +$ lintian *.deb +``` + + +## TODO + +Make it perfect! diff --git a/changelog b/changelog new file mode 100644 index 0000000..95d7346 --- /dev/null +++ b/changelog @@ -0,0 +1,227 @@ +thrift (0.16.0-6) unstable; urgency=medium + + * Replace outdated TLS test keys (closes: #1010120, #1015049). + + -- Laszlo Boszormenyi (GCS) Sun, 28 Aug 2022 12:41:21 +0200 + +thrift (0.16.0-5) unstable; urgency=medium + + * Disable IPv4 tests for not working on IPv6 only hosts (closes: #1011011). + + -- Laszlo Boszormenyi (GCS) Sun, 15 May 2022 14:42:11 +0200 + +thrift (0.16.0-4) unstable; urgency=medium + + * Specify libs as section for libthrift-0.16.0 . + * Backport upstream fix for out of memory when use TNonblockingServer. + * Backport upstream fix THRIFT-5449: use poll instead of select in Python + TNonblockingServer if available. + + -- Laszlo Boszormenyi (GCS) Tue, 26 Apr 2022 17:14:22 +0200 + +thrift (0.16.0-3) unstable; urgency=medium + + * Upload to Sid. + * This release contains fix for Python 3.10 (closes: #1008810). + + -- Laszlo Boszormenyi (GCS) Tue, 19 Apr 2022 17:08:21 +0200 + +thrift (0.16.0-2) experimental; urgency=medium + + * Run Go tests without non-portable race detector. + * Disable tests that seem to be incompatible with newer GLib versions. + + -- Laszlo Boszormenyi (GCS) Fri, 01 Apr 2022 17:14:34 +0200 + +thrift (0.16.0-1) experimental; urgency=medium + + * New major upstream release (closes: #1008458): + - fixes CVE-2020-13949: potential DoS when processing untrusted payloads + (closes: #988949). + * Rename related packages to -0.16.0 suffix. + + + -- Laszlo Boszormenyi (GCS) Mon, 28 Mar 2022 01:34:46 +0200 + +thrift (0.13.0-7) unstable; urgency=medium + + * Remove python3-thrift-dbg package (closes: #994384). + * Update Standards-Version to 4.6.0 . + * Sync with Ubuntu. + + [ Lucas Kanashiro ] + * d/p/THRIFT-5318_support_php8.patch: Backport upstream patch to add support + for PHP 8 (LP: #1940473). + * d/rules: export GO111MODULE=off, this will make go.mod file not mandatory. + + -- Laszlo Boszormenyi (GCS) Fri, 24 Sep 2021 17:18:04 +0200 + +thrift (0.13.0-6) unstable; urgency=medium + + * Backport upstream fix for THRIFT-5322: Go compact_protocol allocating + unreasonable buffer size. + + -- Laszlo Boszormenyi (GCS) Sun, 14 Feb 2021 19:50:04 +0100 + +thrift (0.13.0-5) unstable; urgency=medium + + * Update Standards-Version to 4.5.0 . + + [ Adrian Bunk ] + * Link with libatomic on ARMel and MIPSel (closes: #972948). + + -- Laszlo Boszormenyi (GCS) Mon, 26 Oct 2020 18:01:44 +0100 + +thrift (0.13.0-4) unstable; urgency=medium + + * Add XS-Go-Import-Path field. + * Correct installed Go source files location. + * Update supported Ruby version (closes: #950742). + * Remove unneeded composer build dependency (closes: #970587). + * Don't remove needed config.h header (closes: #972225). + + -- Laszlo Boszormenyi (GCS) Thu, 15 Oct 2020 17:07:25 +0200 + +thrift (0.13.0-3) unstable; urgency=medium + + * Backport upstream fix for wrong int to string conversions in Go testing + (closes: #971192). + + -- Laszlo Boszormenyi (GCS) Sun, 27 Sep 2020 21:31:25 +0200 + +thrift (0.13.0-2) unstable; urgency=medium + + * Link C++ tests with atomic. + * Upload to Sid. + + -- Laszlo Boszormenyi (GCS) Sun, 08 Dec 2019 12:24:18 +0000 + +thrift (0.13.0-1) experimental; urgency=high + + * New major upstream release: + - fixes CVE-2019-0205: endless loop when feed with specific input data, + - fixes CVE-2019-0210: Go server may panic when feed with invalid input + data, + - removed compiler plug-in mechanism (closes: #942337). + * Rework upstream distclean process (closes: #943653). + + -- Laszlo Boszormenyi (GCS) Sun, 01 Dec 2019 10:46:55 +0000 + +thrift (0.12.0-1) experimental; urgency=medium + + * New major upstream release. + * Rename related packages to -0.12.0 suffix. + * Remove Python 2 bindings (closes: #938662). + * Update debhelper level to 11 . + + -- Laszlo Boszormenyi (GCS) Sat, 05 Oct 2019 08:58:11 +0000 + +thrift (0.11.0-6) unstable; urgency=medium + + * Update copyright file (closes: #935713). + * Update Python packaging bits (closes: #935715). + + -- Laszlo Boszormenyi (GCS) Sun, 25 Aug 2019 19:18:04 +0000 + +thrift (0.11.0-5) experimental; urgency=medium + + * Fix Python 3 packaging. + * Sync with Ubuntu. + * Update Standards-Version to 4.4.0 . + + [ Adam Cecile ] + * Build python3 package (closes: #913724). + + [ Gianfranco Costamagna ] + * Export HOME to make the build happy (closes: #935620). + * Fix another failure due to new go with upstream patch. + + -- Laszlo Boszormenyi (GCS) Sat, 24 Aug 2019 15:47:34 +0000 + +thrift (0.11.0-4) unstable; urgency=medium + + * Backport upstream security fix for CVE-2018-11798: Node.js Filesever + webroot fixed path (closes: #918734). + * Update Standards-Version to 4.3.0 . + + -- Laszlo Boszormenyi (GCS) Tue, 08 Jan 2019 21:31:07 +0000 + +thrift (0.11.0-3) unstable; urgency=medium + + * Build with latest PHP package version. + * Provide PHP package without version number. + * Upload to Sid (closes: #835294). + + -- Laszlo Boszormenyi (GCS) Sat, 27 Oct 2018 20:57:18 +0000 + +thrift (0.11.0-2) experimental; urgency=medium + + * Disable failing Python self-tests to fix mips and s390x FTBFS. + + -- Laszlo Boszormenyi (GCS) Fri, 12 Oct 2018 00:12:09 +0000 + +thrift (0.11.0-1) experimental; urgency=medium + + * New major upstream release. + * Fixes CVE-2016-5397: command injection in format_go_output + (closes: #894577). + * Fix FTBFS problems (closes: #909067). + * Rename related packages to -0.11.0 suffix. + * Build with PHP 7.2 version. + * Remove libmaven-ant-tasks-java build dependency (closes: #877126). + * Update patches. + * Use auto-generated debug packages. + * Change package priority to optional. + * Update Standards-Version to 4.2.1 . + + -- Laszlo Boszormenyi (GCS) Thu, 20 Sep 2018 18:16:39 +0000 + +thrift (0.10.0-1) experimental; urgency=low + + * New upstream release. + * Rename related packages to -0.10.0 suffix. + * Correct Perl install directory (closes: #859128). + * Fix building with Boost 1.62 version. + * Only build Go bindings on supported architectures. + * Add python{,3}-six build dependency for testing support. + * Disable failing TSimpleServer testing for Python. + + -- Laszlo Boszormenyi (GCS) Sat, 13 May 2017 08:15:21 +0000 + +thrift (0.9.3-2) experimental; urgency=low + + * Build Go bindings. + * Update to build with Java Servlet API 3.1 . + * Fix build with GCC 6.2 . + * Fix build with Boost 1.61 . + * Update Standards-Version to 3.9.8 . + + -- Laszlo Boszormenyi (GCS) Sun, 17 Jul 2016 19:31:46 +0000 + +thrift (0.9.3-1) experimental; urgency=low + + * New upstream release. + * Patch SSLv3 support to use SSLv23_method function (closes: #804668). + * Specify Qt version to build and move to version 5 of the library. + * This release contains TestValidators.thrift , remove its patch. + * Add debug package for Pyton bindings. + * Update OpenJDK build dependency to version 8. + * Update Perl build dependency. + * Update Standards-Version to 3.9.7 . + * Keep rebuildable. + + -- Laszlo Boszormenyi (GCS) Sun, 20 Mar 2016 11:10:27 +0000 + +thrift (0.9.2-2) experimental; urgency=low + + * Specify openjdk-7-jdk to build with. + * Disable parallel testing. + * Update Boost build dependency to be version 1.58.0 at least. + + -- Laszlo Boszormenyi (GCS) Mon, 03 Aug 2015 20:09:47 +0200 + +thrift (0.9.2-1) experimental; urgency=low + + * Use monolithic upstream source for Thrift packaging (closes: #792097). + + -- Laszlo Boszormenyi (GCS) Sat, 21 Mar 2015 17:45:29 +0000 diff --git a/control b/control new file mode 100644 index 0000000..161b969 --- /dev/null +++ b/control @@ -0,0 +1,193 @@ +Source: thrift +Section: devel +Priority: optional +Maintainer: Laszlo Boszormenyi (GCS) +Build-Depends: debhelper-compat (= 11), dh-python, + dh-golang, golang-golang-x-net-dev, + gem2deb, + bison, flex, + libboost-all-dev, libevent-dev, zlib1g-dev, + libssl-dev, + libglib2.0-dev, + qtbase5-dev, + python3-all-dev, python3-six, + golang-go, golang-github-golang-mock-dev, + pkg-php-tools (>= 1.14~), php-dev, phpunit, php-codesniffer, + perl, libbit-vector-perl, libclass-accessor-perl, libtest-exception-perl, +# openjdk-11-jdk, javahelper, maven-debian-helper (>= 1.5), ant (>= 1.7), ant-optional, +# libhttpclient-java, libslf4j-java, libservlet3.1-java (>= 8), +# nodejs, npm, + ruby-dev, ruby, bundler, rake, + ruby-daemons, ruby-diff-lcs, ruby-eventmachine, ruby-rspec-core, + ruby-rack, ruby-rack-test, ruby-rspec, ruby-rspec-expectations, + ruby-rspec-mocks, thin, +# erlang-dev, erlang-eunit, +# liblua5.2-dev, +# google-mock +Build-Conflicts: rustc +Standards-Version: 4.6.0 +Homepage: https://thrift.apache.org/ +XS-Ruby-Versions: ruby3.0 +XS-Go-Import-Path: github.com/apache/thrift/lib/go/thrift + +Package: libthrift-0.16.0 +Section: libs +Architecture: any +Multi-Arch: same +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: Thrift C++ library + Thrift is a software framework for the development of reliable and + performant communication and data serialization. It combines a software + stack with code generation to build services that operate seamlessly + across a number of different development languages. + . + This package contains the runtime libraries needed for C++ applications + using Thrift. + +Package: libthrift-dev +Section: libdevel +Architecture: any +Multi-Arch: same +Depends: libthrift-0.16.0 (= ${binary:Version}), ${misc:Depends}, pkg-config +Description: Thrift C++ library (development headers) + Thrift is a software framework for the development of reliable and + performant communication and data serialization. It combines a software + stack with code generation to build services that operate seamlessly + across a number of different development languages. + . + This package contains the development libraries required for writing C++ + applications using Thrift. + +Package: libthrift-c-glib0 +Section: libs +Architecture: any +Multi-Arch: same +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: Thrift glib library + Thrift is a software framework for the development of reliable and + performant communication and data serialization. It combines a software + stack with code generation to build services that operate seamlessly + across a number of different development languages. + . + This package contains the glib based runtime libraries needed for C + applications using Thrift. + +Package: libthrift-c-glib-dev +Section: libdevel +Architecture: any +Multi-Arch: same +Depends: libthrift-c-glib0 (= ${binary:Version}), ${misc:Depends}, pkg-config +Description: Thrift glib library (development headers) + Thrift is a software framework for the development of reliable and + performant communication and data serialization. It combines a software + stack with code generation to build services that operate seamlessly + across a number of different development languages. + . + This package contains the development libraries required for writing glib + based C applications using Thrift. + +Package: thrift-compiler +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Conflicts: thrift-compiler (<= 0.9.1-2) +Replaces: thrift-compiler (<= 0.9.1-2) +Description: code generator/compiler for Thrift definitions + Thrift is a software framework for the development of reliable and + performant communication and data serialization. It combines a software + stack with code generation to build services that operate seamlessly + across a number of different development languages. + . + This package contains the compiler used to generate language code from + Thrift definition files. + +Package: python3-thrift +Section: python +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, ${python3:Depends} +Provides: ${python3:Provides} +Description: Python 3 library for Thrift + Thrift is a software framework for the development of reliable and + performant communication and data serialization. It combines a software + stack with a code generation to build services that operate seamlessly + across a number of different development languages. + . + This package provides the Python 3 bindings for Thrift. + +#Package: libthrift-java +#Section: java +#Architecture: all +#Depends: ${java:Depends}, ${misc:Depends} +#Conflicts: libthrift-java (<= 0.9.1-2) +#Replaces: libthrift-java (<= 0.9.1-2) +#Description: Java language support for Thrift +# Thrift is a software framework for the development of reliable and +# performant communication and data serialization. It combines a software +# stack with code generation to build services that operate seamlessly +# across a number of different development languages. +# . +# This package provides the Java language support for Thrift. +# +#Package: libthrift-java-doc +#Architecture: all +#Section: doc +#Depends: ${misc:Depends} +#Suggests: libthrift-java +#Description: Java language support for Thrift - documentation +# Thrift is a software framework for the development of reliable and +# performant communication and data serialization. It combines a software +# stack with code generation to build services that operate seamlessly +# across a number of different development languages. +# . +# This package contains Javadoc HTML documentation for libthrift-java . +# +Package: php-thrift +Section: php +Architecture: any +Depends: ${phpcomposer:Debian-require}, ${shlibs:Depends}, ${misc:Depends} +Provides: ${php:Provides} +Conflicts: php7.0-thrift, php7.2-thrift +Replaces: php7.0-thrift, php7.2-thrift +Description: PHP language support for Thrift + Thrift is a software framework for the development of reliable and + performant communication and data serialization. It combines a software + stack with code generation to build services that operate seamlessly + across a number of different development languages. + . + This package provides the PHP5 language support for Thrift. + +Package: libthrift-perl +Section: perl +Architecture: all +Multi-Arch: foreign +Depends: ${perl:Depends}, ${misc:Depends} +Description: Perl language support for Thrift + Thrift is a software framework for the development of reliable and + performant communication and data serialization. It combines a software + stack with code generation to build services that operate seamlessly + across a number of different development languages. + . + This package provides the Perl language support for Thrift. + +Package: golang-thrift-dev +Architecture: amd64 arm64 armel armhf i386 ppc64el +Multi-Arch: same +Depends: ${misc:Depends} +Description: Go language support for Thrift + Thrift is a software framework for the development of reliable and + performant communication and data serialization. It combines a software + stack with code generation to build services that operate seamlessly + across a number of different development languages. + . + This package provides the Go language support for Thrift. +# +#Package: ruby-thrift +#Section: libs +#Architecture: any +#Depends: ${shlibs:Depends}, ${misc:Depends} +#Description: Ruby library for Thrift +# Thrift is a software framework for the development of reliable and +# performant communication and data serialization. It combines a software +# stack with a code generation to build services that operate seamlessly +# across a number of different development languages. +# . +# This package provides the Ruby bindings for Thrift. diff --git a/copyright b/copyright new file mode 100644 index 0000000..683adb6 --- /dev/null +++ b/copyright @@ -0,0 +1,85 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: thrift +Source: https://www.apache.org/dist/thrift + +Files: * +Copyright: Copyright 2006- Apache Software Foundation +License: Apache-2.0 + +Files: build/cmake/FindGLIB.cmake +Copyright: Copyright (C) 2012 Raphael Kubo da Costa +License: BSD-2-clause + All rights reserved. + . + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + . + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Files: debian/* +Copyright: Copyright 2012-2014 Eric Evans , + Copyright 2014- Laszlo Boszormenyi (GCS) +License: GPL-2+ + +License: GPL-2+ + This program is free software; you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your option) + any later version. + . + This program is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + . + You should have received a copy of the GNU General Public License along + with this package; if not, write to the Free Software Foundation, Inc., + 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + . + On Debian systems, the full text of the GNU General Public License version + 2 can be found in the file `/usr/share/common-licenses/GPL-2'. + +License: GPL-3+ + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + . + This package is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + . + You should have received a copy of the GNU General Public License + along with this program. If not, see . + . + On Debian systems, the full text of the GNU General Public License + version 3 can be found in the file `/usr/share/common-licenses/GPL-3'. + +License: Apache-2.0 + Licensed to the Apache Software Foundation (ASF) under one or more contributor + license agreements. The ASF licenses this work to You under the Apache License, + Version 2.0 (the "License"); you may not use this work except in compliance + with the License. You may obtain a copy of the License at + . + https://www.apache.org/licenses/LICENSE-2.0 + . + On Debian systems, the complete text of the Apache License Version 2.0 + can be found in the file '/usr/share/common-licenses/Apache-2.0'. diff --git a/dirs b/dirs new file mode 100644 index 0000000..ca882bb --- /dev/null +++ b/dirs @@ -0,0 +1,2 @@ +usr/bin +usr/sbin diff --git a/docs b/docs new file mode 100644 index 0000000..b43bf86 --- /dev/null +++ b/docs @@ -0,0 +1 @@ +README.md diff --git a/golang-thrift-dev.install b/golang-thrift-dev.install new file mode 100644 index 0000000..d091038 --- /dev/null +++ b/golang-thrift-dev.install @@ -0,0 +1 @@ +lib/go/thrift /usr/share/gocode/src/github.com/apache/thrift/lib/go/ diff --git a/libthrift-0.16.0.install b/libthrift-0.16.0.install new file mode 100644 index 0000000..d0b0147 --- /dev/null +++ b/libthrift-0.16.0.install @@ -0,0 +1,4 @@ +usr/lib/*/libthrift-*.so +usr/lib/*/libthriftnb-*.so +usr/lib/*/libthriftqt5-*.so +usr/lib/*/libthriftz-*.so diff --git a/libthrift-0.16.0.shlibs b/libthrift-0.16.0.shlibs new file mode 100644 index 0000000..87767f9 --- /dev/null +++ b/libthrift-0.16.0.shlibs @@ -0,0 +1,4 @@ +libthrift 0.16.0 libthrift-0.16.0 (>= 0.16.0-1~) +libthriftnb 0.16.0 libthrift-0.16.0 (>= 0.16.0-1~) +libthriftqt5 0.16.0 libthrift-0.16.0 (>= 0.16.0-1~) +libthriftz 0.16.0 libthrift-0.16.0 (>= 0.16.0-1~) diff --git a/libthrift-c-glib-dev.install b/libthrift-c-glib-dev.install new file mode 100644 index 0000000..6e062c9 --- /dev/null +++ b/libthrift-c-glib-dev.install @@ -0,0 +1,4 @@ +usr/include/thrift/c_glib/ +usr/lib/*/libthrift_c_glib.a +usr/lib/*/libthrift_c_glib.so +usr/lib/*/pkgconfig/thrift_c_glib.pc diff --git a/libthrift-c-glib0.install b/libthrift-c-glib0.install new file mode 100644 index 0000000..d71b50d --- /dev/null +++ b/libthrift-c-glib0.install @@ -0,0 +1 @@ +usr/lib/*/libthrift_c_glib.so.* diff --git a/libthrift-dev.install b/libthrift-dev.install new file mode 100644 index 0000000..54e3e13 --- /dev/null +++ b/libthrift-dev.install @@ -0,0 +1,20 @@ +usr/include/thrift/*.h +usr/include/thrift/async/ +usr/include/thrift/concurrency/ +usr/include/thrift/processor/ +usr/include/thrift/protocol/ +usr/include/thrift/qt/ +usr/include/thrift/server/ +usr/include/thrift/transport/ +usr/lib/*/libthrift.a +usr/lib/*/libthriftnb.a +usr/lib/*/libthriftqt5.a +usr/lib/*/libthriftz.a +usr/lib/*/libthriftnb.so +usr/lib/*/libthriftqt5.so +usr/lib/*/libthrift.so +usr/lib/*/libthriftz.so +usr/lib/*/pkgconfig/thrift-nb.pc +usr/lib/*/pkgconfig/thrift.pc +usr/lib/*/pkgconfig/thrift-qt5.pc +usr/lib/*/pkgconfig/thrift-z.pc diff --git a/libthrift-java-doc.doc-base b/libthrift-java-doc.doc-base new file mode 100644 index 0000000..03672c0 --- /dev/null +++ b/libthrift-java-doc.doc-base @@ -0,0 +1,8 @@ +Document: libthrift-java-doc +Title: Programmer API for Thrift Java support +Author: Apache Software Foundation +Section: Programming + +Format: HTML +Index: /usr/share/doc/thrift/java/index.html +Files: /usr/share/doc/thrift/java/* diff --git a/libthrift-java-doc.install b/libthrift-java-doc.install new file mode 100644 index 0000000..1c29668 --- /dev/null +++ b/libthrift-java-doc.install @@ -0,0 +1 @@ +debian/_jh_build.javadoc/api/* /usr/share/doc/thrift/java/ diff --git a/libthrift-perl.install b/libthrift-perl.install new file mode 100644 index 0000000..f3ee2e4 --- /dev/null +++ b/libthrift-perl.install @@ -0,0 +1,2 @@ +usr/lib/perl5/Thrift.pm /usr/share/perl5 +usr/lib/perl5/Thrift /usr/share/perl5 diff --git a/libthrift0.install b/libthrift0.install new file mode 100644 index 0000000..ec74efc --- /dev/null +++ b/libthrift0.install @@ -0,0 +1,5 @@ +usr/lib/libthrift.so* +usr/lib/libthrift-*.so* +usr/lib/libthriftnb*.so* +usr/lib/libthriftqt*.so* +usr/lib/libthriftz*.so* diff --git a/patches/Replace_outdated_TLS_test_keys.patch b/patches/Replace_outdated_TLS_test_keys.patch new file mode 100644 index 0000000..6934773 --- /dev/null +++ b/patches/Replace_outdated_TLS_test_keys.patch @@ -0,0 +1,866 @@ +From 54765854873e19b8ba50a0ec8080dd92d8323851 Mon Sep 17 00:00:00 2001 +From: Jens Geyer +Date: Thu, 30 Jun 2022 17:55:40 +0200 +Subject: [PATCH] eplaced outdated TLS test keys + +--- + test/keys/CA.pem | 187 +++++++++++++++++++++++++--------------- + test/keys/client.crt | 47 +++++----- + test/keys/client.key | 50 +++++------ + test/keys/client.pem | 113 ++++++++++++------------ + test/keys/client_v3.crt | 50 ++++++----- + test/keys/client_v3.key | 50 +++++------ + test/keys/server.crt | 59 ++++++++----- + test/keys/server.key | 76 ++++++++++------ + test/keys/server.pem | 135 ++++++++++++++++++----------- + 11 files changed, 455 insertions(+), 312 deletions(-) + +diff --git a/test/keys/CA.pem b/test/keys/CA.pem +index a747b9aca6..2d1cc26f1d 100644 +--- a/test/keys/CA.pem ++++ b/test/keys/CA.pem +@@ -1,82 +1,133 @@ + Certificate: + Data: + Version: 3 (0x2) +- Serial Number: 16582080088954381212 (0xe61f61fc3b34239c) +- Signature Algorithm: sha1WithRSAEncryption +- Issuer: C=US, ST=Maryland, L=Forest Hill, O=The Apache Software Foundation, OU=Apache Thrift, CN=localhost/emailAddress=dev@thrift.apache.org ++ Serial Number: ++ 0c:6f:84:20:71:35:10:57:ae:8f:47:5d:5a:dc:46:40:03:da:b6:df ++ Signature Algorithm: sha256WithRSAEncryption ++ Issuer: CN = localhost, emailAddress = dev@thrift.apache.org, OU = Apache Thrift, O = The Apache Software Foundation, L = Forest Hill, ST = Maryland, C = US + Validity +- Not Before: Apr 7 18:58:00 2014 GMT +- Not After : Jun 24 18:58:00 2022 GMT +- Subject: C=US, ST=Maryland, L=Forest Hill, O=The Apache Software Foundation, OU=Apache Thrift, CN=localhost/emailAddress=dev@thrift.apache.org ++ Not Before: Jun 30 22:37:28 2022 GMT ++ Not After : Sep 16 22:37:28 2030 GMT ++ Subject: CN = localhost, emailAddress = dev@thrift.apache.org, OU = Apache Thrift, O = The Apache Software Foundation, L = Forest Hill, ST = Maryland, C = US + Subject Public Key Info: + Public Key Algorithm: rsaEncryption +- Public-Key: (2048 bit) ++ RSA Public-Key: (4096 bit) + Modulus: +- 00:aa:13:d4:c4:f7:01:17:a7:92:d1:b4:b4:15:0d: +- 21:90:19:5e:fc:fb:b6:6d:3f:f2:3f:65:a2:7a:43: +- a6:46:95:fc:43:16:f6:63:14:5e:f7:b1:e3:61:02: +- f9:4a:95:89:bf:8d:f9:48:1d:82:e7:34:e0:b2:48: +- df:08:d9:7c:3a:2f:d3:1b:0b:e8:ef:c2:41:0a:7d: +- 0a:38:78:3a:31:66:73:99:8c:d1:79:27:5f:e5:66: +- d0:5e:3a:8c:0c:92:18:73:04:c1:f5:45:db:37:e7: +- 5f:c7:8c:a3:60:e9:92:a0:d8:29:5d:77:48:fb:1d: +- b0:ed:12:2c:4e:2e:02:db:3d:1a:41:71:a6:2b:2e: +- b3:4c:6a:c7:f7:1d:a9:7e:c7:cf:db:f2:e7:b6:f3: +- 1f:77:1d:24:01:1a:66:66:30:85:30:02:29:c4:bb: +- f7:cd:3f:89:4b:1a:5f:f4:91:96:fb:e9:39:f2:46: +- 96:12:3d:8a:23:b5:2e:82:9e:41:fe:40:b6:27:b1: +- 14:44:5c:96:30:0f:55:e4:bb:ad:8b:8a:99:17:c0: +- 29:11:4e:76:79:9d:4b:03:31:7e:85:3c:a8:23:40: +- 54:02:58:35:c6:fc:dd:3d:eb:e3:d1:51:00:02:86: +- 1a:d7:b0:9f:a0:17:73:6a:5a:d0:e6:b6:b8:55:40: +- 5e:27 ++ 00:cf:ee:6a:6d:c1:5e:32:34:c7:a8:5f:76:a7:6b: ++ e0:04:db:88:30:3b:9e:20:fc:31:28:69:ca:a0:66: ++ 76:93:16:bb:b9:e0:f7:58:2b:64:f0:83:97:b4:ff: ++ eb:10:ab:75:3f:76:34:8e:e6:0a:99:c0:e6:10:4a: ++ ff:45:bc:fb:96:3c:36:72:a3:93:06:72:9b:d1:f9: ++ 90:ed:7c:15:0f:a1:1f:59:89:ab:76:f1:e7:b9:b1: ++ b1:90:04:d4:8c:1b:af:6d:56:fc:ac:61:e8:9c:76: ++ ef:d6:b2:cb:05:40:53:a9:7d:70:7f:da:4b:9b:77: ++ a6:5d:2a:65:4c:ac:06:2d:e6:7b:62:7c:f3:3e:a8: ++ 60:0d:c5:35:16:b1:5f:79:0e:e0:8f:22:26:36:2e: ++ bc:87:e9:5a:65:df:f0:1c:bf:4c:e2:f3:36:44:75: ++ a4:92:d7:7b:ce:3d:b4:01:ab:4e:d9:be:82:82:f0: ++ e7:d4:4c:84:88:31:95:2d:39:0c:7d:e7:18:d2:9a: ++ 99:64:38:82:bd:87:e5:da:3e:da:91:73:2a:8a:26: ++ e2:f0:ab:c8:a8:1c:fc:d5:f2:11:03:5c:ff:51:51: ++ 26:c8:b7:fd:72:bf:36:57:b3:a0:fc:3e:c5:5d:f7: ++ 01:e0:e8:a6:69:8a:56:c4:38:44:93:8d:c9:59:60: ++ 92:c0:83:d9:0d:a8:76:b0:91:fe:bc:aa:8a:b0:39: ++ 05:31:fc:a5:01:5f:bc:24:1f:af:81:ba:ce:44:b3: ++ 48:30:53:0b:d6:48:d8:82:31:24:5b:3c:ee:65:69: ++ 72:ef:b4:9f:eb:b8:f3:6b:dd:c2:c5:00:78:1c:84: ++ de:8a:40:f7:d3:18:ae:5a:d9:0e:32:d8:97:8d:18: ++ d2:4c:d6:1c:ae:36:22:cd:e2:07:3d:37:07:85:45: ++ 29:4a:ec:51:76:b9:6d:ca:ae:60:f9:2b:d6:85:72: ++ 71:a9:87:d5:04:f0:5e:d8:24:53:a0:ec:a4:08:ee: ++ 47:7b:54:41:3e:22:ee:c4:84:9e:85:7c:a4:69:74: ++ 80:b5:a9:18:00:71:84:67:5e:d1:9d:15:ff:1d:78: ++ 04:d1:49:f9:91:b6:ba:25:29:2e:f3:09:b2:1a:81: ++ 95:ed:64:22:3f:82:ab:24:90:31:cd:e6:16:99:1d: ++ 05:35:19:9f:25:55:b9:54:5c:eb:ea:06:19:f0:6e: ++ 8c:eb:ea:14:ab:92:f6:b3:a1:a4:24:81:05:5c:1b: ++ ab:9f:e5:3d:28:2d:bf:2d:ae:06:28:93:c2:51:4b: ++ 32:03:ef:57:ae:97:c5:01:9b:6e:04:f1:3a:32:1d: ++ ac:bd:62:ea:c9:83:ff:a4:57:91:b2:0c:28:e1:5b: ++ fe:8e:0d + Exponent: 65537 (0x10001) + X509v3 extensions: + X509v3 Subject Key Identifier: +- 28:F2:FD:30:CD:03:F1:DC:41:1E:C4:93:C6:97:13:CA:D4:FA:60:2A ++ A8:04:E1:24:70:5A:ED:9C:C4:38:63:CD:E7:F8:79:49:94:9D:1D:DA + X509v3 Authority Key Identifier: +- keyid:28:F2:FD:30:CD:03:F1:DC:41:1E:C4:93:C6:97:13:CA:D4:FA:60:2A ++ keyid:A8:04:E1:24:70:5A:ED:9C:C4:38:63:CD:E7:F8:79:49:94:9D:1D:DA + +- X509v3 Basic Constraints: +- CA:TRUE +- Signature Algorithm: sha1WithRSAEncryption +- 46:15:18:89:b2:57:17:d1:a2:64:c1:9a:73:4f:04:94:76:07: +- 1f:29:ba:6f:34:46:c2:36:d5:68:85:f4:15:4c:8e:1a:fe:83: +- 79:53:ec:aa:0d:92:60:de:f3:9a:3a:e8:80:66:ac:87:70:89: +- 59:f2:ac:9e:b0:28:11:37:7d:78:4e:5e:3f:25:0f:be:09:6f: +- 26:2a:3d:66:79:38:28:e5:81:71:71:96:26:4f:db:ec:23:70: +- be:37:39:fc:e0:32:0d:80:8f:66:c7:ac:a4:b4:8b:77:40:e2: +- 99:44:3a:73:c8:f9:14:cf:1b:32:27:c2:78:db:b0:da:8a:60: +- eb:8d:34:7e:7d:3c:03:d4:38:74:f7:17:9e:32:74:9a:e7:37: +- 95:d4:71:03:c8:94:ea:09:7b:ad:2d:eb:70:43:f2:32:7e:63: +- 01:84:8c:7e:9e:f0:79:7f:ae:e9:cf:f9:be:0e:fe:95:d2:bd: +- c8:a7:81:c2:71:d9:c3:50:31:89:6d:fa:ad:a2:ab:00:01:34: +- 10:58:ef:96:5a:eb:30:07:a9:8e:84:36:ef:3d:3c:61:46:96: +- 6a:e8:09:20:5a:ab:f8:4b:eb:b7:33:61:8e:af:9a:7d:16:b0: +- 60:6a:f0:30:e5:b2:8e:e7:80:b4:a1:02:a9:37:fe:5f:b5:ae: +- 65:e9:6b:34 ++ X509v3 Basic Constraints: critical ++ CA:TRUE, pathlen:0 ++ X509v3 Key Usage: critical ++ Digital Signature, Non Repudiation, Key Encipherment, Certificate Sign, CRL Sign ++ X509v3 Extended Key Usage: ++ TLS Web Server Authentication, TLS Web Client Authentication ++ X509v3 Subject Alternative Name: ++ IP Address:127.0.0.1, IP Address:0:0:0:0:0:0:0:1, IP Address:0:0:0:0:0:FFFF:7F00:1, DNS:localhost ++ Signature Algorithm: sha256WithRSAEncryption ++ 8b:25:e2:34:d2:d9:d6:eb:b7:b0:92:b6:fc:08:9d:ff:08:9e: ++ 36:86:a8:ea:e3:e1:cd:07:0d:85:58:06:2d:f7:26:41:f1:59: ++ ab:02:25:b8:ec:f9:85:ac:41:87:0a:df:fa:c4:f6:26:32:64: ++ 0f:dc:c0:81:3c:f7:1d:9e:73:52:57:e3:64:ab:6b:23:cb:21: ++ d5:05:e5:54:a8:f8:33:f7:92:74:c7:4a:2e:f3:b7:78:a0:9b: ++ 38:b2:29:3b:0b:a2:58:88:4b:03:8a:c0:5e:66:75:cf:aa:78: ++ e1:3c:0a:e1:31:8b:bc:48:57:8c:65:27:17:cc:f9:75:ba:69: ++ e1:dd:b2:4a:1f:29:24:dd:e2:aa:b3:c8:ef:b0:31:ec:ca:6f: ++ cb:bd:fd:bd:2b:30:63:42:bd:a3:35:7a:d7:16:36:5a:df:3f: ++ 64:97:6b:22:c0:7c:59:0a:ca:94:9b:11:1d:6e:21:4c:e0:66: ++ 78:52:1b:27:d8:79:ee:83:ac:80:13:8a:13:f2:3a:87:e3:6d: ++ 46:ea:7c:5e:cc:26:d0:d3:a9:32:e1:aa:19:27:74:5f:93:ec: ++ 84:76:2d:c4:78:5d:db:64:c6:d7:53:17:55:b0:29:c3:36:15: ++ 7f:dc:8e:97:6d:19:7e:fa:53:a8:4f:0f:ab:96:5c:32:12:93: ++ c2:22:4b:c1:d7:d7:4c:74:c1:a9:a5:56:f2:b7:cf:3f:54:b1: ++ 6c:10:a7:90:c3:12:31:bf:5e:d3:14:e7:da:00:ca:28:86:21: ++ b6:65:95:45:8a:38:e6:9b:09:c2:1d:f1:db:d8:67:0e:33:a0: ++ e6:c2:ad:88:98:6f:6a:af:3d:c2:4f:c9:43:b3:70:23:e7:c2: ++ c3:92:db:69:60:4e:a1:1f:a0:dc:e5:ae:68:77:f5:82:3c:a6: ++ f3:43:87:eb:74:4a:42:bc:36:19:65:9b:8a:3f:84:84:24:23: ++ 16:25:aa:ca:78:22:40:a7:cb:1a:4e:76:04:4c:b7:61:fe:f7: ++ c1:42:34:b1:ac:dc:42:24:99:a7:8a:0f:8d:8e:ca:09:6f:77: ++ 33:34:21:81:d3:d9:50:d1:7e:1c:29:8c:fb:d2:13:0f:e5:27: ++ 26:08:8b:74:74:04:45:8d:18:0f:49:c7:e0:4a:65:1c:66:c8: ++ e7:ab:52:a0:8c:98:89:b0:32:82:ed:2a:e7:44:1e:95:b3:e5: ++ b5:dc:52:49:aa:b2:61:97:68:76:9b:55:6e:d9:de:77:cd:67: ++ 07:52:2c:d1:e0:1c:b3:58:04:67:ba:02:4d:7d:f0:21:47:1a: ++ 63:ff:f5:76:d5:e3:57:06:35:77:2d:7d:ef:76:6d:a0:ef:e4: ++ 83:20:58:e8:b7:e5:7e:70 + -----BEGIN CERTIFICATE----- +-MIIENzCCAx+gAwIBAgIJAOYfYfw7NCOcMA0GCSqGSIb3DQEBBQUAMIGxMQswCQYD +-VQQGEwJVUzERMA8GA1UECAwITWFyeWxhbmQxFDASBgNVBAcMC0ZvcmVzdCBIaWxs +-MScwJQYDVQQKDB5UaGUgQXBhY2hlIFNvZnR3YXJlIEZvdW5kYXRpb24xFjAUBgNV +-BAsMDUFwYWNoZSBUaHJpZnQxEjAQBgNVBAMMCWxvY2FsaG9zdDEkMCIGCSqGSIb3 +-DQEJARYVZGV2QHRocmlmdC5hcGFjaGUub3JnMB4XDTE0MDQwNzE4NTgwMFoXDTIy +-MDYyNDE4NTgwMFowgbExCzAJBgNVBAYTAlVTMREwDwYDVQQIDAhNYXJ5bGFuZDEU +-MBIGA1UEBwwLRm9yZXN0IEhpbGwxJzAlBgNVBAoMHlRoZSBBcGFjaGUgU29mdHdh +-cmUgRm91bmRhdGlvbjEWMBQGA1UECwwNQXBhY2hlIFRocmlmdDESMBAGA1UEAwwJ +-bG9jYWxob3N0MSQwIgYJKoZIhvcNAQkBFhVkZXZAdGhyaWZ0LmFwYWNoZS5vcmcw +-ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCqE9TE9wEXp5LRtLQVDSGQ +-GV78+7ZtP/I/ZaJ6Q6ZGlfxDFvZjFF73seNhAvlKlYm/jflIHYLnNOCySN8I2Xw6 +-L9MbC+jvwkEKfQo4eDoxZnOZjNF5J1/lZtBeOowMkhhzBMH1Rds351/HjKNg6ZKg +-2Cldd0j7HbDtEixOLgLbPRpBcaYrLrNMasf3Hal+x8/b8ue28x93HSQBGmZmMIUw +-AinEu/fNP4lLGl/0kZb76TnyRpYSPYojtS6CnkH+QLYnsRREXJYwD1Xku62LipkX +-wCkRTnZ5nUsDMX6FPKgjQFQCWDXG/N096+PRUQAChhrXsJ+gF3NqWtDmtrhVQF4n +-AgMBAAGjUDBOMB0GA1UdDgQWBBQo8v0wzQPx3EEexJPGlxPK1PpgKjAfBgNVHSME +-GDAWgBQo8v0wzQPx3EEexJPGlxPK1PpgKjAMBgNVHRMEBTADAQH/MA0GCSqGSIb3 +-DQEBBQUAA4IBAQBGFRiJslcX0aJkwZpzTwSUdgcfKbpvNEbCNtVohfQVTI4a/oN5 +-U+yqDZJg3vOaOuiAZqyHcIlZ8qyesCgRN314Tl4/JQ++CW8mKj1meTgo5YFxcZYm +-T9vsI3C+Nzn84DINgI9mx6yktIt3QOKZRDpzyPkUzxsyJ8J427DaimDrjTR+fTwD +-1Dh09xeeMnSa5zeV1HEDyJTqCXutLetwQ/IyfmMBhIx+nvB5f67pz/m+Dv6V0r3I +-p4HCcdnDUDGJbfqtoqsAATQQWO+WWuswB6mOhDbvPTxhRpZq6AkgWqv4S+u3M2GO +-r5p9FrBgavAw5bKO54C0oQKpN/5fta5l6Ws0 ++MIIGuTCCBKGgAwIBAgIUDG+EIHE1EFeuj0ddWtxGQAPatt8wDQYJKoZIhvcNAQEL ++BQAwgbExEjAQBgNVBAMMCWxvY2FsaG9zdDEkMCIGCSqGSIb3DQEJARYVZGV2QHRo ++cmlmdC5hcGFjaGUub3JnMRYwFAYDVQQLDA1BcGFjaGUgVGhyaWZ0MScwJQYDVQQK ++DB5UaGUgQXBhY2hlIFNvZnR3YXJlIEZvdW5kYXRpb24xFDASBgNVBAcMC0ZvcmVz ++dCBIaWxsMREwDwYDVQQIDAhNYXJ5bGFuZDELMAkGA1UEBhMCVVMwHhcNMjIwNjMw ++MjIzNzI4WhcNMzAwOTE2MjIzNzI4WjCBsTESMBAGA1UEAwwJbG9jYWxob3N0MSQw ++IgYJKoZIhvcNAQkBFhVkZXZAdGhyaWZ0LmFwYWNoZS5vcmcxFjAUBgNVBAsMDUFw ++YWNoZSBUaHJpZnQxJzAlBgNVBAoMHlRoZSBBcGFjaGUgU29mdHdhcmUgRm91bmRh ++dGlvbjEUMBIGA1UEBwwLRm9yZXN0IEhpbGwxETAPBgNVBAgMCE1hcnlsYW5kMQsw ++CQYDVQQGEwJVUzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAM/uam3B ++XjI0x6hfdqdr4ATbiDA7niD8MShpyqBmdpMWu7ng91grZPCDl7T/6xCrdT92NI7m ++CpnA5hBK/0W8+5Y8NnKjkwZym9H5kO18FQ+hH1mJq3bx57mxsZAE1Iwbr21W/Kxh ++6Jx279ayywVAU6l9cH/aS5t3pl0qZUysBi3me2J88z6oYA3FNRaxX3kO4I8iJjYu ++vIfpWmXf8By/TOLzNkR1pJLXe849tAGrTtm+goLw59RMhIgxlS05DH3nGNKamWQ4 ++gr2H5do+2pFzKoom4vCryKgc/NXyEQNc/1FRJsi3/XK/NlezoPw+xV33AeDopmmK ++VsQ4RJONyVlgksCD2Q2odrCR/ryqirA5BTH8pQFfvCQfr4G6zkSzSDBTC9ZI2IIx ++JFs87mVpcu+0n+u482vdwsUAeByE3opA99MYrlrZDjLYl40Y0kzWHK42Is3iBz03 ++B4VFKUrsUXa5bcquYPkr1oVycamH1QTwXtgkU6DspAjuR3tUQT4i7sSEnoV8pGl0 ++gLWpGABxhGde0Z0V/x14BNFJ+ZG2uiUpLvMJshqBle1kIj+CqySQMc3mFpkdBTUZ ++nyVVuVRc6+oGGfBujOvqFKuS9rOhpCSBBVwbq5/lPSgtvy2uBiiTwlFLMgPvV66X ++xQGbbgTxOjIdrL1i6smD/6RXkbIMKOFb/o4NAgMBAAGjgcYwgcMwHQYDVR0OBBYE ++FKgE4SRwWu2cxDhjzef4eUmUnR3aMB8GA1UdIwQYMBaAFKgE4SRwWu2cxDhjzef4 ++eUmUnR3aMBIGA1UdEwEB/wQIMAYBAf8CAQAwDgYDVR0PAQH/BAQDAgHmMB0GA1Ud ++JQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjA+BgNVHREENzA1hwR/AAABhxAAAAAA ++AAAAAAAAAAAAAAABhxAAAAAAAAAAAAAA//9/AAABgglsb2NhbGhvc3QwDQYJKoZI ++hvcNAQELBQADggIBAIsl4jTS2dbrt7CStvwInf8InjaGqOrj4c0HDYVYBi33JkHx ++WasCJbjs+YWsQYcK3/rE9iYyZA/cwIE89x2ec1JX42SrayPLIdUF5VSo+DP3knTH ++Si7zt3igmziyKTsLoliISwOKwF5mdc+qeOE8CuExi7xIV4xlJxfM+XW6aeHdskof ++KSTd4qqzyO+wMezKb8u9/b0rMGNCvaM1etcWNlrfP2SXayLAfFkKypSbER1uIUzg ++ZnhSGyfYee6DrIATihPyOofjbUbqfF7MJtDTqTLhqhkndF+T7IR2LcR4XdtkxtdT ++F1WwKcM2FX/cjpdtGX76U6hPD6uWXDISk8IiS8HX10x0wamlVvK3zz9UsWwQp5DD ++EjG/XtMU59oAyiiGIbZllUWKOOabCcId8dvYZw4zoObCrYiYb2qvPcJPyUOzcCPn ++wsOS22lgTqEfoNzlrmh39YI8pvNDh+t0SkK8Nhllm4o/hIQkIxYlqsp4IkCnyxpO ++dgRMt2H+98FCNLGs3EIkmaeKD42OyglvdzM0IYHT2VDRfhwpjPvSEw/lJyYIi3R0 ++BEWNGA9Jx+BKZRxmyOerUqCMmImwMoLtKudEHpWz5bXcUkmqsmGXaHabVW7Z3nfN ++ZwdSLNHgHLNYBGe6Ak198CFHGmP/9XbV41cGNXctfe92baDv5IMgWOi35X5w + -----END CERTIFICATE----- +diff --git a/test/keys/client.crt b/test/keys/client.crt +index 80a9ad0e2c..ceffe155f3 100644 +--- a/test/keys/client.crt ++++ b/test/keys/client.crt +@@ -1,23 +1,28 @@ + -----BEGIN CERTIFICATE----- +-MIID2DCCAsACAQEwDQYJKoZIhvcNAQELBQAwgbExCzAJBgNVBAYTAlVTMREwDwYD +-VQQIDAhNYXJ5bGFuZDEUMBIGA1UEBwwLRm9yZXN0IEhpbGwxJzAlBgNVBAoMHlRo +-ZSBBcGFjaGUgU29mdHdhcmUgRm91bmRhdGlvbjEWMBQGA1UECwwNQXBhY2hlIFRo +-cmlmdDESMBAGA1UEAwwJbG9jYWxob3N0MSQwIgYJKoZIhvcNAQkBFhVkZXZAdGhy +-aWZ0LmFwYWNoZS5vcmcwHhcNMTUxMjIzMDcwNzUwWhcNMjQwMzEwMDcwNzUwWjCB +-sTELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE1hcnlsYW5kMRQwEgYDVQQHDAtGb3Jl +-c3QgSGlsbDEnMCUGA1UECgweVGhlIEFwYWNoZSBTb2Z0d2FyZSBGb3VuZGF0aW9u +-MRYwFAYDVQQLDA1BcGFjaGUgVGhyaWZ0MRIwEAYDVQQDDAlsb2NhbGhvc3QxJDAi +-BgkqhkiG9w0BCQEWFWRldkB0aHJpZnQuYXBhY2hlLm9yZzCCASIwDQYJKoZIhvcN +-AQEBBQADggEPADCCAQoCggEBALl/bJhg17Pu1t785JIuwlh7e2E51eoWFvuxMWfH +-dsUAVqDaOz99O5sv8pgWKXrkPBttE98T+Mx/Pwz5JHs4Qcre3A5adm6cdab0AKug +-eVG1PvHrWzV4aheg4KUfVSiMz8BG2K3Q1VGvZkgMRa/Q409FKjU6Z4D9vBG4Pas3 +-PN5FxnAL6P70yWCEr2Vu/tWJlCN+qrRDfSaE2hqmT1irxaoPa61GvuRVsGQ3TeoE +-mGfENtvFqC6qQWuSCbG5aI47Rv66pqoWWxqkrcolNc7+vhx6rW+wdFO3IlqIT8IG +-sdQVp+Y4ir/dGp2ejzqGZCremPJ1uEKjLMpIukdg25ymHC0CAwEAATANBgkqhkiG +-9w0BAQsFAAOCAQEABcRdwc9mdY9zOvTixtThHrciVvqwp6RaiQqMEVomozYilZDR +-J90M3H6KnlADJbCv0FXujsaApB53awq5I7sObAYWFhDJZ9LKlw0lDF7KchLXiAlk +-XVyvL2nJjuJcxPCFPWktwrw5bTguRCBzG12Hzikn+xs6uPur7VQYM33jbXEda5PS +-UEqvAVWaONJCX8MDYOscVoJF0ESyI+fN92ipFaXR7fGajod/rc0AfeN2GVMZETve +-21pkUyDwwCGA44uvNUCd1e32NxE3ah9UApCRn5sGJ64R6urpFTXT3IALF3kaOO7U +-VsMhFrUiZ7+Bw5nIeiK0QOF6Eipj+bJvrLZpSg== ++MIIE2DCCAsACAQEwDQYJKoZIhvcNAQELBQAwgbExEjAQBgNVBAMMCWxvY2FsaG9z ++dDEkMCIGCSqGSIb3DQEJARYVZGV2QHRocmlmdC5hcGFjaGUub3JnMRYwFAYDVQQL ++DA1BcGFjaGUgVGhyaWZ0MScwJQYDVQQKDB5UaGUgQXBhY2hlIFNvZnR3YXJlIEZv ++dW5kYXRpb24xFDASBgNVBAcMC0ZvcmVzdCBIaWxsMREwDwYDVQQIDAhNYXJ5bGFu ++ZDELMAkGA1UEBhMCVVMwHhcNMjIwNjMwMjIzNzMxWhcNMzAwOTE2MjIzNzMxWjCB ++sTESMBAGA1UEAwwJbG9jYWxob3N0MSQwIgYJKoZIhvcNAQkBFhVkZXZAdGhyaWZ0 ++LmFwYWNoZS5vcmcxFjAUBgNVBAsMDUFwYWNoZSBUaHJpZnQxJzAlBgNVBAoMHlRo ++ZSBBcGFjaGUgU29mdHdhcmUgRm91bmRhdGlvbjEUMBIGA1UEBwwLRm9yZXN0IEhp ++bGwxETAPBgNVBAgMCE1hcnlsYW5kMQswCQYDVQQGEwJVUzCCASIwDQYJKoZIhvcN ++AQEBBQADggEPADCCAQoCggEBAMkGl9ZGVq/mTrcojrq7eqZTww1gmgOPNWN1QNzv ++i+cPI8Egbik04n/AFWvgtnvKKnKQfOLkBHJHyTdXmPqvdU9w8Zd9dvXk75mBvbtx ++yse6UZCxZnXrqv5YfMGb2BEvcsL5I5s6d3gL4eNObYzFD7vUjAbpamUSE7NOeMn7 ++qO0rPIcODDXL+Okr9/TBcO/XvRSUK0exsX03FC07gtTddV9lEYCkJvQMCCQmFdQ5 ++al7Vz4iLleG5hsCwz/W5zHcsqVtzm8CEQzr00AoR8Ar/WkGh1ibmissi5Bo2DcvR ++Ko3pvDVOAY+gj9Ypxe2z7MImn1T7ZVdr0JXUu9jmMgKMQz8CAwEAATANBgkqhkiG ++9w0BAQsFAAOCAgEAH3QwBNbb2IP+ozcM5w4WppG7W/ha0WUcEKgf8Ay7w4/+X79Y ++Z7mxltoCz5Bc54EMXDaoTg5PbwPSmTNDqoFSRf07Fhp8IG5n19CvrTCMFcM8BbDx ++g5CZ6W1WoHpCW6/zNlflsSVFbGSrkwzmpgnn3+EJcVWzMDcQXufpkefbH2x7bHC/ ++0JsfEYh5iPyJeDWx0CyiyoqfRx08cDuB/OLZgq63dkDNnd4zqDTT8zLT6zMTq1Ka ++pApb+5o0rapgHQP5+O3QAZrfnWLYXOPk17yQTekvwVpiSzwdPlOija5X+BLrLyNu ++EEYlR7Vz2qj/DAUN9vhCIdF4Bk8Yfk9txH5oJUmC0c2bfUkrCJgfbyK1GL00BkON ++aso8whDf8LF5BAl/ooofzvZXt+bw4Sp+LuX+OAcJUlqeK7IUdHQqnhhw5FOfenVO ++Z7MkMt2qtm3BlPzMWlZoeLNrkx4BzsBElFJ0Ds37uLk+LIg3whg+MYMFJPwXqUhs ++6Ss76/cu/AhoHoX8k5wT5eNpzyWL8hNyDSosGDAgejjYFBXMlNzFYvG5zVE0EP7C ++i78cIdgSARKocOOeFpA3GEJL+ISi0g1ut8A1/kxgFp5dxGjfOAGHeDeaVWhWuhjz ++m7CjPwlfAvIBJJlC96MhPakY6tbyA0hW0/GiOfaoanJvVdWJF7lEdKle1Zs= + -----END CERTIFICATE----- +diff --git a/test/keys/client.key b/test/keys/client.key +index 25dcfd7136..cb388d99a6 100644 +--- a/test/keys/client.key ++++ b/test/keys/client.key +@@ -1,27 +1,27 @@ + -----BEGIN RSA PRIVATE KEY----- +-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 + -----END RSA PRIVATE KEY----- +diff --git a/test/keys/client.pem b/test/keys/client.pem +index 66ef626d92..a213fd03d7 100644 +--- a/test/keys/client.pem ++++ b/test/keys/client.pem +@@ -1,60 +1,67 @@ + Bag Attributes +- localKeyID: 39 EC 3D 5B 28 17 DA DD 09 7A 62 68 D5 44 1F C7 E2 F8 E0 CD +-subject=/C=US/ST=Maryland/L=Forest Hill/O=The Apache Software Foundation/OU=Apache Thrift/CN=localhost/emailAddress=dev@thrift.apache.org +-issuer=/C=US/ST=Maryland/L=Forest Hill/O=The Apache Software Foundation/OU=Apache Thrift/CN=localhost/emailAddress=dev@thrift.apache.org ++ localKeyID: 16 42 EA 1B 7C AC BD 29 96 5A A8 B6 3C AB 85 E3 7D 12 C3 D4 ++subject=CN = localhost, emailAddress = dev@thrift.apache.org, OU = Apache Thrift, O = The Apache Software Foundation, L = Forest Hill, ST = Maryland, C = US ++ ++issuer=CN = localhost, emailAddress = dev@thrift.apache.org, OU = Apache Thrift, O = The Apache Software Foundation, L = Forest Hill, ST = Maryland, C = US ++ + -----BEGIN CERTIFICATE----- +-MIID2DCCAsACAQEwDQYJKoZIhvcNAQELBQAwgbExCzAJBgNVBAYTAlVTMREwDwYD +-VQQIDAhNYXJ5bGFuZDEUMBIGA1UEBwwLRm9yZXN0IEhpbGwxJzAlBgNVBAoMHlRo +-ZSBBcGFjaGUgU29mdHdhcmUgRm91bmRhdGlvbjEWMBQGA1UECwwNQXBhY2hlIFRo +-cmlmdDESMBAGA1UEAwwJbG9jYWxob3N0MSQwIgYJKoZIhvcNAQkBFhVkZXZAdGhy +-aWZ0LmFwYWNoZS5vcmcwHhcNMTUxMjIzMDcwNzUwWhcNMjQwMzEwMDcwNzUwWjCB +-sTELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE1hcnlsYW5kMRQwEgYDVQQHDAtGb3Jl +-c3QgSGlsbDEnMCUGA1UECgweVGhlIEFwYWNoZSBTb2Z0d2FyZSBGb3VuZGF0aW9u +-MRYwFAYDVQQLDA1BcGFjaGUgVGhyaWZ0MRIwEAYDVQQDDAlsb2NhbGhvc3QxJDAi +-BgkqhkiG9w0BCQEWFWRldkB0aHJpZnQuYXBhY2hlLm9yZzCCASIwDQYJKoZIhvcN +-AQEBBQADggEPADCCAQoCggEBALl/bJhg17Pu1t785JIuwlh7e2E51eoWFvuxMWfH +-dsUAVqDaOz99O5sv8pgWKXrkPBttE98T+Mx/Pwz5JHs4Qcre3A5adm6cdab0AKug +-eVG1PvHrWzV4aheg4KUfVSiMz8BG2K3Q1VGvZkgMRa/Q409FKjU6Z4D9vBG4Pas3 +-PN5FxnAL6P70yWCEr2Vu/tWJlCN+qrRDfSaE2hqmT1irxaoPa61GvuRVsGQ3TeoE +-mGfENtvFqC6qQWuSCbG5aI47Rv66pqoWWxqkrcolNc7+vhx6rW+wdFO3IlqIT8IG +-sdQVp+Y4ir/dGp2ejzqGZCremPJ1uEKjLMpIukdg25ymHC0CAwEAATANBgkqhkiG +-9w0BAQsFAAOCAQEABcRdwc9mdY9zOvTixtThHrciVvqwp6RaiQqMEVomozYilZDR +-J90M3H6KnlADJbCv0FXujsaApB53awq5I7sObAYWFhDJZ9LKlw0lDF7KchLXiAlk +-XVyvL2nJjuJcxPCFPWktwrw5bTguRCBzG12Hzikn+xs6uPur7VQYM33jbXEda5PS +-UEqvAVWaONJCX8MDYOscVoJF0ESyI+fN92ipFaXR7fGajod/rc0AfeN2GVMZETve +-21pkUyDwwCGA44uvNUCd1e32NxE3ah9UApCRn5sGJ64R6urpFTXT3IALF3kaOO7U +-VsMhFrUiZ7+Bw5nIeiK0QOF6Eipj+bJvrLZpSg== ++MIIE2DCCAsACAQEwDQYJKoZIhvcNAQELBQAwgbExEjAQBgNVBAMMCWxvY2FsaG9z ++dDEkMCIGCSqGSIb3DQEJARYVZGV2QHRocmlmdC5hcGFjaGUub3JnMRYwFAYDVQQL ++DA1BcGFjaGUgVGhyaWZ0MScwJQYDVQQKDB5UaGUgQXBhY2hlIFNvZnR3YXJlIEZv ++dW5kYXRpb24xFDASBgNVBAcMC0ZvcmVzdCBIaWxsMREwDwYDVQQIDAhNYXJ5bGFu ++ZDELMAkGA1UEBhMCVVMwHhcNMjIwNjMwMjIzNzMxWhcNMzAwOTE2MjIzNzMxWjCB ++sTESMBAGA1UEAwwJbG9jYWxob3N0MSQwIgYJKoZIhvcNAQkBFhVkZXZAdGhyaWZ0 ++LmFwYWNoZS5vcmcxFjAUBgNVBAsMDUFwYWNoZSBUaHJpZnQxJzAlBgNVBAoMHlRo ++ZSBBcGFjaGUgU29mdHdhcmUgRm91bmRhdGlvbjEUMBIGA1UEBwwLRm9yZXN0IEhp ++bGwxETAPBgNVBAgMCE1hcnlsYW5kMQswCQYDVQQGEwJVUzCCASIwDQYJKoZIhvcN ++AQEBBQADggEPADCCAQoCggEBAMkGl9ZGVq/mTrcojrq7eqZTww1gmgOPNWN1QNzv ++i+cPI8Egbik04n/AFWvgtnvKKnKQfOLkBHJHyTdXmPqvdU9w8Zd9dvXk75mBvbtx ++yse6UZCxZnXrqv5YfMGb2BEvcsL5I5s6d3gL4eNObYzFD7vUjAbpamUSE7NOeMn7 ++qO0rPIcODDXL+Okr9/TBcO/XvRSUK0exsX03FC07gtTddV9lEYCkJvQMCCQmFdQ5 ++al7Vz4iLleG5hsCwz/W5zHcsqVtzm8CEQzr00AoR8Ar/WkGh1ibmissi5Bo2DcvR ++Ko3pvDVOAY+gj9Ypxe2z7MImn1T7ZVdr0JXUu9jmMgKMQz8CAwEAATANBgkqhkiG ++9w0BAQsFAAOCAgEAH3QwBNbb2IP+ozcM5w4WppG7W/ha0WUcEKgf8Ay7w4/+X79Y ++Z7mxltoCz5Bc54EMXDaoTg5PbwPSmTNDqoFSRf07Fhp8IG5n19CvrTCMFcM8BbDx ++g5CZ6W1WoHpCW6/zNlflsSVFbGSrkwzmpgnn3+EJcVWzMDcQXufpkefbH2x7bHC/ ++0JsfEYh5iPyJeDWx0CyiyoqfRx08cDuB/OLZgq63dkDNnd4zqDTT8zLT6zMTq1Ka ++pApb+5o0rapgHQP5+O3QAZrfnWLYXOPk17yQTekvwVpiSzwdPlOija5X+BLrLyNu ++EEYlR7Vz2qj/DAUN9vhCIdF4Bk8Yfk9txH5oJUmC0c2bfUkrCJgfbyK1GL00BkON ++aso8whDf8LF5BAl/ooofzvZXt+bw4Sp+LuX+OAcJUlqeK7IUdHQqnhhw5FOfenVO ++Z7MkMt2qtm3BlPzMWlZoeLNrkx4BzsBElFJ0Ds37uLk+LIg3whg+MYMFJPwXqUhs ++6Ss76/cu/AhoHoX8k5wT5eNpzyWL8hNyDSosGDAgejjYFBXMlNzFYvG5zVE0EP7C ++i78cIdgSARKocOOeFpA3GEJL+ISi0g1ut8A1/kxgFp5dxGjfOAGHeDeaVWhWuhjz ++m7CjPwlfAvIBJJlC96MhPakY6tbyA0hW0/GiOfaoanJvVdWJF7lEdKle1Zs= + -----END CERTIFICATE----- + Bag Attributes +- localKeyID: 39 EC 3D 5B 28 17 DA DD 09 7A 62 68 D5 44 1F C7 E2 F8 E0 CD ++ localKeyID: 16 42 EA 1B 7C AC BD 29 96 5A A8 B6 3C AB 85 E3 7D 12 C3 D4 + Key Attributes: + -----BEGIN ENCRYPTED PRIVATE KEY----- +-MIIFDjBABgkqhkiG9w0BBQ0wMzAbBgkqhkiG9w0BBQwwDgQIRKol42bAS3ACAggA +-MBQGCCqGSIb3DQMHBAjOulcyHMaWsQSCBMgbeXQ8pIYTENKm08UPeqxkCR2nLxSO +-gtRmBxDYjqYv35y4K8KhybBvSBlIPgE5jEWxUCcc1Qvy5ydUQ/X9pmkU8dnmAmDC +-o0zwd3lt2eNPy+4WliqFDVmHrLfYQFOoIrHjuzC0lI4C2iPOjxhfa1zFumedgwGS +-Gx10X5uEVH5N64fW6B3BvzQM0rn2qr0ONuSRmteRtI8NsznfkgeJ9a4CIAF7E5Z2 +-JTGI12edNzzUJ1JhX47ZW4miQwCU5Lcy01UZqTFuUpmK7FUQegtLy3e5eDKq+bIg +-ZYq6Hx7lu8hjT5kWZGKy71aYmHKEjI0f727cAbqDTG5uZBHBjwK/3p/znQVQXxBb +-1+E9CiKeFdXj2ElptsnDyoTvrSwJ/Jqu1wkXBcH5Embg7aJMod1IOs6OQB1rPDvd +-FFa84zbqRNWHSxxxYZxcB8YZinL6/dQJnisKu9LMQd3BBGsGWqH8Zz5tEvXjS5Kv +-3g9JRa7QDkSF005x6U+q/678G2MG+W+NWqje3NZx9Psh/Ptm+h+q9n2GSvnibiK5 +-mEj9FIwGquGpbZUTK5aXHcKN657dKiICsEJeNar1iZznRmzrMbZJ+DxqJnTw+GAv +-7Yb63/CNAtqSxiyNHGZ6NM2ZA9vAKY1HXn0RVC0y1+9FmNpSRwv3u/+ydSCnJonR +-GEKjzOqM9Dn7qxd+h4UnnA7hXWxITageB6G6KmfiXRxhiWyqtOICdCneCwpq8UZ4 +-e0fm05NRW6M2mqGQHsMNSvTWddwz5b8wgw4eVsb+xQytxVdj9lpBuB9KyjQjxUgU +-3oZx4KyWLoEWjkztPAiK3uv5GfotNIMdznRfON1+xm1M5swtn3y3Ru1f6STZC7Sp +-qvbG7jPmpB5gLEUri+chw+aKUYbJ0b820Od4FLQYnwLWr46VelYmV44xuR06wgqP +-1HchMSsHtS+ZlIiQQU9jhdyTrl86EQHH33dh+Sua8AhfewPRy2VFp3Zk34AUsWcX +-EfIYGemhqUD3drG0SMVbFFNOaFGp9e0tQouYOC6/qFBv/SNgQz3mAEkciJYbUuUZ +-V4YQPvtdvSrISV0e7bjFgdSEjG7P7F6CFrWTrjUlHZuWj6/rJ3+/1PHeJViyhsrJ +-ZYFe14W/48PDxBRl4IEAmxcN1Eb2Ez9eCqv0HW77HviG6zIgnkPrhWHjFGUpxKk4 +-jLfuB2Tfq9F7ozv4L2QAn+F/yKt1Rm2Hh5J61eUJtAT60pajg+gJtjmpu5Pr4HDn +-b6p3xmYwaL5Let1zCAbbMfdlDK14YjdOdM/BEKpXb9y4EIubX5AMY4ljXeG9gx+T +-B1TuQVdJ0P5wIK/D10TQzAWDKam0kv3RXidlzRxpZ3snRnN/L3EVd58Rntj1Oc0y +-FiIiSKRszDbPzKDxQE2sNgQcdO24JNLSa/sZYtq2gRgspl/YqIDo4ZYqi9x8F5OS +-rdPU5D/H8LWR4vpJLL8DYrHh5qFG3BX2OJIhPRS+48pDYtrRjp7S/1ZU64OJAytk +-99hDqSrn1j2a6yFE8L2Ptz+4UCF2OQXEc9Rqqeb8QEUuMSkNH4oQ+A2F6uzLpZi0 +-XH64R2niNC56LxV2i+3T5KREFLahyk8epLZlv8YdxYR4Sb7J/5yiooK3g9hmYVKO +-zLc= ++MIIFHDBOBgkqhkiG9w0BBQ0wQTApBgkqhkiG9w0BBQwwHAQIXssR4DibuUICAggA ++MAwGCCqGSIb3DQIJBQAwFAYIKoZIhvcNAwcECG0hY3ghCtwkBIIEyLAZKLA15mz3 ++ig2qipY2rD8xMs5/kP0bixjxwzpWsTAjkUTZq6UYWgQxE2CnAAysCUveftySMg5A ++Fs0gvi6pTh7yGheqpJf7+tEjs7qhaIHdT39gS6d9A2+rAye0/FybW/3zGInQVQmb ++47SF9lq93gevzR3nBFF6RWSeX3jCwhp6HpbuI0nt1XeJbmEW8ol+RqFHuzclj6UL ++jXIgNBayW89HfSzIRCUDTlG9MTPIE+rdx5FyRVFgw5Z1lYJbm5rBEY7tQU6Ut7Kt ++Is4KRTs5hAQkfe0K0i0hZn7Don5Go4EIBQQ4IZIaOm0F3SWpe9AuZi3NtwiBOTsn ++ObKTZGI7v+j6IVwVRSTy61u1EiRvNzUBnoItuOZXbCMe/1VdqET1Gc909rSdkeYg ++dEQ3XmGN09+0OKEcspEdtRC22T44LATm5RHiA3wkIqc7hI9IZ4tD0P5OzOrWkMLC ++GXUmkWUodzLwQAASwUNrez4LVI4fA4mZNTdT0Kgo9H/xRq95I32E6pkP5GX+IklA ++f7Yj5pfQHeL2ZygerApgaNwTvUhT+GyD6Ukd7eB21r599bn+FsTIYqkbBvE+Nle4 ++ZQfZ31lzUxkfkxfXMSbFufupAe6McfU3RdbPZL/4YEW/ukn96olThgJADSmtjxZI +++5EifMdjmZlPsd6xmcSFIe0GgqYegpprj7niT0HUKH+1+1T7EmwSXaN18vDFtNlz ++sVmM6ElSvdRR0VKlzGQ5E9JkeHN5ELqtZGPG0OeblCfu40t84t5N+Fyi2Ykdp7Yx ++6AkBGuXNVnfCFPRgumtFTtUdSc/BdEWLnvE3spfolYpIfOsrw3bMjlr9sm5JpCfX ++zZxlxjiSXjNrIIaG7VFUdBXsT1ctL/Oa6JbIzCW7nnPTfCHmlqsOczpF6pXP+gPR ++tFy2nlk6dNPPyiEhiOdv8c9YlwmRi477bnz++jYJATFNbrtLQdN/jN3Txu6gDEcH +++xvgibcVA7LG8U9T/olOqHdboOIcvOnHdBeOPZVmBQi+4+FPet42fzeP7d+wARED ++Wou/+EXCqMDW8bhukkac7/1CBZmvnC3mlNtmjAEbi5NT0vPP0sv5ff5zr9KJZnFD ++1ltO/Qk5GPuxm/2jW05WrUWv6Po0k25rlAKGnT54VoA+6Sl2288NgeZ9ZPC5WByU ++BF68xMiyeiAyrkRg8sV7raxF6GX3pK+iNcgh63TI8Mko22tHyXsVB3z7mfNnpM+W ++aSiHrXKQkX9vxjLj4GxkMTfVT9zZfMOMKkKS3EYVVulixJ7NYafw+nGv2018CZiA ++FeTb0dBh1ATMhoxwpb5kdmzAjnf67wQejQhrI0mBPhn2gmO2ilQdRWydG6sXEi0s ++dsBXyfSSE3pdC9MD7j98tG/KeXErjWlyfx3FP5YCTbhUKqzd8grwwtBp3Vb1iP8X ++t9N2YaQq5djme+afg2A2iDahSgXCNuB0RV+roqq0Rroehgytt7QSMkva+AenX6t8 ++lJrAivnHAz7464eD8vzRPRUfxwgX7A1zyE0wV3n45NN9Fv0rrVTo1vaAeakurGWw ++H5vqFcd2WVN/iKMzQ6S1IUDxUneoyf9qmgsGu4XxAtsOe2myaHaPylwS7fujQaz9 ++bk0ymLXuco7mflouywgROQ== + -----END ENCRYPTED PRIVATE KEY----- +diff --git a/test/keys/client_v3.crt b/test/keys/client_v3.crt +index a47f156a85..30b160cbd9 100644 +--- a/test/keys/client_v3.crt ++++ b/test/keys/client_v3.crt +@@ -1,24 +1,30 @@ + -----BEGIN CERTIFICATE----- +-MIIECDCCAvCgAwIBAgIBATANBgkqhkiG9w0BAQsFADCBsTELMAkGA1UEBhMCVVMx +-ETAPBgNVBAgMCE1hcnlsYW5kMRQwEgYDVQQHDAtGb3Jlc3QgSGlsbDEnMCUGA1UE +-CgweVGhlIEFwYWNoZSBTb2Z0d2FyZSBGb3VuZGF0aW9uMRYwFAYDVQQLDA1BcGFj +-aGUgVGhyaWZ0MRIwEAYDVQQDDAlsb2NhbGhvc3QxJDAiBgkqhkiG9w0BCQEWFWRl +-dkB0aHJpZnQuYXBhY2hlLm9yZzAeFw0xNjAyMjIxMTU4NDFaFw0yNDA1MTAxMTU4 +-NDFaMIGLMQswCQYDVQQGEwJVUzERMA8GA1UECAwITWFyeWxhbmQxFDASBgNVBAcM +-C0ZvcmVzdCBIaWxsMScwJQYDVQQKDB5UaGUgQXBhY2hlIFNvZnR3YXJlIEZvdW5k +-YXRpb24xFjAUBgNVBAsMDUFwYWNoZSBUaHJpZnQxEjAQBgNVBAMMCWxvY2FsaG9z +-dDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALZ0wiQnXg5QMZZWugd/ +-O3woatyHuczJuFSmYiRGWLr3PugB+xtvjy0rTcE2MNx/bdsVxrapCKA+tMFORbEl +-sF6jk0H+B7BzGoIwHr6N8GP1VOoA2esrhsNEz22aJI00VaFTFE8G/qgFcihyaVWH +-ZsLa3MakOzFUmOBaV2tLBjCjaznqXw3eo3XwUI0BkgS9b9vqXjScmfWXDw5+1is4 +-bCgumG2zj9EpLypc9qCGNKFBO2YIg0XsIIJ8RprlianjL6P4MfC6GPOyW4NbZaLd +-ESv/bumpVyuV/C/xqkPahvOwBuPE1loxZZPx6Qv368qn7SVNVZOLyX722spooA5G +-6csCAwEAAaNPME0wCQYDVR0TBAIwADALBgNVHQ8EBAMCBeAwMwYDVR0RBCwwKocE +-fwAAAYcQAAAAAAAAAAAAAAAAAAAAAYcQAAAAAAAAAAAAAP//fwAAATANBgkqhkiG +-9w0BAQsFAAOCAQEABUEmeQkG/PS935jMHDrg/5zm4X2xrnFtmTwb0jdxfau6z/7h +-AbxD5ioyY7FUTNCzI6SyMo9vJJtYCTCuEGr84JjT2R7232z60k4c1z/av01W3Orv +-ExHfAZ8llhkfu0209T5TaIYCB7hDFj5KDbta8c6fEcwtmlHQWj3M31lSNsr4ZtWW +-wObhK3sqTsOluHbhKNwlNEat48lbOQUC19I1Wi3dAS6n8lr0lEhfGKvqxu0ViASS +-N1nLfdkREGp39bYpKg0n6EFw5bYyV4qE3cnIedFJp7NIOM/6xndJMh/c5l6N2uyZ +-upArRQpw/3j+HkL1x9bs+900QK0GI6AxgjbopA== ++MIIFOTCCAyGgAwIBAgIBATANBgkqhkiG9w0BAQsFADCBsTESMBAGA1UEAwwJbG9j ++YWxob3N0MSQwIgYJKoZIhvcNAQkBFhVkZXZAdGhyaWZ0LmFwYWNoZS5vcmcxFjAU ++BgNVBAsMDUFwYWNoZSBUaHJpZnQxJzAlBgNVBAoMHlRoZSBBcGFjaGUgU29mdHdh ++cmUgRm91bmRhdGlvbjEUMBIGA1UEBwwLRm9yZXN0IEhpbGwxETAPBgNVBAgMCE1h ++cnlsYW5kMQswCQYDVQQGEwJVUzAeFw0yMjA2MzAyMjM3MzlaFw0zMDA5MTYyMjM3 ++MzlaMIGxMRIwEAYDVQQDDAlsb2NhbGhvc3QxJDAiBgkqhkiG9w0BCQEWFWRldkB0 ++aHJpZnQuYXBhY2hlLm9yZzEWMBQGA1UECwwNQXBhY2hlIFRocmlmdDEnMCUGA1UE ++CgweVGhlIEFwYWNoZSBTb2Z0d2FyZSBGb3VuZGF0aW9uMRQwEgYDVQQHDAtGb3Jl ++c3QgSGlsbDERMA8GA1UECAwITWFyeWxhbmQxCzAJBgNVBAYTAlVTMIIBIjANBgkq ++hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsqPCAkuOxPmJ773z1KWaJyYWswj7zTVI ++Tm/uF0pIMSTzJh136Y7qJDMfKHZuO0EEEuvWgjxuDQCoi9G8lIyq3TV04scUmC0e ++QpZDizz3XRqW7F2nMzapyp9I2dG0mRwVTb/iWlSIvGfIiWQZaX32P9V7/0CWH3zY ++Bk7Sve9N5rymcjMQFR7aNlNpU4tw2Oa8Jz8d4CjsljeZQ8K2fE+R9fUN+aq0DQlv ++hiBuKHHUCpypNneLdc5XB6dUUAsTlq8OjbWLbUqAiK3gdrsIgfx9dxKcBoQxXrkj ++KM3/VAM2PNFVZ4nz6Klxt5n0QlZBsq4EQmcUxUr7JoVBFkeaJABiQwIDAQABo1ow ++WDAJBgNVHRMEAjAAMAsGA1UdDwQEAwIF4DA+BgNVHREENzA1hwR/AAABhxAAAAAA ++AAAAAAAAAAAAAAABhxAAAAAAAAAAAAAA//9/AAABgglsb2NhbGhvc3QwDQYJKoZI ++hvcNAQELBQADggIBAH8vPs4l8VITIOvuxPPtRngiUteSxU+MQ/oYbuASguNQ7s4f ++ZmCnBFQm7n0TvFkaR8nSCKrKy0ok3Dm+RflCySq37K/aI+6okQXPkBk4VVcCnd/l ++Z0V966pqibxrH5oLH69nOBelZPxpmcWy8ZgTYyNGph6GXQ0G5bFRpSNDjrMZjjtu ++Om40MEMO/k8eD1xXJnuVxdIic8XcSFSLAeTV2ye/stFkU50ZNJy8zAa4D97tTc9z ++AFgNgb3i08P6Rs8HYOmBY8DxOwFi32kEgsNDnh5oZMj69UwQUSYaFzh+uVPr1b9F ++qEN66unWJl1/bb9XATfIvLU2nmVXZ32O5POIRdx/mhPSDUtO11OHlnfyrWqjYIUk ++Q6+iKznR88w+aTQReL+85C71xtFa5UYeEjrsew9YdJZnfURh2gX8Lf8wxpiHatd9 ++msX5er86hqWsV/cbhTkeZiJyh2qP/LZF32VH1ztUkauK7/l3r15pKp9b0pDJl69O ++KC6MzRWIS7cn/m3Hl9Ghcp3wAS3jgmwNg0PQKlCsWTQ/cmd+9Piy/wx4sdvu8N/M ++b1lUrduLwO+NisfT+U4lI1aY100S5EjjyUXettorvdmt/947PbLxZgd4ydzXN1q8 ++jmoDZYxLFsbXR5NcbmJ8ldkKDf7E0NTGmHPuk5jM4EwmnnGttHMOnlgn+G5C + -----END CERTIFICATE----- +diff --git a/test/keys/client_v3.key b/test/keys/client_v3.key +index b989f738e9..1ef93abcfc 100644 +--- a/test/keys/client_v3.key ++++ b/test/keys/client_v3.key +@@ -1,27 +1,27 @@ + -----BEGIN RSA PRIVATE KEY----- +-MIIEpAIBAAKCAQEAtnTCJCdeDlAxlla6B387fChq3Ie5zMm4VKZiJEZYuvc+6AH7 +-G2+PLStNwTYw3H9t2xXGtqkIoD60wU5FsSWwXqOTQf4HsHMagjAevo3wY/VU6gDZ +-6yuGw0TPbZokjTRVoVMUTwb+qAVyKHJpVYdmwtrcxqQ7MVSY4FpXa0sGMKNrOepf +-Dd6jdfBQjQGSBL1v2+peNJyZ9ZcPDn7WKzhsKC6YbbOP0SkvKlz2oIY0oUE7ZgiD +-RewggnxGmuWJqeMvo/gx8LoY87Jbg1tlot0RK/9u6alXK5X8L/GqQ9qG87AG48TW +-WjFlk/HpC/fryqftJU1Vk4vJfvbaymigDkbpywIDAQABAoIBAQCJpyUhaaIIYnBG +-4D+RkGgsj8Gvh6ah3j53ft/kRj6DMC4BlB0C4fO/PEB5WI0cjfcvpwo4nOapHyX4 +-ATmLIMgjXn2m+CSM9wo01mEbmrKWd20M7n96cWhGwg9MvVJ+RdGk2K0lwj02PoWW +-Blt576GTuNN/+j++Q/jiqsXxaLTO0/Wj+4b2gQh3n8I0u6bkolDLoERKIdrLGHH+ +-FU3sk8bpUhHmeiUTfwwci+juhtOY9e30AEst6xakCHbq1lRRyEYPtWL7oLds6yv0 +-UAKP7wS9Yl6dcekXSF1RZpB+fovTW+qPYn8aEuksaMz0wK96FCOjVNGYxMp+Xnvl +-sKx63UZBAoGBAOCbCbJtO0HsgIauvCvGZ50aZ1vDvQReCwri4ioutEg4JCAXHEsX +-+axz2J5j3UEQhGKr0EX9BG6YbxGW0Mmjf3QxeRB+0WLpMMY2SFt93oC2R1AX9l0I +-h50O6tYv5SXm96pKxwRz01d84mCJgwn/G+cZ/EJj4rfZsNbQst6JQFvzAoGBAM/1 +-gLVQt5l+IK+6s68EnADI66i7cKe6sj3rFRTahZJxL2vY28J9EB2mF/XEgARSNJQV +-X/H9zDrwKm9MX87/eCH2nEbc+5qSGpDPQm482C9DqsMitxCKD8bble1BlpjFb8hr +-R0Q3v5q8u5uomLBds5eUBeRKMtu9tOMA9KRSDGjJAoGAF44K2Ux9T2+XFwjSMSEQ +-krhHKKeBdijKrayXnWbif0Rr/XWPAQ0VoRFRIWNFu+IYkCSGpiBfy51u4IBZixv7 +-bNsXYDR8jwv3koH02qt7nzH+jpbEvoL7fewnkqjZNj1fsds/vebLvjwZnZguRukb +-KwRdoTTKfQ92bUDb0VzBhCMCgYB7H+3ObDXoCQctRCsyilYbGNp+EkxG4oC5rD/V +-EvRWmfDrt3+VjRpHk5lIB8mLxWgf7O/bhNqwYpWdQ+jN0++6nBo20oudHrff2PaJ +-8jhE85lc42bjwfpJUKVZzaVuWicu0GVnfGJTKT8ikBWnBjNYoWlDmrK164H3jQ9L +-YtC6EQKBgQCabFXXHx5cIJ2XOm4K/nTOG7ClvD80xapqyGroQd9E/cJUHHPp/wQ4 +-c1dMO5EViM7JRsKfxkl9vM5o9IM7swlYh4EMFSLJNjzgOY9XVkvQh0uGbiJOBO4f +-inUuWn1YWUj/HFtrT+0No+cYvZVcMKrFAy3K/AwpTbfKCk6roullNA== ++MIIEpQIBAAKCAQEAsqPCAkuOxPmJ773z1KWaJyYWswj7zTVITm/uF0pIMSTzJh13 ++6Y7qJDMfKHZuO0EEEuvWgjxuDQCoi9G8lIyq3TV04scUmC0eQpZDizz3XRqW7F2n ++Mzapyp9I2dG0mRwVTb/iWlSIvGfIiWQZaX32P9V7/0CWH3zYBk7Sve9N5rymcjMQ ++FR7aNlNpU4tw2Oa8Jz8d4CjsljeZQ8K2fE+R9fUN+aq0DQlvhiBuKHHUCpypNneL ++dc5XB6dUUAsTlq8OjbWLbUqAiK3gdrsIgfx9dxKcBoQxXrkjKM3/VAM2PNFVZ4nz ++6Klxt5n0QlZBsq4EQmcUxUr7JoVBFkeaJABiQwIDAQABAoIBAQCv5F/1xJHJzu6L ++OVxpJ7mWDIHTPOg50NnmKX2kPwbAJOKox+E2/fn7NL7cJ2g4PbcWLlKjH384nEpY ++iWYGWk8uyiDR3jWf9OTTqYLOCXSCnti12Sz1V0BtetLPbhVFoIo1aNcmHBAaepHQ ++/dersFQT3E9gMCbg0BsgcuI8E/F/WuFOI0LT0KikYH3r7QUE8yxoL37c+02X1DuP ++mpMhYSI3fUy33ix0Nkoeuy/br0j+5tRiKvSG6VAbGeFFRU6QZAyEhnpIZf8MjwcX ++DH2O5xuA6TnFosBsMlvVhrjqPUB/j/aGMb2+kyBl2JUEvwaeuatYdwdoOdARJ7gI ++L80776sJAoGBAOFr1//7VAF11qNYRHSc+y9wUTUTv5UXTNSuCBMRTQl9kgJSBFO3 ++SqmkhwrvBNKlvuGQGuYOHo0nQgDClegyf6FcOVvfWsSwDQdjOyw6PKgDL6vOZaAe ++Jrmp5Fs2n93GornHI87YPm2Gj274654UcOIG1eWzaOIyuEN7cqrUdY7/AoGBAMrf ++VwY/94YJFC9GCRzoeiAxserDqsdSquHlMA+TgZCQmsq7GPvVBa99gFYX5v6RkMh9 ++rEDaSb51ECMUo1Yot+UYjyRP1i3goDr/nAqGQxFEJm8JGhibDIfUWSdRh0cQ8OfT ++/M7FqhhYWCTCY3L4H2k+xGWmUsfpC+bijjvHmjC9AoGBAN/rDGkO8udwcoFXkMh1 ++l14MJ96de1VSC9PH++VU7j1bKsp7RikSjWvuLubBfvzv/6h4SP/1TovQT1QJ9nbs ++krNqtN96AuQWLRsFiyXnw5DxeU0kfPaMfNM428lvfWYDhmkcU4mIbJrHa3tEcGha ++zbb4K0k86hanYzpFSiY/XXdpAoGAaHJV7ozOVf6kmrYXCQATqDGNpQ16BkbkXYrO ++lKZfxVr9prRu53DEDZaylSCXN6cgAGjbX0RDRUAlv7nnYftyugtL3ukPnu0P8XAa ++GT0ImIIau33XJqXk7KWCBQEvgYISVXjJpncT3JbXQo2l/9II8flzydW4tt2f2A36 ++JoLcOo0CgYEAiDBPwbiwPf2paFan/Av52KDB6Lsq4EYYLeqTApACqkQLw9lDsCml ++dLD3t/ElCVTwhgRYFlo0rgC33TGGz7Kq+twcgZJ+7O7x+qa3YWTqtAYadyGZhl/p ++xGYwSQcKFWqu7TLrW9WK+SnV2Ku2G1IySlFUK4++9nNC2jRX13LaPMo= + -----END RSA PRIVATE KEY----- +diff --git a/test/keys/server.crt b/test/keys/server.crt +index 8a5ef3c3a9..9f04a08eec 100644 +--- a/test/keys/server.crt ++++ b/test/keys/server.crt +@@ -1,25 +1,38 @@ + -----BEGIN CERTIFICATE----- +-MIIENzCCAx+gAwIBAgIJAOYfYfw7NCOcMA0GCSqGSIb3DQEBBQUAMIGxMQswCQYD +-VQQGEwJVUzERMA8GA1UECAwITWFyeWxhbmQxFDASBgNVBAcMC0ZvcmVzdCBIaWxs +-MScwJQYDVQQKDB5UaGUgQXBhY2hlIFNvZnR3YXJlIEZvdW5kYXRpb24xFjAUBgNV +-BAsMDUFwYWNoZSBUaHJpZnQxEjAQBgNVBAMMCWxvY2FsaG9zdDEkMCIGCSqGSIb3 +-DQEJARYVZGV2QHRocmlmdC5hcGFjaGUub3JnMB4XDTE0MDQwNzE4NTgwMFoXDTIy +-MDYyNDE4NTgwMFowgbExCzAJBgNVBAYTAlVTMREwDwYDVQQIDAhNYXJ5bGFuZDEU +-MBIGA1UEBwwLRm9yZXN0IEhpbGwxJzAlBgNVBAoMHlRoZSBBcGFjaGUgU29mdHdh +-cmUgRm91bmRhdGlvbjEWMBQGA1UECwwNQXBhY2hlIFRocmlmdDESMBAGA1UEAwwJ +-bG9jYWxob3N0MSQwIgYJKoZIhvcNAQkBFhVkZXZAdGhyaWZ0LmFwYWNoZS5vcmcw +-ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCqE9TE9wEXp5LRtLQVDSGQ +-GV78+7ZtP/I/ZaJ6Q6ZGlfxDFvZjFF73seNhAvlKlYm/jflIHYLnNOCySN8I2Xw6 +-L9MbC+jvwkEKfQo4eDoxZnOZjNF5J1/lZtBeOowMkhhzBMH1Rds351/HjKNg6ZKg +-2Cldd0j7HbDtEixOLgLbPRpBcaYrLrNMasf3Hal+x8/b8ue28x93HSQBGmZmMIUw +-AinEu/fNP4lLGl/0kZb76TnyRpYSPYojtS6CnkH+QLYnsRREXJYwD1Xku62LipkX +-wCkRTnZ5nUsDMX6FPKgjQFQCWDXG/N096+PRUQAChhrXsJ+gF3NqWtDmtrhVQF4n +-AgMBAAGjUDBOMB0GA1UdDgQWBBQo8v0wzQPx3EEexJPGlxPK1PpgKjAfBgNVHSME +-GDAWgBQo8v0wzQPx3EEexJPGlxPK1PpgKjAMBgNVHRMEBTADAQH/MA0GCSqGSIb3 +-DQEBBQUAA4IBAQBGFRiJslcX0aJkwZpzTwSUdgcfKbpvNEbCNtVohfQVTI4a/oN5 +-U+yqDZJg3vOaOuiAZqyHcIlZ8qyesCgRN314Tl4/JQ++CW8mKj1meTgo5YFxcZYm +-T9vsI3C+Nzn84DINgI9mx6yktIt3QOKZRDpzyPkUzxsyJ8J427DaimDrjTR+fTwD +-1Dh09xeeMnSa5zeV1HEDyJTqCXutLetwQ/IyfmMBhIx+nvB5f67pz/m+Dv6V0r3I +-p4HCcdnDUDGJbfqtoqsAATQQWO+WWuswB6mOhDbvPTxhRpZq6AkgWqv4S+u3M2GO +-r5p9FrBgavAw5bKO54C0oQKpN/5fta5l6Ws0 ++MIIGuTCCBKGgAwIBAgIUDG+EIHE1EFeuj0ddWtxGQAPatt8wDQYJKoZIhvcNAQEL ++BQAwgbExEjAQBgNVBAMMCWxvY2FsaG9zdDEkMCIGCSqGSIb3DQEJARYVZGV2QHRo ++cmlmdC5hcGFjaGUub3JnMRYwFAYDVQQLDA1BcGFjaGUgVGhyaWZ0MScwJQYDVQQK ++DB5UaGUgQXBhY2hlIFNvZnR3YXJlIEZvdW5kYXRpb24xFDASBgNVBAcMC0ZvcmVz ++dCBIaWxsMREwDwYDVQQIDAhNYXJ5bGFuZDELMAkGA1UEBhMCVVMwHhcNMjIwNjMw ++MjIzNzI4WhcNMzAwOTE2MjIzNzI4WjCBsTESMBAGA1UEAwwJbG9jYWxob3N0MSQw ++IgYJKoZIhvcNAQkBFhVkZXZAdGhyaWZ0LmFwYWNoZS5vcmcxFjAUBgNVBAsMDUFw ++YWNoZSBUaHJpZnQxJzAlBgNVBAoMHlRoZSBBcGFjaGUgU29mdHdhcmUgRm91bmRh ++dGlvbjEUMBIGA1UEBwwLRm9yZXN0IEhpbGwxETAPBgNVBAgMCE1hcnlsYW5kMQsw ++CQYDVQQGEwJVUzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAM/uam3B ++XjI0x6hfdqdr4ATbiDA7niD8MShpyqBmdpMWu7ng91grZPCDl7T/6xCrdT92NI7m ++CpnA5hBK/0W8+5Y8NnKjkwZym9H5kO18FQ+hH1mJq3bx57mxsZAE1Iwbr21W/Kxh ++6Jx279ayywVAU6l9cH/aS5t3pl0qZUysBi3me2J88z6oYA3FNRaxX3kO4I8iJjYu ++vIfpWmXf8By/TOLzNkR1pJLXe849tAGrTtm+goLw59RMhIgxlS05DH3nGNKamWQ4 ++gr2H5do+2pFzKoom4vCryKgc/NXyEQNc/1FRJsi3/XK/NlezoPw+xV33AeDopmmK ++VsQ4RJONyVlgksCD2Q2odrCR/ryqirA5BTH8pQFfvCQfr4G6zkSzSDBTC9ZI2IIx ++JFs87mVpcu+0n+u482vdwsUAeByE3opA99MYrlrZDjLYl40Y0kzWHK42Is3iBz03 ++B4VFKUrsUXa5bcquYPkr1oVycamH1QTwXtgkU6DspAjuR3tUQT4i7sSEnoV8pGl0 ++gLWpGABxhGde0Z0V/x14BNFJ+ZG2uiUpLvMJshqBle1kIj+CqySQMc3mFpkdBTUZ ++nyVVuVRc6+oGGfBujOvqFKuS9rOhpCSBBVwbq5/lPSgtvy2uBiiTwlFLMgPvV66X ++xQGbbgTxOjIdrL1i6smD/6RXkbIMKOFb/o4NAgMBAAGjgcYwgcMwHQYDVR0OBBYE ++FKgE4SRwWu2cxDhjzef4eUmUnR3aMB8GA1UdIwQYMBaAFKgE4SRwWu2cxDhjzef4 ++eUmUnR3aMBIGA1UdEwEB/wQIMAYBAf8CAQAwDgYDVR0PAQH/BAQDAgHmMB0GA1Ud ++JQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjA+BgNVHREENzA1hwR/AAABhxAAAAAA ++AAAAAAAAAAAAAAABhxAAAAAAAAAAAAAA//9/AAABgglsb2NhbGhvc3QwDQYJKoZI ++hvcNAQELBQADggIBAIsl4jTS2dbrt7CStvwInf8InjaGqOrj4c0HDYVYBi33JkHx ++WasCJbjs+YWsQYcK3/rE9iYyZA/cwIE89x2ec1JX42SrayPLIdUF5VSo+DP3knTH ++Si7zt3igmziyKTsLoliISwOKwF5mdc+qeOE8CuExi7xIV4xlJxfM+XW6aeHdskof ++KSTd4qqzyO+wMezKb8u9/b0rMGNCvaM1etcWNlrfP2SXayLAfFkKypSbER1uIUzg ++ZnhSGyfYee6DrIATihPyOofjbUbqfF7MJtDTqTLhqhkndF+T7IR2LcR4XdtkxtdT ++F1WwKcM2FX/cjpdtGX76U6hPD6uWXDISk8IiS8HX10x0wamlVvK3zz9UsWwQp5DD ++EjG/XtMU59oAyiiGIbZllUWKOOabCcId8dvYZw4zoObCrYiYb2qvPcJPyUOzcCPn ++wsOS22lgTqEfoNzlrmh39YI8pvNDh+t0SkK8Nhllm4o/hIQkIxYlqsp4IkCnyxpO ++dgRMt2H+98FCNLGs3EIkmaeKD42OyglvdzM0IYHT2VDRfhwpjPvSEw/lJyYIi3R0 ++BEWNGA9Jx+BKZRxmyOerUqCMmImwMoLtKudEHpWz5bXcUkmqsmGXaHabVW7Z3nfN ++ZwdSLNHgHLNYBGe6Ak198CFHGmP/9XbV41cGNXctfe92baDv5IMgWOi35X5w + -----END CERTIFICATE----- +diff --git a/test/keys/server.key b/test/keys/server.key +index 263cfce59a..91666cf052 100644 +--- a/test/keys/server.key ++++ b/test/keys/server.key +@@ -1,28 +1,52 @@ + -----BEGIN PRIVATE KEY----- +-MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCqE9TE9wEXp5LR +-tLQVDSGQGV78+7ZtP/I/ZaJ6Q6ZGlfxDFvZjFF73seNhAvlKlYm/jflIHYLnNOCy +-SN8I2Xw6L9MbC+jvwkEKfQo4eDoxZnOZjNF5J1/lZtBeOowMkhhzBMH1Rds351/H +-jKNg6ZKg2Cldd0j7HbDtEixOLgLbPRpBcaYrLrNMasf3Hal+x8/b8ue28x93HSQB +-GmZmMIUwAinEu/fNP4lLGl/0kZb76TnyRpYSPYojtS6CnkH+QLYnsRREXJYwD1Xk +-u62LipkXwCkRTnZ5nUsDMX6FPKgjQFQCWDXG/N096+PRUQAChhrXsJ+gF3NqWtDm +-trhVQF4nAgMBAAECggEAW/y52YYW6ypROGbZ94DQpFV0kLO7qT8q0Ksxw5sPNaIt +-fEPRIymDa8ikyHWJS5Oxmw84wo5jnJV26jaLmwe2Lupq7Xf1lqej8f5LJtuv7cQR +-xfzp1vM65KJFFJHp6WqjGqJ6HSSZOpVDsnQYcXQjQCdpyAmaSWd3p+FqYSZ1mQmD +-bFNI7jqpczWSZhTdotQ7p7Hn9TVCehflP3yGIB3bQ+wCcCB85dOBz201L+YgaIck +-Sz43A4NvWaQIRLRDw7s9GW4jY5T0Jv282WIeAlVpVxLIwu48r4R4yGTIx9Ydowvq +-57+Y5iPPjAXxu0V9t00oS3bYxDaKh2DUfc/5zowq8QKBgQDYNVPXmaG0aIH4vjQ9 +-7fRdw/UDkYcQbn6CnglQOu77/S8ogQzpKCVJgJgkZNqOVtQMEPzekGEcLTbje1gU +-8Bky2k+PL9UwbFy0emnOVh4rqrNXHsRvJcehNT/PRb5hjF3MUMFV/0iD4b+naFaE +-jrSWiZ2ZXj2qfwAK52GFbtOuBQKBgQDJYQuGiY0r22E4waJmCSKczoBT3cwlVzWj +-V2ljgA9RHLNTVkvNNYQLGu2qngFrtwpeaSnsMDerVG4wKAQWyCnYzxVrlnC4uDrJ +-HXuFEltBWi9Ffbgfsnd3749AT0oBP1NT2tMleguyf5DFgjCR3VRJLdrVaaZ8row/ +-LqKcFMqnOwKBgB+OIO99l7E584Y3VG6ZdSneOLtNmRXX2pT7tcZE465ZdHGH7Dd3 +-SYHhx9K/+Xn+yDH+pLli/xlarAEldmSP6k2WuTfftlC78AfTOfAId5zN7CDR9791 +-Fx67I9X/itq33tS8EIuZl57P6uXm/4GXRloWOa8xpvRkVsBApuYPl8t1AoGATQDS +-y2sllDObBXzlgGbV2WgNIgSZ311toTv3jJiXQsjauW8yJRHln+l4H9mzaWDgkiFc +-ang1kUoDqF5k0eFQPxtQcYdhKwEnWWfwp33RbzfxA32DPnubuzzbZhfrkHaKgnIW +-cyor9uFYlm2l7ODZLfJez2RKyTplXnOSsmQw6akCgYAz3dj9Hskyj+HVJ+ht1OcE +-c7ai/ESkSA7Vajp0tjJp0EKjW/zq8DvUSXOtcdnJgkKycFluLwbmnaN4txBds1C1 +-Qr8Rt2sUCCBNZe1L6DHe3XBdbkJe9sgZVNTjtUSQrzy8UhvsCqG4YWeCu07Szcbc +-rdPUV9/uQkdx8VrShxlD8A== ++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 ++OV2cxV8xD52Pk7JlPVRIgWOT2Q== + -----END PRIVATE KEY----- +diff --git a/test/keys/server.pem b/test/keys/server.pem +index c45a9f8acf..127b25874c 100644 +--- a/test/keys/server.pem ++++ b/test/keys/server.pem +@@ -1,53 +1,90 @@ + -----BEGIN CERTIFICATE----- +-MIIENzCCAx+gAwIBAgIJAOYfYfw7NCOcMA0GCSqGSIb3DQEBBQUAMIGxMQswCQYD +-VQQGEwJVUzERMA8GA1UECAwITWFyeWxhbmQxFDASBgNVBAcMC0ZvcmVzdCBIaWxs +-MScwJQYDVQQKDB5UaGUgQXBhY2hlIFNvZnR3YXJlIEZvdW5kYXRpb24xFjAUBgNV +-BAsMDUFwYWNoZSBUaHJpZnQxEjAQBgNVBAMMCWxvY2FsaG9zdDEkMCIGCSqGSIb3 +-DQEJARYVZGV2QHRocmlmdC5hcGFjaGUub3JnMB4XDTE0MDQwNzE4NTgwMFoXDTIy +-MDYyNDE4NTgwMFowgbExCzAJBgNVBAYTAlVTMREwDwYDVQQIDAhNYXJ5bGFuZDEU +-MBIGA1UEBwwLRm9yZXN0IEhpbGwxJzAlBgNVBAoMHlRoZSBBcGFjaGUgU29mdHdh +-cmUgRm91bmRhdGlvbjEWMBQGA1UECwwNQXBhY2hlIFRocmlmdDESMBAGA1UEAwwJ +-bG9jYWxob3N0MSQwIgYJKoZIhvcNAQkBFhVkZXZAdGhyaWZ0LmFwYWNoZS5vcmcw +-ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCqE9TE9wEXp5LRtLQVDSGQ +-GV78+7ZtP/I/ZaJ6Q6ZGlfxDFvZjFF73seNhAvlKlYm/jflIHYLnNOCySN8I2Xw6 +-L9MbC+jvwkEKfQo4eDoxZnOZjNF5J1/lZtBeOowMkhhzBMH1Rds351/HjKNg6ZKg +-2Cldd0j7HbDtEixOLgLbPRpBcaYrLrNMasf3Hal+x8/b8ue28x93HSQBGmZmMIUw +-AinEu/fNP4lLGl/0kZb76TnyRpYSPYojtS6CnkH+QLYnsRREXJYwD1Xku62LipkX +-wCkRTnZ5nUsDMX6FPKgjQFQCWDXG/N096+PRUQAChhrXsJ+gF3NqWtDmtrhVQF4n +-AgMBAAGjUDBOMB0GA1UdDgQWBBQo8v0wzQPx3EEexJPGlxPK1PpgKjAfBgNVHSME +-GDAWgBQo8v0wzQPx3EEexJPGlxPK1PpgKjAMBgNVHRMEBTADAQH/MA0GCSqGSIb3 +-DQEBBQUAA4IBAQBGFRiJslcX0aJkwZpzTwSUdgcfKbpvNEbCNtVohfQVTI4a/oN5 +-U+yqDZJg3vOaOuiAZqyHcIlZ8qyesCgRN314Tl4/JQ++CW8mKj1meTgo5YFxcZYm +-T9vsI3C+Nzn84DINgI9mx6yktIt3QOKZRDpzyPkUzxsyJ8J427DaimDrjTR+fTwD +-1Dh09xeeMnSa5zeV1HEDyJTqCXutLetwQ/IyfmMBhIx+nvB5f67pz/m+Dv6V0r3I +-p4HCcdnDUDGJbfqtoqsAATQQWO+WWuswB6mOhDbvPTxhRpZq6AkgWqv4S+u3M2GO +-r5p9FrBgavAw5bKO54C0oQKpN/5fta5l6Ws0 ++MIIGuTCCBKGgAwIBAgIUDG+EIHE1EFeuj0ddWtxGQAPatt8wDQYJKoZIhvcNAQEL ++BQAwgbExEjAQBgNVBAMMCWxvY2FsaG9zdDEkMCIGCSqGSIb3DQEJARYVZGV2QHRo ++cmlmdC5hcGFjaGUub3JnMRYwFAYDVQQLDA1BcGFjaGUgVGhyaWZ0MScwJQYDVQQK ++DB5UaGUgQXBhY2hlIFNvZnR3YXJlIEZvdW5kYXRpb24xFDASBgNVBAcMC0ZvcmVz ++dCBIaWxsMREwDwYDVQQIDAhNYXJ5bGFuZDELMAkGA1UEBhMCVVMwHhcNMjIwNjMw ++MjIzNzI4WhcNMzAwOTE2MjIzNzI4WjCBsTESMBAGA1UEAwwJbG9jYWxob3N0MSQw ++IgYJKoZIhvcNAQkBFhVkZXZAdGhyaWZ0LmFwYWNoZS5vcmcxFjAUBgNVBAsMDUFw ++YWNoZSBUaHJpZnQxJzAlBgNVBAoMHlRoZSBBcGFjaGUgU29mdHdhcmUgRm91bmRh ++dGlvbjEUMBIGA1UEBwwLRm9yZXN0IEhpbGwxETAPBgNVBAgMCE1hcnlsYW5kMQsw ++CQYDVQQGEwJVUzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAM/uam3B ++XjI0x6hfdqdr4ATbiDA7niD8MShpyqBmdpMWu7ng91grZPCDl7T/6xCrdT92NI7m ++CpnA5hBK/0W8+5Y8NnKjkwZym9H5kO18FQ+hH1mJq3bx57mxsZAE1Iwbr21W/Kxh ++6Jx279ayywVAU6l9cH/aS5t3pl0qZUysBi3me2J88z6oYA3FNRaxX3kO4I8iJjYu ++vIfpWmXf8By/TOLzNkR1pJLXe849tAGrTtm+goLw59RMhIgxlS05DH3nGNKamWQ4 ++gr2H5do+2pFzKoom4vCryKgc/NXyEQNc/1FRJsi3/XK/NlezoPw+xV33AeDopmmK ++VsQ4RJONyVlgksCD2Q2odrCR/ryqirA5BTH8pQFfvCQfr4G6zkSzSDBTC9ZI2IIx ++JFs87mVpcu+0n+u482vdwsUAeByE3opA99MYrlrZDjLYl40Y0kzWHK42Is3iBz03 ++B4VFKUrsUXa5bcquYPkr1oVycamH1QTwXtgkU6DspAjuR3tUQT4i7sSEnoV8pGl0 ++gLWpGABxhGde0Z0V/x14BNFJ+ZG2uiUpLvMJshqBle1kIj+CqySQMc3mFpkdBTUZ ++nyVVuVRc6+oGGfBujOvqFKuS9rOhpCSBBVwbq5/lPSgtvy2uBiiTwlFLMgPvV66X ++xQGbbgTxOjIdrL1i6smD/6RXkbIMKOFb/o4NAgMBAAGjgcYwgcMwHQYDVR0OBBYE ++FKgE4SRwWu2cxDhjzef4eUmUnR3aMB8GA1UdIwQYMBaAFKgE4SRwWu2cxDhjzef4 ++eUmUnR3aMBIGA1UdEwEB/wQIMAYBAf8CAQAwDgYDVR0PAQH/BAQDAgHmMB0GA1Ud ++JQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjA+BgNVHREENzA1hwR/AAABhxAAAAAA ++AAAAAAAAAAAAAAABhxAAAAAAAAAAAAAA//9/AAABgglsb2NhbGhvc3QwDQYJKoZI ++hvcNAQELBQADggIBAIsl4jTS2dbrt7CStvwInf8InjaGqOrj4c0HDYVYBi33JkHx ++WasCJbjs+YWsQYcK3/rE9iYyZA/cwIE89x2ec1JX42SrayPLIdUF5VSo+DP3knTH ++Si7zt3igmziyKTsLoliISwOKwF5mdc+qeOE8CuExi7xIV4xlJxfM+XW6aeHdskof ++KSTd4qqzyO+wMezKb8u9/b0rMGNCvaM1etcWNlrfP2SXayLAfFkKypSbER1uIUzg ++ZnhSGyfYee6DrIATihPyOofjbUbqfF7MJtDTqTLhqhkndF+T7IR2LcR4XdtkxtdT ++F1WwKcM2FX/cjpdtGX76U6hPD6uWXDISk8IiS8HX10x0wamlVvK3zz9UsWwQp5DD ++EjG/XtMU59oAyiiGIbZllUWKOOabCcId8dvYZw4zoObCrYiYb2qvPcJPyUOzcCPn ++wsOS22lgTqEfoNzlrmh39YI8pvNDh+t0SkK8Nhllm4o/hIQkIxYlqsp4IkCnyxpO ++dgRMt2H+98FCNLGs3EIkmaeKD42OyglvdzM0IYHT2VDRfhwpjPvSEw/lJyYIi3R0 ++BEWNGA9Jx+BKZRxmyOerUqCMmImwMoLtKudEHpWz5bXcUkmqsmGXaHabVW7Z3nfN ++ZwdSLNHgHLNYBGe6Ak198CFHGmP/9XbV41cGNXctfe92baDv5IMgWOi35X5w + -----END CERTIFICATE----- + -----BEGIN PRIVATE KEY----- +-MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCqE9TE9wEXp5LR +-tLQVDSGQGV78+7ZtP/I/ZaJ6Q6ZGlfxDFvZjFF73seNhAvlKlYm/jflIHYLnNOCy +-SN8I2Xw6L9MbC+jvwkEKfQo4eDoxZnOZjNF5J1/lZtBeOowMkhhzBMH1Rds351/H +-jKNg6ZKg2Cldd0j7HbDtEixOLgLbPRpBcaYrLrNMasf3Hal+x8/b8ue28x93HSQB +-GmZmMIUwAinEu/fNP4lLGl/0kZb76TnyRpYSPYojtS6CnkH+QLYnsRREXJYwD1Xk +-u62LipkXwCkRTnZ5nUsDMX6FPKgjQFQCWDXG/N096+PRUQAChhrXsJ+gF3NqWtDm +-trhVQF4nAgMBAAECggEAW/y52YYW6ypROGbZ94DQpFV0kLO7qT8q0Ksxw5sPNaIt +-fEPRIymDa8ikyHWJS5Oxmw84wo5jnJV26jaLmwe2Lupq7Xf1lqej8f5LJtuv7cQR +-xfzp1vM65KJFFJHp6WqjGqJ6HSSZOpVDsnQYcXQjQCdpyAmaSWd3p+FqYSZ1mQmD +-bFNI7jqpczWSZhTdotQ7p7Hn9TVCehflP3yGIB3bQ+wCcCB85dOBz201L+YgaIck +-Sz43A4NvWaQIRLRDw7s9GW4jY5T0Jv282WIeAlVpVxLIwu48r4R4yGTIx9Ydowvq +-57+Y5iPPjAXxu0V9t00oS3bYxDaKh2DUfc/5zowq8QKBgQDYNVPXmaG0aIH4vjQ9 +-7fRdw/UDkYcQbn6CnglQOu77/S8ogQzpKCVJgJgkZNqOVtQMEPzekGEcLTbje1gU +-8Bky2k+PL9UwbFy0emnOVh4rqrNXHsRvJcehNT/PRb5hjF3MUMFV/0iD4b+naFaE +-jrSWiZ2ZXj2qfwAK52GFbtOuBQKBgQDJYQuGiY0r22E4waJmCSKczoBT3cwlVzWj +-V2ljgA9RHLNTVkvNNYQLGu2qngFrtwpeaSnsMDerVG4wKAQWyCnYzxVrlnC4uDrJ +-HXuFEltBWi9Ffbgfsnd3749AT0oBP1NT2tMleguyf5DFgjCR3VRJLdrVaaZ8row/ +-LqKcFMqnOwKBgB+OIO99l7E584Y3VG6ZdSneOLtNmRXX2pT7tcZE465ZdHGH7Dd3 +-SYHhx9K/+Xn+yDH+pLli/xlarAEldmSP6k2WuTfftlC78AfTOfAId5zN7CDR9791 +-Fx67I9X/itq33tS8EIuZl57P6uXm/4GXRloWOa8xpvRkVsBApuYPl8t1AoGATQDS +-y2sllDObBXzlgGbV2WgNIgSZ311toTv3jJiXQsjauW8yJRHln+l4H9mzaWDgkiFc +-ang1kUoDqF5k0eFQPxtQcYdhKwEnWWfwp33RbzfxA32DPnubuzzbZhfrkHaKgnIW +-cyor9uFYlm2l7ODZLfJez2RKyTplXnOSsmQw6akCgYAz3dj9Hskyj+HVJ+ht1OcE +-c7ai/ESkSA7Vajp0tjJp0EKjW/zq8DvUSXOtcdnJgkKycFluLwbmnaN4txBds1C1 +-Qr8Rt2sUCCBNZe1L6DHe3XBdbkJe9sgZVNTjtUSQrzy8UhvsCqG4YWeCu07Szcbc +-rdPUV9/uQkdx8VrShxlD8A== ++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 ++OV2cxV8xD52Pk7JlPVRIgWOT2Q== + -----END PRIVATE KEY----- diff --git a/patches/THRIFT-5449.patch b/patches/THRIFT-5449.patch new file mode 100644 index 0000000..b40bebf --- /dev/null +++ b/patches/THRIFT-5449.patch @@ -0,0 +1,94 @@ +From 88a45ac77518eafb57db08938ecdf38c5fcf7a31 Mon Sep 17 00:00:00 2001 +From: Yiyang Zhou +Date: Wed, 4 Aug 2021 21:55:04 +0800 +Subject: [PATCH] THRIFT-5449: Use poll instead of select in Python + TNonblockingServer if available Client: Python + +--- + lib/py/src/server/TNonblockingServer.py | 46 +++++++++++++++++++++++-- + 1 file changed, 44 insertions(+), 2 deletions(-) + +diff --git a/lib/py/src/server/TNonblockingServer.py b/lib/py/src/server/TNonblockingServer.py +index ac06496511..fdf6779ad2 100644 +--- a/lib/py/src/server/TNonblockingServer.py ++++ b/lib/py/src/server/TNonblockingServer.py +@@ -253,6 +253,7 @@ def __init__(self, + self._read, self._write = socket.socketpair() + self.prepared = False + self._stop = False ++ self.poll = select.poll() if hasattr(select, 'poll') else None + + def setNumThreads(self, num): + """Set the number of worker threads that should be created.""" +@@ -318,13 +319,53 @@ def _select(self): + else: + return select.select(readable, writable, readable) + (True,) + ++ def _poll_select(self): ++ """Does poll on open connections, if available.""" ++ remaining = [] ++ ++ self.poll.register(self.socket.handle.fileno(), select.POLLIN | select.POLLRDNORM) ++ self.poll.register(self._read.fileno(), select.POLLIN | select.POLLRDNORM) ++ ++ for i, connection in list(self.clients.items()): ++ if connection.is_readable(): ++ self.poll.register(connection.fileno(), select.POLLIN | select.POLLRDNORM | select.POLLERR | select.POLLHUP | select.POLLNVAL) ++ if connection.remaining or connection.received: ++ remaining.append(connection.fileno()) ++ if connection.is_writeable(): ++ self.poll.register(connection.fileno(), select.POLLOUT | select.POLLWRNORM) ++ if connection.is_closed(): ++ try: ++ self.poll.unregister(i) ++ except KeyError: ++ logger.debug("KeyError in unregistering connections...") ++ del self.clients[i] ++ if remaining: ++ return remaining, [], [], False ++ ++ rlist = [] ++ wlist = [] ++ xlist = [] ++ pollres = self.poll.poll() ++ for fd, event in pollres: ++ if event & (select.POLLERR | select.POLLHUP | select.POLLNVAL): ++ xlist.append(fd) ++ elif event & (select.POLLOUT | select.POLLWRNORM): ++ wlist.append(fd) ++ elif event & (select.POLLIN | select.POLLRDNORM): ++ rlist.append(fd) ++ else: # should be impossible ++ logger.debug("reached an impossible state in _poll_select") ++ xlist.append(fd) ++ ++ return rlist, wlist, xlist, True ++ + def handle(self): + """Handle requests. + + WARNING! You must call prepare() BEFORE calling handle() + """ + assert self.prepared, "You have to call prepare before handle" +- rset, wset, xset, selected = self._select() ++ rset, wset, xset, selected = self._select() if not self.poll else self._poll_select() + for readable in rset: + if readable == self._read.fileno(): + # don't care i just need to clean readable flag +@@ -343,6 +384,8 @@ def handle(self): + connection.read() + if connection.received: + connection.status = WAIT_PROCESS ++ if self.poll: ++ self.poll.unregister(connection.fileno()) + msg = connection.received.popleft() + itransport = TTransport.TMemoryBuffer(msg.buffer, msg.offset) + otransport = TTransport.TMemoryBuffer() +@@ -354,7 +397,6 @@ def handle(self): + self.clients[writeable].write() + for oob in xset: + self.clients[oob].close() +- del self.clients[oob] + + def close(self): + """Closes the server.""" diff --git a/patches/broken_boost_1.62.patch b/patches/broken_boost_1.62.patch new file mode 100644 index 0000000..3af4b76 --- /dev/null +++ b/patches/broken_boost_1.62.patch @@ -0,0 +1,22 @@ +Description: these fail in chroot environments +Author: Laszlo Boszormenyi (GCS) +Last-Update: 2021-09-26 + +--- + +--- thrift-0.10.0.orig/lib/cpp/test/Makefile.am ++++ thrift-0.10.0/lib/cpp/test/Makefile.am +@@ -113,9 +113,10 @@ check_PROGRAMS += \ + endif + + TESTS_ENVIRONMENT= \ +- BOOST_TEST_LOG_SINK=tests.xml \ +- BOOST_TEST_LOG_LEVEL=test_suite \ +- BOOST_TEST_LOG_FORMAT=XML ++ BOOST_TEST_LOGGER=XML,test_suite,tests.xml ++# BOOST_TEST_LOG_SINK=tests.xml \ ++# BOOST_TEST_LOG_LEVEL=test_suite \ ++# BOOST_TEST_LOG_FORMAT=XML + + TESTS = \ + $(check_PROGRAMS) diff --git a/patches/disable_IPv4_only_tests.patch b/patches/disable_IPv4_only_tests.patch new file mode 100644 index 0000000..fff6b15 --- /dev/null +++ b/patches/disable_IPv4_only_tests.patch @@ -0,0 +1,33 @@ +Description: disable IPv4 only tests + As these tests are IPv4 only, fail to work on IPv6 hosts. Disable to prevent + FTBFS. +Author: Laszlo Boszormenyi (GCS) +Forwarded: no +Bug-Debian: https://bugs.debian.org/1011011 +Last-Update: 2022-05-15 + +--- + +--- a/lib/cpp/test/Makefile.am ++++ b/lib/cpp/test/Makefile.am +@@ -82,7 +82,6 @@ Benchmark_SOURCES = \ + Benchmark_LDADD = libtestgencpp.la + + check_PROGRAMS = \ +- UnitTests \ + TFDTransportTest \ + TPipedTransportTest \ + DebugProtoTest \ +@@ -105,9 +104,9 @@ check_PROGRAMS = \ + if AMX_HAVE_LIBEVENT + noinst_PROGRAMS += \ + processor_test +-check_PROGRAMS += \ +- TNonblockingServerTest \ +- TNonblockingSSLServerTest ++#check_PROGRAMS += \ ++# TNonblockingServerTest \ ++# TNonblockingSSLServerTest + endif + + TESTS_ENVIRONMENT= \ diff --git a/patches/disable_TLSv1_0_and_TLSv1_1.patch b/patches/disable_TLSv1_0_and_TLSv1_1.patch new file mode 100644 index 0000000..9d9ec74 --- /dev/null +++ b/patches/disable_TLSv1_0_and_TLSv1_1.patch @@ -0,0 +1,26 @@ +Description: Disable TLS v1.0 and TLS v1.1 connection tests + TLS v1.0 and TLS v1.1 protocols are disabled as of OpenSSL 1.1.0f-4, see: + https://packages.qa.debian.org/o/openssl/news/20170806T233554Z.html +Author: Laszlo Boszormenyi (GCS) +Bug-Debian: https://bugs.debian.org/859128 +Last-Update: 2021-09-26 + +--- + +--- thrift-0.10.0.orig/lib/cpp/test/SecurityTest.cpp ++++ thrift-0.10.0/lib/cpp/test/SecurityTest.cpp +@@ -224,11 +224,11 @@ BOOST_AUTO_TEST_CASE(ssl_security_matrix + { + // server = SSLTLS SSLv2 SSLv3 TLSv1_0 TLSv1_1 TLSv1_2 + // client +- /* SSLTLS */ { true, false, false, true, true, true }, ++ /* SSLTLS */ { true, false, false, false, false, true }, + /* SSLv2 */ { false, false, false, false, false, false }, + /* SSLv3 */ { false, false, true, false, false, false }, +- /* TLSv1_0 */ { true, false, false, true, false, false }, +- /* TLSv1_1 */ { true, false, false, false, true, false }, ++ /* TLSv1_0 */ { false, false, false, true, false, false }, ++ /* TLSv1_1 */ { false, false, false, false, true, false }, + /* TLSv1_2 */ { true, false, false, false, false, true } + }; + diff --git a/patches/disable_failing_tests.patch b/patches/disable_failing_tests.patch new file mode 100644 index 0000000..6d4f02a --- /dev/null +++ b/patches/disable_failing_tests.patch @@ -0,0 +1,68 @@ +Description: disable failing tests + SSL and security tests don't work on buildd machines. Other tests that seem + to be incompatible with newer GLib versions. +Author: Laszlo Boszormenyi (GCS) +Last-Update: 2022-04-01 + +--- + +--- a/lib/c_glib/test/Makefile.am ++++ b/lib/c_glib/test/Makefile.am +@@ -47,7 +47,6 @@ check_PROGRAMS = \ + testapplicationexception \ + testcontainertest \ + testtransportsocket \ +- testtransportsslsocket \ + testbinaryprotocol \ + testcompactprotocol \ + testbufferedtransport \ +--- a/lib/cpp/test/Makefile.am ++++ b/lib/cpp/test/Makefile.am +@@ -94,8 +94,6 @@ check_PROGRAMS = \ + TransportTest \ + TInterruptTest \ + TServerIntegrationTest \ +- SecurityTest \ +- SecurityFromBufferTest \ + ZlibTest \ + TFileTransportTest \ + link_test \ +--- a/lib/c_glib/test/testthriftbinaryreadcheck.c ++++ b/lib/c_glib/test/testthriftbinaryreadcheck.c +@@ -272,8 +272,8 @@ main (int argc, char *argv[]) + g_test_init (&argc, &argv, NULL); + + g_test_add_func ("/testthriftbinaryreadcheck/CreateAndDestroy", test_create_and_destroy); +- g_test_add_func ("/testthriftbinaryreadcheck/Initialize", test_initialize); +- g_test_add_func ("/testthriftbinaryreadcheck/test_read_and_write_complex_types", test_read_and_wirte_complex_types); ++// g_test_add_func ("/testthriftbinaryreadcheck/Initialize", test_initialize); ++// g_test_add_func ("/testthriftbinaryreadcheck/test_read_and_write_complex_types", test_read_and_wirte_complex_types); + + return g_test_run (); + } +--- a/lib/c_glib/test/testthriftcompactreadcheck.c ++++ b/lib/c_glib/test/testthriftcompactreadcheck.c +@@ -267,9 +267,9 @@ main (int argc, char *argv[]) + + g_test_add_func ("/testthriftcompactreadcheck/CreateAndDestroy", + test_create_and_destroy); +- g_test_add_func ("/testthriftcompactreadcheck/Initialize", test_initialize); +- g_test_add_func ("/testthriftcompactreadcheck/ReadAndWriteComplexTypes", +- test_read_and_write_complex_types); ++// g_test_add_func ("/testthriftcompactreadcheck/Initialize", test_initialize); ++// g_test_add_func ("/testthriftcompactreadcheck/ReadAndWriteComplexTypes", ++// test_read_and_write_complex_types); + + return g_test_run (); + } +--- a/lib/c_glib/test/testthriftframedreadcheck.c ++++ b/lib/c_glib/test/testthriftframedreadcheck.c +@@ -216,7 +216,7 @@ main(int argc, char *argv[]) + g_test_init (&argc, &argv, NULL); + + g_test_add_func ("/testframedtransport/OpenAndClose", test_open_and_close); +- g_test_add_func ("/testframedtransport/ReadAndWrite", test_read_and_write); ++// g_test_add_func ("/testframedtransport/ReadAndWrite", test_read_and_write); + + return g_test_run (); + } diff --git a/patches/disable_locale_tests.patch b/patches/disable_locale_tests.patch new file mode 100644 index 0000000..d09a1d5 --- /dev/null +++ b/patches/disable_locale_tests.patch @@ -0,0 +1,37 @@ +Description: disable locale specific tests + On buildd network locales might not be available. +Author: Laszlo Boszormenyi (GCS) +Forwarded: no +Last-Update: 2022-03-31 + +--- + + +--- thrift-0.16.0.orig/lib/cpp/test/ToStringTest.cpp ++++ thrift-0.16.0/lib/cpp/test/ToStringTest.cpp +@@ -44,6 +44,7 @@ BOOST_AUTO_TEST_CASE(base_types_to_strin + // NOTE: Currently (as of 2021.08.12) the locale-based tests do not work on + // Windows in the AppVeyor Thrift CI build correctly. Therefore disabled on + // Windows: ++/* + #ifndef _WIN32 + BOOST_AUTO_TEST_CASE(locale_en_US_int_to_string) { + #ifdef _WIN32 +@@ -53,7 +54,9 @@ BOOST_AUTO_TEST_CASE(locale_en_US_int_to + #endif + BOOST_CHECK_EQUAL(to_string(1000000), "1000000"); + } ++*/ + ++/* + BOOST_AUTO_TEST_CASE(locale_de_DE_floating_point_to_string) { + #ifdef _WIN32 + std::locale::global(std::locale("de-DE.UTF-8")); +@@ -65,6 +68,7 @@ BOOST_AUTO_TEST_CASE(locale_de_DE_floati + BOOST_CHECK_EQUAL(to_string(1.5L), "1.5"); + } + #endif ++*/ + + BOOST_AUTO_TEST_CASE(empty_vector_to_string) { + std::vector l; diff --git a/patches/disable_php_testing.patch b/patches/disable_php_testing.patch new file mode 100644 index 0000000..0b40284 --- /dev/null +++ b/patches/disable_php_testing.patch @@ -0,0 +1,26 @@ +Description: PHP tests are not phpunit 8 compatible + Disable those for now. +Author: Laszlo Boszormenyi (GCS) +Last-Update: 2019-09-22 + +--- + +--- thrift-0.12.0.orig/lib/php/test/Makefile.am ++++ thrift-0.12.0/lib/php/test/Makefile.am +@@ -35,13 +35,13 @@ deps: $(top_srcdir)/composer.json + all-local: deps + + check-json-serializer: deps stubs +- $(PHPUNIT) --log-junit=TEST-log-json-serializer.xml JsonSerialize/ ++# $(PHPUNIT) --log-junit=TEST-log-json-serializer.xml JsonSerialize/ + + check-validator: deps stubs +- $(PHPUNIT) --log-junit=TEST-log-validator.xml Validator/ ++# $(PHPUNIT) --log-junit=TEST-log-validator.xml Validator/ + + check-protocol: deps stubs +- $(PHPUNIT) --log-junit=TEST-log-protocol.xml Protocol/ ++# $(PHPUNIT) --log-junit=TEST-log-protocol.xml Protocol/ + + check: deps stubs \ + check-protocol \ diff --git a/patches/fix_out_of_memory.patch b/patches/fix_out_of_memory.patch new file mode 100644 index 0000000..ac90ac7 --- /dev/null +++ b/patches/fix_out_of_memory.patch @@ -0,0 +1,24 @@ +From b664cfe2533e4bbf00fd5e7e0211bf7161ee2a04 Mon Sep 17 00:00:00 2001 +From: shangxu +Date: Fri, 13 Nov 2020 18:03:01 +0800 +Subject: [PATCH] fix Out Of Memory when use TNonblockingServer + +--- + lib/py/src/server/TNonblockingServer.py | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/lib/py/src/server/TNonblockingServer.py b/lib/py/src/server/TNonblockingServer.py +index f62d486ebc..ac06496511 100644 +--- a/lib/py/src/server/TNonblockingServer.py ++++ b/lib/py/src/server/TNonblockingServer.py +@@ -151,6 +151,10 @@ def read(self): + while len(self._rbuf) >= self._reading.end: + if self._reading.is_header: + mlen, = struct.unpack('!i', self._rbuf[:4]) ++ if mlen < 0: ++ logger.error('could not read the head from frame') ++ self.close() ++ break + self._reading = Message(self._reading.end, mlen, False) + self.status = WAIT_MESSAGE + else: diff --git a/patches/go_no_mod.patch b/patches/go_no_mod.patch new file mode 100644 index 0000000..d5a945a --- /dev/null +++ b/patches/go_no_mod.patch @@ -0,0 +1,101 @@ +Description: Go mod can't be specified + Just delete those from Go invocation. +Author: Laszlo Boszormenyi (GCS) +Forwarded: no +Last-Update: 2022-04-01 + +--- + +--- thrift-0.16.0.orig/lib/go/Makefile.am ++++ thrift-0.16.0/lib/go/Makefile.am +@@ -31,13 +31,13 @@ install: + @echo '##############################################################' + + check-local: +- $(GO) test -mod=mod ./thrift ++ $(GO) test ./thrift + + clean-local: + $(RM) -rf pkg + + all-local: +- $(GO) build -mod=mod ./thrift ++ $(GO) build ./thrift + + EXTRA_DIST = \ + thrift \ +--- thrift-0.16.0.orig/lib/go/test/Makefile.am ++++ thrift-0.16.0/lib/go/test/Makefile.am +@@ -89,7 +89,7 @@ gopath: $(THRIFT) $(THRIFTTEST) \ + touch gopath + + check: gopath +- $(GO) build -mod=mod \ ++ $(GO) build \ + ./gopath/src/includestest \ + ./gopath/src/binarykeytest \ + ./gopath/src/servicestest \ +@@ -107,14 +107,14 @@ check: gopath + ./gopath/src/duplicateimportstest \ + ./gopath/src/equalstest \ + ./gopath/src/conflictargnamestest +- $(GO) test -mod=mod github.com/apache/thrift/lib/go/thrift +- $(GO) test -mod=mod ./gopath/src/tests ./gopath/src/dontexportrwtest ++ $(GO) test github.com/apache/thrift/lib/go/thrift ++ $(GO) test ./gopath/src/tests ./gopath/src/dontexportrwtest + + clean-local: + $(RM) -r gopath ThriftTest.thrift gen-go + + client: stubs +- $(GO) run -mod=mod TestClient.go ++ $(GO) run TestClient.go + + EXTRA_DIST = \ + dontexportrwtest \ +--- thrift-0.16.0.orig/lib/go/test/fuzz/Makefile.am ++++ thrift-0.16.0/lib/go/test/fuzz/Makefile.am +@@ -19,12 +19,12 @@ + + gopathfuzz: $(THRIFT) fuzz.go + $(THRIFT) -r --gen go:thrift_import=github.com/apache/thrift/lib/go/thrift$(COMPILER_EXTRAFLAG) ../../../../tutorial/tutorial.thrift +- cd gen-go/shared && go mod init shared +- cd gen-go/tutorial && go mod init tutorial ++# cd gen-go/shared && go mod init shared ++# cd gen-go/tutorial && go mod init tutorial + touch gopathfuzz + + check: gopathfuzz +- go test -mod=mod -tags gofuzz ++ go test -tags gofuzz + + clean-local: + $(RM) -r gopathfuzz gen-go +--- thrift-0.16.0.orig/test/go/Makefile.am ++++ thrift-0.16.0/test/go/Makefile.am +@@ -37,13 +37,13 @@ gopath: $(THRIFT) ThriftTest.thrift + touch gopath + + bin/testclient: gopath +- GOPATH=`pwd` $(GO) install -mod=mod ./src/bin/testclient ++ GOPATH=`pwd` $(GO) install ./src/bin/testclient + + bin/testserver: gopath +- GOPATH=`pwd` $(GO) install -mod=mod ./src/bin/testserver ++ GOPATH=`pwd` $(GO) install ./src/bin/testserver + + bin/stress: gopath +- GOPATH=`pwd` $(GO) install -mod=mod ./src/bin/stress ++ GOPATH=`pwd` $(GO) install ./src/bin/stress + + clean-local: + $(RM) -r src/gen src/github.com/golang src/thrift bin pkg gopath ThriftTest.thrift +@@ -51,7 +51,7 @@ clean-local: + check_PROGRAMS: bin/testclient bin/testserver bin/stress + + check: gopath genmock +- $(GO) test -mod=mod -v ./src/common/... ++ $(GO) test -v ./src/common/... + + genmock: gopath + sh genmock.sh diff --git a/patches/go_test_fail_on_busy_machine.patch b/patches/go_test_fail_on_busy_machine.patch new file mode 100644 index 0000000..979341c --- /dev/null +++ b/patches/go_test_fail_on_busy_machine.patch @@ -0,0 +1,27 @@ +Description: wait a second after go serve socket + Multiple upstream wait time by hundred. +Author: Laszlo Boszormenyi (GCS) +Last-Update: 2021-09-26 + +--- + +--- thrift-0.11.0.orig/lib/go/test/tests/multiplexed_protocol_test.go ++++ thrift-0.11.0/lib/go/test/tests/multiplexed_protocol_test.go +@@ -84,7 +84,7 @@ func TestMultiplexedProtocolFirst(t *tes + + defer server.Stop() + go server.Serve() +- time.Sleep(10 * time.Millisecond) ++ time.Sleep(1000 * time.Millisecond) + + transport, err := createTransport(addr) + if err != nil { +@@ -123,7 +123,7 @@ func TestMultiplexedProtocolSecond(t *te + + defer server.Stop() + go server.Serve() +- time.Sleep(10 * time.Millisecond) ++ time.Sleep(1000 * time.Millisecond) + + transport, err := createTransport(addr) + if err != nil { diff --git a/patches/link_with_zlib.patch b/patches/link_with_zlib.patch new file mode 100644 index 0000000..f421c3a --- /dev/null +++ b/patches/link_with_zlib.patch @@ -0,0 +1,42 @@ +Description: add zlib library to link with + Need to specify which library contain the zlib functions during linking. +Author: Laszlo Boszormenyi (GCS) + +--- + +--- thrift-0.9.2.orig/test/cpp/Makefile ++++ thrift-0.9.2/test/cpp/Makefile +@@ -632,13 +632,13 @@ src/TestClient.$(OBJEXT): src/$(am__dirs + + TestClient$(EXEEXT): $(TestClient_OBJECTS) $(TestClient_DEPENDENCIES) $(EXTRA_TestClient_DEPENDENCIES) + @rm -f TestClient$(EXEEXT) +- $(AM_V_CXXLD)$(CXXLINK) $(TestClient_OBJECTS) $(TestClient_LDADD) $(LIBS) ++ $(AM_V_CXXLD)$(CXXLINK) $(TestClient_OBJECTS) $(TestClient_LDADD) $(LIBS) $(ZLIB_LIBS) + src/TestServer.$(OBJEXT): src/$(am__dirstamp) \ + src/$(DEPDIR)/$(am__dirstamp) + + TestServer$(EXEEXT): $(TestServer_OBJECTS) $(TestServer_DEPENDENCIES) $(EXTRA_TestServer_DEPENDENCIES) + @rm -f TestServer$(EXEEXT) +- $(AM_V_CXXLD)$(CXXLINK) $(TestServer_OBJECTS) $(TestServer_LDADD) $(LIBS) ++ $(AM_V_CXXLD)$(CXXLINK) $(TestServer_OBJECTS) $(TestServer_LDADD) $(LIBS) $(ZLIB_LIBS) + + mostlyclean-compile: + -rm -f *.$(OBJEXT) +--- thrift-0.9.2.orig/test/cpp/Makefile.in ++++ thrift-0.9.2/test/cpp/Makefile.in +@@ -632,13 +632,13 @@ src/TestClient.$(OBJEXT): src/$(am__dirs + + TestClient$(EXEEXT): $(TestClient_OBJECTS) $(TestClient_DEPENDENCIES) $(EXTRA_TestClient_DEPENDENCIES) + @rm -f TestClient$(EXEEXT) +- $(AM_V_CXXLD)$(CXXLINK) $(TestClient_OBJECTS) $(TestClient_LDADD) $(LIBS) ++ $(AM_V_CXXLD)$(CXXLINK) $(TestClient_OBJECTS) $(TestClient_LDADD) $(LIBS) $(ZLIB_LIBS) + src/TestServer.$(OBJEXT): src/$(am__dirstamp) \ + src/$(DEPDIR)/$(am__dirstamp) + + TestServer$(EXEEXT): $(TestServer_OBJECTS) $(TestServer_DEPENDENCIES) $(EXTRA_TestServer_DEPENDENCIES) + @rm -f TestServer$(EXEEXT) +- $(AM_V_CXXLD)$(CXXLINK) $(TestServer_OBJECTS) $(TestServer_LDADD) $(LIBS) ++ $(AM_V_CXXLD)$(CXXLINK) $(TestServer_OBJECTS) $(TestServer_LDADD) $(LIBS) $(ZLIB_LIBS) + + mostlyclean-compile: + -rm -f *.$(OBJEXT) diff --git a/patches/missing_go_test.patch b/patches/missing_go_test.patch new file mode 100644 index 0000000..58250b4 --- /dev/null +++ b/patches/missing_go_test.patch @@ -0,0 +1,71 @@ +Description: + TODO: Put a short summary on the line above and replace this paragraph + with a longer explanation of this change. Complete the meta-information + with other relevant fields (see below for details). To make it easier, the + information below has been extracted from the changelog. Adjust it or drop + it. + . + thrift (0.16.0-1) experimental; urgency=medium + . + * New major upstream release. +Author: Laszlo Boszormenyi (GCS) + +--- +The information above should follow the Patch Tagging Guidelines, please +checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here +are templates for supplementary fields that you might want to add: + +Origin: , +Bug: +Bug-Debian: https://bugs.debian.org/ +Bug-Ubuntu: https://launchpad.net/bugs/ +Forwarded: +Reviewed-By: +Last-Update: 2022-03-28 + +--- thrift-0.16.0.orig/test/go/src/common/clientserver_test.go ++++ thrift-0.16.0/test/go/src/common/clientserver_test.go +@@ -21,14 +21,10 @@ package common + + import ( + "context" +- "errors" +- "reflect" + "sync" + "testing" + +- "github.com/golang/mock/gomock" + +- "github.com/apache/thrift/lib/go/thrift" + "github.com/apache/thrift/test/go/src/gen/thrifttest" + ) + +@@ -61,6 +57,7 @@ func TestAllConnection(t *testing.T) { + } + + func doUnit(t *testing.T, unit *test_unit) { ++/* + ctrl := gomock.NewController(t) + defer ctrl.Finish() + handler := NewMockThriftTest(ctrl) +@@ -84,6 +81,7 @@ func doUnit(t *testing.T, unit *test_uni + } + defer trans.Close() + callEverythingWithMock(t, client, handler) ++*/ + } + + var rmapmap = map[int32]map[int32]int32{ +@@ -101,6 +99,7 @@ var xxs = &thrifttest.Xtruct{ + var xcept = &thrifttest.Xception{ErrorCode: 1001, Message: "some"} + var defaultCtx = context.Background() + ++/* + func callEverythingWithMock(t *testing.T, client *thrifttest.ThriftTestClient, handler *MockThriftTest) { + gomock.InOrder( + handler.EXPECT().TestVoid(gomock.Any()), +@@ -336,3 +335,4 @@ func callEverythingWithMock(t *testing.T + t.Errorf("Unexpected error in TestVoid() call: %s", err) + } + } ++*/ diff --git a/patches/no_bundler_use.patch b/patches/no_bundler_use.patch new file mode 100644 index 0000000..ec4ebb3 --- /dev/null +++ b/patches/no_bundler_use.patch @@ -0,0 +1,56 @@ +Description: do not use bundler as per Ruby policy + . +Author: Laszlo Boszormenyi (GCS) +Bug-Debian: https://bugs.debian.org/804668 +Last-Update: 2019-10-23 + +--- + +--- a/lib/rb/Makefile.am ++++ b/lib/rb/Makefile.am +@@ -22,20 +22,24 @@ DESTDIR ?= / + if HAVE_BUNDLER + + all-local: +- $(BUNDLER) install +- $(BUNDLER) exec rake build_ext ++ echo Do not use bundler for all-local ++# $(BUNDLER) install ++# $(BUNDLER) exec rake build_ext + + install-exec-hook: +- $(BUNDLER) exec rake install ++ echo Do not use bundler for install-exec-hook ++# $(BUNDLER) exec rake install + + clean-local: +- $(BUNDLER) install +- $(BUNDLER) exec rake clean ++ echo Do not use bundler for clean-local ++# $(BUNDLER) install ++# $(BUNDLER) exec rake clean + $(RM) -r spec/gen-rb/ + + check-local: all +- $(BUNDLER) install +- $(BUNDLER) exec rake ++ echo Do not use bundler for check-local ++# $(BUNDLER) install ++# $(BUNDLER) exec rake + + endif + +--- a/test/rb/Makefile.am ++++ b/test/rb/Makefile.am +@@ -26,8 +26,9 @@ precross: stubs + + check: stubs + if HAVE_BUNDLER +- $(BUNDLER) install +- $(BUNDLER) exec $(RUBY) -I. test_suite.rb ++ echo Do not use bundler for check ++# $(BUNDLER) install ++# $(BUNDLER) exec $(RUBY) -I. test_suite.rb + endif + + clean-local: diff --git a/patches/no_composer_install.patch b/patches/no_composer_install.patch new file mode 100644 index 0000000..5d88e35 --- /dev/null +++ b/patches/no_composer_install.patch @@ -0,0 +1,36 @@ +Description: + TODO: Put a short summary on the line above and replace this paragraph + with a longer explanation of this change. Complete the meta-information + with other relevant fields (see below for details). To make it easier, the + information below has been extracted from the changelog. Adjust it or drop + it. + . + thrift (0.12.0-1) experimental; urgency=medium + . + * New major upstream release. +Author: Laszlo Boszormenyi (GCS) + +--- +The information above should follow the Patch Tagging Guidelines, please +checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here +are templates for supplementary fields that you might want to add: + +Origin: , +Bug: +Bug-Debian: https://bugs.debian.org/ +Bug-Ubuntu: https://launchpad.net/bugs/ +Forwarded: +Reviewed-By: +Last-Update: 2019-09-18 + +--- thrift-0.12.0.orig/lib/php/test/Makefile.am ++++ thrift-0.12.0/lib/php/test/Makefile.am +@@ -30,7 +30,7 @@ stubs: ../../../test/ThriftTest.thrift + $(THRIFT) --gen php:json -r --out ./packages/phpjs TestValidators.thrift + + deps: $(top_srcdir)/composer.json +- composer install --working-dir=$(top_srcdir) ++ echo Disabled composer install --working-dir=$(top_srcdir) + + all-local: deps + diff --git a/patches/no_go_race.patch b/patches/no_go_race.patch new file mode 100644 index 0000000..1dbfa3d --- /dev/null +++ b/patches/no_go_race.patch @@ -0,0 +1,18 @@ +Description: run simple Go test only + Race testing is available on amd64, ppc64le and arm64 only. +Author: Laszlo Boszormenyi (GCS) +Last-Update: 2022-04-01 + +--- + +--- a/lib/go/Makefile.am ++++ b/lib/go/Makefile.am +@@ -31,7 +31,7 @@ install: + @echo '##############################################################' + + check-local: +- $(GO) test -mod=mod -race ./thrift ++ $(GO) test -mod=mod ./thrift + + clean-local: + $(RM) -rf pkg diff --git a/patches/no_pom.patch b/patches/no_pom.patch new file mode 100644 index 0000000..5b98780 --- /dev/null +++ b/patches/no_pom.patch @@ -0,0 +1,18 @@ +Description: no need for ANT Maven task + Just disable its download. +Author: Laszlo Boszormenyi (GCS) + +--- + +--- thrift-0.9.2.orig/lib/java/build.xml ++++ thrift-0.9.2/lib/java/build.xml +@@ -295,7 +295,9 @@ + + + ++ + + + diff --git a/patches/no_shmem.patch b/patches/no_shmem.patch new file mode 100644 index 0000000..d28554d --- /dev/null +++ b/patches/no_shmem.patch @@ -0,0 +1,19 @@ +Description: don't test servers that need shmem + As buildd's don't have shmem enabled / mounted, tests would fail. +Author: Laszlo Boszormenyi (GCS) +Last-Update: 2017-09-11 + +--- + +--- thrift-0.9.2.orig/test/py/RunClientServer.py ++++ thrift-0.9.2/test/py/RunClientServer.py +@@ -69,7 +69,8 @@ def default_servers(): + 'THttpServer', + ] + if platform.system() != 'Windows': +- servers.append('TProcessPoolServer') ++# buildd servers don't have shmem enabled ++# servers.append('TProcessPoolServer') + servers.append('TForkingServer') + return servers + diff --git a/patches/node_is_nodejs.patch b/patches/node_is_nodejs.patch new file mode 100644 index 0000000..3112c47 --- /dev/null +++ b/patches/node_is_nodejs.patch @@ -0,0 +1,40 @@ +Description: node is called nodejs in Debian + Use the proper binary name. +Author: Laszlo Boszormenyi (GCS) +Last-Update: 2019-10-23 + +--- + +--- a/lib/nodejs/test/testAll.sh ++++ b/lib/nodejs/test/testAll.sh +@@ -45,7 +45,7 @@ testServer() + ${ISTANBUL} cover ${DIR}/server.js --dir ${REPORT_PREFIX}${COUNT} --handle-sigint -- --type $2 -p $3 -t $4 $5 & + COUNT=$((COUNT+1)) + else +- node ${DIR}/server.js --${1} --type $2 -p $3 -t $4 $5 & ++ nodejs ${DIR}/server.js --${1} --type $2 -p $3 -t $4 $5 & + fi + SERVERPID=$! + sleep 0.1 +@@ -53,7 +53,7 @@ testServer() + ${ISTANBUL} cover ${DIR}/client.js --dir ${REPORT_PREFIX}${COUNT} -- --${1} --type $2 -p $3 -t $4 $5 || RET=1 + COUNT=$((COUNT+1)) + else +- node ${DIR}/client.js --${1} --type $2 -p $3 -t $4 $5 || RET=1 ++ nodejs ${DIR}/client.js --${1} --type $2 -p $3 -t $4 $5 || RET=1 + fi + kill -2 $SERVERPID || RET=1 + wait $SERVERPID +@@ -117,9 +117,9 @@ fi + + # unit tests + +-node ${DIR}/binary.test.js || TESTOK=1 +-node ${DIR}/int64.test.js || TESTOK=1 +-node ${DIR}/deep-constructor.test.js || TESTOK=1 ++nodejs ${DIR}/binary.test.js || TESTOK=1 ++nodejs ${DIR}/int64.test.js || TESTOK=1 ++nodejs ${DIR}/deep-constructor.test.js || TESTOK=1 + + # integration tests + diff --git a/patches/series b/patches/series new file mode 100644 index 0000000..ae2e6e4 --- /dev/null +++ b/patches/series @@ -0,0 +1,21 @@ +##link_with_zlib.patch +#no_pom.patch +node_is_nodejs.patch +no_bundler_use.patch +broken_boost_1.62.patch +disable_TLSv1_0_and_TLSv1_1.patch +no_shmem.patch +disable_failing_tests.patch +go_test_fail_on_busy_machine.patch +no_composer_install.patch +disable_php_testing.patch +disable_locale_tests.patch +no_go_race.patch +#/no_gradlew.patch +missing_go_test.patch +#/link_tests_atomic.patch +go_no_mod.patch +fix_out_of_memory.patch +THRIFT-5449.patch +disable_IPv4_only_tests.patch +Replace_outdated_TLS_test_keys.patch diff --git a/php-thrift.install b/php-thrift.install new file mode 100644 index 0000000..6c18341 --- /dev/null +++ b/php-thrift.install @@ -0,0 +1,2 @@ +etc/php.d/thrift_protocol.ini /etc/php/7.3/mods-available/ +usr/lib/php/ diff --git a/php5-thrift.dirs b/php5-thrift.dirs new file mode 100644 index 0000000..8ca3a0f --- /dev/null +++ b/php5-thrift.dirs @@ -0,0 +1 @@ +etc/php5/conf.d diff --git a/python3-thrift.install b/python3-thrift.install new file mode 100644 index 0000000..27f8b89 --- /dev/null +++ b/python3-thrift.install @@ -0,0 +1,2 @@ +usr/lib/python3/*-packages/*.egg-info +usr/lib/python3/*-packages/thrift/ diff --git a/rules b/rules new file mode 100755 index 0000000..fd3ece8 --- /dev/null +++ b/rules @@ -0,0 +1,147 @@ +#!/usr/bin/make -f +# -*- makefile -*- + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +export DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) + +# for Java install +#export CLASSPATH=/usr/share/java/commons-codec.jar:/usr/share/java/commons-logging.jar:/usr/share/java/slf4j-simple.jar:/usr/share/java/slf4j-api.jar:/usr/share/java/servlet-api-3.1.jar:/usr/share/java/httpcore.jar:/usr/share/java/httpclient.jar:/usr/share/java/junit4.jar:/usr/share/java/ant-junit.jar:. + +export DEB_LDFLAGS_MAINT_STRIP = -Wl,-Bsymbolic-functions + +ifneq (,$(filter $(DEB_HOST_ARCH), armel mipsel)) + export DEB_LDFLAGS_MAINT_APPEND += -Wl,--no-as-needed -latomic -Wl,--as-needed +endif + +# Go 1.16 expects a go.mod file by default and thrift Go extension does not +# contain that, let's turn it off for now. +#export GO111MODULE=off + +# for Go install +export DH_GOPKG=thrift +export XDG_CACHE_HOME=$(CURDIR)/go-cache/ + +# for Ruby install +export DESTDIR=$(CURDIR)/debian/tmp/ + +#export JAVA_PREFIX=/usr/share/java/ +export PERL_PREFIX=/usr/ +export INSTALLDIRS=vendor + +export QT_SELECT=qt5 + +# Set install Perl locations +ARCHLIB := $(shell perl -MConfig -e 'print $$Config{vendorarch}') + +RUBY_LIBDIR := $(shell ruby -rrbconfig -e'print RbConfig::CONFIG["vendordir"]') + +PYTHON3_VERSIONS = $(shell py3versions -r) + +override_dh_autoreconf: + $(CURDIR)/bootstrap.sh + +override_dh_auto_clean: + $(RM) -r $(CURDIR)/go-cache/ + $(RM) $(CURDIR)/test/go/genmock.sh + $(RM) -r $(CURDIR)/lib/py/build/ \ + $(CURDIR)/lib/py/thrift.egg-info/ + $(RM) $(CURDIR)/test/go/src/github.com \ + $(CURDIR)/test/go/src/golang.org/x/tools \ + $(CURDIR)/test/go/src/golang.org/x/net \ + $(CURDIR)/lib/go/test/gopath/src/golang.org/x/net \ + $(CURDIR)/lib/go/test/gopath/src/github.com/golang/mock + [ ! -f Makefile ] || $(MAKE) clean + cd $(CURDIR)/lib/php/src/ext/thrift_protocol/ && phpize --clean + find $(CURDIR) \( -name Makefile -o -name Makefile.in \) -exec rm {} \; + find $(CURDIR) -name .dirstamp -exec rm {} \; + $(RM) aclocal/libtool.m4 aclocal/lt* + $(RM) aclocal.m4 config.guess config.h config.log config.status \ + config.sub configure configure.scan depcomp libtool stamp-h1 \ + lib/cpp/*.pc lib/c_glib/thrift_c_glib.pc + $(RM) lib/c_glib/src/thrift/config.h \ + lib/c_glib/src/thrift/stamp-h3 \ + lib/cpp/src/thrift/config.h \ + lib/cpp/src/thrift/stamp-h2 \ + lib/cpp/test/tests.xml + $(RM) autoscan.log config.hin +# jh_clean + # let dh clean + dh_auto_clean + +override_dh_auto_configure: + dh_auto_configure -- \ + --with-cpp --with-c_glib --with-php --with-php_extension \ + --with-perl --without-python --with-py3 --without-java \ + --without-nodejs --without-erlang --without-lua \ + --with-go --with-ruby \ + --with-qt4=no --with-qt5=yes \ + --without-rust \ + --disable-tutorial + +override_dh_auto_build: +# mkdir -p $(CURDIR)/lib/java/build/lib/ + # symlinks for Go build + mkdir -p $(CURDIR)/lib/go/test/gopath/src/ + ln -s /usr/share/gocode/src/github.com \ + $(CURDIR)/test/go/src/ + mkdir -p $(CURDIR)/lib/go/test/gopath/src/golang.org/x/ + ln -s /usr/share/gocode/src/golang.org/x/net \ + $(CURDIR)/lib/go/test/gopath/src/golang.org/x/ + + dh_auto_build --no-parallel + set -ex; cd lib/py && for python in $(PYTHON3_VERSIONS); do \ + $$python setup.py build; \ + done +# jh_build thrift.jar $(CURDIR)/lib/java/src/ + +override_dh_auto_install: + dh_auto_install -- INSTALLDIRS=vendor + set -ex; cd lib/py && for python in $(PYTHON3_VERSIONS); do \ + $$python setup.py install --install-layout=deb --root=$(CURDIR)/debian/tmp; \ + done +# jh_installlibs -plibthrift-java thrift.jar +# jh_installjavadoc +# jh_depends + + find $(CURDIR)/debian/tmp/ -name \*.la -exec rm {} \; + find $(CURDIR)/debian/tmp/ -name config.h -exec rm {} \; + +override_dh_missing: + dh_missing --list-missing + +override_dh_auto_test: + cd $(CURDIR)/lib/c_glib/test/ && \ + $(MAKE) gen-c_glib/t_test_enum_test_types.h + mkdir -p $(CURDIR)/vendor/bin/ + ln -s /usr/bin/phpunit $(CURDIR)/vendor/bin/ + ln -s $(CURDIR)/lib/php/src/autoload.php $(CURDIR)/vendor/ + touch $(CURDIR)/test/go/genmock.sh + mkdir -p $(CURDIR)/test/go/src/golang.org/x/ + # symlinks for Go testing + ln -s /usr/share/gocode/src/golang.org/x/tools \ + $(CURDIR)/test/go/src/golang.org/x/ + ln -s /usr/share/gocode/src/golang.org/x/net/ \ + $(CURDIR)/test/go/src/golang.org/x/ + # GOPATH set automatically to $(CURDIR)/obj-$(DEB_BUILD_GNU_TYPE) + mkdir -p $(CURDIR)/obj-$(DEB_BUILD_GNU_TYPE)/src/github.com/apache/thrift/lib/ + ln -s $(CURDIR)/lib/go \ + $(CURDIR)/obj-$(DEB_BUILD_GNU_TYPE)/src/github.com/apache/thrift/lib/ + mkdir -p $(CURDIR)/obj-$(DEB_BUILD_GNU_TYPE)/src/github.com/golang/ + ln -s /usr/share/gocode/src/github.com/golang/mock \ + $(CURDIR)/obj-$(DEB_BUILD_GNU_TYPE)/src/github.com/golang/ + ln -s $(CURDIR)/lib/go/test/fuzz/gen-go/shared \ + $(CURDIR)/obj-$(DEB_BUILD_GNU_TYPE)/src/ + ln -s $(CURDIR)/lib/go/test/fuzz/gen-go/tutorial \ + $(CURDIR)/obj-$(DEB_BUILD_GNU_TYPE)/src/ + ln -s $(CURDIR)/test \ + $(CURDIR)/obj-$(DEB_BUILD_GNU_TYPE)/src/github.com/apache/thrift/ + dh_auto_test --no-parallel + +%: + dh $@ --with python3,ruby,phpcomposer + +.PHONY: override_dh_autoreconf override_dh_auto_clean \ + override_dh_auto_configure override_dh_auto_install \ + override_dh_missing override_dh_auto_test diff --git a/source/format b/source/format new file mode 100644 index 0000000..163aaf8 --- /dev/null +++ b/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/source/lintian-overrides b/source/lintian-overrides new file mode 100644 index 0000000..c054c90 --- /dev/null +++ b/source/lintian-overrides @@ -0,0 +1,8 @@ +# Long lines only +source-is-missing [lib/js/test/phantom-client.js] +source-is-missing [lib/js/test/test-async.js] +source: source-is-missing [lib/js/test/test-es6.js] +source: source-is-missing [lib/js/test/test.js] + +# Only one file, not the whole source +license-problem-php-license debian/copyright diff --git a/thrift-compiler.docs b/thrift-compiler.docs new file mode 100644 index 0000000..6d5ee1d --- /dev/null +++ b/thrift-compiler.docs @@ -0,0 +1 @@ +NOTICE diff --git a/thrift-compiler.examples b/thrift-compiler.examples new file mode 100644 index 0000000..52685b7 --- /dev/null +++ b/thrift-compiler.examples @@ -0,0 +1,2 @@ +tutorial/tutorial.thrift +tutorial/shared.thrift diff --git a/thrift-compiler.install b/thrift-compiler.install new file mode 100644 index 0000000..c703cf8 --- /dev/null +++ b/thrift-compiler.install @@ -0,0 +1 @@ +usr/bin/ diff --git a/thrift-compiler.manpages b/thrift-compiler.manpages new file mode 100644 index 0000000..b3b5f6a --- /dev/null +++ b/thrift-compiler.manpages @@ -0,0 +1 @@ +debian/thrift.1 diff --git a/thrift-doc.docs b/thrift-doc.docs new file mode 100644 index 0000000..299950c --- /dev/null +++ b/thrift-doc.docs @@ -0,0 +1,2 @@ +#DOCS# + diff --git a/thrift-doc.install b/thrift-doc.install new file mode 100644 index 0000000..6d5ee1d --- /dev/null +++ b/thrift-doc.install @@ -0,0 +1 @@ +NOTICE diff --git a/thrift.1 b/thrift.1 new file mode 100644 index 0000000..24da581 --- /dev/null +++ b/thrift.1 @@ -0,0 +1,78 @@ +.TH "THRIFT" "1" "July 9, 2012" "thrift-compiler" "thrift" +.SH NAME +thrift \ - code generator/compiler for Thrift IDL +.SH SYNOPSIS +.B thrift +[options] \fIsource_file\fR +.SH DESCRIPTION +Thrift is a framework for efficient serialization and RPC services. The +.B thrift +compiler accepts a source file containing definitions of Thrift structs and services, +and generates the language-specific code to implement them. +.SH OPTIONS +.TP +\fB\-version\fR +.RS 4 +print the compiler version and exit +.RE +.TP +\fB\-o DIRECTORY\fR +.RS 4 +Set the output directory for gen-* packages (default: current directory) +.RE +.TP +\fB\-out DIRECTORY\fR +.RS 4 +Set the ouput location for generated files. (no gen-* folder will be created) +.RE +.TP +\fB\-I DIRECTORY\fR +.RS 4 +Add a directory to the list of directories searched for include directives +.RE +.TP +\fB\-nowarn\fR +.RS 4 +Suppress all compiler warnings (BAD!) +.RE +.TP +\fB\-strict\fR +.RS 4 +Strict compiler warnings on +.RE +.TP +\fB\-v[erbose]\fR +.RS 4 +Verbose mode +.RE +.TP +\fB\-r[ecurse]\fR +.RS 4 +Also generate included files +.RE +.TP +\fB\-debug\fR +.RS 4 +Parse debug trace to stdout +.RE +.TP +\fB\-\-gen STRING\fR +.RS 4 +Generate code with a dynamically-registered generator. STRING has the form +language[:key1=val1[,key2,[key3=val3]]]. Keys and values are options passed to +the generator. Many options will not require values. For a complete list of +supported generators, run +.B thrift +without arguments. +.RE +.SH AUTHOR +Thrift is a top-level project of the Apache Software Foundation, (see +http://thrift.apache.org). +.PP +This manual page was written by Eric Evans for the Debian +system (but may be used by others). Permission is granted to copy, distribute +and/or modify this document under the terms of the GNU General Public License, +Version 2 or any later version published by the Free Software Foundation. +.PP +On Debian systems, the complete text of the GNU General Public License can be +found in /usr/share/common-licenses/GPL. diff --git a/watch b/watch new file mode 100644 index 0000000..9f6ac2b --- /dev/null +++ b/watch @@ -0,0 +1,2 @@ +version=3 +https://thrift.apache.org/download .*/thrift-(\d[\d\.]+)\.(?:tgz|tar\.(?:gz|bz2|xz))