Skip to content

Commit

Permalink
feat: update tomcat-native to 1.2.35
Browse files Browse the repository at this point in the history
Tomcat native library using the Apache Portable Runtime

Issue: deepin-community/sig-deepin-sysdev-team#547
Log: update repo
  • Loading branch information
xzl01 committed May 7, 2024
1 parent 054f2b4 commit 6765de7
Show file tree
Hide file tree
Showing 88 changed files with 2,243 additions and 1,039 deletions.
1 change: 0 additions & 1 deletion .gitignore

This file was deleted.

34 changes: 32 additions & 2 deletions CHANGELOG.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,36 @@

This is the Changelog for Tomcat Native 1.2.

Changes in 1.2.35

* Docs: Document the TLS rengotiation behaviour. (markt)
* Docs: Add HOWTO-RELEASE.txt that describes the release process.
(markt)
* Update: Update recommended OpenSSL version to 1.1.1q or later. (markt)

Changes in 1.2.34

* Code: Refactor library initialization so it is compatible with Tomcat
10.1.x onwards where a number of Java classes have been removed.
(markt)
* Add: Map the OpenSSL 3.x FIPS behaviour to the OpenSSL 1.x API to
allow clients to determine if the FIPS provider is being used when
Tomcat Native is compiled against OpenSSL 3.x. (markt)

Changes in 1.2.33

* Fix: 66035: Fix crash when attempting to read TLS session ID after a
handshake failure. (schultz/markt)
* Fix: Enable download_deps.sh to be called from any directory. Pull
request #12 provided by Dimitrios Soumis. (markt)
* Update: Update recommended OpenSSL version to 1.1.1o or later. (markt)

Changes in 1.2.32

* Update: Update recommended OpenSSL version to 1.1.1n or later. (markt)
* Fix: Fix release script so it works with the current git layout.
(markt)

Changes in 1.2.31

* Fix: 65441: Correct previous fix that enabled building to continue
Expand Down Expand Up @@ -58,7 +88,7 @@
* Add: Add support for HP-UX's _lwp_self() in our ssl_thread_id(void).
(michaelo) Remove default option passed for rpath to linker on HP-UX.
(michaelo)
* Add: Add an option to allow the OCSP responder check to by bypassed.
* Add: Add an option to allow the OCSP responder check to be bypassed.
Note that if OCSP is enabled, a missing responder is now treated as an
error. (jfclere)
* Fix: 64429: Fix compilation with LibreSSL. (markt)
Expand Down Expand Up @@ -338,4 +368,4 @@

Please see the 1.1.x changelog.

Copyright � 2008-2020, The Apache Software Foundation
Copyright � 2008-2022, The Apache Software Foundation
87 changes: 87 additions & 0 deletions HOWTO-RELEASE.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
================================================================================
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.
================================================================================

How to do a Tomcat Native release
=================================

Requirements
------------

Java 8
Apache Ant 1.9 or later
Apache APR 1.4.3 or later source (1.7.0 or later recommended)


Preparation
-----------

Review the open issues in Bugzilla.
Review open PRs in GitHub.

If you haven't already, add your public PGP key to KEYS.

Ensure dates and/or version numbers are up to date:
- build.properties.default
- native/build/rpm/tcnative.spec.in
- native/include/tcn_version.h
- native/os/win32/libtcnative.rc
- xdocs/miscellaneous/changelog.xml

Run the release script to check the Java code is aligned with the current 9.0.x
source.
./jnirelease.sh --ver=1.2.x --with-apr=/path/to/apr/source

Switch back to the main branch
git checkout main

Tagging
-------

# Check clone is up to date and clean
git pull
git status

# Edit files to remove / disable dev build flags
# - build.properties.default
# - tcn_version.h

# Confirm the previous edits
git diff

# Tag (modify version as appropriate)
git commit -a -m "Tag 1.2.35"
git tag 1.2.35
git push origin 1.2.35

# Reset main
git reset --hard HEAD~1


Create the source release
-------------------------

# Modify version as appropriate
./jnirelease.sh --ver=1.2.35 --with-apr=/path/to/apr/source

# Switch back to the main branch
git checkout main


Create the binary release for Windows
-------------------------------------

See native/building
2 changes: 1 addition & 1 deletion NOTICE
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
Apache Tomcat Native Library
Copyright 2002-2020 The Apache Software Foundation
Copyright 2002-2022 The Apache Software Foundation

This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).
Expand Down
25 changes: 0 additions & 25 deletions TODO.txt
Original file line number Diff line number Diff line change
Expand Up @@ -21,20 +21,6 @@
TODO


