Hello community,
here is the log from the commit of package libtcnative-1-0 for openSUSE:Factory
checked in at 2019-08-13 13:48:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libtcnative-1-0 (Old)
and /work/SRC/openSUSE:Factory/.libtcnative-1-0.new.9556 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libtcnative-1-0"
Tue Aug 13 13:48:23 2019 rev:37 rq:723041 version:1.2.23
Changes:
--------
--- /work/SRC/openSUSE:Factory/libtcnative-1-0/libtcnative-1-0.changes
2019-06-07 12:19:16.896773000 +0200
+++
/work/SRC/openSUSE:Factory/.libtcnative-1-0.new.9556/libtcnative-1-0.changes
2019-08-13 13:48:26.157104452 +0200
@@ -1,0 +2,6 @@
+Mon Aug 12 16:21:42 UTC 2019 - Matei Albu <[email protected]>
+
+- Version update to version 1.2.23:
+ * See changelog.html for in-depth upstream changes
+
+-------------------------------------------------------------------
Old:
----
tomcat-native-1.2.21-src.tar.gz
tomcat-native-1.2.21-src.tar.gz.asc
New:
----
tomcat-native-1.2.23-src.tar.gz
tomcat-native-1.2.23-src.tar.gz.asc
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libtcnative-1-0.spec ++++++
--- /var/tmp/diff_new_pack.qjCtXj/_old 2019-08-13 13:48:31.013103943 +0200
+++ /var/tmp/diff_new_pack.qjCtXj/_new 2019-08-13 13:48:31.017103943 +0200
@@ -17,7 +17,7 @@
Name: libtcnative-1-0
-Version: 1.2.21
+Version: 1.2.23
Release: 0
Summary: JNI wrappers for Apache Portable Runtime for Tomcat
License: Apache-2.0
++++++ tomcat-native-1.2.21-src.tar.gz -> tomcat-native-1.2.23-src.tar.gz ++++++
++++ 5242 lines of diff (skipped)
++++ retrying with extended exclude list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/.gitignore new/tomcat-native-1.2.23-src/.gitignore
--- old/tomcat-native-1.2.21-src/.gitignore 1970-01-01 01:00:00.000000000
+0100
+++ new/tomcat-native-1.2.23-src/.gitignore 2019-06-26 13:12:00.000000000
+0200
@@ -0,0 +1,24 @@
+.classpath
+.project
+
+/.settings/
+/native/.libs/
+/native/.make.dirs
+/native/Makefile
+/native/build-outputs.mk
+/native/build/apr_common.m4
+/native/build/config.guess
+/native/build/config.sub
+/native/build/find_apr.m4
+/native/build/install.sh
+/native/build/rules.mk
+/native/config.log
+/native/config.nice
+/native/config.status
+/native/configure
+/native/libtcnative-1.la
+/native/tcnative.pc
+/native/tcnative.spec
+
+**/*.lo
+**/*.o
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/CHANGELOG.txt
new/tomcat-native-1.2.23-src/CHANGELOG.txt
--- old/tomcat-native-1.2.21-src/CHANGELOG.txt 2019-01-25 18:34:12.000000000
+0100
+++ new/tomcat-native-1.2.23-src/CHANGELOG.txt 2019-06-26 13:14:18.000000000
+0200
@@ -2,6 +2,28 @@
This is the Changelog for Tomcat Native 1.2.
+ Changes in 1.2.23
+
+ * Fix: Make file fixes to enable building with APR 1.7.x. (markt)
+ * Fix: Switch to Windows 7 as the default target. (markt)
+ * Update: Update minimum OpenSSL version to 1.0.2r. (markt)
+
+ Changes in 1.2.22
+
+ * Fix: 63159: Unable to complete build when build directory is outside
+ of the source tree. Patch provided by Bob Huemmer. (markt)
+ * Fix: 63356: Fix client certificate authentication when a certificate
+ contains an AIA extension without an OCSP URI. Patch provided by
+ Milind Takawale. (markt)
+ * Fix: 63500: Fix JVM crash on Connector start when a certificate
+ revocation file or path is specified for OpenSSL. (markt)
+ * Add: Add support for TLS key logging when using OpenSSL 1.1.1 or
+ later. If the environment variable SSLKEYLOGFILE is set then the TLS
+ keys will be logged to that file. Patch provided by John Kelly.
+ (markt)
+ * Fix: Update build script after migration of soucre repository from
+ Subversion to Git. (markt)
+
Changes in 1.2.21
* Fix: Correct a possible JVM crash during shutdown caused by a bug in
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/README.txt new/tomcat-native-1.2.23-src/README.txt
--- old/tomcat-native-1.2.21-src/README.txt 2015-10-31 11:24:44.000000000
+0100
+++ new/tomcat-native-1.2.23-src/README.txt 2019-06-26 13:12:00.000000000
+0200
@@ -32,7 +32,7 @@
Documentation about the Tomcat APR connector which is based
on this library can be found at
-http://tomcat.apache.org/tomcat-8.0-doc/apr.html.
+http://tomcat.apache.org/tomcat-9.0-doc/apr.html.
Building
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/build.properties.default
new/tomcat-native-1.2.23-src/build.properties.default
--- old/tomcat-native-1.2.21-src/build.properties.default 2019-01-25
18:34:00.000000000 +0100
+++ new/tomcat-native-1.2.23-src/build.properties.default 2019-06-26
13:12:00.000000000 +0200
@@ -18,7 +18,7 @@
# ----- Version Control Flags -----
version.major=1
version.minor=2
-version.build=21
+version.build=23
version.patch=0
version.suffix=
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/docs/index.html
new/tomcat-native-1.2.23-src/docs/index.html
--- old/tomcat-native-1.2.21-src/docs/index.html 2019-01-25
18:34:12.000000000 +0100
+++ new/tomcat-native-1.2.23-src/docs/index.html 2019-06-26
13:14:18.000000000 +0200
@@ -27,10 +27,10 @@
</div><h3 id="Headlines">Headlines</h3><div class="text">
<ul>
-<li><a href="news/2018.html#20181204">4 Dec 2018 - <b>TC-Native-1.2.19
+<li><a href="news/2019.html#20190131">31 Jan 2019 - <b>TC-Native-1.2.21
released</b></a>
<p>The Apache Tomcat team is proud to announce the immediate availability of
-Tomcat Native 1.2.19 Stable.</p>
+Tomcat Native 1.2.21 Stable.</p>
<p>
The sources and the binaries for selected platforms are available from the
<a href="../download-native.cgi">Download page</a>.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/docs/miscellaneous/changelog.html
new/tomcat-native-1.2.23-src/docs/miscellaneous/changelog.html
--- old/tomcat-native-1.2.21-src/docs/miscellaneous/changelog.html
2019-01-25 18:34:12.000000000 +0100
+++ new/tomcat-native-1.2.23-src/docs/miscellaneous/changelog.html
2019-06-26 13:14:18.000000000 +0200
@@ -3,6 +3,43 @@
<p>
This is the Changelog for Tomcat Native 1.2.
</p>
+</div><h3 id="Changes_in_1.2.23">Changes in 1.2.23</h3><div class="text">
+ <ul class="changelog">
+ <li><img alt="Fix: " class="icon" src="../images/fix.gif">
+ Make file fixes to enable building with APR 1.7.x. (markt)
+ </li>
+ <li><img alt="Fix: " class="icon" src="../images/fix.gif">
+ Switch to Windows 7 as the default target. (markt)
+ </li>
+ <li><img alt="Update: " class="icon" src="../images/update.gif">
+ Update minimum OpenSSL version to 1.0.2r. (markt)
+ </li>
+ </ul>
+</div><h3 id="Changes_in_1.2.22">Changes in 1.2.22</h3><div class="text">
+ <ul class="changelog">
+ <li><img alt="Fix: " class="icon" src="../images/fix.gif">
+ <a
href="http://issues.apache.org/bugzilla/show_bug.cgi?id=63159">63159</a>:
Unable to complete build when build directory is
+ outside of the source tree. Patch provided by Bob Huemmer. (markt)
+ </li>
+ <li><img alt="Fix: " class="icon" src="../images/fix.gif">
+ <a
href="http://issues.apache.org/bugzilla/show_bug.cgi?id=63356">63356</a>: Fix
client certificate authentication when a certificate
+ contains an AIA extension without an OCSP URI. Patch provided by Milind
+ Takawale. (markt)
+ </li>
+ <li><img alt="Fix: " class="icon" src="../images/fix.gif">
+ <a
href="http://issues.apache.org/bugzilla/show_bug.cgi?id=63500">63500</a>: Fix
JVM crash on Connector start when a certificate
+ revocation file or path is specified for OpenSSL. (markt)
+ </li>
+ <li><img alt="Add: " class="icon" src="../images/add.gif">
+ Add support for TLS key logging when using OpenSSL 1.1.1 or later. If the
+ environment variable SSLKEYLOGFILE is set then the TLS keys will be
logged
+ to that file. Patch provided by John Kelly. (markt)
+ </li>
+ <li><img alt="Fix: " class="icon" src="../images/fix.gif">
+ Update build script after migration of soucre repository from Subversion
+ to Git. (markt)
+ </li>
+ </ul>
</div><h3 id="Changes_in_1.2.21">Changes in 1.2.21</h3><div class="text">
<ul class="changelog">
<li><img alt="Fix: " class="icon" src="../images/fix.gif">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/docs/news/2019.html
new/tomcat-native-1.2.23-src/docs/news/2019.html
--- old/tomcat-native-1.2.21-src/docs/news/2019.html 1970-01-01
01:00:00.000000000 +0100
+++ new/tomcat-native-1.2.23-src/docs/news/2019.html 2019-06-26
13:14:18.000000000 +0200
@@ -0,0 +1,10 @@
+<!DOCTYPE html SYSTEM "about:legacy-compat">
+<html lang="en"><head><META http-equiv="Content-Type" content="text/html;
charset=UTF-8"><link href="../images/docs-stylesheet.css" rel="stylesheet"
type="text/css"><link href="../images/style.css" rel="stylesheet"
type="text/css"><title>The Apache Tomcat Native - News - 2018 News and
Status</title></head><body><div id="wrapper"><header><div
id="header"><div><div><div class="logo noPrint"><a
href="http://tomcat.apache.org/"><img alt="Tomcat Home"
src="../images/tomcat.png"></a></div><div style="height: 1px;"></div><div
class="asfLogo noPrint"><a href="http://www.apache.org/" target="_blank"><img
src="../images/asf-feather.png" alt="The Apache Software Foundation"
style="width: 266px; height: 83px;"></a></div><h1>The Apache Tomcat Native -
News</h1><div style="height: 1px;"></div><div style="clear:
left;"></div></div></div></div></header><div id="middle"><div><div
id="mainLeft"
class="noprint"><div><nav><div><h2><strong>Links</strong></h2><ul><li><a
href="../index.html">Docs
Home</a></li></ul></div><div><h2><strong>Miscellaneous
Documentation</strong></h2><ul><li><a
href="../miscellaneous/changelog.html">Changelog</a></li></ul></div><div><h2><strong>News</strong></h2><ul><li><a
href="../news/2017.html">2017</a></li><li><a
href="../news/2016.html">2016</a></li><li><a
href="../news/2015.html">2015</a></li><li><a
href="../news/2014.html">2014</a></li><li><a
href="../news/2013.html">2013</a></li><li><a
href="../news/2012.html">2012</a></li><li><a
href="../news/2011.html">2011</a></li><li><a
href="../news/2010.html">2010</a></li><li><a
href="../news/2009.html">2009</a></li><li><a
href="../news/2008.html">2008</a></li></ul></div></nav></div></div><div
id="mainRight"><div id="content"><h2>2018 News and Status</h2><h3
id="2019_News_&_Status">2019 News & Status</h3><div class="text">
+ <div class="subsection"><h4 id="20190131">31 Jan 2019 - TC-Native-1.2.21
released</h4><div class="text">
+ <p>The Apache Tomcat team is proud to announce the immediate availability of
+ Tomcat Native 1.2.21. This is a bugfix release.
+ </p>
+ </div></div>
+</div></div></div></div></div><footer><div id="footer">
+ Copyright © 2008-2019, The Apache Software Foundation
+ </div></footer></div></body></html>
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/java/org/apache/tomcat/jni/Address.java
new/tomcat-native-1.2.23-src/java/org/apache/tomcat/jni/Address.java
--- old/tomcat-native-1.2.21-src/java/org/apache/tomcat/jni/Address.java
2016-01-18 16:03:55.000000000 +0100
+++ new/tomcat-native-1.2.23-src/java/org/apache/tomcat/jni/Address.java
2019-06-26 13:12:00.000000000 +0200
@@ -14,7 +14,6 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-
package org.apache.tomcat.jni;
/** Address
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/jnirelease.sh
new/tomcat-native-1.2.23-src/jnirelease.sh
--- old/tomcat-native-1.2.21-src/jnirelease.sh 2015-12-09 15:42:17.000000000
+0100
+++ new/tomcat-native-1.2.23-src/jnirelease.sh 2019-06-26 13:12:00.000000000
+0200
@@ -24,8 +24,9 @@
# Default place to look for apr source. Can be overridden with
# --with-apr=[directory]
apr_src_dir=`pwd`/native/srclib/apr
-SVNBASE=https://svn.apache.org/repos/asf/tomcat/native
-TCJAVA_SVNBASE=https://svn.apache.org/repos/asf/tomcat/trunk
+
+GITBASE=https://gitbox.apache.org/repos/asf/tomcat-native.git
+TCJAVA_GITBASE=https://gitbox.apache.org/repos/asf/tomcat.git
# Set the environment variable that stops OSX storing extended
# attributes in tar archives etc. with a file starting with ._
@@ -33,6 +34,7 @@
export COPYFILE_DISABLE
JKJNIEXT=""
+JKJNIHASH=""
JKJNIVER=""
JKJNIREL=""
JKJNIFORCE=""
@@ -81,9 +83,9 @@
if [ "x$JKJNIEXT" = "x" ]; then
echo ""
- echo "Unknown SVN version"
+ echo "Unknown Git tag/branch"
echo "Use:"
- echo " --ver=<tagged-version>|1.1.x|trunk|."
+ echo " --ver=<tag>|1.1.x|master|."
echo ""
exit 1
fi
@@ -131,40 +133,38 @@
exit 1
fi
-if [ "x$JKJNIEXT" = "xtrunk" ]; then
- JKJNISVN="${SVNBASE}/trunk"
- JKJNIVER=`svn info $JKJNISVN | awk '$1 == "Revision:" {print $2}'`
- JKJNIVER="$JKJNIEXT-$JKJNIVER"
+if [ "x$JKJNIEXT" = "xmaster" ]; then
+ JKJNIHASH=`git rev-parse --short origin/master`
+ JKJNIVER="$JKJNIEXT-$JKJNIHASH"
elif [ "x$JKJNIEXT" = "x1.1.x" ]; then
- JKJNISVN="${SVNBASE}/branches/$JKJNIEXT"
- JKJNIVER=`svn info $JKJNISVN | awk '$1 == "Revision:" {print $2}'`
- JKJNIVER="$JKJNIEXT-$JKJNIVER"
+ JKJNIHASH=`git rev-parse --short origin/1.1.x`
+ JKJNIVER="$JKJNIEXT-$JKJNIHASH"
elif [ "x$JKJNIEXT" = "x." ]; then
- JKJNISVN="."
- JKJNIVER=`svn info $JKJNISVN | awk '$1 == "Revision:" {print $2}'`
- JKJNIEXT=`svn info $JKJNISVN | awk '$1 == "URL:" {print $2}' | sed -e
's#.*/##'`
- JKJNIVER="checkout-$JKJNIEXT-$JKJNIVER"
+ JKJNIHASH=`git rev-parse --short HEAD`
+ JKJNIVER="HEAD-$JKJNIHASH"
else
- JKJNISVN="${SVNBASE}/tags/TOMCAT_NATIVE_`echo $JKJNIEXT | sed 's/\./_/g'`"
- JKJNIVER=$JKJNIEXT
+ JKJNIHASH=`git rev-parse --short refs/tags/$JKJNIEXT`
+ JKJNIVER="$JKJNIEXT"
JKJNIREL=1
fi
-echo "Using SVN repo : \`${JKJNISVN}'"
-echo "Using version : \`${JKJNIVER}'"
+echo "Using GIT repo : \`${GITBASE}\`"
+echo "Using version : \`${JKJNIVER}\`"
-# Checking for recentness of svn:externals
-externals_path=java/org/apache/tomcat
-jni_externals=`svn propget svn:externals $JKJNISVN/$externals_path | \
- grep $externals_path/jni | \
- sed -e 's#.*@##' -e 's# .*##'`
-jni_last_changed=`svn info --xml $TCJAVA_SVNBASE/$externals_path/jni | \
- tr "\n" " " | \
- sed -e 's#.*commit *revision="##' -e 's#".*##'`
-if [ "x$jni_externals" != "x$jni_last_changed" ]; then
- echo "WARNING: svn:externals for jni in $externals_path is
'$jni_externals',"
- echo " last changed revision in TC trunk is '$jni_last_changed'."
+# Checking for recentness of git subtree
+git checkout ${JKJNIHASH}
+if [ ! -d .git/refs/remotes/9.0.x ]; then
+ git remote add -f 9.0.x ${TCJAVA_GITBASE}
+fi
+git remote update 9.0.x
+diffcount=$(git diff HEAD remotes/9.0.x/master java/org/apache/tomcat/jni | wc
-l)
+
+if [ $diffcount -ne 0 ]; then
+ echo "WARNING: git subtree is not up to date with"
+ echo " $TCJAVA_GITBASE"
echo " Either correct now by running"
- echo " 'svn propedit svn:externals' on $externals_path to fix"
+ echo " 'git rm -rf java/org/apache/tomcat/jni'"
+ echo " 'git read-tree --prefix=java/org/apache/tomcat/jni/ -u
9.0.x/master:java/org/apache/tomcat/jni'"
+ echo " 'git commit'"
echo " or run this script with -f (force)"
if [ "X$JKJNIFORCE" = "X1" ]
then
@@ -179,10 +179,10 @@
rm -rf ${JKJNIDIST}
mkdir -p ${JKJNIDIST}
-svn export --force ${JKJNISVN} ${JKJNIDIST}
+git archive ${JKJNIHASH} | tar -x -C ${JKJNIDIST}
if [ $? -ne 0 ]; then
echo ""
- echo "svn export failed"
+ echo "git export failed"
echo ""
exit 1
fi
@@ -246,10 +246,10 @@
JKWINDIST=tomcat-native-${JKJNIVER}-win32-src
rm -rf ${JKWINDIST}
mkdir -p ${JKWINDIST}
-svn export --force --native-eol CRLF ${JKJNISVN} ${JKWINDIST}
+git -c core.autocrlf=true -c core.eol=crlf archive ${JKJNIHASH} | tar -x -C
${JKWINDIST}
if [ $? -ne 0 ]; then
echo ""
- echo "svn export failed"
+ echo "git export failed"
echo ""
exit 1
fi
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/native/.gitignore
new/tomcat-native-1.2.23-src/native/.gitignore
--- old/tomcat-native-1.2.21-src/native/.gitignore 1970-01-01
01:00:00.000000000 +0100
+++ new/tomcat-native-1.2.23-src/native/.gitignore 2019-06-26
13:12:00.000000000 +0200
@@ -0,0 +1,3 @@
+/build-outputs.mk
+/configure
+/tcnative.spec
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/native/NMAKEmakefile.inc
new/tomcat-native-1.2.23-src/native/NMAKEmakefile.inc
--- old/tomcat-native-1.2.21-src/native/NMAKEmakefile.inc 2012-05-30
04:20:59.000000000 +0200
+++ new/tomcat-native-1.2.23-src/native/NMAKEmakefile.inc 2019-06-26
13:12:00.000000000 +0200
@@ -30,13 +30,12 @@
# PROCESSOR_ARCHITECTURE environment variable
# or to the X86 if not specified.
# WINVER Compile for specified Windows version
-# WINNT for Windows 2000 and up(default)
-# WINXP for Windows XP and up
-# WIN2003 for Windows 2003 and up
-# VSITA for Windows Vista and up
+# WIN7 for Windows 7 and up (default)
# Deprecated targets (may not even compile):
-# NT4 for Windows NT4 and up
-# WIN9X for Windows 95, 98 and Me
+# WIN2003 for Windows 2003 and up
+# VISTA for Windows Vista and up
+# WINXP for Windows XP and up
+# WINNT for Windows 2000 and up
# BUILD Build version
# RETAIL or RELEASE (default)
# DEBUG
@@ -140,7 +139,7 @@
!ENDIF
!IF !DEFINED(WINVER) || "$(WINVER)" == ""
-WINVER=WINXP
+WINVER=WIN7
!ENDIF
@@ -175,7 +174,7 @@
!ERROR Must specify WINVER environment variable (WINNT, WINXP, WIN2003, VISTA,
WIN7)
!ENDIF
-NMAKE_WINNT = -DWINNT -D_WINNT -D_WIN32_WINNT=$(NMAKE_WINVER)
-DWINVER=$(NMAKE_WINVER) -D_WIN32_IE=$(_WIN32_IE)
+NMAKE_WINNT = -DWINNT -D_WINNT -D_WIN32_WINNT=$(NMAKE_WINVER)
-DWINVER=$(NMAKE_WINVER) -D_WIN32_IE=$(_WIN32_IE) -DPSAPI_VERSION=1
!IF !DEFINED(BUILD) || "$(BUILD)" == ""
BUILD=RELEASE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/native/build/.gitignore
new/tomcat-native-1.2.23-src/native/build/.gitignore
--- old/tomcat-native-1.2.21-src/native/build/.gitignore 1970-01-01
01:00:00.000000000 +0100
+++ new/tomcat-native-1.2.23-src/native/build/.gitignore 2019-06-26
13:12:00.000000000 +0200
@@ -0,0 +1,5 @@
+/apr_common.m4
+/config.guess
+/config.sub
+/find_apr.m4
+/install.sh
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/native/build/apr_common.m4
new/tomcat-native-1.2.23-src/native/build/apr_common.m4
--- old/tomcat-native-1.2.21-src/native/build/apr_common.m4 2019-01-25
18:34:12.000000000 +0100
+++ new/tomcat-native-1.2.23-src/native/build/apr_common.m4 2019-06-26
13:14:18.000000000 +0200
@@ -511,9 +511,9 @@
[int main(int argc, const char *const *argv) {]
[[$2]]
[ return 0; }]
- )],
- [$3], [$4])
- CFLAGS=$apr_save_CFLAGS
+ )], [CFLAGS=$apr_save_CFLAGS
+$3], [CFLAGS=$apr_save_CFLAGS
+$4])
])
dnl
@@ -975,11 +975,44 @@
])
dnl
+dnl APR_CHECK_TYPES_FMT_COMPATIBLE(TYPE-1, TYPE-2, FMT-TAG,
+dnl [ACTION-IF-TRUE], [ACTION-IF-FALSE])
+dnl
+dnl Try to determine whether two types are the same and accept the given
+dnl printf formatter (bare token, e.g. literal d, ld, etc).
+dnl
+AC_DEFUN([APR_CHECK_TYPES_FMT_COMPATIBLE], [
+define([apr_cvname], apr_cv_typematch_[]translit([$1], [ ],
[_])_[]translit([$2], [ ], [_])_[][$3])
+AC_CACHE_CHECK([whether $1 and $2 use fmt %$3], apr_cvname, [
+APR_TRY_COMPILE_NO_WARNING([#include <sys/types.h>
+#include <stdio.h>
+#ifdef HAVE_STDINT_H
+#include <stdint.h>
+#endif
+], [
+ $1 chk1, *ptr1;
+ $2 chk2, *ptr2 = &chk1;
+ ptr1 = &chk2;
+ *ptr1 = *ptr2 = 0;
+ printf("%$3 %$3", chk1, chk2);
+], [apr_cvname=yes], [apr_cvname=no])])
+if test "$apr_cvname" = "yes"; then
+ :
+ $4
+else
+ :
+ $5
+fi
+])
+
+dnl
dnl APR_CHECK_TYPES_COMPATIBLE(TYPE-1, TYPE-2, [ACTION-IF-TRUE])
dnl
dnl Try to determine whether two types are the same. Only works
dnl for gcc and icc.
dnl
+dnl @deprecated @see APR_CHECK_TYPES_FMT_COMPATIBLE
+dnl
AC_DEFUN([APR_CHECK_TYPES_COMPATIBLE], [
define([apr_cvname], apr_cv_typematch_[]translit([$1], [ ],
[_])_[]translit([$2], [ ], [_]))
AC_CACHE_CHECK([whether $1 and $2 are the same], apr_cvname, [
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/native/include/ssl_private.h
new/tomcat-native-1.2.23-src/native/include/ssl_private.h
--- old/tomcat-native-1.2.21-src/native/include/ssl_private.h 2019-01-24
16:20:49.000000000 +0100
+++ new/tomcat-native-1.2.23-src/native/include/ssl_private.h 2019-06-26
13:12:00.000000000 +0200
@@ -241,6 +241,10 @@
#define TLS_server_method SSLv23_server_method
#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L ||
defined(LIBRESSL_VERSION_NUMBER) */
+#if OPENSSL_VERSION_NUMBER >= 0x10101000L
+#define HAVE_KEYLOG_CALLBACK
+#endif
+
#define MAX_ALPN_NPN_PROTO_SIZE 65535
#define SSL_SELECTOR_FAILURE_CHOOSE_MY_LAST_PROTOCOL 1
@@ -387,6 +391,9 @@
int SSL_callback_next_protos(SSL *, const unsigned char **, unsigned
int *, void *);
int SSL_callback_select_next_proto(SSL *, unsigned char **, unsigned
char *, const unsigned char *, unsigned int,void *);
int SSL_callback_alpn_select_proto(SSL *, const unsigned char **,
unsigned char *, const unsigned char *, unsigned int, void *);
+#ifdef HAVE_KEYLOG_CALLBACK
+void SSL_callback_add_keylog(SSL_CTX *);
+#endif
#if (OPENSSL_VERSION_NUMBER < 0x10100000L) && ! (defined(WIN32) ||
defined(WIN64))
unsigned long SSL_ERR_get(void);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/native/include/tcn_version.h
new/tomcat-native-1.2.23-src/native/include/tcn_version.h
--- old/tomcat-native-1.2.21-src/native/include/tcn_version.h 2019-01-25
18:34:00.000000000 +0100
+++ new/tomcat-native-1.2.23-src/native/include/tcn_version.h 2019-06-26
13:12:00.000000000 +0200
@@ -63,7 +63,7 @@
#define TCN_MINOR_VERSION 2
/** patch level */
-#define TCN_PATCH_VERSION 21
+#define TCN_PATCH_VERSION 23
/**
* This symbol is defined for internal, "development" copies of TCN. This
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/native/os/win32/libtcnative.rc
new/tomcat-native-1.2.23-src/native/os/win32/libtcnative.rc
--- old/tomcat-native-1.2.21-src/native/os/win32/libtcnative.rc 2019-01-21
15:09:47.000000000 +0100
+++ new/tomcat-native-1.2.23-src/native/os/win32/libtcnative.rc 2019-06-26
13:12:00.000000000 +0200
@@ -20,7 +20,7 @@
"See the License for the specific language governing " \
"permissions and limitations under the License."
-#define TCN_VERSION "1.2.21"
+#define TCN_VERSION "1.2.23"
1000 ICON "apache.ico"
1001 DIALOGEX 0, 0, 252, 51
@@ -36,8 +36,8 @@
END
1 VERSIONINFO
- FILEVERSION 1,2,21,0
- PRODUCTVERSION 1,2,21,0
+ FILEVERSION 1,2,23,0
+ PRODUCTVERSION 1,2,23,0
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x1L
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/native/src/ssl.c
new/tomcat-native-1.2.23-src/native/src/ssl.c
--- old/tomcat-native-1.2.21-src/native/src/ssl.c 2019-01-24
16:20:49.000000000 +0100
+++ new/tomcat-native-1.2.23-src/native/src/ssl.c 2019-06-26
13:12:00.000000000 +0200
@@ -34,6 +34,18 @@
ENGINE *tcn_ssl_engine = NULL;
tcn_pass_cb_t tcn_password_callback;
+#ifdef HAVE_KEYLOG_CALLBACK
+static BIO *key_log_file = NULL;
+
+static void ssl_keylog_callback(const SSL *ssl, const char *line)
+{
+ if (key_log_file && line && *line) {
+ BIO_puts(key_log_file, line);
+ BIO_puts(key_log_file, "\n");
+ }
+}
+#endif
+
/* From netty-tcnative */
static jclass byteArrayClass;
static jclass stringClass;
@@ -286,6 +298,15 @@
}
}
+#ifdef HAVE_KEYLOG_CALLBACK
+void SSL_callback_add_keylog(SSL_CTX *ctx)
+{
+ if (key_log_file) {
+ SSL_CTX_set_keylog_callback(ctx, ssl_keylog_callback);
+ }
+}
+#endif
+
/* Hand out the same DH structure though once generated as we leak
* memory otherwise and freeing the structure up after use would be
* hard to track and in fact is not needed at all as it is safe to
@@ -373,6 +394,13 @@
ERR_remove_thread_state(NULL);
#endif
+#ifdef HAVE_KEYLOG_CALLBACK
+ if (key_log_file) {
+ BIO_free(key_log_file);
+ key_log_file = NULL;
+ }
+#endif
+
/* Don't call ERR_free_strings here; ERR_load_*_strings only
* actually load the error strings once per process due to static
* variable abuse in OpenSSL. */
@@ -846,6 +874,22 @@
sClazz = (*e)->FindClass(e, "java/lang/String");
stringClass = (jclass) (*e)->NewGlobalRef(e, sClazz);
+#ifdef HAVE_KEYLOG_CALLBACK
+ if (!key_log_file) {
+ char *key_log_file_name = getenv("SSLKEYLOGFILE");
+ if (key_log_file_name) {
+ FILE *file = fopen(key_log_file_name, "a");
+ if (file) {
+ if (setvbuf(file, NULL, _IONBF, 0)) {
+ fclose(file);
+ } else {
+ key_log_file = BIO_new_fp(file, BIO_CLOSE);
+ }
+ }
+ }
+ }
+#endif
+
return (jint)APR_SUCCESS;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/native/src/sslcontext.c
new/tomcat-native-1.2.23-src/native/src/sslcontext.c
--- old/tomcat-native-1.2.21-src/native/src/sslcontext.c 2019-01-10
23:07:56.000000000 +0100
+++ new/tomcat-native-1.2.23-src/native/src/sslcontext.c 2019-06-26
13:12:00.000000000 +0200
@@ -34,8 +34,6 @@
tcn_ssl_ctxt_t *c = (tcn_ssl_ctxt_t *)data;
if (c) {
int i;
- if (c->crl)
- X509_STORE_free(c->crl);
c->crl = NULL;
if (c->ctx)
SSL_CTX_free(c->ctx);
@@ -99,12 +97,12 @@
jstring hostname;
jlong original_ssl_context, new_ssl_context;
tcn_ssl_ctxt_t *new_c;
-
+
// Continue only if the static method exists
if (sni_java_callback == NULL) {
return SSL_TLSEXT_ERR_OK;
}
-
+
(*javavm)->AttachCurrentThread(javavm, (void **)&env, NULL);
// Get the host name presented by the client
@@ -113,7 +111,7 @@
// Convert to Java compatible parameters ready for the method call
hostname = (*env)->NewStringUTF(env, servername);
original_ssl_context = P2J(c);
-
+
new_ssl_context = (*env)->CallStaticLongMethod(env,
ssl_context_class,
sni_java_callback,
@@ -230,6 +228,10 @@
goto init_failed;
}
+#ifdef HAVE_KEYLOG_CALLBACK
+ SSL_callback_add_keylog(ctx);
+#endif
+
c->protocol = protocol;
c->mode = mode;
c->ctx = ctx;
@@ -607,14 +609,12 @@
lookup = X509_STORE_add_lookup(c->crl, X509_LOOKUP_file());
if (lookup == NULL) {
ERR_error_string(SSL_ERR_get(), err);
- X509_STORE_free(c->crl);
c->crl = NULL;
tcn_Throw(e, "Lookup failed for file %s (%s)", J2S(file), err);
goto cleanup;
}
if (!X509_LOOKUP_load_file(lookup, J2S(file), X509_FILETYPE_PEM)) {
ERR_error_string(SSL_ERR_get(), err);
- X509_STORE_free(c->crl);
c->crl = NULL;
tcn_Throw(e, "Load failed for file %s (%s)", J2S(file), err);
goto cleanup;
@@ -624,20 +624,18 @@
lookup = X509_STORE_add_lookup(c->crl, X509_LOOKUP_hash_dir());
if (lookup == NULL) {
ERR_error_string(SSL_ERR_get(), err);
- X509_STORE_free(c->crl);
c->crl = NULL;
tcn_Throw(e, "Lookup failed for path %s (%s)", J2S(file), err);
goto cleanup;
}
if (!X509_LOOKUP_add_dir(lookup, J2S(path), X509_FILETYPE_PEM)) {
ERR_error_string(SSL_ERR_get(), err);
- X509_STORE_free(c->crl);
c->crl = NULL;
tcn_Throw(e, "Load failed for path %s (%s)", J2S(file), err);
goto cleanup;
}
}
- X509_STORE_set_flags(c->store, X509_V_FLAG_CRL_CHECK |
X509_V_FLAG_CRL_CHECK_ALL);
+ X509_STORE_set_flags(c->crl, X509_V_FLAG_CRL_CHECK |
X509_V_FLAG_CRL_CHECK_ALL);
rv = JNI_TRUE;
cleanup:
TCN_FREE_CSTRING(file);
@@ -745,7 +743,7 @@
tcn_Throw(e, "Error while configuring DH: no dh param file given");
return;
}
-
+
bio = BIO_new_file(J2S(file), "r");
if (!bio) {
char err[256];
@@ -773,7 +771,7 @@
TCN_FREE_CSTRING(file);
return;
}
-
+
DH_free(dh);
TCN_FREE_CSTRING(file);
}
@@ -789,7 +787,7 @@
UNREFERENCED(o);
TCN_ASSERT(ctx != 0);
TCN_ASSERT(curveName);
-
+
/* First try to get curve by name */
i = OBJ_sn2nid(J2S(curveName));
if (!i) {
@@ -797,14 +795,14 @@
TCN_FREE_CSTRING(curveName);
return;
}
-
+
ecdh = EC_KEY_new_by_curve_name(i);
if (!ecdh) {
tcn_Throw(e, "Can't configure elliptic curve: unknown curve name %s",
J2S(curveName));
TCN_FREE_CSTRING(curveName);
return;
}
-
+
/* Setting found curve to context */
if (1 != SSL_CTX_set_tmp_ecdh(c->ctx, ecdh)) {
char err[256];
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/native/src/sslutils.c
new/tomcat-native-1.2.23-src/native/src/sslutils.c
--- old/tomcat-native-1.2.21-src/native/src/sslutils.c 2019-01-24
16:20:49.000000000 +0100
+++ new/tomcat-native-1.2.23-src/native/src/sslutils.c 2019-06-26
13:12:00.000000000 +0200
@@ -734,10 +734,13 @@
memcpy(ocsp_urls,os->data, len);
ocsp_urls[len] = '\0';
- if ((response = apr_pcalloc(p, sizeof(char *))) == NULL)
+ if ((response = apr_pcalloc(p, sizeof(char *))) == NULL) {
return NULL;
- if (parse_ASN1_Sequence(ocsp_urls, &response, &numofresponses, p))
+ }
+ if (parse_ASN1_Sequence(ocsp_urls, &response, &numofresponses, p) ||
+ numofresponses ==0) {
response = NULL;
+ }
return response;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/native/srclib/VERSIONS
new/tomcat-native-1.2.23-src/native/srclib/VERSIONS
--- old/tomcat-native-1.2.21-src/native/srclib/VERSIONS 2018-11-30
14:04:18.000000000 +0100
+++ new/tomcat-native-1.2.23-src/native/srclib/VERSIONS 2019-06-26
13:12:00.000000000 +0200
@@ -1,4 +1,4 @@
Use the following version of the libraries
- APR 1.6.5 or later, http://apr.apache.org
-- OpenSSL 1.0.2q or later, http://www.openssl.org
+- OpenSSL 1.0.2r or later, http://www.openssl.org
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/native/srclib/apr/NMAKEmakefile
new/tomcat-native-1.2.23-src/native/srclib/apr/NMAKEmakefile
--- old/tomcat-native-1.2.21-src/native/srclib/apr/NMAKEmakefile
2017-08-25 17:03:42.000000000 +0200
+++ new/tomcat-native-1.2.23-src/native/srclib/apr/NMAKEmakefile
2019-06-26 13:12:00.000000000 +0200
@@ -45,7 +45,7 @@
!IF "$(TARGET)" != "LIB"
LFLAGS = $(LFLAGS) /version:1.4
!ENDIF
-INCLUDES = -I$(SRCDIR)\include -I$(SRCDIR)\include\arch
-I$(SRCDIR)\include\arch\win32 -I$(SRCDIR)\include\arch\unix
+INCLUDES = -I$(SRCDIR)\include -I$(SRCDIR)\include\arch
-I$(SRCDIR)\include\private -I$(SRCDIR)\include\arch\win32
-I$(SRCDIR)\include\arch\unix
PDBFLAGS = -Fo$(WORKDIR)\ -Fd$(WORKDIR)\$(PROJECT)-src
OBJECTS = \
$(WORKDIR)\apr_atomic.obj \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/native/tcnative.spec
new/tomcat-native-1.2.23-src/native/tcnative.spec
--- old/tomcat-native-1.2.21-src/native/tcnative.spec 2019-01-25
18:34:12.000000000 +0100
+++ new/tomcat-native-1.2.23-src/native/tcnative.spec 2019-06-26
13:14:19.000000000 +0200
@@ -21,7 +21,7 @@
Summary: Tomcat Native Java library
Name: tcnative
-Version: 1.2.21
+Version: 1.2.23
Release: 1
License: Apache Software License
Group: System Environment/Libraries
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/test/org/apache/tomcat/jni/TestSocketServer.java
new/tomcat-native-1.2.23-src/test/org/apache/tomcat/jni/TestSocketServer.java
---
old/tomcat-native-1.2.21-src/test/org/apache/tomcat/jni/TestSocketServer.java
2018-06-25 12:24:31.000000000 +0200
+++
new/tomcat-native-1.2.23-src/test/org/apache/tomcat/jni/TestSocketServer.java
2019-06-26 13:12:00.000000000 +0200
@@ -195,8 +195,8 @@
}
long wait = System.nanoTime() - start;
Assert.assertTrue("Timeout failed", ok);
- Assert.assertFalse("non_blocking accept Socket.APR_SO_NONBLOCK failed
(>1ms) [" + wait +
- "] +-[" + ERROR_MARGIN + "]", wait > 1000000 + ERROR_MARGIN);
+ Assert.assertFalse("non_blocking accept Socket.APR_SO_NONBLOCK failed
(>10ms) [" + wait +
+ "] +-[" + ERROR_MARGIN + "]", wait > 10000000 + ERROR_MARGIN);
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/test/org/apache/tomcat/jni/TesterSSL.java
new/tomcat-native-1.2.23-src/test/org/apache/tomcat/jni/TesterSSL.java
--- old/tomcat-native-1.2.21-src/test/org/apache/tomcat/jni/TesterSSL.java
1970-01-01 01:00:00.000000000 +0100
+++ new/tomcat-native-1.2.23-src/test/org/apache/tomcat/jni/TesterSSL.java
2019-06-26 13:12:00.000000000 +0200
@@ -0,0 +1,58 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.tomcat.jni;
+
+import org.junit.Test;
+
+/*
+ * Helper class to investigate native memory leaks. Needs to be used with tools
+ * to monitor native memory usage.
+ *
+ * Note: Moving the Pool, SSLContext, SSL and BIO creation in/out of the loop
+ * can help identify where the memory is leaking.
+ */
+public class TesterSSL {
+
+ @Test
+ public void testCreateDestroy() throws Exception {
+ Library.initialize(null);
+ SSL.initialize(null);
+
+ long memoryPool = Pool.create(0);
+ long sslCtx = SSLContext.make(memoryPool, SSL.SSL_PROTOCOL_ALL,
SSL.SSL_MODE_SERVER);
+
+ for (int i = 0; i < 10000000; i++) {
+ doNative(sslCtx);
+ if (i % 1000 == 0) {
+ System.gc();
+ }
+ }
+
+ SSLContext.free(sslCtx);
+ Pool.destroy(memoryPool);
+
+ System.gc();
+ }
+
+
+ private void doNative(long sslCtx) throws Exception {
+ long ssl = SSL.newSSL(sslCtx, true);
+ long bio = SSL.makeNetworkBIO(ssl);
+ SSL.freeBIO(bio);
+ SSL.freeSSL(ssl);
+ }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/xdocs/index.xml
new/tomcat-native-1.2.23-src/xdocs/index.xml
--- old/tomcat-native-1.2.21-src/xdocs/index.xml 2018-12-05
11:19:24.000000000 +0100
+++ new/tomcat-native-1.2.23-src/xdocs/index.xml 2019-06-26
13:12:00.000000000 +0200
@@ -59,10 +59,10 @@
<section name="Headlines">
<ul>
-<li><a href="news/2018.html#20181204">4 Dec 2018 - <b>TC-Native-1.2.19
+<li><a href="news/2019.html#20190131">31 Jan 2019 - <b>TC-Native-1.2.21
released</b></a>
<p>The Apache Tomcat team is proud to announce the immediate availability of
-Tomcat Native 1.2.19 Stable.</p>
+Tomcat Native 1.2.21 Stable.</p>
<p>
The sources and the binaries for selected platforms are available from the
<a href="../download-native.cgi">Download page</a>.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/xdocs/miscellaneous/changelog.xml
new/tomcat-native-1.2.23-src/xdocs/miscellaneous/changelog.xml
--- old/tomcat-native-1.2.21-src/xdocs/miscellaneous/changelog.xml
2019-01-25 18:28:04.000000000 +0100
+++ new/tomcat-native-1.2.23-src/xdocs/miscellaneous/changelog.xml
2019-06-26 13:12:00.000000000 +0200
@@ -34,6 +34,45 @@
This is the Changelog for Tomcat Native 1.2.
</p>
</section>
+<section name="Changes in 1.2.23">
+ <changelog>
+ <fix>
+ Make file fixes to enable building with APR 1.7.x. (markt)
+ </fix>
+ <fix>
+ Switch to Windows 7 as the default target. (markt)
+ </fix>
+ <update>
+ Update minimum OpenSSL version to 1.0.2r. (markt)
+ </update>
+ </changelog>
+</section>
+<section name="Changes in 1.2.22">
+ <changelog>
+ <fix>
+ <bug>63159</bug>: Unable to complete build when build directory is
+ outside of the source tree. Patch provided by Bob Huemmer. (markt)
+ </fix>
+ <fix>
+ <bug>63356</bug>: Fix client certificate authentication when a
certificate
+ contains an AIA extension without an OCSP URI. Patch provided by Milind
+ Takawale. (markt)
+ </fix>
+ <fix>
+ <bug>63500</bug>: Fix JVM crash on Connector start when a certificate
+ revocation file or path is specified for OpenSSL. (markt)
+ </fix>
+ <add>
+ Add support for TLS key logging when using OpenSSL 1.1.1 or later. If the
+ environment variable SSLKEYLOGFILE is set then the TLS keys will be
logged
+ to that file. Patch provided by John Kelly. (markt)
+ </add>
+ <fix>
+ Update build script after migration of soucre repository from Subversion
+ to Git. (markt)
+ </fix>
+ </changelog>
+</section>
<section name="Changes in 1.2.21">
<changelog>
<fix>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/tomcat-native-1.2.21-src/xdocs/news/2019.xml
new/tomcat-native-1.2.23-src/xdocs/news/2019.xml
--- old/tomcat-native-1.2.21-src/xdocs/news/2019.xml 1970-01-01
01:00:00.000000000 +0100
+++ new/tomcat-native-1.2.23-src/xdocs/news/2019.xml 2019-06-26
13:12:00.000000000 +0200
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<!DOCTYPE document [
+ <!ENTITY project SYSTEM "project.xml">
+]>
+<document url="2018.html">
+
+ &project;
+
+ <properties>
+ <title>2018 News and Status</title>
+ </properties>
+
+<body>
+
+<section name="2019 News & Status">
+ <subsection anchor="20190131" name="31 Jan 2019 - TC-Native-1.2.21 released">
+ <p>The Apache Tomcat team is proud to announce the immediate availability of
+ Tomcat Native 1.2.21. This is a bugfix release.
+ </p>
+ </subsection>
+</section>
+</body>
+</document>