SSL Renegotiation
-----------------

It is unclear to me, what the current state is. It looks like we support
the unsafe legacy reneg whenever the OpenSSL used during build time
supports it. There is no configuration option to switch it off during
runtime. Right?

Is it correct, that client initiated reneg is not supported and thus the
known attacks will not work even with old OpenSSL?

Should we add a remark about this topic to the docs?


Java Tests and Examples
-----------------------

Expand All @@ -60,21 +46,10 @@ Java Classes Source Distribution
Check on how to handle the test and examples classes.
I think they have no other home.

Furthermore some of the Java files do not exist inside TC:
- Apr.java, apr.properties, jni/Buffer.java and jni/Thread.java
I don't know their purpose and whether we can delete them.


Releasing
---------

- Document how to release.

- Add info about updating config.guess and config.sub from

http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD

- ZIP download seems to have group write permissions set
(at least after I extract it on Solaris).
It's a bit strange that permissions differ between the
Expand Down
2 changes: 1 addition & 1 deletion build.properties.default
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
# ----- Version Control Flags -----
version.major=1
version.minor=2
version.build=31
version.build=35
version.patch=0
version.suffix=

Expand Down
86 changes: 18 additions & 68 deletions build.xml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
<!-- Build file for Tomcat Native -->
<project name="Tomcat Native" default="compile" basedir=".">
<!-- Give user a chance to override without editing this file
(and without typing -D each time it compiles it
(and without typing -D each time it compiles it)
-->
<property file="${user.home}/.ant.properties" />
<property file="${user.home}/build.properties" />
Expand All @@ -30,7 +30,7 @@
<property name="project" value="tomcat-native" />
<property name="name" value="Tomcat Native" />
<property name="title" value="Tomcat Native Library"/>
<property name="year" value="2020" />
<property name="year" value="2022" />

<property name="test.runner" value="junit.textui.TestRunner"/>

Expand All @@ -40,26 +40,24 @@

<property name="final.name" value="${project}-${version}" />

<property name="build.dir" value="./dist"/>
<property name="build.src" value="${build.dir}/src"/>
<property name="build.dest" value="${build.dir}/classes"/>
<property name="src.dir" value="."/>
<property name="dist.root" value="./dist"/>
<property name="ant.home" value="."/>
<property name="build.dir" value="./dist"/>
<property name="build.dest" value="${build.dir}/classes"/>
<property name="src.dir" value="."/>
<property name="dist.root" value="./dist"/>
<property name="ant.home" value="."/>

<property name="docs.src" value="./xdocs"/>
<property name="docs.dest" value="${dist.root}/doc"/>
<property name="docs.dest.print" value="${dist.root}/doc/printable"/>
<property name="test.dir" value="${build.dest}/test"/>
<property name="examples.dir" value="${build.dest}/examples"/>
<property name="docs.src" value="./xdocs"/>
<property name="docs.dest" value="${dist.root}/doc"/>
<property name="test.dir" value="${build.dest}/test"/>
<property name="examples.dir" value="${build.dest}/examples"/>

<property name="tc.library.path" value="${basedir}/native/.libs"/>
<property name="tc.library.path" value="${basedir}/native/.libs"/>

<!-- The base directory for component sources -->
<property name="source.home" value="java"/>
<property name="source.home" value="java"/>

<!-- Tests To Run -->
<property name="test.name" value="**/Test*.java"/>
<property name="test.name" value="**/Test*.java"/>

<!-- Build classpath -->
<path id="classpath">
Expand Down Expand Up @@ -166,15 +164,15 @@
<target name="javadocs" description="Java documentation">
<mkdir dir="${docs.dest}"/>
<mkdir dir="${docs.dest}/api"/>
<javadoc sourcepath="${build.src}/java"
<javadoc sourcepath="${src.dir}/java"
destdir="${docs.dest}/api"
author="true"
version="true"
overview="${src.dir}/java/overview.html"
packagenames="org.apache.tomcat.*"
windowtitle="${title} (Version ${version})"
doctitle="&lt;h1&gt;${title} (Version ${version})&lt;/h1&gt;"
bottom="Copyright 2002-2020 The Apache Software Foundation.&lt;!--
bottom="Copyright 2002-${year} The Apache Software Foundation.&lt;!--
Licensed under the Apache License, Version 2.0 (the 'License');
you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -204,25 +202,7 @@ limitations under the License.--&gt;">
<target name="compile" depends="prepare" description="Compile Java sources">
<mkdir dir="${build.dest}"/>
<mkdir dir="${build.dest}/java"/>
<mkdir dir="${build.src}"/>
<mkdir dir="${build.src}/java"/>
<tstamp>
<format property="TODAY" pattern="MMM d yyyy" locale="en"/>
<format property="TSTAMP" pattern="hh:mm:ss"/>
</tstamp>
<!-- Copy static resource files -->
<filter token="VERSION" value="${version}"/>
<filter token="VERSION_NUMBER" value="${version.number}"/>
<filter token="VERSION_BUILT" value="${TODAY} ${TSTAMP}"/>
<copy todir="${build.src}/java" filtering="yes" encoding="ISO-8859-1">
<fileset dir="${src.dir}/java">
<include name="**/*.java"/>
<include name="**/*.xml"/>
<include name="**/*.properties"/>
</fileset>
</copy>

<javac srcdir="${build.src}/java"
<javac srcdir="${src.dir}/java"
destdir="${build.dest}/java"
source="${compile.source}"
target="${compile.target}"
Expand All @@ -233,13 +213,6 @@ limitations under the License.--&gt;">
includeantruntime="false">
<classpath refid="classpath"/>
</javac>

<copy todir="${build.dest}/java" filtering="yes" encoding="ISO-8859-1">
<fileset dir="${build.src}/java">
<include name="**/*.xml"/>
<include name="**/*.properties"/>
</fileset>
</copy>
</target>

<!-- ================================================================== -->
Expand Down Expand Up @@ -270,24 +243,7 @@ limitations under the License.--&gt;">
<target name="compile-tests" depends="compile" description="Compile Java test classes">
<mkdir dir="${build.dest}"/>
<mkdir dir="${build.dest}/test"/>
<mkdir dir="${build.src}"/>
<mkdir dir="${build.src}/test"/>
<tstamp>
<format property="TODAY" pattern="MMM d yyyy" locale="en"/>
<format property="TSTAMP" pattern="hh:mm:ss"/>
</tstamp>
<!-- Copy static resource files -->
<filter token="VERSION" value="${version}"/>
<filter token="VERSION_NUMBER" value="${version.number}"/>
<filter token="VERSION_BUILT" value="${TODAY} ${TSTAMP}"/>
<copy todir="${build.src}/test" filtering="yes" encoding="ISO-8859-1">
<fileset dir="${src.dir}/test">
<include name="**/*.java"/>
<include name="**/*.xml"/>
<include name="**/*.properties"/>
</fileset>
</copy>
<javac srcdir="${build.src}/test"
<javac srcdir="${src.dir}/test"
destdir="${build.dest}/test"
source="${compile.source}"
target="${compile.target}"
Expand All @@ -298,12 +254,6 @@ limitations under the License.--&gt;">
includeantruntime="false">
<classpath refid="test.classpath"/>
</javac>
<copy todir="${build.dest}/test" filtering="yes" encoding="ISO-8859-1">
<fileset dir="${build.src}/test">
<include name="**/*.xml"/>
<include name="**/*.properties"/>
</fileset>
</copy>
</target>

<!-- =================================================================== -->
Expand Down
17 changes: 17 additions & 0 deletions debian/changelog
Original file line number Diff line number Diff line change
@@ -1,3 +1,20 @@
tomcat-native (1.2.35-1) unstable; urgency=medium

* Team upload.
* New upstream version 1.2.35.
- Restore compatibility with Tomcat 10.1.x. (Closes: #1030871)
Thanks to Jorge Moraleda for the report.
* Declare compliance with Debian Policy 4.6.2.

-- Markus Koschany <[email protected]> Sun, 12 Feb 2023 18:35:01 +0100

tomcat-native (1.2.32-1) unstable; urgency=medium

* Team upload.
* New upstream release

-- Emmanuel Bourg <[email protected]> Mon, 02 May 2022 19:03:02 +0200

tomcat-native (1.2.31-1) unstable; urgency=medium

* Team upload.
Expand Down
2 changes: 1 addition & 1 deletion debian/control
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ Build-Depends:
dpkg-dev (>= 1.16.1~),
libapr1-dev,
libssl-dev
Standards-Version: 4.6.0.1
Standards-Version: 4.6.2
Vcs-Git: https://salsa.debian.org/java-team/tomcat-native.git
Vcs-Browser: https://salsa.debian.org/java-team/tomcat-native
Homepage: http://tomcat.apache.org/native-doc/
Expand Down
1 change: 1 addition & 0 deletions debian/docs
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
NOTICE
Loading

0 comments on commit 6765de7

Please sign in to comment.