You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2022/05/31 20:38:19 UTC
[commons-net] branch master updated: Bump actions/cache from 3.0.2 to 3.0.3
This is an automated email from the ASF dual-hosted git repository.
ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-net.git
The following commit(s) were added to refs/heads/master by this push:
new a8a756f3 Bump actions/cache from 3.0.2 to 3.0.3
a8a756f3 is described below
commit a8a756f3dfa0c05b1c42d8daab87853c5a4f216e
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Tue May 31 16:38:14 2022 -0400
Bump actions/cache from 3.0.2 to 3.0.3
---
.github/workflows/maven.yml | 112 +-
src/changes/changes.xml | 3322 +++++++++++++++++++++----------------------
2 files changed, 1717 insertions(+), 1717 deletions(-)
diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml
index 268db1d9..81b03ecf 100644
--- a/.github/workflows/maven.yml
+++ b/.github/workflows/maven.yml
@@ -1,56 +1,56 @@
-# 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.
-
-name: Java CI
-
-on: [push, pull_request, workflow_dispatch]
-
-jobs:
- build:
- timeout-minutes: 5
- continue-on-error: ${{ matrix.experimental }}
- strategy:
- matrix:
- java: [ 8, 11, 17 ]
- os: [ubuntu-latest]
- experimental: [false]
- # Don't need
- include:
- - java: 8
- os: macos-latest
- experimental: false
- - java: 8
- os: windows-latest
- experimental: false
-# include:
-# - java: 18-ea
-# experimental: true
-
- runs-on: ${{ matrix.os }}
- steps:
- - uses: actions/checkout@v3
- - uses: actions/cache@v3.0.2
- with:
- path: ~/.m2/repository
- key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
- restore-keys: |
- ${{ runner.os }}-maven-
- - name: Set up JDK ${{ matrix.java }}
- uses: actions/setup-java@v3
- with:
- distribution: 'temurin'
- java-version: ${{ matrix.java }}
- - name: Build with Maven
- run: mvn -V --batch-mode -Ddoclint=all --file pom.xml --no-transfer-progress -Pslf4j-simple
+# 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.
+
+name: Java CI
+
+on: [push, pull_request, workflow_dispatch]
+
+jobs:
+ build:
+ timeout-minutes: 5
+ continue-on-error: ${{ matrix.experimental }}
+ strategy:
+ matrix:
+ java: [ 8, 11, 17 ]
+ os: [ubuntu-latest]
+ experimental: [false]
+ # Don't need
+ include:
+ - java: 8
+ os: macos-latest
+ experimental: false
+ - java: 8
+ os: windows-latest
+ experimental: false
+# include:
+# - java: 18-ea
+# experimental: true
+
+ runs-on: ${{ matrix.os }}
+ steps:
+ - uses: actions/checkout@v3
+ - uses: actions/cache@v3.0.3
+ with:
+ path: ~/.m2/repository
+ key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
+ restore-keys: |
+ ${{ runner.os }}-maven-
+ - name: Set up JDK ${{ matrix.java }}
+ uses: actions/setup-java@v3
+ with:
+ distribution: 'temurin'
+ java-version: ${{ matrix.java }}
+ - name: Build with Maven
+ run: mvn -V --batch-mode -Ddoclint=all --file pom.xml --no-transfer-progress -Pslf4j-simple
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index b8ba7683..e596c137 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -1,1661 +1,1661 @@
-<!--
-
- 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.
-
--->
-<!--
-This file is also used by the maven-changes-plugin to generate the release notes.
-Useful ways of finding items to add to this file are:
-
-1. Add items when you fix a bug or add a feature (this makes the
-release process easy :-).
-
-2. Do a JIRA search for tickets closed since the previous release.
-
-3. Use the report generated by the maven-changelog-plugin to see all
-SVN commits. Set the project.properties' maven.changelog.range
-property to the number of days since the last release.
-
-To generate the release notes from this file:
-
-mvn changes:announcement-generate -Prelease-notes [-Dchanges.version=nnn]
-
-then tweak the formatting if necessary
-and commit
-
-The <action> type attribute can be add,update,fix,remove.
--->
-
-<document>
- <properties>
- <title>Apache Commons Net Release Notes</title>
- <author email="dev@commons.apache.org">Apache Commons developers</author>
- </properties>
-
- <!-- NOTE:
- The description below is specially formatted so as to improve the layout of the generated release notes:
- The parsing process removes all line feeds, replacing them with a single space.
- The Velocity template in resources/templates has been enhanced to replace pairs of adjacent spaces
- with a new-line in the release notes. (These spaces are ignored when displaying HTML).
- If the output is not quite correct, check for invisible trailing spaces!
-
- N.B. The release notes template groups actions by type, and only extracts data for the current release.
- The changes report outputs actions in the order they appear in this file.
-
- To regenerate the release notes:
- mvn changes:announcement-generate -Prelease-notes [-Dchanges.version=nnn]
-
- Defining changes.version allows one to create the RN without first removing the SNAPSHOT suffix.
- -->
-
- <body>
- <release version="3.9.0" date="2021-MM-DD" description="Maintenance and bug fix release (Java 8).">
- <!-- FIX -->
- <action type="fix" issue="NET-708" dev="ggregory" due-to="XenoAmess">
- Use yyyy instead of YYYY in SimpleDateFormat #97.
- </action>
- <action type="update" dev="sebb">
- Prevent serialization of the 4 classes that implement Serializable.
- It is not useful and is unlikely to work properly.
- </action>
- <action type="fix" dev="ggregory" due-to="Arturo Bernal">
- Use Math.min and Math.max method instead of manual calculations. #104.
- </action>
- <!-- ADD -->
- <action type="add" dev="ggregory" due-to="Gary Gregory">
- [FTP] Add FTPClient.mdtmInstant(String).
- </action>
- <action type="add" dev="ggregory" due-to="Gary Gregory">
- [FTP] Add MLSxEntryParser.parseGmtInstant(String).
- </action>
- <action type="add" dev="ggregory" due-to="Gary Gregory">
- [FTP] Add FTPClient.getControlKeepAliveReplyTimeoutDuration().
- </action>
- <action type="add" dev="ggregory" due-to="Gary Gregory">
- [FTP] Add FTPClient.setControlKeepAliveReplyTimeout(Duration).
- </action>
- <action type="add" dev="ggregory" due-to="Gary Gregory">
- [FTP] Add FTPClient.getControlKeepAliveTimeoutDuration().
- </action>
- <action type="add" dev="ggregory" due-to="Gary Gregory">
- [FTP] Add FTPClient.setControlKeepAliveTimeout(Duration).
- </action>
- <action type="add" dev="ggregory" due-to="Gary Gregory">
- [FTP] Add FTPClient.getDataTimeout().
- </action>
- <action type="add" dev="ggregory" due-to="Gary Gregory">
- [FTP] Add FTPClient.setDataTimeout(Duration).
- </action>
- <action type="add" dev="ggregory" due-to="Gary Gregory">
- [FTP] Add FTPFile.getTimestampInstant().
- </action>
- <action type="add" dev="ggregory" due-to="Gary Gregory">
- Add github/codeql-action.
- </action>
- <!-- UPDATE -->
- <action dev="ggregory" type="update" due-to="Gary Gregory">
- A actions/setup-java from 1.4.3 to 3.
- </action>
- <action type="update" dev="ggregory" due-to="Dependabot">
- Bump actions/checkout from 2.3.4 to 3 #89, #91, #100.
- </action>
- <action type="update" dev="ggregory" due-to="Dependabot, Gary Gregory">
- Bump actions/cache from 2.1.6 to 3.0.2 #93, #102.
- </action>
- <action type="update" dev="ggregory" due-to="Dependabot">
- Bump junit from 4.13.1 to 4.13.2 #74.
- </action>
- <action type="update" dev="ggregory" due-to="Dependabot, Gary Gregory">
- Bump commons-io from 2.6 to 2.11.0 #60.
- </action>
- <action dev="ggregory" type="update" due-to="Gary Gregory">
- Bump commons.jacoco.version from 0.8.6 to 0.8.7.
- </action>
- <action dev="ggregory" type="update" due-to="Gary Gregory">
- Bump commons.japicmp.version from 0.14.3 to 0.15.7.
- </action>
- <action dev="ggregory" type="update" due-to="Gary Gregory">
- Bump commons.surefire.version from 2.22.2 to 3.0.0-M5.
- </action>
- <action type="update" dev="ggregory" due-to="XenoAmess, Gary Gregory">
- Bump ftpserver-core from 1.1.1 to 1.2.0 #96.
- </action>
- </release>
- <release version="3.8.0" date="2021-02-13" description="Maintenance and bug fix release (Java 7).">
- <!-- ADD -->
- <action type="add" dev="ggregory" due-to="Arturo Bernal, Gary Gregory">
- Add and use NetConstants.
- </action>
- <action type="add" dev="ggregory" due-to="Gary Gregory">
- Add and use SocketClient.applySocketAttributes().
- </action>
- <action type="add" dev="ggregory" due-to="Gary Gregory">
- [FTP] Add FTPClient.hasFeature(FTPCmd).
- </action>
- <action type="add" dev="ggregory" due-to="Gary Gregory">
- [FTP] Add FTPClient.mdtmCalendar(String).
- </action>
- <!-- FIX -->
- <action type="fix" dev="ggregory" due-to="Gary Gregory">
- [IMAP] Fix concurrent counting of chunks in IMAPExportMbox.
- </action>
- <action type="fix" dev="ggregory" due-to="Gary Gregory">
- Fix possible if rare NPEs in tests.
- </action>
- <!-- UPDATE -->
- <action type="update" dev="ggregory" due-to="Dependabot">
- Bump actions/checkout from v2.3.3 to v2.3.4 #69.
- </action>
- <action issue="NET-685" type="update" dev="ggregory" due-to="Simo385">
- Update SocketClient default connect timeout from ∞ to 60 seconds #51.
- </action>
- <action issue="NET-695" type="update" dev="ggregory" due-to="Gary Gregory, Possibly Cott">
- Apply SocketClient timeout after connection but before SSL negotiation.
- </action>
- <action type="update" dev="ggregory" due-to="Arturo Bernal, Gary Gregory">
- Minor Improvements #71, #72.
- </action>
- <action type="update" dev="ggregory" due-to="Dependabot">
- Bump actions/cache from v2 to v2.1.4 #73.
- </action>
- </release>
- <release version="3.7.2" date="2020-10-14" description="Maintenance and bug fix release (Java 7).">
- <action issue="NET-689" type="fix" dev="ggregory" due-to="Charlie, Gary Gregory">
- Host name is not set on the SSLSocket causing isEndpointCheckingEnabled to fail.
- </action>
- <action type="fix" dev="ggregory" due-to="Dependabot">
- Fix possible socket and input stream leak on socket exception in
- org.apache.commons.net.ftp.FTPClient._retrieveFile(String, String, OutputStream).
- </action>
- <action issue="NET-690" type="fix" dev="ggregory" due-to="payal-meh, Gary Gregory">
- Performance issue when using the FTPClient to retrieve files #65.
- </action>
- <action issue="NET-691" type="update" dev="ggregory" due-to="Lewis John McGibbney">
- Improve Javadoc for IMAPSClient #68.
- </action>
- <!-- UPDATES -->
- <action type="update" dev="ggregory" due-to="Dependabot">
- Bump actions/setup-java from v1.4.2 to v1.4.3 #62.
- </action>
- <action type="update" dev="ggregory" due-to="Dependabot">
- Bump junit from 4.13 to 4.13.1 #67.
- </action>
- </release>
- <release version="3.7.1" date="2020-09-30" description="Maintenance and bug fix release (Java 7).">
- <action issue="NET-687" type="fix" dev="ggregory" due-to="Gary Gregory, Mikael, j-verse">
- [FTPS] javax.net.ssl.SSLException: Unsupported or unrecognized SSL message, #59.
- </action>
- <!-- UPDATES -->
- <action type="update" dev="ggregory" due-to="Dependabot">
- Update actions/checkout from v2.3.1 to v2.3.3 #56, #61.
- </action>
- </release>
- <release version="3.7" date="2020-08-05"
- description="
-This is mainly a bug-fix release (Java 7). See further details below.
-
- This release requires a minimum of Java 7.
-
- This release is binary compatible with previous releases.
- However it is not source compatible with releases before 3.4, as some methods were added to the interface NtpV3Packet in 3.4
-
- Note that the examples packages were moved under org/apache/commons/net/examples.
- The examples are not part of the public API, so this does not affect compatibility.
-
-">
- <action issue="NET-673" type="fix" dev="sebb">
- IMAPClient.APPEND does not always calculate the correct length
- </action>
- <action issue="NET-646" type="add" dev="sebb">
- ALLO FTP Command for files >2GB
- </action>
- <action issue="NET-615" type="add" dev="sebb">
- IMAPClient could simplify using empty arguments
- </action>
- <action issue="NET-614" type="add" dev="sebb">
- IMAP fails to quote/encode mailbox names
- </action>
- <action issue="NET-643" type="fix" dev="sebb" due-to="Vasily">
- NPE when closing telnet stream
- </action>
- <action issue="NET-648" type="add" dev="pschumacher">
- Add Automatic-Module-Name MANIFEST entry for Java 9 compatibility
- </action>
- <action issue="NET-641" type="fix" dev="sebb" due-to="pin_ptr">
- SubnetUtils.SubnetInfo.isInRange("0.0.0.0") returns true for CIDR/31, 32
- </action>
- <action issue="NET-638" type="add" dev="sebb" due-to="Daniel Leong">
- Telnet subnegotiations hard-limited to 512 bytes - allow override
- </action>
- <action issue="NET-639" type="fix" dev="sebb" due-to=" Alexander Eller">
- MVSFTPEntryParser.preParse - MVS, z/OS - allow for merged Ext/Used fields
- </action>
- <action issue="NET-636" type="fix" dev="sebb">
- examples should be in org.apache.commons.net subpackage
- </action>
- <action issue="NET-634" type="add" dev="sebb" due-to="Mauro Molinari">
- Add SIZE command support
- </action>
- <action type="add" dev="sebb">
- Add POP3ExportMbox example code
- </action>
- <action issue="NET-633" type="update" dev="sebb" due-to="n0rm1e">
- Add XOAUTH2 to IMAP and SMTP
- </action>
- <action issue="NET-632" type="update" dev="sebb" due-to="prakapenka">
- FTPHTTPClient - support for encoding other than UTF-8
- </action>
- <action issue="NET-631" type="fix" dev="sebb">
- Bug in MVSFTPEntryParser.parseUnixList (FindBugs)
- </action>
- <action issue="NET-584" type="fix" dev="sebb" due-to="Kazantsev Andrey Sergeevich/Nick Manley">
- Error when using org.apache.commons.net.ftp.FTPClient setControlKeepAliveTimeout
- </action>
- <action issue="NET-626" type="update" dev="sebb" due-to="Makoto Sakaguchi">
- SubnetUtils#SubnetUtils - improved comment
- </action>
- <action issue="NET-625" type="update" dev="sebb">
- SubnetUtils - improve construction
- </action>
- <action issue="NET-624" type="update" dev="sebb" due-to="Makoto Sakaguchi">
- SubnetInfo#getCidrSignature - improve functions
- </action>
- <action issue="NET-624" type="fix" dev="sebb" due-to="Makoto Sakaguchi">
- SubnetInfo#toCidrNotation: A wrong format subnet mask is allowed
- </action>
- <action issue="NET-623" type="fix" dev="sebb" due-to="Makoto Sakaguchi">
- SubnetUtils - fixed spelling errors
- </action>
- <action issue="NET-621" type="update" dev="sebb" due-to="Makoto Sakaguchi">
- SubnetUtils#SubnetInfo - remove unnecessary accessors
- </action>
- <action issue="NET-619" type="update" dev="sebb" due-to="Makoto Sakaguchi">
- SubnetUtils - improve binary netmask algorithm
- </action>
- <action issue="NET-613" type="fix" dev="sebb" due-to="Donald Kwakkel">
- System Information Leak in ftp parser
- </action>
- <action issue="NET-678" type="update" dev="sebb" due-to="Roman Grigoriadi">
- VMS ftp LIST parsing results in empty file list
- </action>
- <action issue="NET-674" type="add" dev="sebb" due-to="Chris Steingen">
- FTPListParseEngine should support listing via MLSD
- </action>
- <action issue="NET-663" type="fix" dev="sebb" due-to="Max Shenfield">
- NullPointerException when FTPClient remote verification fails
- </action>
- <action issue="NET-649" type="fix" dev="sebb" due-to="Filipe Bojikian Rissi">
- 227 Entering Passive Mode
- </action>
- <action issue="NET-660" type="add" dev="sebb" due-to="Nagabhushan S N">
- Next and Previous IP Address in SubnetUtils.SubnetInfo
- </action>
- <action issue="NET-682" type="fix" dev="sebb" due-to="richard">
- MVSFTPEntryParser doesn't support Record Formats of U
- </action>
- </release>
- <release version="3.6" date="2017-02-15"
- description="
-This is mainly a bug-fix release (Java 6). See further details below.
-
-
- This release is binary compatible with previous releases.
- However it is not source compatible with releases before 3.4, as some methods were added to the interface NtpV3Packet in 3.4
-
- The code now requires a minimum of Java 6.
-
- Changes to functionality:
- * The FTP client now performs stricter checks on non-multiline command replies.
- The 3 digit code must now be followed by a space and some text, as per RFC 959.
- To suppress this stricter checking, call FTP#setStrictReplyParsing(false). This should not be needed with a well-behaved server.
- Note also that if strict checking is disabled, some functions may unconditionally strip the next character after the code,
-without checking it if is a space.
-
-* The FTP client mlistFile() method now checks for a leading space before removing it.
- If the space is missing, a MalformedServerReplyException is thrown.
- This will only happen if the FTP server is not compliant with RFC 3659.
-
- Notable additions:
- * The POP3Mail examples can now get password from console, stdin or an environment variable.
-
-* TFTPClient code has been rewritten to improve error handling and retries.
-
-">
- <action issue="NET-613" type="fix" dev="sebb">
- TFTPClient assumes that lastBlock == 0 only once
- </action>
- <action issue="NET-320" type="fix" dev="sebb" due-to="Kevin Bulebush">
- Allow TFTPServer.java to bind to a specific network adapter
- </action>
- <action issue="NET-414" type="fix" dev="sebb" due-to="Chuck Wolber">
- Apache Commons TFTP does not reject request replies that originate from a control port.
- </action>
- <action issue="NET-477" type="fix" dev="sebb" due-to="John Walton">
- TFTP sendFile retry broken
- </action>
- <action issue="NET-612" type="update" dev="sebb">
- Allow TFTP socket IO tracing
- </action>
- <action issue="NET-596" type="fix" dev="sebb" due-to="Vincent Bories-Azeau">
- NullPointerException when disconnecting TelnetClient twice with JDK 7
- </action>
- <action issue="NET-602" type="fix" dev="sebb" due-to="Ross Braithwaite">
- Failure to parse times from SYST_L8 systems that report as "WINDOWS Type: L8"
- </action>
- <action issue="NET-604" type="fix" dev="sebb" due-to="Frank Delporte">
- TFTP send and receive don't have progress indication
- </action>
- <action issue="NET-588" type="fix" dev="sebb" due-to="Dave Nice / Thai H">
- FTPClient.setPassiveNatWorkaround assumes host is outside site local range
- </action>
- <action issue="NET-610" type="fix" dev="sebb" due-to="Sergey Yanzin">
- FTPClient.mlistFile incorrectly handles MLST reply
- </action>
- <action issue="NET-611" type="fix" dev="sebb">
- FTP does not validate command reply syntax fully
- </action>
- <action issue="NET-609" type="fix" dev="sebb" due-to="Tqup3">
- DefaultUnixFTPFileEntryParserFactory Issue (leading spaces removal configuration)
- </action>
- <action type="update" dev="sebb">
- POP3Mail example: support host port; allow reading password from Console/stdin/environment
- </action>
- <action issue="NET-597" type="fix" dev="sebb" due-to="Hiroki Taniura">
- FTP fails to parse listings for Solaris 10 FTPd in Japanese
- </action>
- <action issue="NET-599" type="update" dev="sebb">
- Add shorthand FTPClientConfig constructor
- </action>
- <action issue="NET-593" type="fix" dev="sebb" due-to="Joerg Weule">
- HostnameVerifier is called with ip addess instead of the provided hostname
- </action>
- <action issue="NET-594" type="fix" dev="sebb" due-to="Brad Worrral">
- TelnetClient._closeOutputStream unhandled exception from FilterOutputStream.close
- </action>
- <action issue="NET-592" type="fix" dev="sebb" due-to="Mark Ford">
- plainSocket in FTPSClient is never closed
- </action>
- </release>
- <release version="3.5" date="2016-05-05"
- description="
-This is mainly a bug-fix release (Java 6). See further details below.
-
-
- This release is binary compatible with previous releases.
- However it is not source compatible with releases before 3.4, as some methods were added to the interface NtpV3Packet in 3.4
-
- The code now requires a minimum of Java 6.
-
- Notable additions:
- The IMAP examples can now get password from console, stdin or an environment variable.
- ">
- <action issue="NET-583" type="fix" dev="sebb" due-to="Holger Rehn">
- FTPClient.getReplyString() returns wrong value after connect()
- </action>
- <action type="add" dev="sebb">
- Alternative password input methods for IMAP examples
- </action>
- <action type="add" dev="sebb">
- More tests for Feb 29 handling.
- </action>
- <action issue="NET-586" type="fix" dev="sebb">
- Don't use Feb 29 for short future date tests
- </action>
- <action type="fix" dev="sebb">
- Documentation tweaks
- </action>
- </release>
- <release version="3.4" date="2015-11-26"
- description="
-This is mainly a bug-fix release. See further details below.
-
- This release is binary compatible with previous releases.
- However it is not source compatible, as some methods have been added to the interface NtpV3Packet
-
- Notable additions:
- IMAPExportMbox (example app) allows IMAP folders to be exported into an mbox file.
- This is the inverse of the IMAPImportMbox example added previously
- ">
- <action issue="NET-581" type="fix" dev="sebb">
- SimpleSMTPHeader fails to supply the required Date: header
- </action>
- <action issue="NET-582" type="fix" dev="sebb">
- SimpleSMTPHeader does not allow for missing To: field
- </action>
- <action issue="NET-580" type="fix" dev="sebb" due-to="Simon Arlott">
- SMTPClient.sendSimpleMessage() silently ignores failed recipients
- Update Javadoc
- </action>
- <action issue="NET-579" type="fix" dev="sebb" due-to="Simon Arlott">
- SSL/TLS SocketClients do not verify the hostname against the certificate
- </action>
- <action issue="NET-576" type="update" dev="sebb">
- Allow FTPClient to use SYST response if system type is not specified in configuration
- </action>
- <action issue="NET-575" type="update" dev="sebb">
- FTPClientExample should support setting the date format
- </action>
- <action issue="NET-538" type="fix" dev="sebb" due-to="Dzmitry">
- FTPHTTPClient should use socket factory to create sockets
- </action>
- <action issue="NET-566" type="fix" dev="sebb" due-to="Gary Russell">
- UnixFTPEntryParser Drops Leading Spaces from File Names
- </action>
- <action type="update" dev="sebb">
- examples/Main now uses a property file to define aliases instead of scanning class files
- </action>
- <action issue="NET-552" type="fix" dev="sebb" due-to="Quentin Devriendt">
- SocketTimeoutException connecting a FTP server via an HTTP Proxy
- </action>
- <action issue="NET-528" type="add" dev="sebb">
- FTPListParseEngine does not provide access to raw responses
- </action>
- <action issue="NET-565" type="add" dev="sebb">
- Add FTPClient method to return an FTPFile from an MDTM command
- </action>
- <action issue="NET-564" type="update" dev="sebb">
- FTPFile.toFormattedString - allow specification of TimeZone for display
- </action>
- <action issue="NET-562" type="update" dev="sebb">
- FTPFile.toFormattedString should print only signficant parts of the parsed date
- </action>
- <action issue="NET-563" type="fix" dev="sebb">
- MLSxEntryParser needs test cases; parsing is too lax
- </action>
- <action issue="NET-561" type="fix" dev="sebb">
- FTPFile.toFormattedString prints user and group in wrong order
- </action>
- <action issue="NET-544" type="fix" dev="sebb" due-to="Olivier Queyrut ">
- FTPClient.initiateListParsing does not correctly check if parserKey was cached
- </action>
- <action issue="NET-554" type="update" dev="sebb">
- Simplify TelnetOptionHandler class hierarchy
- </action>
- <action issue="NET-558" type="fix" dev="sebb" due-to="Ralph Becker">
- FTPClient.getModificationTime(filename) returns complete received line including response code and EOL
- Strip the response code and EOL
- </action>
- <action issue="NET-556" type="update" dev="sebb" due-to="Andy Rosa">
- Make SubnetInfo.isInRange(int) public
- </action>
- <action issue="NET-550" type="fix" dev="sebb" due-to="Geoffrey Hardy">
- Default FTPClient bufferSize results in very slow retrieve transfers
- Fix code in Util#copyStream (also copyReader) that failed to use the proper default for buffer size 0
- </action>
- <action issue="NET-551" type="fix" dev="sebb">
- Util copyReader calls CopyStreamListener.bytesTransferred with the incorrect value for bytesTransferred
- </action>
- <action type="update" dev="sebb">
- Added control character processing to TelnetClientExample
- </action>
- <action issue="NET-547" type="update" dev="sebb" due-to="Fabio Scippacercola">
- There is a lack of documentation regarding setControlKeepAliveTimeout
- </action>
- <action issue="NET-549" type="fix" dev="sebb" due-to="Pradeep Natarajan">
- Telnet does not convert LF to CRLF in ASCII mode
- </action>
- <action issue="NET-543" type="fix" dev="sebb" due-to="Ferry Huberts">
- telnet: spy read EOL is reversed
- </action>
- <action issue="NET-540" type="add" dev="sebb">
- Article#printThread should have option to use any PrintStream
- </action>
- <action issue="NET-539" type="fix" dev="sebb">
- NPE if Threader.thread invoked with empty list or with null array
- </action>
- <action issue="NET-536" type="add" dev="sebb">
- IMAP FETCH example
- IMAPExportMbox can export selected nessages from an IMAP folder
- </action>
- <action issue="NET-535" type="add" dev="sebb">
- IMAP FETCH can overflow reply buffer; provide for partial responses
- </action>
- <action issue="NET-534" type="update" dev="sebb">
- Unnecesssary call to getReplyString() if no listeners configured
- </action>
- <action issue="NET-530" type="fix" dev="sebb" due-to="fish ship">
- input parameter of org.apache.commons.net.ftp.FTP.__getReply(boolean) is not used
- </action>
- <action issue="NET-529" type="fix" dev="sebb" due-to="Putinas Piliponis">
- SubnetUtils throws exception on valid input
- </action>
- <action issue="NET-527" type="add" dev="sebb" due-to="jason mathews">
- Add SimpleNTPServer as example and for testing
- </action>
- <action issue="NET-516" type="fix" dev="sebb" due-to="Asha K S & pavan">
- parser problem occurs if the filename contains one or more characters of which the second byte of Shift-JIS code is 0x85
- Fix NT parser
- </action>
- <action type="update" dev="sebb">
- Added control encoding option to FTPClientExample
- </action>
- <action issue="NET-526" type="update" dev="sebb" due-to="Jason Mathews, MITRE Corp">
- Added missing set methods on NTP class and interface
- </action>
- <action issue="NET-526" type="update" dev="sebb">
- Avoid greedy matches within a regex
- </action>
- <action issue="NET-520" type="fix" dev="sebb">
- SubnetUtils("0.0.0.0/0") does not behave as expected
- Fixed range checking so network and broadcast addresses are treated as unsigned ints
- </action>
- <action issue="NET-521" type="fix" dev="sebb">
- SubnetUtils.SubnetInfo.getAddressCount() can overflow as it returns an int
- </action>
- <action issue="NET-515" type="fix" due-to="Sebastian Ritter">
- FTPClient sample in class javadoc "bug"
- </action>
- <action issue="NET-519" type="fix">
- Apache Commons Net 3.3 has a performance issue
- </action>
- <action issue="NET-517" dev="sebb" type="fix" due-to="David Kocher">
- FTPClient#reinitialize is package protected
- </action>
- <action issue="NET-512" dev="sebb" type="add" due-to="Thomas Raddatz">
- Downloading files or members from the AS400 QSYS file system is not supported
- </action>
- <action issue="NET-518" dev="sebb" type="fix" due-to="David Kocher">
- FTPClient#initFeatureMap should not initialize empty map if reply code is 530
- </action>
- <action issue="NET-514" dev="sebb" type="fix">
- IMAP APPEND multiple issues in IMapClient.
- Deprecated unusable append methods.
- Added new append method, as well as example IMapImportMbox class to make use of it.
- </action>
- <action issue="NET-511" dev="ggregory" type="fix" due-to="Kyriacos Elia, Daniel Scott">
- Exception for new SubnetUtils("0.0.0.0/0").
- </action>
- </release>
- <release version="3.3" date="2013-06-11"
- description="
-This is mainly a bug-fix release. See further details below.
- ">
- <action issue="NET-509" dev="sebb" due-to="Anthony Dahanne" type="update">
- AuthenticatingSMTPClient needs a constructor with the isImplicit argument for SSL
- </action>
- <action issue="NET-501" dev="sebb" due-to="Julián Lastiri" type="fix">
- Race Condition on TelnetClient.disconnect() and TelnetInputStream.run()
- java.lang.IllegalStateException: Queue is full! Cannot process another character.
- </action>
- <action issue="NET-505" dev="sebb" due-to="Sean Kelley" type="update">
- User specified bufferSize reset to default when FTPClient is disconnected or reinitialized resulting in performance
- degradation.
- </action>
- <action issue="NET-507" dev="sebb" due-to="Jiri Netolicky" type="update">
- Option to disable private IP replacement in FTP passive mode.
- </action>
- <action issue="NET-503" dev="sebb" due-to="Ofer Regev" type="add">
- AuthenticatingSMTPClient does not support non-default encoding
- </action>
- <action issue="NET-500" dev="sebb" due-to="Michael Frick" type="fix">
- Always call FTPClient#setFileType after connection.
- Not all servers default to ASCII.
- </action>
- <action issue="NET-465" dev="sebb" due-to="Jim Kerwood" type="fix">
- FTPClient setSendBufferSize and setReceiveBufferSize on data socket.
- The previous fix caused performance problems.
- Added new getters and setters for the SO_SNDBUF and SO_RCVBUF values to be used on the data socket.
- </action>
- <action issue="NET-496" dev="sebb" type="add">
- Util copyReader/copyStream classes should use default buffer size for non-positive buffer size parameters.
- </action>
- <action issue="NET-310" dev="sebb" type="add">
- FTPCommand conversion to use enum; added FTPCmd emum and deprecated FTPCommand.
- </action>
- <action issue="NET-480" dev="sebb" due-to="Peter Naber" type="fix">
- Wrong passivHost when using FTPHTTPClient with EPSV
- </action>
- <action issue="NET-494" dev="sebb" type="fix">
- FTPClient.CSL.cleanUp() fails to restore timeout value on exception
- </action>
- <action issue="NET-492" dev="sebb" due-to="Tomasz Jedrzejewski" type="fix">
- FTPClient.printWorkingDirectory() incorrectly parses certain valid PWD command results
- </action>
- </release>
- <release version="3.2" date="2012-12-03"
- description="
-This release fixes bugs and adds some new functionality (see below).
- It is binary compatible with previous releases.
- Note that Clirr shows that two public methods have been removed (NET-485). These are not used within NET.
- ">
- <action issue="NET-46" dev="sebb" type="fix">
- retrieveFileStream fails randomly or hangs
- </action>
- <action issue="NET-485" dev="sebb" type="fix">
- Remove unnecessary Base64 methods.
- </action>
- <action issue="NET-482" dev="sebb" type="update" due-to="Houman Atashbar">
- Support XOAUTH.
- </action>
- <action issue="NET-484" dev="sebb" type="fix">
- Base64.CHUNK_SEPARATOR should be private
- </action>
- <action issue="NET-483" dev="sebb" type="fix">
- Base64.encodeBase64(byte[], boolean, boolean, int) does not calculate output size correctly for unchunked output.
- </action>
- <action issue="NET-466" dev="sebb" type="fix" due-to="Martin Oberhuber">
- Regression: TelnetInputStream#available() blocks.
- </action>
- <action issue="NET-426" dev="sebb" type="fix" due-to="Ketan">
- FTPS: Hook to customize _openDataConnection_ SSLSocket before startHandshake() is called.
- Implement _openDataConnection(String, String) method to properly
- interface with FTPClient.openDataConnection(String, String)
- </action>
- <action issue="NET-456" dev="sebb" type="fix">
- TelnetClient hangs when reader-thread startup is delayed.
- </action>
- <action issue="NET-449" dev="sebb" type="fix">
- listFiles bug with folder that begins with "-". Clarify Javadoc.
- </action>
- <action issue="NET-473" dev="sebb" type="fix">
- FTPClient setSoTimeout (int time) will result in NullPointerException. Clarify Javadoc.
- </action>
- <action issue="NET-468" dev="sebb" type="add" due-to="Bogdan Drozdowski">
- Request for native support for socks proxy routing with Commons net FTP.
- </action>
- <action issue="NET-475" dev="sebb" type="fix">
- FtpClient sends REST when calling listFiles. Clarified Javadoc.
- </action>
- <action issue="NET-465" dev="sebb" type="add" due-to="Bogdan Drozdowski">
- FTPClient setSendBufferSize and setReceiveBufferSize on data socket.
- </action>
- <action issue="NET-462" dev="sebb" type="add" due-to="Bogdan Drozdowski">
- FTPClient in PASSIVE_LOCAL_DATA_CONNECTION_MODE cannot work when host have several different IP.
- </action>
- <action issue="NET-467" dev="sebb" type="fix">
- IMAPClient#fetch() does not handle literal strings.
- </action>
- <action issue="NET-458" dev="sebb" type="fix" due-to="Denis Molony">
- MVSFTPEntryParser.parseSimpleEntry - ArrayIndexOutOfBoundsException.
- </action>
- <action issue="NET-450" dev="sebb" type="fix" due-to="Roger Hardiman">
- Bug in documentation for FTPClient.
- </action>
- <action dev="sebb" type="add">
- The examples can now be run using "java -jar commons-net-examples-m.n.jar".
- This will automatically include the main net jar in the classpath.
- See documentation.
- FTPClientExample now supports "-A" for anonymous login
- </action>
- <action issue="NET-442" dev="sebb" type="fix">
- StringIndexOutOfBoundsException: String index out of range: -1 if server respond with root is current directory.
- </action>
- <action issue="NET-444" dev="sebb" type="fix">
- FTPTimestampParserImpl fails to parse future dates correctly on Feb 28th in a leap year.
- </action>
- </release>
- <release version="3.1" date="Feb 20, 2012"
- description="
-This release fixes a few bugs and adds some new functionality (see below).
- It is binary compatible with previous releases
- ">
- <action issue="NET-441" dev="sebb" type="fix" due-to="consiliens">
- [FTP] mlistDir doc should be "MLSD" not "MSLD".
- </action>
- <action issue="NET-440" dev="sebb" type="add">
- [FTP] Allow user to provide default value in case SYST command fails.
- </action>
- <action issue="NET-438" dev="sebb" type="fix" due-to="Norman Maurer">
- POP3Client.capa() should call POP3Client.getAdditionalReply()
- </action>
- <action issue="NET-412" dev="sebb" type="fix" due-to="Chuck Wolber">
- TFTP implementation subject to Sorcerer's Apprentice Syndrome
- </action>
- <action issue="NET-410" dev="sebb" type="fix" due-to="Chuck Wolber">
- TFTP does not handle RFC 783 retransmits
- </action>
- <action issue="NET-437" dev="sebb" type="fix" due-to="Gavin Camp">
- TelnetInputStream doesn't support non-blocking IO when reader thread is not enabled
- </action>
- <action issue="NET-346" dev="sebb" type="add" due-to="Kevin Samuel">
- FTP should support reporting NATed external IP address
- </action>
- <action issue="NET-433" dev="sebb" type="add">
- Commons NET site should link to the examples
- </action>
- <action issue="NET-422" dev="sebb" type="fix" due-to="Tomas Mysik / Magnus Johansson">
- FTP using HTTP proxy not working
- </action>
- <action issue="NET-423" dev="sebb" type="fix" due-to="Jens Koch">
- FTPClient.storeFIle might fail when ControlKeepAliveTimeout is set (ditto for FTPCLient.retrieveFile)
- </action>
- <action issue="NET-426" dev="sebb" type="add" due-to="Ketan">
- FTPS: Hook to customize _openDataConnection_ SSLSocket before startHandshake() is called
- </action>
- <action issue="NET-430" dev="sebb" type="fix" due-to="Thomas Mathis">
- Can't login to POP3S Server using explicit mode
- </action>
- <action issue="NET-434" dev="sebb" type="fix" due-to="zhangyong">
- FTPClient fails to close local listener socket when command socket channel encounter "ReadTimeoutException"
- </action>
- <action issue="NET-436" dev="sebb" type="add" due-to="Jürgen Jung">
- [FTP] Support for SYST "Mac OS" listing - "MACOS Peter's Server"
- </action>
- <action issue="NET-425" dev="sebb" type="update" due-to="Steven Jardine">
- [FTP] _openDataConnection_, __storeFile, and __storeFileStream should be protected and take String for FTP command.
- Likewise for receiveFile and receiveFileStream.
- </action>
- <action issue="NET-416" dev="sebb" type="update" due-to="Abhijeet Gaikwad">
- [Telnet] Increasing sub-negotiation message holder array size
- </action>
- <action issue="NET-428" dev="sebb" type="fix" due-to="sebb">
- SubnetUtils throws ArrayIndexOutOfBoundsException for new SubnetUtils( "1.2.3.4/32" ).getInfo().getAllAddresses()
- </action>
- <action issue="NET-421" dev="sebb" type="fix" due-to="Oliver Saggau">
- Problem connecting to TLS/SSL SMTP server using explicit mode.
- </action>
- <action issue="NET-415" dev="sebb" type="fix" due-to="george thomas">
- [Site] typo in migration how-to.
- </action>
- </release>
-
- <release version="3.0.1" date="June 6, 2011" description="
-This is a bug-fix release.
- ">
- <action issue="NET-409" dev="sebb" type="fix">
- FTPClient truncates file (storeFile method).
- Fix bug introduced in release 3.0.
- </action>
- </release>
- <release version="3.0" date="May 16, 2011"
- description="
-This release fixes many bugs (see below), and adds new functionality:
- - basic support for IMAP and IMAPS
- - support for SMTPS and POP3S
-
- FTP changes:
- - default for lenient future dates is now true, which fixes short date parsing where host clock is ahead of client clock
- - no longer parses every response line twice
- - OS auto-detection can be overriden by defining the property 'org.apache.commons.net.ftp.systemType';
- - or by creating a properties file '/systemType.properties' which provides a mapping from getSystemType() to parser name
- See the Javadoc for FTPClient.initiateListParsing(String parserKey, String pathname).
- - SASL, PLAIN and CRAM-MD5 authentication added
- - added control channel keep-alive for use with misbehaving routers, see FTPClient.setControlKeepAliveTimeout(long controlIdle)
-
- NNTP changes:
- - reworked to use long for article numbers
- - added streaming equivalents for the array methods
-
- Added TrustManagerUtils and KeyManagerUtils classes to simplify setting up trust and key namagers.
-KeyManagerUtils can be used to provide client certificates.
-
- This release is binary-compatible with 2.2, but there are some minor changes to source compatibility:
- - telnet.TelnetClient#addOptionHandler(TelnetOptionHandler) now additionally throws IOException
- - telnet.TelnetClient#deleteOptionHandler() now additionally throws IOException
- - ftp.FTPSClient ctors no longer throw NoSuchAlgorithmException
- - Redundant CODE_nnn definitions have been removed from FTPReply, SMTPReply and NNTPReply classes
- - Unused String constants KEYSTORE_ALGORITHM, PROVIDER, STORE_TYPE, TRUSTSTORE_ALGORITHM removed from FTPSClient
-
- All users are recommended to upgrade.
-">
- <action issue="NET-407" dev="sebb" type="update">
- Change lenientFutureDates to default to true.
- This means short dates will be parsed as the current year when the host clock is up to 1 day ahead of the client clock.
- </action>
- <action issue="NET-404" dev="sebb" type="fix">
- FTPSSocketFactory does not override createSocket(); causes java.net.SocketException: Unconnected sockets not implemented.
- </action>
- <action issue="NET-399" dev="sebb" type="fix" due-to="Noah Levitt">
- ftp data connection does not use connectTimeout.
- </action>
- <action issue="NET-400" dev="sebb" type="update" due-to="David Kocher">
- Option to override SSL negotiation. Make FTPSClient#execAuth() and FTPSClient#sslNegotiation() protected
- </action>
- <action issue="NET-402" dev="sebb" type="fix">
- IMAP, NNTP, POP3 and SMTP classes uses BufferedReader for control channel, which does not follow the standard.
- Changed reader to CRLFLineReader.
- </action>
- <action issue="NET-401" dev="sebb" type="fix">
- FTP class uses BufferedReader for control channel, which does not follow the standard.
- Changed reader to CRLFLineReader.
- </action>
- <action issue="NET-331" dev="sebb" type="update">
- AS400 file timestamp format is wrong. Workround exists.
- </action>
- <action issue="NET-269" dev="sebb" type="update">
- Remove semi-redundant check in SubnetUtils.calculate().
- </action>
- <action issue="NET-219" dev="sebb" type="update">
- Should Telnet class Exception blocks write to System.err?
- Catch blocks removed, and throws clauses added to allow caller to more easily detect and recover.
- </action>
- <action issue="NET-397" dev="sebb" type="update" due-to="Bogdan Drozdowski"
- due-to-email="bogdandr # op . pl">
- FTPSClient does not handle AUTH or ADAT and only partially handles PBSZ. FTPSCommand should be deprecated.
- </action>
- <action issue="NET-268" dev="sebb" type="fix">
- Better handling of CIDR/31 and CIDR/32 where isInclusive = false.
- Return 0 for address count, and 0.0.0.0 for each of the addresses
- </action>
- <action issue="NET-395" dev="sebb" type="update">
- Move ProtocolCommandSupport to SocketClient.
- </action>
- <action issue="NET-393" dev="sebb" type="update">
- Should the sendCommandWithID() methods be public?
- Made methods private, and deleted currently unused ones.
- </action>
- <action issue="NET-394" dev="sebb" type="update">
- Are the sendUntaggedCommand() methods needed?
- Renamed the method as sendData(), as it's not a command.
- </action>
- <action issue="NET-392" dev="sebb" type="update">
- Use enum for IMAPCommand.
- </action>
- <action issue="NET-333" dev="sebb" type="add" due-to="Bogdan Drozdowski" due-to-email="bogdandr # op . pl">
- Added basic IMAP/IMAPS implementation.
- </action>
- <action issue="NET-389" dev="sebb" type="fix">
- Unix parser should ignore "total nnn" lines.
- </action>
- <action issue="NET-369" dev="sebb" type="remove">
- Article.addHeaderField() is currently write-only - there is no way to retrieve the headers - is it needed?
- Method was removed, along with the field.
- </action>
- <action issue="NET-367" dev="sebb" type="fix">
- ntp.TimeStamp uses incorrect lazy initialisation of static fields simpleFormatter and utcFormatter.
- </action>
- <action issue="NET-381" dev="sebb" type="update">
- Parsing is inefficient, as it parses everything twice.
- </action>
- <action issue="NET-388" dev="sebb" type="fix">
- VMSVersioningFTPEntryParser#preParse should not call super.preParse().
- </action>
- <action issue="NET-362" dev="sebb" type="fix">
- TelnetInputStream has various threading bugs.
- </action>
- <action issue="NET-89" dev="sebb" type="fix">
- TelnetClient use of FromNetASCIIInputStream and ToNetASCIIOutputStream breaks binary mode.
- See also NET-387.
- </action>
- <action issue="NET-385" dev="sebb" type="update">
- FTP does not apply timeout to initial responses.
- </action>
- <action issue="NET-384" dev="sebb" type="update">
- KeyManagerUtils - the KeyManager is not efficient.
- </action>
- <action issue="NET-383" dev="sebb" type="update">
- KeyManagerUtils - allow alias to be omitted when there is only one private key in the store
- </action>
- <action issue="NET-326" dev="sebb" type="add">
- A KeyManager is required when the protection level is set to 'P' with FTPSClient on active mode.
- Added KeyManagerUtils class to simplify provision of client certificates.
- </action>
- <action issue="NET-273" dev="sebb" type="add">
- FEAT response parsing. Added FTPClient methods: boolean hasFeature(feature [,option]),
- String fetaureValue(feature), String[] featureValues(feature)
- </action>
- <action issue="NET-379" dev="sebb" type="add">
- FTPClient - support for processing arbitrary commands that only use the control channel
- </action>
- <action issue="NET-378" dev="sebb" type="add">
- FTP listing should support MLST and MLSD.
- </action>
- <action issue="NET-377" dev="sebb" type="update">
- NLST does not take notice of HiddenFiles setting.
- </action>
- <action issue="NET-373" dev="sebb" type="update">
- NNTP Listgroups not working - broken server implementation.
- </action>
- <action issue="NET-375" dev="sebb" type="update">
- DotTerminatedMessageReader should extend BufferedReader, rather than Reader.
- </action>
- <action issue="NET-374" dev="sebb" type="update">
- ParserInitializationException doesn't use standard JDK exception chaining
- </action>
- <action issue="NET-372" dev="sebb" type="add">
- FTPSClient: java.security.cert.CertificateException: No X509TrustManager implementation available if trustManager == null
- </action>
- <action issue="NET-371" dev="sebb" type="add">
- Create TrustManagerFactory to provide custom TrustManagers.
- </action>
- <action issue="NET-354" dev="sebb" type="fix" due-to="Leif John Korshavn">
- FTPSClient not properly supporting CCC and PROT P.
- </action>
- <action issue="NET-368" dev="sebb" type="update">
- Threader.thread should accept an Iterable rather than a List.
- </action>
- <action issue="NET-327" dev="sebb" type="add" due-to="Bogdan Drozdowski" due-to-email="bogdandr # op . pl">
- "Unconnected sockets not implemented" when using FTPSClient
- Added disconnect() override which resets the socket factories to their defaults
- </action>
- <action issue="NET-350" dev="sebb" type="add" due-to="Bogdan Drozdowski" due-to-email="bogdandr # op . pl">
- "java.net.SocketException: Broken pipe" when calling "TelnetClient.sendAYT()"
- Added SocketClient#isAvailable() method to perform additional checks on a socket.
- </action>
- <action issue="NET-237" dev="sebb" type="add">
- Add streaming methods (corresponding to array methods) to NNTPClient.
- </action>
- <action issue="NET-365" dev="sebb" type="fix">
- FTPClient.listFiles() does not work properly, if remote server speaks German.
- Match non-space{3} instead of A-Za-z{3}
- </action>
- <action issue="NET-366" dev="sebb" type="fix">
- FTPClientConfig: setServerLanguageCode and setShortMonthNames do not work.
- Ensure that config is passed to all parsers that can use it.
- </action>
- <action issue="NET-276" dev="sebb" type="fix">
- NNTPClient has problems with group listings for large groups.
- </action>
- <action issue="NET-185" dev="sebb" type="fix">
- Possible NPE in Threader.java
- </action>
- <action issue="NET-364" dev="sebb" type="fix">
- nntp.Article is very inefficient and incorrect.
- </action>
- <action issue="NET-314" dev="sebb" type="add" due-to="Bogdan Drozdowski" due-to-email="bogdandr # op . pl">
- The FTP client should autodetect the control encoding.
- </action>
- <action issue="NET-363" dev="sebb" type="fix" due-to="daniel damon">
- Can't connect to a server behind firewall in passive mode.
- </action>
- <action issue="NET-348" dev="sebb" type="fix">
- Queue is full TelnetInputStream.
- </action>
- <action issue="NET-361" dev="sebb" type="add">
- Implement Telnet Command sender.
- </action>
- <action issue="NET-345" dev="sebb" type="fix" due-to="Archie Cobbs">
- Telnet client: not properly handling IAC bytes within subnegotiation messages:
- - failing to double IACs on output
- - failing to de-double IACs in input
- </action>
- <action issue="NET-343" dev="sebb" type="add" due-to="Archie Cobbs">
- Telnet client: Support Client-initiated Subnegotiation Messages.
- </action>
- <action issue="NET-344" dev="sebb" type="add" due-to="Archie Cobbs">
- Telnet client: Support Listener Notification of Incoming Data.
- </action>
- <action issue="NET-270" dev="sebb" type="fix">
- Incorrect error handling in method initiateListParsing of FTPClient.
- </action>
- <action issue="NET-352" dev="sebb" type="add" due-to="Bogdan Drozdowski" due-to-email="bogdandr # op . pl">
- SASL PLAIN and CRAM-MD5 authentication.
- </action>
- <action issue="NET-357" dev="sebb" type="add" due-to="Bogdan Drozdowski" due-to-email="bogdandr # op . pl">
- The POP3 client does not support SSL/TLS connections.
- </action>
- <action dev="sebb" type="remove">
- Removed deprecated unused fields from FTPSClient:
- - KEYSTORE_ALGORITHM, PROVIDER, STORE_TYPE, TRUSTSTORE_ALGORITHM
- </action>
- <action issue="NET-258" dev="sebb" type="fix">
- Implement A Keepalive Mechanism. Control channel keepalive implemented for the following methods:
- appendFile, storeFile, storeUniqueFile, retrieveFile.
- </action>
- <action issue="NET-289" dev="sebb" type="fix" due-to="Luc Claes">
- StackOverflowError in Threader.
- </action>
- <action issue="NET-317" dev="sebb" type="fix">
- POP3MessageInfo fields should be final.
- </action>
- <action issue="NET-252" dev="sebb" type="fix">
- Get rid of using deprecated API in VMSFTPEntryParser.
- </action>
- <action issue="NET-330" dev="sebb" type="remove">
- The method VMSFTPEntryParser.parseFileList(InputStream listStream) should not be present.
- </action>
- <action issue="NET-303" dev="sebb" type="fix">
- FTPFileEntryParser API samples are wrong.
- </action>
- <action issue="NET-229" dev="sebb" type="add">
- Use properties file (/systemType.properties) to handle new OS-type auto-detection.
- </action>
- <action issue="NET-332" dev="sebb" type="add">
- Commons net ftp cannot handle unknown type parser and should allow override of parser through vm argument.
- The system property "org.apache.commons.net.ftp.systemType" can be used to provide the system type.
- </action>
- <action issue="NET-286" dev="sebb" type="fix">
- Unhandled SecurityException in DefaultFTPFileEntryParserFactory.createFileEntryParser when using applets.
- </action>
- <action issue="NET-360" dev="sebb" type="fix">
- DefaultFTPFileEntryParserFactory.createFileEntryParser(String key) always tries to load a class.
- </action>
- <action issue="NET-156" dev="sebb" type="add">
- New FTPClient method to retrieve all directory names in the current working directory.
- Added methods listDirectories(), listDirectories(String path).
- </action>
- <action issue="NET-353" dev="sebb" type="add" due-to="Bogdan Drozdowski" due-to-email="bogdandr # op . pl">
- The SMTPClient does not support authentication.
- </action>
- <action issue="NET-356" dev="sebb" type="add" due-to="Bogdan Drozdowski" due-to-email="bogdandr # op . pl">
- The SMTP client does not support SSL/TLS connections.
- </action>
- <action issue="NET-358" dev="sebb" type="add">
- Implement copy Listener in FTPClient file operations.
- </action>
- <action issue="NET-359" dev="sebb" type="fix">
- CopyStreamAdapter unconditionally resets the CopyStreamEvent source and is inefficient.
- </action>
- <action issue="NET-355" dev="sebb" type="fix">
- examples.nntp.NNTPUtils does not compile
- </action>
- <action issue="NET-351" dev="sebb" type="add" due-to="Bogdan Drozdowski" due-to-email="bogdandr # op . pl">
- APOP authentication fails most of the time.
- Fix by adding leading 0 if necessary.
- </action>
- </release>
- <release version="2.2" date="Nov 22, 2010"
- description="
-This is primarily a maintenance release, but it also includes new features and enhancements.
-
- Users of version 2.0 are encouraged to upgrade to 2.2, as this release includes some important bug fixes.
-
- See the detailed list of changes below for full description of all bug fixes and enhancements.
-
-">
- <action issue="NET-334" dev="sebb" type="fix">
- FromNetASCIIInputStream can throw a NullPointerException
- </action>
- <action issue="NET-341" dev="sebb" type="fix">
- FTPClient.remoteAppend(String filename) uses STOR instead of APPE
- </action>
- <action issue="NET-339" dev="sebb" type="fix">
- Incorrect parsing of timestamp on Windows CE
- Fix parsing to allow for new-style DOS listing using 24hr clock rather than AM/PM
- </action>
- <action issue="NET-338" dev="sebb" type="add">
- ftp.FTPClient.initiateListParsing(String parserKey, String pathname)
- can call createFileEntryParser with null systemName.
- Fix this by adding getSystemType() which does not return null, and deprecating getSystemName().
- </action>
- <action issue="NET-244" dev="sebb" type="add">
- Add support for FTPFileFilter filters. New classes FTPFileFilter, FTPFileFilters, new methods:
- FTPListParseEngine#getFiles(FTPFileFilter filter)
- FTPClient.listFiles(String pathname, FTPFileFilter filter)
- </action>
- <action issue="NET-313" dev="sebb" type="fix">
- Optionally enable EPSV with IPv4; Only send EPRT with IPv6.
- Fix incorrect port used with EPRT. Allow activeMaxPort == activeMinPort in getActivePort() method.
- </action>
- <action issue="NET-328" dev="sebb" type="fix">
- FromNetASCIIInputStream.read(byte[], int, int) may change length passed to superclass if not doing conversion
- </action>
- <action issue="NET-74" dev="sebb" type="add">
- Testcase to show WindowSizeOptionHandler is working OK
- </action>
- <action issue="NET-330" dev="sebb" type="fix">
- The method VMSFTPEntryParser.parseFileList(InputStream listStream) should not be present.
- Partial fix - marked method as deprecated and to be removed
- </action>
- <action issue="NET-180" dev="sebb" type="fix">
- Telnet EOR is "consumed" by TelnetInputStream when in BINARY transmission.
- Send notification to TelnetNotificationHandler.
- </action>
- <action issue="NET-329" dev="sebb" type="fix">
- TelnetInoutStream#__read() bug in the __receiveState handling for the _STATE_IAC state.
- </action>
- <action issue="NET-283" dev="sebb" type="fix">
- SocketClient should ensure input and output streams are closed
- </action>
- <action issue="NET-302" dev="sebb" type="fix">
- FTP: initiateListParsing should not cache entryParser
- </action>
- <action issue="NET-282" dev="rwinston" type="fix">
- Improvement to isInRange method in SubnetUtil.SubnetInfo class
- </action>
- <action issue="NET-266" dev="rwinston" type="fix">
- FTPClient.listFiles() corrupts file name in certain circumstances
- </action>
- <action issue="NET-264" dev="sebb" type="fix">
- Telnet spyStream NullPointerException
- </action>
- <action dev="sebb" type="update">
- Deprecated the following unused fields from org.apache.commons.net.ftp.FTPSClient:
- KEYSTORE_ALGORITHM, PROVIDER, STORE_TYPE, TRUSTSTORE_ALGORITHM
- </action>
- <action dev="niallp" type="fix">
- Fix site reports
- </action>
- <action issue="NET-285" dev="rwinston" type="fix">
- Add support for setting external host ip/port range
- </action>
- <action issue="NET-290" dev="rwinston" type="fix">
- Add fix and testcase for DotTerminatedMessageReader
- </action>
- <action issue="NET-288" dev="rwinston" type="fix">
- Add support for IPv6 EPRT/EPSV
- </action>
- <action issue="NET-305" dev="rwinston" type="fix">
- Fix SubnetUtils for /32 subnets and add inclusive host count flag
- </action>
- <action issue="NET-300" dev="rwinston" type="fix">
- Fix NPE when listHiddenFiles was on
- </action>
- <action issue="NET-215" dev="rwinston" type="fix">
- UNIXFTPEntryParser didn't preserve trailing whitespace in files
- </action>
- <action issue="NET-236" dev="rwinston" type="fix">
- method SubnetUtils.SubnetInfo.isInRange(addr) returns incorrect result
- </action>
- <action issue="NET-242" dev="rwinston" type="fix">
- Method createServerSocket of FTPSSocketFactory never called and thus UseClientMode is incorrect in a secured ftp transfer
- using active mode.
- </action>
- <action issue="NET-248" dev="rwinston" type="fix">
- Fix inconsistent command list in FTPCommand
- </action>
- <action issue="NET-250" dev="rwinston" type="fix">
- DefaultFTPFileEntryParserFactory did not work with Netware FTP server returning "NETWARE TYPE: L8"
- </action>
- <action issue="NET-257" dev="rwinston" type="fix">
- FTP.getReplyStrings() returned array of null Strings
- </action>
- <action issue="NET-259" dev="rwinston" type="fix">
- UnixFTPEntryParser regex did not match some directory entries
- </action>
- <action issue="NET-260" dev="rwinston" type="fix">
- SubnetUtils.SubnetInfo.isInRange(...) returned incorrect values
- </action>
- <action issue="NET-261" dev="rwinston" type="update">
- SubnetUtils.SubnetInfo.isInRange(...) behavior not documented
- </action>
- <action issue="NET-262" dev="rwinston" type="fix">
- SubnetUtils did not handle /31 and /32 CIDRs well
- </action>
- <action issue="NET-265" dev="rwinston" type="fix">
- UnixFTPEntryParser failed to parse entry in certain conditions
- </action>
- <action issue="NET-266" dev="rwinston" type="fix">
- FTPClient.listFiles() corrupted file name in certain circumstances
- </action>
- <action issue="NET-251" dev="rwinston" type="update">
- Moved class "ThreadContainer" from Threader.java into its own source file
- </action>
- <action issue="NET-256" dev="rwinston" type="fix">
- FTPSClient should accept a pre-configured SSLContext
- </action>
- <action issue="NET-263" dev="rwinston" type="add">
- SubnetUtils / SubNetInfo toString() implementations
- </action>
- <action dev="rwinston" type="fix">
- Improve NNTPClient handling of invalid articles
- </action>
- <action dev="rwinston" type="update">
- Refactor examples package.
- </action>
- <action dev="sebb" type="add">
- Javadoc fixes, improvements, and refactoring.
- </action>
- <action issue="NET-245" dev="rwinston" type="fix">
- Apply MFMT patch
- </action>
- <action issue="NET-279" dev="rwinston" type="fix">
- Fix copying of reply lines collection
- </action>
- <action issue="NET-277" dev="rwinston" type="fix">
- Fix incorrect NNTP constant
- </action>
- <action issue="NET-274" dev="rwinston" type="fix">
- Restore socket state after CCC command
- </action>
- <action issue="NET-275" dev="rwinston" type="fix">
- Example code in FTPClient doesn't compile
- </action>
- <action dev="rwinston" type="fix">
- Fix inconsistent handling of socket read/write buffer size
- </action>
- <action issue="NET-294" dev="sebb" type="fix">
- UnixFTPEntryParser fails to parse some entries
- </action>
- </release>
-
- <release version="2.1" description="Not released" />
-
- <release version="2.0" date="October 20, 2008" description="Java 5.0 release">
- <action dev="rwinston" type="fix" issue="NET-307">
- One of the "connect" method in class org.apache.commons.net.SocketClient doesn't handle connection timeout properly
- </action>
- <action dev="rwinston" type="update">
- Add null check in TelnetClient::disconnect().
- </action>
- <action dev="rwinston" type="remove">
- Remove deprecated FTPFileIterator and FTPFileList classes.
- </action>
- <action dev="rwinston" type="add">
- Add connection timeout functionality to SocketClient.
- </action>
- <action dev="rwinston" type="update">
- Make the KeyManager and TrustManager settable (niklas@protocol7.com).
- </action>
- <action dev="rwinston" type="update">
- Patch FTPSClient to set default SSLServerSocketFactory. Thanks niklas@protocol7.com
- </action>
- <action dev="rwinston" type="fix" issue="NET-68">
- Patch to prevent TFTPClient dropping last packet. Thanks palm@poplarware.com
- </action>
- <action dev="rwinston" type="update">
- Change isConnected() method to delegate to underlying socket connection.
- </action>
- <action dev="rwinston" type="add">
- FTPS (TLS and SSL) is now supported. Thanks to Jose Juan Montiel, Paul Ferraro, and Satoshi Ishigami.
- </action>
- <action dev="rwinston" type="update">
- Commons::Net now uses Maven 2. The project.xml has been replaced with a pom.xml, and the source tree layout
- has been changed accordingly.
- </action>
- <action dev="rwinston" type="remove">
- Removed old ftp2 proposal directories.
- </action>
- <action dev="rwinston" type="update">
- Commons::Net now uses JDK regex functionality, saving on an extra [oro] dependency. There are now
- no external dependencies required.
- </action>
- <action dev="rwinston" type="fix">
- Various syntactic issues (FindBugs issues, JDK 5.0 generics support)
- </action>
- <action dev="dfs" type="fix">
- Applied Rob Hasselbaum's
- rhasselbaum -> alumni.ithaca.edu
- patch for PR 38688 fixing a
- TelnetInputStream hang.
- </action>
- <action dev="dfs" type="update">
- Exposed control connection of FTP
- class via _controlInput_ and _controlOutput_
- protected member variables in response
- to PR 38309 reported by
- josejuan.montiel@gmail.com.
- </action>
- <action dev="dfs" type="fix">
- Reverted PR 32859 patch to TFTPClient
- because it caused final packets to not
- be sent.
- </action>
- <action dev="rwinston" type="update" issue="NET-36">
- Make FTPClient extend SocketClient instead of TelnetClient. From jhindsley@providerlink.com
- </action>
- <action dev="rwinston" type="fix" issue="NET-39">
- Adds an "e" symbolic link flag to the Unix FTP parser. From denisgaebler@netscape.net
- </action>
- <action dev="rwinston" type="fix" issue="NET-119">
- Allow hidden files to be listed. Thanks to mario@ops.co.at
- </action>
- <action dev="rwinston" type="update">
- Remove reflective check for Socket::isConnected() (no longer needed)
- </action>
- <action dev="rwinston" type="add" issue="NET-136">
- Added WindowSizeOptionHandler for TelnetClient. Thanks to yuvalkashtan@gmail.com
- </action>
- <action dev="rwinston" type="update">
- Refactored *Client classes under net/ package into separate subpackages, and move PrintCommandListener
- out of the examples/ package.
- </action>
- <action dev="rwinston" type="add">
- Added an ant target to the Maven build to generate an FTP-only jar file, for clients who
- wish to use only FTP-based functionality.
- </action>
- <action dev="rwinston" type="update">
- Custom SocketFactory interface has been replaced with the JDK SocketFactory implementation. Added
- ServerSocketFactory instance to SocketClient.
- </action>
- <action dev="rwinston" type="update">
- Removed redundant FTP.IMAGE_FILE_TYPE flag.
- </action>
- <action dev="rwinston" type="update">
- Added heavily updated MVSFTPEntryParser from henrik.sorensen@balcab.ch
- </action>
- <action dev="rwinston" type="remove">
- Removed deprecated classes FTPFileListParser, FTPFileListParserImpl, and DefaultFTPFileListParser. Also
- removed associated deprecated methods from FTPClient.
- </action>
- <action dev="rwinston" type="fix" issue="NET-164">
- Added encoding to FingerClient. From Ulrich Mayring.
- </action>
- <action dev="rwinston" type="fix" issue="NET-24">
- Catch BindException in RCommandClient::connect().
- </action>
- <action dev="rwinston" type="fix" issue="NET-178">
- Add encoding specifier to SMTPClient.
- </action>
- <action dev="rwinston" type="add">
- Add setters for socket send/receive buffer size to SocketClient.
- </action>
- <action dev="rwinston" type="fix" issue="NET-177">
- Fix PASV specifiers that broke previously. From Chris Eagle.
- </action>
- <action dev="rwinston" type="fix" issue="NET-182">
- Catch NPE in FTP parser factory method.
- </action>
- <action dev="rwinston" type="fix" issue="NET-172">
- Don't bind a UDP socket to NTP protocol port.
- </action>
- <action dev="rwinston" type="fix">
- Better handling of user and group names with embedded spaces in FTP listings.
- </action>
- <action dev="rwinston" type="fix" issue="NET-173">
- Add configurable multiline parsing.
- </action>
- <action dev="rwinston" type="fix" issue="NET-188">
- Add fix for broken leap year date parsing.
- </action>
- <action dev="rwinston" type="add">
- Add SubnetUtils class (suggested by Kenny McLeod)
- </action>
- <action dev="rwinston" type="fix" issue="NET-169">
- Add Unix-type handling for UNKNOWN Type: L8 syst() message systems.
- </action>
- <action dev="rwinston" type="fix" issue="NET-198">
- Allow FTPTimestampParserImpl to take a predefined Calendar instance representing current time.
- </action>
- <action dev="sebb" type="fix" issue="NET-194">
- Replace Exception with IOException
- </action>
- <action dev="sebb" type="update" issue="NET-214">
- VMS file permission parsing
- </action>
- <action dev="sebb" type="fix" issue="NET-208">
- TelnetInputStream swallows interruptedexception as IOException
- </action>
- <action dev="sebb" type="fix" issue="NET-223">
- the data connection socket is not closed when an IOException occurred
- </action>
- <action dev="sebb" type="fix" issue="NET-230">
- ParserInitializationException when connecting to a Unix FTP server: comparison string must be upper case
- </action>
- <action dev="sebb" type="fix" issue="NET-225">
- FTPFileEntryParserImpl.preParse() doesn't remove unparsable entries at the end of the file list
- </action>
- </release>
-
-
- <!-- 1.5.0 has not yet been released, so comment out the section until it is ready for release -->
- <!-- <release version="1.5.0" date="" description=""> <action dev="dfs" type="fix" issue="NET-3"> TelnetInputStream.java:
- Applied Rob Hasselbaum's rhasselbaum@alumni.ithaca.edu patch for PR 38688 fixing a TelnetInputStream hang. </action> <action
- dev="rwinston" type="fix" issue="NET-73"> TelnetInputStream.java: Fixing another potential deadlock for telnet and FTP (patch
- courtesy Rob Hasselbaum). </action> <action dev="dfs" type="update" issue="NET-57"> FTP.java: Exposed control connection
- of FTP class via _controlInput_ and _controlOutput_ protected member variables in response to PR 38309 reported by josejuan.montiel@gmail.com.
- </action> <action dev="rwinston" type="fix" issue="NET-68"> TFTPClient.java: Fix bug causing final packets to not be sent.
- </action> <action dev="rwinston" type="fix" issue="NET-161"> TFTPClient.java: Fix sendFile() (related to NET-68). </action>
- <action dev="rwinston" type="fix" issue="NET-181"> TFTPClient.java: block number wraparound. </action> <action dev="scohen"
- type="fix" issue="NET-16"> UNIXFTPEntryParser.java: support for group names with spaces (patch courtesy D. Kilzer). </action>
- <action dev="scohen" type="fix" issue="NET-62"> DefaultFTPFileEntryParserFactory.java: Wrap NoClassDefFoundError in FTP parser
- exception when ORO is not available. </action> <action dev="rwinston" type="add" issue="NET-33"> FTPClient.java: Fix closing
- FTP ServerSocket after timeout </action> <action dev="rwinston" type="add"> FTPClientConfig.java: Added an FTP parser for
- Netware FTP servers. Tested on Novell Netware 6.5. </action> <action dev="rwinston" type="fix" issue="NET-188"> FTPTimestampParserImpl.java:
- Fix leap year date parsing bug. </action> <action dev="rwinston" type="fix"> Article.java: Fix minor issues with NNTP parsing.
- </action> </release> -->
-
-
- <release version="1.4.1" date="December 3, 2005" description="fix release to restore jdk 1.3 compatability">
- <action dev="scohen" type="fix">
- Applied patches for defect 37113. Code incompatible with jdk 1.3. Original patch submitted by Andrea Rombald
- </action>
- <action dev="scohen" type="fix">
- Applied patches for defect 37522. updated project.xml to correct compatibility level.
- </action>
- </release>
-
- <release version="1.4.0" date="May 7, 2005" description="Some additions and enhancements">
- <action dev="dfs" type="fix">
- Fixed typo in method name.
- FTP.removeCommandListener() was missing
- the L. Problem reported by
- Per.Lindberger@linkon.se.
- </action>
- <action dev="rwinston" type="fix">
- Applied fix for PR 33942 and PR 31793. Original patch submitted by mario@ops.co.at
- </action>
- <action dev="rwinston" type="fix">
- TFTPClient was ignoring final ACK (PR 32859). Thanks to perttu.auramo@ekahau.com
- </action>
- <action dev="rwinston" type="fix">
- Applied fix for ACL parsing in the FTP client (PR 33972). Submitted by robertalasch@yahoo.com
- </action>
- <action dev="rwinston" type="fix">
- Added missing NTP/SNTP unit tests to the codebase.
- </action>
- <action dev="dfs" type="fix">
- Applied fix for POP3Client returning empty reply strings (PR 34133). Thanks to sammy_c@lineone.net
- </action>
- <action dev="rwinston" type="fix">
- NTP port parameter was being ignored (PR 34219). Fixed by felix.eichhorn@3soft.de
- </action>
- <action dev="scohen" type="add">
- An FTP parser for MVS was added. Submitted by wnoto@openfinance.com
- </action>
- <action dev="scohen" type="add">
- Added functionality for extensible parsing of FTP responses, using a configurable format string. This should enable the
- FTP client to operate across many different locales and date formats.
- </action>
- </release>
-
- <release version="1.3.0" date="December 15, 2004" description="many fixes and enhancements">
- <action dev="rwinston" type="fix">
- Applied patch for PR 31793. Thanks to mario@ops.co.at
- </action>
- <action dev="rwinston" type="add">
- Added message threading functionality to the NNTP client.
- </action>
- <action dev="rwinston" type="update">
- Added return code 521 to FTPReply.java - this should obviate the need for the Ant FTP task to manually declare it.
- </action>
- <action dev="rwinston" type="fix">
- Add explicit notify() in TelnetInputStream::read(), so available() returns an accurate value. Thanks to
- tpalkot@gmail.com.
- </action>
- <action dev="rwinston" type="add">
- Added SNTP/NTP components into the Commons-Net codebase, courtesy of
- Jason Matthews.
- </action>
- <action dev="rwinston" type="add">
- Added POP3 test suite, courtesy of Mike George mike.george@comcast.net.
- </action>
- <action dev="scohen" type="fix">
- Applied fix for FTPClient returning null for certain timestamp formats (BUG #30737)
- </action>
- <action dev="rwinston" type="fix">
- Build.xml fixes - dont include example classes in redistributable
- .jar, remove test dependency from javadoc target, and exclude private members from generated javadoc.
- </action>
- <action dev="rwinston" type="fix">
- Fixed bug in TFTPClient::setMaxTimeout(), spotted by steve@widge.net
- </action>
- <action dev="dfs" type="fix">
- Some changes to facilitate compilation under JDK 5.0
- </action>
- <action dev="rwinston" type="fix">
- Return correct NNTP article count when high and low watermarks are 0.
- Spotted by jmordax@terra.es
- </action>
- <action dev="rwinston" type="fix">
- Remove trailing null byte in TFTP packets. Thanks to gerard.dens@alcatel.be
- </action>
- <action dev="dfs" type="fix">
- Many javadoc fixes.
- </action>
- <action dev="rwinston" type="update">
- Allow FTPClient to set transfer buffer size.
- </action>
- <action dev="rwinston" type="update">
- Ensure consistent handling of encoding throughout FTPClient
- operations. Patch submitted by leif@tanukisoftware.com.
- </action>
- <action dev="dfs" type="fix">
- Fix TelnetClient zombie thread issue
- </action>
-
-
- </release>
- <release version="1.3.0-dev" date="July 28, 2004" description="regression fix">
- <action dev="dfs" type="fix">
- Fixed regression from migration to new parsers. Most of the
- new parsers parsed the file size as an integer instead of a
- long. Changed all of them to set the size to long. This
- problem was detected by the reporter of:
- https://issues.apache.org/bugzilla/show_bug.cgi?id=30345
- </action>
- </release>
- <release version="1.2.2" date="June 25, 2004" description="fix release">
- <action dev="scohen" type="fix">
- fixed bug in the way FTPClient.listFiles worked when a directory was not
- specified. Current directory was not being 'remembered'. This was most
- problematic in the dependent ftp task of Ant.
- </action>
- <action dev="scohen" type="fix">
- fixed handling of certain unusual "special" file types in the Unix parser.
- </action>
- </release>
-
- <release version="1.2.1" date="May 6, 2004" description="fix release">
- <action dev="scohen" type="fix">
- changed code that rendered package uncompilable under JDK 1.2
- </action>
- </release>
-
- <release version="1.2.0" date="April 30, 2004" description="autodetection of system for listings">
- <action dev="scohen" type="fix">
- Mario Ivankovits mario@ops.co.at added
- functionality supporting correct handling of the "dirstyle"
- attribute of NT and OS400 servers that allows them to mimic Unix ftp servers.
- and a bug fix affecting handling of sticky and suid bits on Unix FTP servers.
- </action>
- <action dev="scohen" type="add">
- Mario Ivankovits mario@ops.co.at added parser for OS400.
- </action>
- <action dev="jbrekke,scohen" type="fix">
- Added a functional junit test testing list parsing against real servers
- and fix several bugs found through this test.
- </action>
- <action dev="dfs" type="add">
- Ted Wise ctwise@bellsouth.net provided a
- patch to add the XHDR extended NNTP command.
- </action>
- <action dev="scohen,dfs" type="update">
- Deprecated FTPFileListParser interface, DefaultFTPFileListParser
- class, and the FTPClient.listFiles methods that accepted an
- FTPFileListParser parameter. These deprecated classes and methods
- will be removed in version 2.0.
- </action>
- <action dev="scohen" type="add">
- Added org.apache.commons.net.parser.FTPFileEntryParserFactory
- interface and a default implementation:
- DefaultFTPFileEntryParserFactory. This addition facilitates the
- autodetection of which FTPFileEntryParser to use to generate
- listings. FTPClient.listFiles methods were added that implement
- autodetection.
- </action>
- </release>
-
- <!-- Not yet released; probably never will be <release version="1.1.1" date="TBD" description="last jdk1.1 compatible
- release"> <action dev="scohen" type="fix"> Removed all JDK 1.1 incompatibilities that had been introduced unintentionally
- in previous versions. Release 1.1.1 is the last JDK 1.1 compatible release. Any future 1.1.x maintenance releases will remain
- JDK !.1 compatible, but version 1.2 may break compatibility and will be guaranteed to work with only J2SE 1.2 and later.
- </action> </release> -->
- <release version="1.1.0" date="October 23, 2003" description="many enhancements and bug fixes">
- <action dev="dfs" type="add">
- Rory Winston Rory.Winston@telewest.co.uk provided
- patches to add the following extended NNTP commands to
- NNTPClient: XOVER, AUTHINFO USER, AUTHINFO PASS, and
- LIST ACTIVE.
- </action>
- <action dev="dfs" type="fix">
- Changed connection hooks for FTP, SMTP, POP3, and NNTP classes
- to force use of an 8-bit US-ASCII superset (ISO-8859-1) for
- protocol communication. This was necessary because
- InputStreamReader and OutputStreamWriter use the default
- client-side character set encoding. fasselin@ca.ibm.com
- reported failure of SMTP on OS/390 which has EBCDIC as the
- native character set.
- </action>
-
- <action dev="dfs" type="fix">
- Applied variation of fix suggested by Matthieu Recouly
- matthieu.recouly@laposte.net so that
- UnixFTPEntryParser may handle listings of the form:
- "drwxr-xr-x 1 usernameftp 512 Jan 29 23:32 prog"
- where the space between user name and group is omitted.
- </action>
- <action dev="dfs" type="fix">
- Applied patch from Stephane Este-Gracias
- sestegra@free.fr that fixes the parsing of
- VMS listings by VMSFTPEntryParser..
- </action>
- <action dev="brekke" type="fix">
- If the buffer queue run full, the run() method sometimes hangs forever.
- Changed wait() to wait(100) as with other changes in TelnetInputStream.
- Fix submitted From: J. Matysiak ( j.matysiak@cenit.de ).
- </action>
- <action dev="brekke" type="fix">
- FTP.smnt(String dir) was not passing on the dir to the SMNT command as an argument.
- </action>
- <action dev="brekke" type="add">
- Added a link to the FAQ currently hosted on the Apache Wiki.
- </action>
- <action dev="dfs" type="update">
- Changed package private NNTP._reader and NNTP._writer member
- variables to protected NNTP._reader_ and NNTP._writer_
- variables as suggested by issue report 16995 to facilitate
- extending NNTPClient functionality in subclasses.
- </action>
- <action dev="dfs" type="update">
- Changed name of FTPClient.__openDataConnection() to
- FTPClient._openDataConnection_() to remain consistent
- with the convention in the code that protected members
- are of the form _foo_. At some point __openDataConnection()
- had been changed from private to protected.
- </action>
- <action dev="brekke" type="add">
- Added terminal option support to the telnet client with tests.
- From Bruno D'Avanzo ( b.davanzo@inwind.it ).
- </action>
- <action dev="scohen" type="add">
- New parsers merged with mainline with support for old list parsers.
- </action>
- </release>
-
- <release version="1.0.0" date="February 23, 2003" description="first jakarta-commons release">
- <action dev="brekke" type="add">
- Added a migration document for moving from NetComponents to Commons/Net.
- </action>
- <action dev="brekke" type="fix">
- Moved the ftp2 tree with tests to a proposal directory and setup
- a build for that code. This can grow in this area so users don't
- think it is production ready.
- </action>
- <action dev="dfs" type="fix">
- Cleaned up license header on some source.
- </action>
- <action dev="dfs" type="fix">
- Moved .io and .util to .net.io and .net.util in preparation for
- 1.0 release.
- </action>
- <action dev="dfs" type="fix">
- Fixed typo in NNTP.removeProtocolCommandListener() method name. It
- was missing an L. From: joev@atg.com.
- </action>
- <action dev="brekke" type="add">
- Various site updates including this changes doc and publish
- date information.
- </action>
- <action dev="dfs" type="fix">
- Patch for restarting FTP file transfers. The offset was not
- being sent immediately before the data transfer command on
- account. The bug was apparently introduced in NetComponents
- when it was decided to always send a PORT command before each data
- transfer to avoid socket reuse problems on Windows.
- From: Tapan Karecha ( tapan@india.hp.com ).
- </action>
- <action dev="dfs" type="fix">
- Applied a fix for potential deadlock in TelnetInputStream by
- changing a wait() to a wait(100).
- From: Tapan Karecha ( tapan@india.hp.com ).
- </action>
- <action dev="dfs" type="update">
- FTP examples now use passive ftp connections.
- </action>
- </release>
- </body>
-</document>
+<!--
+
+ 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.
+
+-->
+<!--
+This file is also used by the maven-changes-plugin to generate the release notes.
+Useful ways of finding items to add to this file are:
+
+1. Add items when you fix a bug or add a feature (this makes the
+release process easy :-).
+
+2. Do a JIRA search for tickets closed since the previous release.
+
+3. Use the report generated by the maven-changelog-plugin to see all
+SVN commits. Set the project.properties' maven.changelog.range
+property to the number of days since the last release.
+
+To generate the release notes from this file:
+
+mvn changes:announcement-generate -Prelease-notes [-Dchanges.version=nnn]
+
+then tweak the formatting if necessary
+and commit
+
+The <action> type attribute can be add,update,fix,remove.
+-->
+
+<document>
+ <properties>
+ <title>Apache Commons Net Release Notes</title>
+ <author email="dev@commons.apache.org">Apache Commons developers</author>
+ </properties>
+
+ <!-- NOTE:
+ The description below is specially formatted so as to improve the layout of the generated release notes:
+ The parsing process removes all line feeds, replacing them with a single space.
+ The Velocity template in resources/templates has been enhanced to replace pairs of adjacent spaces
+ with a new-line in the release notes. (These spaces are ignored when displaying HTML).
+ If the output is not quite correct, check for invisible trailing spaces!
+
+ N.B. The release notes template groups actions by type, and only extracts data for the current release.
+ The changes report outputs actions in the order they appear in this file.
+
+ To regenerate the release notes:
+ mvn changes:announcement-generate -Prelease-notes [-Dchanges.version=nnn]
+
+ Defining changes.version allows one to create the RN without first removing the SNAPSHOT suffix.
+ -->
+
+ <body>
+ <release version="3.9.0" date="2021-MM-DD" description="Maintenance and bug fix release (Java 8).">
+ <!-- FIX -->
+ <action type="fix" issue="NET-708" dev="ggregory" due-to="XenoAmess">
+ Use yyyy instead of YYYY in SimpleDateFormat #97.
+ </action>
+ <action type="update" dev="sebb">
+ Prevent serialization of the 4 classes that implement Serializable.
+ It is not useful and is unlikely to work properly.
+ </action>
+ <action type="fix" dev="ggregory" due-to="Arturo Bernal">
+ Use Math.min and Math.max method instead of manual calculations. #104.
+ </action>
+ <!-- ADD -->
+ <action type="add" dev="ggregory" due-to="Gary Gregory">
+ [FTP] Add FTPClient.mdtmInstant(String).
+ </action>
+ <action type="add" dev="ggregory" due-to="Gary Gregory">
+ [FTP] Add MLSxEntryParser.parseGmtInstant(String).
+ </action>
+ <action type="add" dev="ggregory" due-to="Gary Gregory">
+ [FTP] Add FTPClient.getControlKeepAliveReplyTimeoutDuration().
+ </action>
+ <action type="add" dev="ggregory" due-to="Gary Gregory">
+ [FTP] Add FTPClient.setControlKeepAliveReplyTimeout(Duration).
+ </action>
+ <action type="add" dev="ggregory" due-to="Gary Gregory">
+ [FTP] Add FTPClient.getControlKeepAliveTimeoutDuration().
+ </action>
+ <action type="add" dev="ggregory" due-to="Gary Gregory">
+ [FTP] Add FTPClient.setControlKeepAliveTimeout(Duration).
+ </action>
+ <action type="add" dev="ggregory" due-to="Gary Gregory">
+ [FTP] Add FTPClient.getDataTimeout().
+ </action>
+ <action type="add" dev="ggregory" due-to="Gary Gregory">
+ [FTP] Add FTPClient.setDataTimeout(Duration).
+ </action>
+ <action type="add" dev="ggregory" due-to="Gary Gregory">
+ [FTP] Add FTPFile.getTimestampInstant().
+ </action>
+ <action type="add" dev="ggregory" due-to="Gary Gregory">
+ Add github/codeql-action.
+ </action>
+ <!-- UPDATE -->
+ <action dev="ggregory" type="update" due-to="Gary Gregory">
+ A actions/setup-java from 1.4.3 to 3.
+ </action>
+ <action type="update" dev="ggregory" due-to="Dependabot">
+ Bump actions/checkout from 2.3.4 to 3 #89, #91, #100.
+ </action>
+ <action type="update" dev="ggregory" due-to="Dependabot, Gary Gregory">
+ Bump actions/cache from 2.1.6 to 3.0.3 #93, #102.
+ </action>
+ <action type="update" dev="ggregory" due-to="Dependabot">
+ Bump junit from 4.13.1 to 4.13.2 #74.
+ </action>
+ <action type="update" dev="ggregory" due-to="Dependabot, Gary Gregory">
+ Bump commons-io from 2.6 to 2.11.0 #60.
+ </action>
+ <action dev="ggregory" type="update" due-to="Gary Gregory">
+ Bump commons.jacoco.version from 0.8.6 to 0.8.7.
+ </action>
+ <action dev="ggregory" type="update" due-to="Gary Gregory">
+ Bump commons.japicmp.version from 0.14.3 to 0.15.7.
+ </action>
+ <action dev="ggregory" type="update" due-to="Gary Gregory">
+ Bump commons.surefire.version from 2.22.2 to 3.0.0-M5.
+ </action>
+ <action type="update" dev="ggregory" due-to="XenoAmess, Gary Gregory">
+ Bump ftpserver-core from 1.1.1 to 1.2.0 #96.
+ </action>
+ </release>
+ <release version="3.8.0" date="2021-02-13" description="Maintenance and bug fix release (Java 7).">
+ <!-- ADD -->
+ <action type="add" dev="ggregory" due-to="Arturo Bernal, Gary Gregory">
+ Add and use NetConstants.
+ </action>
+ <action type="add" dev="ggregory" due-to="Gary Gregory">
+ Add and use SocketClient.applySocketAttributes().
+ </action>
+ <action type="add" dev="ggregory" due-to="Gary Gregory">
+ [FTP] Add FTPClient.hasFeature(FTPCmd).
+ </action>
+ <action type="add" dev="ggregory" due-to="Gary Gregory">
+ [FTP] Add FTPClient.mdtmCalendar(String).
+ </action>
+ <!-- FIX -->
+ <action type="fix" dev="ggregory" due-to="Gary Gregory">
+ [IMAP] Fix concurrent counting of chunks in IMAPExportMbox.
+ </action>
+ <action type="fix" dev="ggregory" due-to="Gary Gregory">
+ Fix possible if rare NPEs in tests.
+ </action>
+ <!-- UPDATE -->
+ <action type="update" dev="ggregory" due-to="Dependabot">
+ Bump actions/checkout from v2.3.3 to v2.3.4 #69.
+ </action>
+ <action issue="NET-685" type="update" dev="ggregory" due-to="Simo385">
+ Update SocketClient default connect timeout from ∞ to 60 seconds #51.
+ </action>
+ <action issue="NET-695" type="update" dev="ggregory" due-to="Gary Gregory, Possibly Cott">
+ Apply SocketClient timeout after connection but before SSL negotiation.
+ </action>
+ <action type="update" dev="ggregory" due-to="Arturo Bernal, Gary Gregory">
+ Minor Improvements #71, #72.
+ </action>
+ <action type="update" dev="ggregory" due-to="Dependabot">
+ Bump actions/cache from v2 to v2.1.4 #73.
+ </action>
+ </release>
+ <release version="3.7.2" date="2020-10-14" description="Maintenance and bug fix release (Java 7).">
+ <action issue="NET-689" type="fix" dev="ggregory" due-to="Charlie, Gary Gregory">
+ Host name is not set on the SSLSocket causing isEndpointCheckingEnabled to fail.
+ </action>
+ <action type="fix" dev="ggregory" due-to="Dependabot">
+ Fix possible socket and input stream leak on socket exception in
+ org.apache.commons.net.ftp.FTPClient._retrieveFile(String, String, OutputStream).
+ </action>
+ <action issue="NET-690" type="fix" dev="ggregory" due-to="payal-meh, Gary Gregory">
+ Performance issue when using the FTPClient to retrieve files #65.
+ </action>
+ <action issue="NET-691" type="update" dev="ggregory" due-to="Lewis John McGibbney">
+ Improve Javadoc for IMAPSClient #68.
+ </action>
+ <!-- UPDATES -->
+ <action type="update" dev="ggregory" due-to="Dependabot">
+ Bump actions/setup-java from v1.4.2 to v1.4.3 #62.
+ </action>
+ <action type="update" dev="ggregory" due-to="Dependabot">
+ Bump junit from 4.13 to 4.13.1 #67.
+ </action>
+ </release>
+ <release version="3.7.1" date="2020-09-30" description="Maintenance and bug fix release (Java 7).">
+ <action issue="NET-687" type="fix" dev="ggregory" due-to="Gary Gregory, Mikael, j-verse">
+ [FTPS] javax.net.ssl.SSLException: Unsupported or unrecognized SSL message, #59.
+ </action>
+ <!-- UPDATES -->
+ <action type="update" dev="ggregory" due-to="Dependabot">
+ Update actions/checkout from v2.3.1 to v2.3.3 #56, #61.
+ </action>
+ </release>
+ <release version="3.7" date="2020-08-05"
+ description="
+This is mainly a bug-fix release (Java 7). See further details below.
+
+ This release requires a minimum of Java 7.
+
+ This release is binary compatible with previous releases.
+ However it is not source compatible with releases before 3.4, as some methods were added to the interface NtpV3Packet in 3.4
+
+ Note that the examples packages were moved under org/apache/commons/net/examples.
+ The examples are not part of the public API, so this does not affect compatibility.
+
+">
+ <action issue="NET-673" type="fix" dev="sebb">
+ IMAPClient.APPEND does not always calculate the correct length
+ </action>
+ <action issue="NET-646" type="add" dev="sebb">
+ ALLO FTP Command for files >2GB
+ </action>
+ <action issue="NET-615" type="add" dev="sebb">
+ IMAPClient could simplify using empty arguments
+ </action>
+ <action issue="NET-614" type="add" dev="sebb">
+ IMAP fails to quote/encode mailbox names
+ </action>
+ <action issue="NET-643" type="fix" dev="sebb" due-to="Vasily">
+ NPE when closing telnet stream
+ </action>
+ <action issue="NET-648" type="add" dev="pschumacher">
+ Add Automatic-Module-Name MANIFEST entry for Java 9 compatibility
+ </action>
+ <action issue="NET-641" type="fix" dev="sebb" due-to="pin_ptr">
+ SubnetUtils.SubnetInfo.isInRange("0.0.0.0") returns true for CIDR/31, 32
+ </action>
+ <action issue="NET-638" type="add" dev="sebb" due-to="Daniel Leong">
+ Telnet subnegotiations hard-limited to 512 bytes - allow override
+ </action>
+ <action issue="NET-639" type="fix" dev="sebb" due-to=" Alexander Eller">
+ MVSFTPEntryParser.preParse - MVS, z/OS - allow for merged Ext/Used fields
+ </action>
+ <action issue="NET-636" type="fix" dev="sebb">
+ examples should be in org.apache.commons.net subpackage
+ </action>
+ <action issue="NET-634" type="add" dev="sebb" due-to="Mauro Molinari">
+ Add SIZE command support
+ </action>
+ <action type="add" dev="sebb">
+ Add POP3ExportMbox example code
+ </action>
+ <action issue="NET-633" type="update" dev="sebb" due-to="n0rm1e">
+ Add XOAUTH2 to IMAP and SMTP
+ </action>
+ <action issue="NET-632" type="update" dev="sebb" due-to="prakapenka">
+ FTPHTTPClient - support for encoding other than UTF-8
+ </action>
+ <action issue="NET-631" type="fix" dev="sebb">
+ Bug in MVSFTPEntryParser.parseUnixList (FindBugs)
+ </action>
+ <action issue="NET-584" type="fix" dev="sebb" due-to="Kazantsev Andrey Sergeevich/Nick Manley">
+ Error when using org.apache.commons.net.ftp.FTPClient setControlKeepAliveTimeout
+ </action>
+ <action issue="NET-626" type="update" dev="sebb" due-to="Makoto Sakaguchi">
+ SubnetUtils#SubnetUtils - improved comment
+ </action>
+ <action issue="NET-625" type="update" dev="sebb">
+ SubnetUtils - improve construction
+ </action>
+ <action issue="NET-624" type="update" dev="sebb" due-to="Makoto Sakaguchi">
+ SubnetInfo#getCidrSignature - improve functions
+ </action>
+ <action issue="NET-624" type="fix" dev="sebb" due-to="Makoto Sakaguchi">
+ SubnetInfo#toCidrNotation: A wrong format subnet mask is allowed
+ </action>
+ <action issue="NET-623" type="fix" dev="sebb" due-to="Makoto Sakaguchi">
+ SubnetUtils - fixed spelling errors
+ </action>
+ <action issue="NET-621" type="update" dev="sebb" due-to="Makoto Sakaguchi">
+ SubnetUtils#SubnetInfo - remove unnecessary accessors
+ </action>
+ <action issue="NET-619" type="update" dev="sebb" due-to="Makoto Sakaguchi">
+ SubnetUtils - improve binary netmask algorithm
+ </action>
+ <action issue="NET-613" type="fix" dev="sebb" due-to="Donald Kwakkel">
+ System Information Leak in ftp parser
+ </action>
+ <action issue="NET-678" type="update" dev="sebb" due-to="Roman Grigoriadi">
+ VMS ftp LIST parsing results in empty file list
+ </action>
+ <action issue="NET-674" type="add" dev="sebb" due-to="Chris Steingen">
+ FTPListParseEngine should support listing via MLSD
+ </action>
+ <action issue="NET-663" type="fix" dev="sebb" due-to="Max Shenfield">
+ NullPointerException when FTPClient remote verification fails
+ </action>
+ <action issue="NET-649" type="fix" dev="sebb" due-to="Filipe Bojikian Rissi">
+ 227 Entering Passive Mode
+ </action>
+ <action issue="NET-660" type="add" dev="sebb" due-to="Nagabhushan S N">
+ Next and Previous IP Address in SubnetUtils.SubnetInfo
+ </action>
+ <action issue="NET-682" type="fix" dev="sebb" due-to="richard">
+ MVSFTPEntryParser doesn't support Record Formats of U
+ </action>
+ </release>
+ <release version="3.6" date="2017-02-15"
+ description="
+This is mainly a bug-fix release (Java 6). See further details below.
+
+
+ This release is binary compatible with previous releases.
+ However it is not source compatible with releases before 3.4, as some methods were added to the interface NtpV3Packet in 3.4
+
+ The code now requires a minimum of Java 6.
+
+ Changes to functionality:
+ * The FTP client now performs stricter checks on non-multiline command replies.
+ The 3 digit code must now be followed by a space and some text, as per RFC 959.
+ To suppress this stricter checking, call FTP#setStrictReplyParsing(false). This should not be needed with a well-behaved server.
+ Note also that if strict checking is disabled, some functions may unconditionally strip the next character after the code,
+without checking it if is a space.
+
+* The FTP client mlistFile() method now checks for a leading space before removing it.
+ If the space is missing, a MalformedServerReplyException is thrown.
+ This will only happen if the FTP server is not compliant with RFC 3659.
+
+ Notable additions:
+ * The POP3Mail examples can now get password from console, stdin or an environment variable.
+
+* TFTPClient code has been rewritten to improve error handling and retries.
+
+">
+ <action issue="NET-613" type="fix" dev="sebb">
+ TFTPClient assumes that lastBlock == 0 only once
+ </action>
+ <action issue="NET-320" type="fix" dev="sebb" due-to="Kevin Bulebush">
+ Allow TFTPServer.java to bind to a specific network adapter
+ </action>
+ <action issue="NET-414" type="fix" dev="sebb" due-to="Chuck Wolber">
+ Apache Commons TFTP does not reject request replies that originate from a control port.
+ </action>
+ <action issue="NET-477" type="fix" dev="sebb" due-to="John Walton">
+ TFTP sendFile retry broken
+ </action>
+ <action issue="NET-612" type="update" dev="sebb">
+ Allow TFTP socket IO tracing
+ </action>
+ <action issue="NET-596" type="fix" dev="sebb" due-to="Vincent Bories-Azeau">
+ NullPointerException when disconnecting TelnetClient twice with JDK 7
+ </action>
+ <action issue="NET-602" type="fix" dev="sebb" due-to="Ross Braithwaite">
+ Failure to parse times from SYST_L8 systems that report as "WINDOWS Type: L8"
+ </action>
+ <action issue="NET-604" type="fix" dev="sebb" due-to="Frank Delporte">
+ TFTP send and receive don't have progress indication
+ </action>
+ <action issue="NET-588" type="fix" dev="sebb" due-to="Dave Nice / Thai H">
+ FTPClient.setPassiveNatWorkaround assumes host is outside site local range
+ </action>
+ <action issue="NET-610" type="fix" dev="sebb" due-to="Sergey Yanzin">
+ FTPClient.mlistFile incorrectly handles MLST reply
+ </action>
+ <action issue="NET-611" type="fix" dev="sebb">
+ FTP does not validate command reply syntax fully
+ </action>
+ <action issue="NET-609" type="fix" dev="sebb" due-to="Tqup3">
+ DefaultUnixFTPFileEntryParserFactory Issue (leading spaces removal configuration)
+ </action>
+ <action type="update" dev="sebb">
+ POP3Mail example: support host port; allow reading password from Console/stdin/environment
+ </action>
+ <action issue="NET-597" type="fix" dev="sebb" due-to="Hiroki Taniura">
+ FTP fails to parse listings for Solaris 10 FTPd in Japanese
+ </action>
+ <action issue="NET-599" type="update" dev="sebb">
+ Add shorthand FTPClientConfig constructor
+ </action>
+ <action issue="NET-593" type="fix" dev="sebb" due-to="Joerg Weule">
+ HostnameVerifier is called with ip addess instead of the provided hostname
+ </action>
+ <action issue="NET-594" type="fix" dev="sebb" due-to="Brad Worrral">
+ TelnetClient._closeOutputStream unhandled exception from FilterOutputStream.close
+ </action>
+ <action issue="NET-592" type="fix" dev="sebb" due-to="Mark Ford">
+ plainSocket in FTPSClient is never closed
+ </action>
+ </release>
+ <release version="3.5" date="2016-05-05"
+ description="
+This is mainly a bug-fix release (Java 6). See further details below.
+
+
+ This release is binary compatible with previous releases.
+ However it is not source compatible with releases before 3.4, as some methods were added to the interface NtpV3Packet in 3.4
+
+ The code now requires a minimum of Java 6.
+
+ Notable additions:
+ The IMAP examples can now get password from console, stdin or an environment variable.
+ ">
+ <action issue="NET-583" type="fix" dev="sebb" due-to="Holger Rehn">
+ FTPClient.getReplyString() returns wrong value after connect()
+ </action>
+ <action type="add" dev="sebb">
+ Alternative password input methods for IMAP examples
+ </action>
+ <action type="add" dev="sebb">
+ More tests for Feb 29 handling.
+ </action>
+ <action issue="NET-586" type="fix" dev="sebb">
+ Don't use Feb 29 for short future date tests
+ </action>
+ <action type="fix" dev="sebb">
+ Documentation tweaks
+ </action>
+ </release>
+ <release version="3.4" date="2015-11-26"
+ description="
+This is mainly a bug-fix release. See further details below.
+
+ This release is binary compatible with previous releases.
+ However it is not source compatible, as some methods have been added to the interface NtpV3Packet
+
+ Notable additions:
+ IMAPExportMbox (example app) allows IMAP folders to be exported into an mbox file.
+ This is the inverse of the IMAPImportMbox example added previously
+ ">
+ <action issue="NET-581" type="fix" dev="sebb">
+ SimpleSMTPHeader fails to supply the required Date: header
+ </action>
+ <action issue="NET-582" type="fix" dev="sebb">
+ SimpleSMTPHeader does not allow for missing To: field
+ </action>
+ <action issue="NET-580" type="fix" dev="sebb" due-to="Simon Arlott">
+ SMTPClient.sendSimpleMessage() silently ignores failed recipients
+ Update Javadoc
+ </action>
+ <action issue="NET-579" type="fix" dev="sebb" due-to="Simon Arlott">
+ SSL/TLS SocketClients do not verify the hostname against the certificate
+ </action>
+ <action issue="NET-576" type="update" dev="sebb">
+ Allow FTPClient to use SYST response if system type is not specified in configuration
+ </action>
+ <action issue="NET-575" type="update" dev="sebb">
+ FTPClientExample should support setting the date format
+ </action>
+ <action issue="NET-538" type="fix" dev="sebb" due-to="Dzmitry">
+ FTPHTTPClient should use socket factory to create sockets
+ </action>
+ <action issue="NET-566" type="fix" dev="sebb" due-to="Gary Russell">
+ UnixFTPEntryParser Drops Leading Spaces from File Names
+ </action>
+ <action type="update" dev="sebb">
+ examples/Main now uses a property file to define aliases instead of scanning class files
+ </action>
+ <action issue="NET-552" type="fix" dev="sebb" due-to="Quentin Devriendt">
+ SocketTimeoutException connecting a FTP server via an HTTP Proxy
+ </action>
+ <action issue="NET-528" type="add" dev="sebb">
+ FTPListParseEngine does not provide access to raw responses
+ </action>
+ <action issue="NET-565" type="add" dev="sebb">
+ Add FTPClient method to return an FTPFile from an MDTM command
+ </action>
+ <action issue="NET-564" type="update" dev="sebb">
+ FTPFile.toFormattedString - allow specification of TimeZone for display
+ </action>
+ <action issue="NET-562" type="update" dev="sebb">
+ FTPFile.toFormattedString should print only signficant parts of the parsed date
+ </action>
+ <action issue="NET-563" type="fix" dev="sebb">
+ MLSxEntryParser needs test cases; parsing is too lax
+ </action>
+ <action issue="NET-561" type="fix" dev="sebb">
+ FTPFile.toFormattedString prints user and group in wrong order
+ </action>
+ <action issue="NET-544" type="fix" dev="sebb" due-to="Olivier Queyrut ">
+ FTPClient.initiateListParsing does not correctly check if parserKey was cached
+ </action>
+ <action issue="NET-554" type="update" dev="sebb">
+ Simplify TelnetOptionHandler class hierarchy
+ </action>
+ <action issue="NET-558" type="fix" dev="sebb" due-to="Ralph Becker">
+ FTPClient.getModificationTime(filename) returns complete received line including response code and EOL
+ Strip the response code and EOL
+ </action>
+ <action issue="NET-556" type="update" dev="sebb" due-to="Andy Rosa">
+ Make SubnetInfo.isInRange(int) public
+ </action>
+ <action issue="NET-550" type="fix" dev="sebb" due-to="Geoffrey Hardy">
+ Default FTPClient bufferSize results in very slow retrieve transfers
+ Fix code in Util#copyStream (also copyReader) that failed to use the proper default for buffer size 0
+ </action>
+ <action issue="NET-551" type="fix" dev="sebb">
+ Util copyReader calls CopyStreamListener.bytesTransferred with the incorrect value for bytesTransferred
+ </action>
+ <action type="update" dev="sebb">
+ Added control character processing to TelnetClientExample
+ </action>
+ <action issue="NET-547" type="update" dev="sebb" due-to="Fabio Scippacercola">
+ There is a lack of documentation regarding setControlKeepAliveTimeout
+ </action>
+ <action issue="NET-549" type="fix" dev="sebb" due-to="Pradeep Natarajan">
+ Telnet does not convert LF to CRLF in ASCII mode
+ </action>
+ <action issue="NET-543" type="fix" dev="sebb" due-to="Ferry Huberts">
+ telnet: spy read EOL is reversed
+ </action>
+ <action issue="NET-540" type="add" dev="sebb">
+ Article#printThread should have option to use any PrintStream
+ </action>
+ <action issue="NET-539" type="fix" dev="sebb">
+ NPE if Threader.thread invoked with empty list or with null array
+ </action>
+ <action issue="NET-536" type="add" dev="sebb">
+ IMAP FETCH example
+ IMAPExportMbox can export selected nessages from an IMAP folder
+ </action>
+ <action issue="NET-535" type="add" dev="sebb">
+ IMAP FETCH can overflow reply buffer; provide for partial responses
+ </action>
+ <action issue="NET-534" type="update" dev="sebb">
+ Unnecesssary call to getReplyString() if no listeners configured
+ </action>
+ <action issue="NET-530" type="fix" dev="sebb" due-to="fish ship">
+ input parameter of org.apache.commons.net.ftp.FTP.__getReply(boolean) is not used
+ </action>
+ <action issue="NET-529" type="fix" dev="sebb" due-to="Putinas Piliponis">
+ SubnetUtils throws exception on valid input
+ </action>
+ <action issue="NET-527" type="add" dev="sebb" due-to="jason mathews">
+ Add SimpleNTPServer as example and for testing
+ </action>
+ <action issue="NET-516" type="fix" dev="sebb" due-to="Asha K S & pavan">
+ parser problem occurs if the filename contains one or more characters of which the second byte of Shift-JIS code is 0x85
+ Fix NT parser
+ </action>
+ <action type="update" dev="sebb">
+ Added control encoding option to FTPClientExample
+ </action>
+ <action issue="NET-526" type="update" dev="sebb" due-to="Jason Mathews, MITRE Corp">
+ Added missing set methods on NTP class and interface
+ </action>
+ <action issue="NET-526" type="update" dev="sebb">
+ Avoid greedy matches within a regex
+ </action>
+ <action issue="NET-520" type="fix" dev="sebb">
+ SubnetUtils("0.0.0.0/0") does not behave as expected
+ Fixed range checking so network and broadcast addresses are treated as unsigned ints
+ </action>
+ <action issue="NET-521" type="fix" dev="sebb">
+ SubnetUtils.SubnetInfo.getAddressCount() can overflow as it returns an int
+ </action>
+ <action issue="NET-515" type="fix" due-to="Sebastian Ritter">
+ FTPClient sample in class javadoc "bug"
+ </action>
+ <action issue="NET-519" type="fix">
+ Apache Commons Net 3.3 has a performance issue
+ </action>
+ <action issue="NET-517" dev="sebb" type="fix" due-to="David Kocher">
+ FTPClient#reinitialize is package protected
+ </action>
+ <action issue="NET-512" dev="sebb" type="add" due-to="Thomas Raddatz">
+ Downloading files or members from the AS400 QSYS file system is not supported
+ </action>
+ <action issue="NET-518" dev="sebb" type="fix" due-to="David Kocher">
+ FTPClient#initFeatureMap should not initialize empty map if reply code is 530
+ </action>
+ <action issue="NET-514" dev="sebb" type="fix">
+ IMAP APPEND multiple issues in IMapClient.
+ Deprecated unusable append methods.
+ Added new append method, as well as example IMapImportMbox class to make use of it.
+ </action>
+ <action issue="NET-511" dev="ggregory" type="fix" due-to="Kyriacos Elia, Daniel Scott">
+ Exception for new SubnetUtils("0.0.0.0/0").
+ </action>
+ </release>
+ <release version="3.3" date="2013-06-11"
+ description="
+This is mainly a bug-fix release. See further details below.
+ ">
+ <action issue="NET-509" dev="sebb" due-to="Anthony Dahanne" type="update">
+ AuthenticatingSMTPClient needs a constructor with the isImplicit argument for SSL
+ </action>
+ <action issue="NET-501" dev="sebb" due-to="Julián Lastiri" type="fix">
+ Race Condition on TelnetClient.disconnect() and TelnetInputStream.run()
+ java.lang.IllegalStateException: Queue is full! Cannot process another character.
+ </action>
+ <action issue="NET-505" dev="sebb" due-to="Sean Kelley" type="update">
+ User specified bufferSize reset to default when FTPClient is disconnected or reinitialized resulting in performance
+ degradation.
+ </action>
+ <action issue="NET-507" dev="sebb" due-to="Jiri Netolicky" type="update">
+ Option to disable private IP replacement in FTP passive mode.
+ </action>
+ <action issue="NET-503" dev="sebb" due-to="Ofer Regev" type="add">
+ AuthenticatingSMTPClient does not support non-default encoding
+ </action>
+ <action issue="NET-500" dev="sebb" due-to="Michael Frick" type="fix">
+ Always call FTPClient#setFileType after connection.
+ Not all servers default to ASCII.
+ </action>
+ <action issue="NET-465" dev="sebb" due-to="Jim Kerwood" type="fix">
+ FTPClient setSendBufferSize and setReceiveBufferSize on data socket.
+ The previous fix caused performance problems.
+ Added new getters and setters for the SO_SNDBUF and SO_RCVBUF values to be used on the data socket.
+ </action>
+ <action issue="NET-496" dev="sebb" type="add">
+ Util copyReader/copyStream classes should use default buffer size for non-positive buffer size parameters.
+ </action>
+ <action issue="NET-310" dev="sebb" type="add">
+ FTPCommand conversion to use enum; added FTPCmd emum and deprecated FTPCommand.
+ </action>
+ <action issue="NET-480" dev="sebb" due-to="Peter Naber" type="fix">
+ Wrong passivHost when using FTPHTTPClient with EPSV
+ </action>
+ <action issue="NET-494" dev="sebb" type="fix">
+ FTPClient.CSL.cleanUp() fails to restore timeout value on exception
+ </action>
+ <action issue="NET-492" dev="sebb" due-to="Tomasz Jedrzejewski" type="fix">
+ FTPClient.printWorkingDirectory() incorrectly parses certain valid PWD command results
+ </action>
+ </release>
+ <release version="3.2" date="2012-12-03"
+ description="
+This release fixes bugs and adds some new functionality (see below).
+ It is binary compatible with previous releases.
+ Note that Clirr shows that two public methods have been removed (NET-485). These are not used within NET.
+ ">
+ <action issue="NET-46" dev="sebb" type="fix">
+ retrieveFileStream fails randomly or hangs
+ </action>
+ <action issue="NET-485" dev="sebb" type="fix">
+ Remove unnecessary Base64 methods.
+ </action>
+ <action issue="NET-482" dev="sebb" type="update" due-to="Houman Atashbar">
+ Support XOAUTH.
+ </action>
+ <action issue="NET-484" dev="sebb" type="fix">
+ Base64.CHUNK_SEPARATOR should be private
+ </action>
+ <action issue="NET-483" dev="sebb" type="fix">
+ Base64.encodeBase64(byte[], boolean, boolean, int) does not calculate output size correctly for unchunked output.
+ </action>
+ <action issue="NET-466" dev="sebb" type="fix" due-to="Martin Oberhuber">
+ Regression: TelnetInputStream#available() blocks.
+ </action>
+ <action issue="NET-426" dev="sebb" type="fix" due-to="Ketan">
+ FTPS: Hook to customize _openDataConnection_ SSLSocket before startHandshake() is called.
+ Implement _openDataConnection(String, String) method to properly
+ interface with FTPClient.openDataConnection(String, String)
+ </action>
+ <action issue="NET-456" dev="sebb" type="fix">
+ TelnetClient hangs when reader-thread startup is delayed.
+ </action>
+ <action issue="NET-449" dev="sebb" type="fix">
+ listFiles bug with folder that begins with "-". Clarify Javadoc.
+ </action>
+ <action issue="NET-473" dev="sebb" type="fix">
+ FTPClient setSoTimeout (int time) will result in NullPointerException. Clarify Javadoc.
+ </action>
+ <action issue="NET-468" dev="sebb" type="add" due-to="Bogdan Drozdowski">
+ Request for native support for socks proxy routing with Commons net FTP.
+ </action>
+ <action issue="NET-475" dev="sebb" type="fix">
+ FtpClient sends REST when calling listFiles. Clarified Javadoc.
+ </action>
+ <action issue="NET-465" dev="sebb" type="add" due-to="Bogdan Drozdowski">
+ FTPClient setSendBufferSize and setReceiveBufferSize on data socket.
+ </action>
+ <action issue="NET-462" dev="sebb" type="add" due-to="Bogdan Drozdowski">
+ FTPClient in PASSIVE_LOCAL_DATA_CONNECTION_MODE cannot work when host have several different IP.
+ </action>
+ <action issue="NET-467" dev="sebb" type="fix">
+ IMAPClient#fetch() does not handle literal strings.
+ </action>
+ <action issue="NET-458" dev="sebb" type="fix" due-to="Denis Molony">
+ MVSFTPEntryParser.parseSimpleEntry - ArrayIndexOutOfBoundsException.
+ </action>
+ <action issue="NET-450" dev="sebb" type="fix" due-to="Roger Hardiman">
+ Bug in documentation for FTPClient.
+ </action>
+ <action dev="sebb" type="add">
+ The examples can now be run using "java -jar commons-net-examples-m.n.jar".
+ This will automatically include the main net jar in the classpath.
+ See documentation.
+ FTPClientExample now supports "-A" for anonymous login
+ </action>
+ <action issue="NET-442" dev="sebb" type="fix">
+ StringIndexOutOfBoundsException: String index out of range: -1 if server respond with root is current directory.
+ </action>
+ <action issue="NET-444" dev="sebb" type="fix">
+ FTPTimestampParserImpl fails to parse future dates correctly on Feb 28th in a leap year.
+ </action>
+ </release>
+ <release version="3.1" date="Feb 20, 2012"
+ description="
+This release fixes a few bugs and adds some new functionality (see below).
+ It is binary compatible with previous releases
+ ">
+ <action issue="NET-441" dev="sebb" type="fix" due-to="consiliens">
+ [FTP] mlistDir doc should be "MLSD" not "MSLD".
+ </action>
+ <action issue="NET-440" dev="sebb" type="add">
+ [FTP] Allow user to provide default value in case SYST command fails.
+ </action>
+ <action issue="NET-438" dev="sebb" type="fix" due-to="Norman Maurer">
+ POP3Client.capa() should call POP3Client.getAdditionalReply()
+ </action>
+ <action issue="NET-412" dev="sebb" type="fix" due-to="Chuck Wolber">
+ TFTP implementation subject to Sorcerer's Apprentice Syndrome
+ </action>
+ <action issue="NET-410" dev="sebb" type="fix" due-to="Chuck Wolber">
+ TFTP does not handle RFC 783 retransmits
+ </action>
+ <action issue="NET-437" dev="sebb" type="fix" due-to="Gavin Camp">
+ TelnetInputStream doesn't support non-blocking IO when reader thread is not enabled
+ </action>
+ <action issue="NET-346" dev="sebb" type="add" due-to="Kevin Samuel">
+ FTP should support reporting NATed external IP address
+ </action>
+ <action issue="NET-433" dev="sebb" type="add">
+ Commons NET site should link to the examples
+ </action>
+ <action issue="NET-422" dev="sebb" type="fix" due-to="Tomas Mysik / Magnus Johansson">
+ FTP using HTTP proxy not working
+ </action>
+ <action issue="NET-423" dev="sebb" type="fix" due-to="Jens Koch">
+ FTPClient.storeFIle might fail when ControlKeepAliveTimeout is set (ditto for FTPCLient.retrieveFile)
+ </action>
+ <action issue="NET-426" dev="sebb" type="add" due-to="Ketan">
+ FTPS: Hook to customize _openDataConnection_ SSLSocket before startHandshake() is called
+ </action>
+ <action issue="NET-430" dev="sebb" type="fix" due-to="Thomas Mathis">
+ Can't login to POP3S Server using explicit mode
+ </action>
+ <action issue="NET-434" dev="sebb" type="fix" due-to="zhangyong">
+ FTPClient fails to close local listener socket when command socket channel encounter "ReadTimeoutException"
+ </action>
+ <action issue="NET-436" dev="sebb" type="add" due-to="Jürgen Jung">
+ [FTP] Support for SYST "Mac OS" listing - "MACOS Peter's Server"
+ </action>
+ <action issue="NET-425" dev="sebb" type="update" due-to="Steven Jardine">
+ [FTP] _openDataConnection_, __storeFile, and __storeFileStream should be protected and take String for FTP command.
+ Likewise for receiveFile and receiveFileStream.
+ </action>
+ <action issue="NET-416" dev="sebb" type="update" due-to="Abhijeet Gaikwad">
+ [Telnet] Increasing sub-negotiation message holder array size
+ </action>
+ <action issue="NET-428" dev="sebb" type="fix" due-to="sebb">
+ SubnetUtils throws ArrayIndexOutOfBoundsException for new SubnetUtils( "1.2.3.4/32" ).getInfo().getAllAddresses()
+ </action>
+ <action issue="NET-421" dev="sebb" type="fix" due-to="Oliver Saggau">
+ Problem connecting to TLS/SSL SMTP server using explicit mode.
+ </action>
+ <action issue="NET-415" dev="sebb" type="fix" due-to="george thomas">
+ [Site] typo in migration how-to.
+ </action>
+ </release>
+
+ <release version="3.0.1" date="June 6, 2011" description="
+This is a bug-fix release.
+ ">
+ <action issue="NET-409" dev="sebb" type="fix">
+ FTPClient truncates file (storeFile method).
+ Fix bug introduced in release 3.0.
+ </action>
+ </release>
+ <release version="3.0" date="May 16, 2011"
+ description="
+This release fixes many bugs (see below), and adds new functionality:
+ - basic support for IMAP and IMAPS
+ - support for SMTPS and POP3S
+
+ FTP changes:
+ - default for lenient future dates is now true, which fixes short date parsing where host clock is ahead of client clock
+ - no longer parses every response line twice
+ - OS auto-detection can be overriden by defining the property 'org.apache.commons.net.ftp.systemType';
+ - or by creating a properties file '/systemType.properties' which provides a mapping from getSystemType() to parser name
+ See the Javadoc for FTPClient.initiateListParsing(String parserKey, String pathname).
+ - SASL, PLAIN and CRAM-MD5 authentication added
+ - added control channel keep-alive for use with misbehaving routers, see FTPClient.setControlKeepAliveTimeout(long controlIdle)
+
+ NNTP changes:
+ - reworked to use long for article numbers
+ - added streaming equivalents for the array methods
+
+ Added TrustManagerUtils and KeyManagerUtils classes to simplify setting up trust and key namagers.
+KeyManagerUtils can be used to provide client certificates.
+
+ This release is binary-compatible with 2.2, but there are some minor changes to source compatibility:
+ - telnet.TelnetClient#addOptionHandler(TelnetOptionHandler) now additionally throws IOException
+ - telnet.TelnetClient#deleteOptionHandler() now additionally throws IOException
+ - ftp.FTPSClient ctors no longer throw NoSuchAlgorithmException
+ - Redundant CODE_nnn definitions have been removed from FTPReply, SMTPReply and NNTPReply classes
+ - Unused String constants KEYSTORE_ALGORITHM, PROVIDER, STORE_TYPE, TRUSTSTORE_ALGORITHM removed from FTPSClient
+
+ All users are recommended to upgrade.
+">
+ <action issue="NET-407" dev="sebb" type="update">
+ Change lenientFutureDates to default to true.
+ This means short dates will be parsed as the current year when the host clock is up to 1 day ahead of the client clock.
+ </action>
+ <action issue="NET-404" dev="sebb" type="fix">
+ FTPSSocketFactory does not override createSocket(); causes java.net.SocketException: Unconnected sockets not implemented.
+ </action>
+ <action issue="NET-399" dev="sebb" type="fix" due-to="Noah Levitt">
+ ftp data connection does not use connectTimeout.
+ </action>
+ <action issue="NET-400" dev="sebb" type="update" due-to="David Kocher">
+ Option to override SSL negotiation. Make FTPSClient#execAuth() and FTPSClient#sslNegotiation() protected
+ </action>
+ <action issue="NET-402" dev="sebb" type="fix">
+ IMAP, NNTP, POP3 and SMTP classes uses BufferedReader for control channel, which does not follow the standard.
+ Changed reader to CRLFLineReader.
+ </action>
+ <action issue="NET-401" dev="sebb" type="fix">
+ FTP class uses BufferedReader for control channel, which does not follow the standard.
+ Changed reader to CRLFLineReader.
+ </action>
+ <action issue="NET-331" dev="sebb" type="update">
+ AS400 file timestamp format is wrong. Workround exists.
+ </action>
+ <action issue="NET-269" dev="sebb" type="update">
+ Remove semi-redundant check in SubnetUtils.calculate().
+ </action>
+ <action issue="NET-219" dev="sebb" type="update">
+ Should Telnet class Exception blocks write to System.err?
+ Catch blocks removed, and throws clauses added to allow caller to more easily detect and recover.
+ </action>
+ <action issue="NET-397" dev="sebb" type="update" due-to="Bogdan Drozdowski"
+ due-to-email="bogdandr # op . pl">
+ FTPSClient does not handle AUTH or ADAT and only partially handles PBSZ. FTPSCommand should be deprecated.
+ </action>
+ <action issue="NET-268" dev="sebb" type="fix">
+ Better handling of CIDR/31 and CIDR/32 where isInclusive = false.
+ Return 0 for address count, and 0.0.0.0 for each of the addresses
+ </action>
+ <action issue="NET-395" dev="sebb" type="update">
+ Move ProtocolCommandSupport to SocketClient.
+ </action>
+ <action issue="NET-393" dev="sebb" type="update">
+ Should the sendCommandWithID() methods be public?
+ Made methods private, and deleted currently unused ones.
+ </action>
+ <action issue="NET-394" dev="sebb" type="update">
+ Are the sendUntaggedCommand() methods needed?
+ Renamed the method as sendData(), as it's not a command.
+ </action>
+ <action issue="NET-392" dev="sebb" type="update">
+ Use enum for IMAPCommand.
+ </action>
+ <action issue="NET-333" dev="sebb" type="add" due-to="Bogdan Drozdowski" due-to-email="bogdandr # op . pl">
+ Added basic IMAP/IMAPS implementation.
+ </action>
+ <action issue="NET-389" dev="sebb" type="fix">
+ Unix parser should ignore "total nnn" lines.
+ </action>
+ <action issue="NET-369" dev="sebb" type="remove">
+ Article.addHeaderField() is currently write-only - there is no way to retrieve the headers - is it needed?
+ Method was removed, along with the field.
+ </action>
+ <action issue="NET-367" dev="sebb" type="fix">
+ ntp.TimeStamp uses incorrect lazy initialisation of static fields simpleFormatter and utcFormatter.
+ </action>
+ <action issue="NET-381" dev="sebb" type="update">
+ Parsing is inefficient, as it parses everything twice.
+ </action>
+ <action issue="NET-388" dev="sebb" type="fix">
+ VMSVersioningFTPEntryParser#preParse should not call super.preParse().
+ </action>
+ <action issue="NET-362" dev="sebb" type="fix">
+ TelnetInputStream has various threading bugs.
+ </action>
+ <action issue="NET-89" dev="sebb" type="fix">
+ TelnetClient use of FromNetASCIIInputStream and ToNetASCIIOutputStream breaks binary mode.
+ See also NET-387.
+ </action>
+ <action issue="NET-385" dev="sebb" type="update">
+ FTP does not apply timeout to initial responses.
+ </action>
+ <action issue="NET-384" dev="sebb" type="update">
+ KeyManagerUtils - the KeyManager is not efficient.
+ </action>
+ <action issue="NET-383" dev="sebb" type="update">
+ KeyManagerUtils - allow alias to be omitted when there is only one private key in the store
+ </action>
+ <action issue="NET-326" dev="sebb" type="add">
+ A KeyManager is required when the protection level is set to 'P' with FTPSClient on active mode.
+ Added KeyManagerUtils class to simplify provision of client certificates.
+ </action>
+ <action issue="NET-273" dev="sebb" type="add">
+ FEAT response parsing. Added FTPClient methods: boolean hasFeature(feature [,option]),
+ String fetaureValue(feature), String[] featureValues(feature)
+ </action>
+ <action issue="NET-379" dev="sebb" type="add">
+ FTPClient - support for processing arbitrary commands that only use the control channel
+ </action>
+ <action issue="NET-378" dev="sebb" type="add">
+ FTP listing should support MLST and MLSD.
+ </action>
+ <action issue="NET-377" dev="sebb" type="update">
+ NLST does not take notice of HiddenFiles setting.
+ </action>
+ <action issue="NET-373" dev="sebb" type="update">
+ NNTP Listgroups not working - broken server implementation.
+ </action>
+ <action issue="NET-375" dev="sebb" type="update">
+ DotTerminatedMessageReader should extend BufferedReader, rather than Reader.
+ </action>
+ <action issue="NET-374" dev="sebb" type="update">
+ ParserInitializationException doesn't use standard JDK exception chaining
+ </action>
+ <action issue="NET-372" dev="sebb" type="add">
+ FTPSClient: java.security.cert.CertificateException: No X509TrustManager implementation available if trustManager == null
+ </action>
+ <action issue="NET-371" dev="sebb" type="add">
+ Create TrustManagerFactory to provide custom TrustManagers.
+ </action>
+ <action issue="NET-354" dev="sebb" type="fix" due-to="Leif John Korshavn">
+ FTPSClient not properly supporting CCC and PROT P.
+ </action>
+ <action issue="NET-368" dev="sebb" type="update">
+ Threader.thread should accept an Iterable rather than a List.
+ </action>
+ <action issue="NET-327" dev="sebb" type="add" due-to="Bogdan Drozdowski" due-to-email="bogdandr # op . pl">
+ "Unconnected sockets not implemented" when using FTPSClient
+ Added disconnect() override which resets the socket factories to their defaults
+ </action>
+ <action issue="NET-350" dev="sebb" type="add" due-to="Bogdan Drozdowski" due-to-email="bogdandr # op . pl">
+ "java.net.SocketException: Broken pipe" when calling "TelnetClient.sendAYT()"
+ Added SocketClient#isAvailable() method to perform additional checks on a socket.
+ </action>
+ <action issue="NET-237" dev="sebb" type="add">
+ Add streaming methods (corresponding to array methods) to NNTPClient.
+ </action>
+ <action issue="NET-365" dev="sebb" type="fix">
+ FTPClient.listFiles() does not work properly, if remote server speaks German.
+ Match non-space{3} instead of A-Za-z{3}
+ </action>
+ <action issue="NET-366" dev="sebb" type="fix">
+ FTPClientConfig: setServerLanguageCode and setShortMonthNames do not work.
+ Ensure that config is passed to all parsers that can use it.
+ </action>
+ <action issue="NET-276" dev="sebb" type="fix">
+ NNTPClient has problems with group listings for large groups.
+ </action>
+ <action issue="NET-185" dev="sebb" type="fix">
+ Possible NPE in Threader.java
+ </action>
+ <action issue="NET-364" dev="sebb" type="fix">
+ nntp.Article is very inefficient and incorrect.
+ </action>
+ <action issue="NET-314" dev="sebb" type="add" due-to="Bogdan Drozdowski" due-to-email="bogdandr # op . pl">
+ The FTP client should autodetect the control encoding.
+ </action>
+ <action issue="NET-363" dev="sebb" type="fix" due-to="daniel damon">
+ Can't connect to a server behind firewall in passive mode.
+ </action>
+ <action issue="NET-348" dev="sebb" type="fix">
+ Queue is full TelnetInputStream.
+ </action>
+ <action issue="NET-361" dev="sebb" type="add">
+ Implement Telnet Command sender.
+ </action>
+ <action issue="NET-345" dev="sebb" type="fix" due-to="Archie Cobbs">
+ Telnet client: not properly handling IAC bytes within subnegotiation messages:
+ - failing to double IACs on output
+ - failing to de-double IACs in input
+ </action>
+ <action issue="NET-343" dev="sebb" type="add" due-to="Archie Cobbs">
+ Telnet client: Support Client-initiated Subnegotiation Messages.
+ </action>
+ <action issue="NET-344" dev="sebb" type="add" due-to="Archie Cobbs">
+ Telnet client: Support Listener Notification of Incoming Data.
+ </action>
+ <action issue="NET-270" dev="sebb" type="fix">
+ Incorrect error handling in method initiateListParsing of FTPClient.
+ </action>
+ <action issue="NET-352" dev="sebb" type="add" due-to="Bogdan Drozdowski" due-to-email="bogdandr # op . pl">
+ SASL PLAIN and CRAM-MD5 authentication.
+ </action>
+ <action issue="NET-357" dev="sebb" type="add" due-to="Bogdan Drozdowski" due-to-email="bogdandr # op . pl">
+ The POP3 client does not support SSL/TLS connections.
+ </action>
+ <action dev="sebb" type="remove">
+ Removed deprecated unused fields from FTPSClient:
+ - KEYSTORE_ALGORITHM, PROVIDER, STORE_TYPE, TRUSTSTORE_ALGORITHM
+ </action>
+ <action issue="NET-258" dev="sebb" type="fix">
+ Implement A Keepalive Mechanism. Control channel keepalive implemented for the following methods:
+ appendFile, storeFile, storeUniqueFile, retrieveFile.
+ </action>
+ <action issue="NET-289" dev="sebb" type="fix" due-to="Luc Claes">
+ StackOverflowError in Threader.
+ </action>
+ <action issue="NET-317" dev="sebb" type="fix">
+ POP3MessageInfo fields should be final.
+ </action>
+ <action issue="NET-252" dev="sebb" type="fix">
+ Get rid of using deprecated API in VMSFTPEntryParser.
+ </action>
+ <action issue="NET-330" dev="sebb" type="remove">
+ The method VMSFTPEntryParser.parseFileList(InputStream listStream) should not be present.
+ </action>
+ <action issue="NET-303" dev="sebb" type="fix">
+ FTPFileEntryParser API samples are wrong.
+ </action>
+ <action issue="NET-229" dev="sebb" type="add">
+ Use properties file (/systemType.properties) to handle new OS-type auto-detection.
+ </action>
+ <action issue="NET-332" dev="sebb" type="add">
+ Commons net ftp cannot handle unknown type parser and should allow override of parser through vm argument.
+ The system property "org.apache.commons.net.ftp.systemType" can be used to provide the system type.
+ </action>
+ <action issue="NET-286" dev="sebb" type="fix">
+ Unhandled SecurityException in DefaultFTPFileEntryParserFactory.createFileEntryParser when using applets.
+ </action>
+ <action issue="NET-360" dev="sebb" type="fix">
+ DefaultFTPFileEntryParserFactory.createFileEntryParser(String key) always tries to load a class.
+ </action>
+ <action issue="NET-156" dev="sebb" type="add">
+ New FTPClient method to retrieve all directory names in the current working directory.
+ Added methods listDirectories(), listDirectories(String path).
+ </action>
+ <action issue="NET-353" dev="sebb" type="add" due-to="Bogdan Drozdowski" due-to-email="bogdandr # op . pl">
+ The SMTPClient does not support authentication.
+ </action>
+ <action issue="NET-356" dev="sebb" type="add" due-to="Bogdan Drozdowski" due-to-email="bogdandr # op . pl">
+ The SMTP client does not support SSL/TLS connections.
+ </action>
+ <action issue="NET-358" dev="sebb" type="add">
+ Implement copy Listener in FTPClient file operations.
+ </action>
+ <action issue="NET-359" dev="sebb" type="fix">
+ CopyStreamAdapter unconditionally resets the CopyStreamEvent source and is inefficient.
+ </action>
+ <action issue="NET-355" dev="sebb" type="fix">
+ examples.nntp.NNTPUtils does not compile
+ </action>
+ <action issue="NET-351" dev="sebb" type="add" due-to="Bogdan Drozdowski" due-to-email="bogdandr # op . pl">
+ APOP authentication fails most of the time.
+ Fix by adding leading 0 if necessary.
+ </action>
+ </release>
+ <release version="2.2" date="Nov 22, 2010"
+ description="
+This is primarily a maintenance release, but it also includes new features and enhancements.
+
+ Users of version 2.0 are encouraged to upgrade to 2.2, as this release includes some important bug fixes.
+
+ See the detailed list of changes below for full description of all bug fixes and enhancements.
+
+">
+ <action issue="NET-334" dev="sebb" type="fix">
+ FromNetASCIIInputStream can throw a NullPointerException
+ </action>
+ <action issue="NET-341" dev="sebb" type="fix">
+ FTPClient.remoteAppend(String filename) uses STOR instead of APPE
+ </action>
+ <action issue="NET-339" dev="sebb" type="fix">
+ Incorrect parsing of timestamp on Windows CE
+ Fix parsing to allow for new-style DOS listing using 24hr clock rather than AM/PM
+ </action>
+ <action issue="NET-338" dev="sebb" type="add">
+ ftp.FTPClient.initiateListParsing(String parserKey, String pathname)
+ can call createFileEntryParser with null systemName.
+ Fix this by adding getSystemType() which does not return null, and deprecating getSystemName().
+ </action>
+ <action issue="NET-244" dev="sebb" type="add">
+ Add support for FTPFileFilter filters. New classes FTPFileFilter, FTPFileFilters, new methods:
+ FTPListParseEngine#getFiles(FTPFileFilter filter)
+ FTPClient.listFiles(String pathname, FTPFileFilter filter)
+ </action>
+ <action issue="NET-313" dev="sebb" type="fix">
+ Optionally enable EPSV with IPv4; Only send EPRT with IPv6.
+ Fix incorrect port used with EPRT. Allow activeMaxPort == activeMinPort in getActivePort() method.
+ </action>
+ <action issue="NET-328" dev="sebb" type="fix">
+ FromNetASCIIInputStream.read(byte[], int, int) may change length passed to superclass if not doing conversion
+ </action>
+ <action issue="NET-74" dev="sebb" type="add">
+ Testcase to show WindowSizeOptionHandler is working OK
+ </action>
+ <action issue="NET-330" dev="sebb" type="fix">
+ The method VMSFTPEntryParser.parseFileList(InputStream listStream) should not be present.
+ Partial fix - marked method as deprecated and to be removed
+ </action>
+ <action issue="NET-180" dev="sebb" type="fix">
+ Telnet EOR is "consumed" by TelnetInputStream when in BINARY transmission.
+ Send notification to TelnetNotificationHandler.
+ </action>
+ <action issue="NET-329" dev="sebb" type="fix">
+ TelnetInoutStream#__read() bug in the __receiveState handling for the _STATE_IAC state.
+ </action>
+ <action issue="NET-283" dev="sebb" type="fix">
+ SocketClient should ensure input and output streams are closed
+ </action>
+ <action issue="NET-302" dev="sebb" type="fix">
+ FTP: initiateListParsing should not cache entryParser
+ </action>
+ <action issue="NET-282" dev="rwinston" type="fix">
+ Improvement to isInRange method in SubnetUtil.SubnetInfo class
+ </action>
+ <action issue="NET-266" dev="rwinston" type="fix">
+ FTPClient.listFiles() corrupts file name in certain circumstances
+ </action>
+ <action issue="NET-264" dev="sebb" type="fix">
+ Telnet spyStream NullPointerException
+ </action>
+ <action dev="sebb" type="update">
+ Deprecated the following unused fields from org.apache.commons.net.ftp.FTPSClient:
+ KEYSTORE_ALGORITHM, PROVIDER, STORE_TYPE, TRUSTSTORE_ALGORITHM
+ </action>
+ <action dev="niallp" type="fix">
+ Fix site reports
+ </action>
+ <action issue="NET-285" dev="rwinston" type="fix">
+ Add support for setting external host ip/port range
+ </action>
+ <action issue="NET-290" dev="rwinston" type="fix">
+ Add fix and testcase for DotTerminatedMessageReader
+ </action>
+ <action issue="NET-288" dev="rwinston" type="fix">
+ Add support for IPv6 EPRT/EPSV
+ </action>
+ <action issue="NET-305" dev="rwinston" type="fix">
+ Fix SubnetUtils for /32 subnets and add inclusive host count flag
+ </action>
+ <action issue="NET-300" dev="rwinston" type="fix">
+ Fix NPE when listHiddenFiles was on
+ </action>
+ <action issue="NET-215" dev="rwinston" type="fix">
+ UNIXFTPEntryParser didn't preserve trailing whitespace in files
+ </action>
+ <action issue="NET-236" dev="rwinston" type="fix">
+ method SubnetUtils.SubnetInfo.isInRange(addr) returns incorrect result
+ </action>
+ <action issue="NET-242" dev="rwinston" type="fix">
+ Method createServerSocket of FTPSSocketFactory never called and thus UseClientMode is incorrect in a secured ftp transfer
+ using active mode.
+ </action>
+ <action issue="NET-248" dev="rwinston" type="fix">
+ Fix inconsistent command list in FTPCommand
+ </action>
+ <action issue="NET-250" dev="rwinston" type="fix">
+ DefaultFTPFileEntryParserFactory did not work with Netware FTP server returning "NETWARE TYPE: L8"
+ </action>
+ <action issue="NET-257" dev="rwinston" type="fix">
+ FTP.getReplyStrings() returned array of null Strings
+ </action>
+ <action issue="NET-259" dev="rwinston" type="fix">
+ UnixFTPEntryParser regex did not match some directory entries
+ </action>
+ <action issue="NET-260" dev="rwinston" type="fix">
+ SubnetUtils.SubnetInfo.isInRange(...) returned incorrect values
+ </action>
+ <action issue="NET-261" dev="rwinston" type="update">
+ SubnetUtils.SubnetInfo.isInRange(...) behavior not documented
+ </action>
+ <action issue="NET-262" dev="rwinston" type="fix">
+ SubnetUtils did not handle /31 and /32 CIDRs well
+ </action>
+ <action issue="NET-265" dev="rwinston" type="fix">
+ UnixFTPEntryParser failed to parse entry in certain conditions
+ </action>
+ <action issue="NET-266" dev="rwinston" type="fix">
+ FTPClient.listFiles() corrupted file name in certain circumstances
+ </action>
+ <action issue="NET-251" dev="rwinston" type="update">
+ Moved class "ThreadContainer" from Threader.java into its own source file
+ </action>
+ <action issue="NET-256" dev="rwinston" type="fix">
+ FTPSClient should accept a pre-configured SSLContext
+ </action>
+ <action issue="NET-263" dev="rwinston" type="add">
+ SubnetUtils / SubNetInfo toString() implementations
+ </action>
+ <action dev="rwinston" type="fix">
+ Improve NNTPClient handling of invalid articles
+ </action>
+ <action dev="rwinston" type="update">
+ Refactor examples package.
+ </action>
+ <action dev="sebb" type="add">
+ Javadoc fixes, improvements, and refactoring.
+ </action>
+ <action issue="NET-245" dev="rwinston" type="fix">
+ Apply MFMT patch
+ </action>
+ <action issue="NET-279" dev="rwinston" type="fix">
+ Fix copying of reply lines collection
+ </action>
+ <action issue="NET-277" dev="rwinston" type="fix">
+ Fix incorrect NNTP constant
+ </action>
+ <action issue="NET-274" dev="rwinston" type="fix">
+ Restore socket state after CCC command
+ </action>
+ <action issue="NET-275" dev="rwinston" type="fix">
+ Example code in FTPClient doesn't compile
+ </action>
+ <action dev="rwinston" type="fix">
+ Fix inconsistent handling of socket read/write buffer size
+ </action>
+ <action issue="NET-294" dev="sebb" type="fix">
+ UnixFTPEntryParser fails to parse some entries
+ </action>
+ </release>
+
+ <release version="2.1" description="Not released" />
+
+ <release version="2.0" date="October 20, 2008" description="Java 5.0 release">
+ <action dev="rwinston" type="fix" issue="NET-307">
+ One of the "connect" method in class org.apache.commons.net.SocketClient doesn't handle connection timeout properly
+ </action>
+ <action dev="rwinston" type="update">
+ Add null check in TelnetClient::disconnect().
+ </action>
+ <action dev="rwinston" type="remove">
+ Remove deprecated FTPFileIterator and FTPFileList classes.
+ </action>
+ <action dev="rwinston" type="add">
+ Add connection timeout functionality to SocketClient.
+ </action>
+ <action dev="rwinston" type="update">
+ Make the KeyManager and TrustManager settable (niklas@protocol7.com).
+ </action>
+ <action dev="rwinston" type="update">
+ Patch FTPSClient to set default SSLServerSocketFactory. Thanks niklas@protocol7.com
+ </action>
+ <action dev="rwinston" type="fix" issue="NET-68">
+ Patch to prevent TFTPClient dropping last packet. Thanks palm@poplarware.com
+ </action>
+ <action dev="rwinston" type="update">
+ Change isConnected() method to delegate to underlying socket connection.
+ </action>
+ <action dev="rwinston" type="add">
+ FTPS (TLS and SSL) is now supported. Thanks to Jose Juan Montiel, Paul Ferraro, and Satoshi Ishigami.
+ </action>
+ <action dev="rwinston" type="update">
+ Commons::Net now uses Maven 2. The project.xml has been replaced with a pom.xml, and the source tree layout
+ has been changed accordingly.
+ </action>
+ <action dev="rwinston" type="remove">
+ Removed old ftp2 proposal directories.
+ </action>
+ <action dev="rwinston" type="update">
+ Commons::Net now uses JDK regex functionality, saving on an extra [oro] dependency. There are now
+ no external dependencies required.
+ </action>
+ <action dev="rwinston" type="fix">
+ Various syntactic issues (FindBugs issues, JDK 5.0 generics support)
+ </action>
+ <action dev="dfs" type="fix">
+ Applied Rob Hasselbaum's
+ rhasselbaum -> alumni.ithaca.edu
+ patch for PR 38688 fixing a
+ TelnetInputStream hang.
+ </action>
+ <action dev="dfs" type="update">
+ Exposed control connection of FTP
+ class via _controlInput_ and _controlOutput_
+ protected member variables in response
+ to PR 38309 reported by
+ josejuan.montiel@gmail.com.
+ </action>
+ <action dev="dfs" type="fix">
+ Reverted PR 32859 patch to TFTPClient
+ because it caused final packets to not
+ be sent.
+ </action>
+ <action dev="rwinston" type="update" issue="NET-36">
+ Make FTPClient extend SocketClient instead of TelnetClient. From jhindsley@providerlink.com
+ </action>
+ <action dev="rwinston" type="fix" issue="NET-39">
+ Adds an "e" symbolic link flag to the Unix FTP parser. From denisgaebler@netscape.net
+ </action>
+ <action dev="rwinston" type="fix" issue="NET-119">
+ Allow hidden files to be listed. Thanks to mario@ops.co.at
+ </action>
+ <action dev="rwinston" type="update">
+ Remove reflective check for Socket::isConnected() (no longer needed)
+ </action>
+ <action dev="rwinston" type="add" issue="NET-136">
+ Added WindowSizeOptionHandler for TelnetClient. Thanks to yuvalkashtan@gmail.com
+ </action>
+ <action dev="rwinston" type="update">
+ Refactored *Client classes under net/ package into separate subpackages, and move PrintCommandListener
+ out of the examples/ package.
+ </action>
+ <action dev="rwinston" type="add">
+ Added an ant target to the Maven build to generate an FTP-only jar file, for clients who
+ wish to use only FTP-based functionality.
+ </action>
+ <action dev="rwinston" type="update">
+ Custom SocketFactory interface has been replaced with the JDK SocketFactory implementation. Added
+ ServerSocketFactory instance to SocketClient.
+ </action>
+ <action dev="rwinston" type="update">
+ Removed redundant FTP.IMAGE_FILE_TYPE flag.
+ </action>
+ <action dev="rwinston" type="update">
+ Added heavily updated MVSFTPEntryParser from henrik.sorensen@balcab.ch
+ </action>
+ <action dev="rwinston" type="remove">
+ Removed deprecated classes FTPFileListParser, FTPFileListParserImpl, and DefaultFTPFileListParser. Also
+ removed associated deprecated methods from FTPClient.
+ </action>
+ <action dev="rwinston" type="fix" issue="NET-164">
+ Added encoding to FingerClient. From Ulrich Mayring.
+ </action>
+ <action dev="rwinston" type="fix" issue="NET-24">
+ Catch BindException in RCommandClient::connect().
+ </action>
+ <action dev="rwinston" type="fix" issue="NET-178">
+ Add encoding specifier to SMTPClient.
+ </action>
+ <action dev="rwinston" type="add">
+ Add setters for socket send/receive buffer size to SocketClient.
+ </action>
+ <action dev="rwinston" type="fix" issue="NET-177">
+ Fix PASV specifiers that broke previously. From Chris Eagle.
+ </action>
+ <action dev="rwinston" type="fix" issue="NET-182">
+ Catch NPE in FTP parser factory method.
+ </action>
+ <action dev="rwinston" type="fix" issue="NET-172">
+ Don't bind a UDP socket to NTP protocol port.
+ </action>
+ <action dev="rwinston" type="fix">
+ Better handling of user and group names with embedded spaces in FTP listings.
+ </action>
+ <action dev="rwinston" type="fix" issue="NET-173">
+ Add configurable multiline parsing.
+ </action>
+ <action dev="rwinston" type="fix" issue="NET-188">
+ Add fix for broken leap year date parsing.
+ </action>
+ <action dev="rwinston" type="add">
+ Add SubnetUtils class (suggested by Kenny McLeod)
+ </action>
+ <action dev="rwinston" type="fix" issue="NET-169">
+ Add Unix-type handling for UNKNOWN Type: L8 syst() message systems.
+ </action>
+ <action dev="rwinston" type="fix" issue="NET-198">
+ Allow FTPTimestampParserImpl to take a predefined Calendar instance representing current time.
+ </action>
+ <action dev="sebb" type="fix" issue="NET-194">
+ Replace Exception with IOException
+ </action>
+ <action dev="sebb" type="update" issue="NET-214">
+ VMS file permission parsing
+ </action>
+ <action dev="sebb" type="fix" issue="NET-208">
+ TelnetInputStream swallows interruptedexception as IOException
+ </action>
+ <action dev="sebb" type="fix" issue="NET-223">
+ the data connection socket is not closed when an IOException occurred
+ </action>
+ <action dev="sebb" type="fix" issue="NET-230">
+ ParserInitializationException when connecting to a Unix FTP server: comparison string must be upper case
+ </action>
+ <action dev="sebb" type="fix" issue="NET-225">
+ FTPFileEntryParserImpl.preParse() doesn't remove unparsable entries at the end of the file list
+ </action>
+ </release>
+
+
+ <!-- 1.5.0 has not yet been released, so comment out the section until it is ready for release -->
+ <!-- <release version="1.5.0" date="" description=""> <action dev="dfs" type="fix" issue="NET-3"> TelnetInputStream.java:
+ Applied Rob Hasselbaum's rhasselbaum@alumni.ithaca.edu patch for PR 38688 fixing a TelnetInputStream hang. </action> <action
+ dev="rwinston" type="fix" issue="NET-73"> TelnetInputStream.java: Fixing another potential deadlock for telnet and FTP (patch
+ courtesy Rob Hasselbaum). </action> <action dev="dfs" type="update" issue="NET-57"> FTP.java: Exposed control connection
+ of FTP class via _controlInput_ and _controlOutput_ protected member variables in response to PR 38309 reported by josejuan.montiel@gmail.com.
+ </action> <action dev="rwinston" type="fix" issue="NET-68"> TFTPClient.java: Fix bug causing final packets to not be sent.
+ </action> <action dev="rwinston" type="fix" issue="NET-161"> TFTPClient.java: Fix sendFile() (related to NET-68). </action>
+ <action dev="rwinston" type="fix" issue="NET-181"> TFTPClient.java: block number wraparound. </action> <action dev="scohen"
+ type="fix" issue="NET-16"> UNIXFTPEntryParser.java: support for group names with spaces (patch courtesy D. Kilzer). </action>
+ <action dev="scohen" type="fix" issue="NET-62"> DefaultFTPFileEntryParserFactory.java: Wrap NoClassDefFoundError in FTP parser
+ exception when ORO is not available. </action> <action dev="rwinston" type="add" issue="NET-33"> FTPClient.java: Fix closing
+ FTP ServerSocket after timeout </action> <action dev="rwinston" type="add"> FTPClientConfig.java: Added an FTP parser for
+ Netware FTP servers. Tested on Novell Netware 6.5. </action> <action dev="rwinston" type="fix" issue="NET-188"> FTPTimestampParserImpl.java:
+ Fix leap year date parsing bug. </action> <action dev="rwinston" type="fix"> Article.java: Fix minor issues with NNTP parsing.
+ </action> </release> -->
+
+
+ <release version="1.4.1" date="December 3, 2005" description="fix release to restore jdk 1.3 compatability">
+ <action dev="scohen" type="fix">
+ Applied patches for defect 37113. Code incompatible with jdk 1.3. Original patch submitted by Andrea Rombald
+ </action>
+ <action dev="scohen" type="fix">
+ Applied patches for defect 37522. updated project.xml to correct compatibility level.
+ </action>
+ </release>
+
+ <release version="1.4.0" date="May 7, 2005" description="Some additions and enhancements">
+ <action dev="dfs" type="fix">
+ Fixed typo in method name.
+ FTP.removeCommandListener() was missing
+ the L. Problem reported by
+ Per.Lindberger@linkon.se.
+ </action>
+ <action dev="rwinston" type="fix">
+ Applied fix for PR 33942 and PR 31793. Original patch submitted by mario@ops.co.at
+ </action>
+ <action dev="rwinston" type="fix">
+ TFTPClient was ignoring final ACK (PR 32859). Thanks to perttu.auramo@ekahau.com
+ </action>
+ <action dev="rwinston" type="fix">
+ Applied fix for ACL parsing in the FTP client (PR 33972). Submitted by robertalasch@yahoo.com
+ </action>
+ <action dev="rwinston" type="fix">
+ Added missing NTP/SNTP unit tests to the codebase.
+ </action>
+ <action dev="dfs" type="fix">
+ Applied fix for POP3Client returning empty reply strings (PR 34133). Thanks to sammy_c@lineone.net
+ </action>
+ <action dev="rwinston" type="fix">
+ NTP port parameter was being ignored (PR 34219). Fixed by felix.eichhorn@3soft.de
+ </action>
+ <action dev="scohen" type="add">
+ An FTP parser for MVS was added. Submitted by wnoto@openfinance.com
+ </action>
+ <action dev="scohen" type="add">
+ Added functionality for extensible parsing of FTP responses, using a configurable format string. This should enable the
+ FTP client to operate across many different locales and date formats.
+ </action>
+ </release>
+
+ <release version="1.3.0" date="December 15, 2004" description="many fixes and enhancements">
+ <action dev="rwinston" type="fix">
+ Applied patch for PR 31793. Thanks to mario@ops.co.at
+ </action>
+ <action dev="rwinston" type="add">
+ Added message threading functionality to the NNTP client.
+ </action>
+ <action dev="rwinston" type="update">
+ Added return code 521 to FTPReply.java - this should obviate the need for the Ant FTP task to manually declare it.
+ </action>
+ <action dev="rwinston" type="fix">
+ Add explicit notify() in TelnetInputStream::read(), so available() returns an accurate value. Thanks to
+ tpalkot@gmail.com.
+ </action>
+ <action dev="rwinston" type="add">
+ Added SNTP/NTP components into the Commons-Net codebase, courtesy of
+ Jason Matthews.
+ </action>
+ <action dev="rwinston" type="add">
+ Added POP3 test suite, courtesy of Mike George mike.george@comcast.net.
+ </action>
+ <action dev="scohen" type="fix">
+ Applied fix for FTPClient returning null for certain timestamp formats (BUG #30737)
+ </action>
+ <action dev="rwinston" type="fix">
+ Build.xml fixes - dont include example classes in redistributable
+ .jar, remove test dependency from javadoc target, and exclude private members from generated javadoc.
+ </action>
+ <action dev="rwinston" type="fix">
+ Fixed bug in TFTPClient::setMaxTimeout(), spotted by steve@widge.net
+ </action>
+ <action dev="dfs" type="fix">
+ Some changes to facilitate compilation under JDK 5.0
+ </action>
+ <action dev="rwinston" type="fix">
+ Return correct NNTP article count when high and low watermarks are 0.
+ Spotted by jmordax@terra.es
+ </action>
+ <action dev="rwinston" type="fix">
+ Remove trailing null byte in TFTP packets. Thanks to gerard.dens@alcatel.be
+ </action>
+ <action dev="dfs" type="fix">
+ Many javadoc fixes.
+ </action>
+ <action dev="rwinston" type="update">
+ Allow FTPClient to set transfer buffer size.
+ </action>
+ <action dev="rwinston" type="update">
+ Ensure consistent handling of encoding throughout FTPClient
+ operations. Patch submitted by leif@tanukisoftware.com.
+ </action>
+ <action dev="dfs" type="fix">
+ Fix TelnetClient zombie thread issue
+ </action>
+
+
+ </release>
+ <release version="1.3.0-dev" date="July 28, 2004" description="regression fix">
+ <action dev="dfs" type="fix">
+ Fixed regression from migration to new parsers. Most of the
+ new parsers parsed the file size as an integer instead of a
+ long. Changed all of them to set the size to long. This
+ problem was detected by the reporter of:
+ https://issues.apache.org/bugzilla/show_bug.cgi?id=30345
+ </action>
+ </release>
+ <release version="1.2.2" date="June 25, 2004" description="fix release">
+ <action dev="scohen" type="fix">
+ fixed bug in the way FTPClient.listFiles worked when a directory was not
+ specified. Current directory was not being 'remembered'. This was most
+ problematic in the dependent ftp task of Ant.
+ </action>
+ <action dev="scohen" type="fix">
+ fixed handling of certain unusual "special" file types in the Unix parser.
+ </action>
+ </release>
+
+ <release version="1.2.1" date="May 6, 2004" description="fix release">
+ <action dev="scohen" type="fix">
+ changed code that rendered package uncompilable under JDK 1.2
+ </action>
+ </release>
+
+ <release version="1.2.0" date="April 30, 2004" description="autodetection of system for listings">
+ <action dev="scohen" type="fix">
+ Mario Ivankovits mario@ops.co.at added
+ functionality supporting correct handling of the "dirstyle"
+ attribute of NT and OS400 servers that allows them to mimic Unix ftp servers.
+ and a bug fix affecting handling of sticky and suid bits on Unix FTP servers.
+ </action>
+ <action dev="scohen" type="add">
+ Mario Ivankovits mario@ops.co.at added parser for OS400.
+ </action>
+ <action dev="jbrekke,scohen" type="fix">
+ Added a functional junit test testing list parsing against real servers
+ and fix several bugs found through this test.
+ </action>
+ <action dev="dfs" type="add">
+ Ted Wise ctwise@bellsouth.net provided a
+ patch to add the XHDR extended NNTP command.
+ </action>
+ <action dev="scohen,dfs" type="update">
+ Deprecated FTPFileListParser interface, DefaultFTPFileListParser
+ class, and the FTPClient.listFiles methods that accepted an
+ FTPFileListParser parameter. These deprecated classes and methods
+ will be removed in version 2.0.
+ </action>
+ <action dev="scohen" type="add">
+ Added org.apache.commons.net.parser.FTPFileEntryParserFactory
+ interface and a default implementation:
+ DefaultFTPFileEntryParserFactory. This addition facilitates the
+ autodetection of which FTPFileEntryParser to use to generate
+ listings. FTPClient.listFiles methods were added that implement
+ autodetection.
+ </action>
+ </release>
+
+ <!-- Not yet released; probably never will be <release version="1.1.1" date="TBD" description="last jdk1.1 compatible
+ release"> <action dev="scohen" type="fix"> Removed all JDK 1.1 incompatibilities that had been introduced unintentionally
+ in previous versions. Release 1.1.1 is the last JDK 1.1 compatible release. Any future 1.1.x maintenance releases will remain
+ JDK !.1 compatible, but version 1.2 may break compatibility and will be guaranteed to work with only J2SE 1.2 and later.
+ </action> </release> -->
+ <release version="1.1.0" date="October 23, 2003" description="many enhancements and bug fixes">
+ <action dev="dfs" type="add">
+ Rory Winston Rory.Winston@telewest.co.uk provided
+ patches to add the following extended NNTP commands to
+ NNTPClient: XOVER, AUTHINFO USER, AUTHINFO PASS, and
+ LIST ACTIVE.
+ </action>
+ <action dev="dfs" type="fix">
+ Changed connection hooks for FTP, SMTP, POP3, and NNTP classes
+ to force use of an 8-bit US-ASCII superset (ISO-8859-1) for
+ protocol communication. This was necessary because
+ InputStreamReader and OutputStreamWriter use the default
+ client-side character set encoding. fasselin@ca.ibm.com
+ reported failure of SMTP on OS/390 which has EBCDIC as the
+ native character set.
+ </action>
+
+ <action dev="dfs" type="fix">
+ Applied variation of fix suggested by Matthieu Recouly
+ matthieu.recouly@laposte.net so that
+ UnixFTPEntryParser may handle listings of the form:
+ "drwxr-xr-x 1 usernameftp 512 Jan 29 23:32 prog"
+ where the space between user name and group is omitted.
+ </action>
+ <action dev="dfs" type="fix">
+ Applied patch from Stephane Este-Gracias
+ sestegra@free.fr that fixes the parsing of
+ VMS listings by VMSFTPEntryParser..
+ </action>
+ <action dev="brekke" type="fix">
+ If the buffer queue run full, the run() method sometimes hangs forever.
+ Changed wait() to wait(100) as with other changes in TelnetInputStream.
+ Fix submitted From: J. Matysiak ( j.matysiak@cenit.de ).
+ </action>
+ <action dev="brekke" type="fix">
+ FTP.smnt(String dir) was not passing on the dir to the SMNT command as an argument.
+ </action>
+ <action dev="brekke" type="add">
+ Added a link to the FAQ currently hosted on the Apache Wiki.
+ </action>
+ <action dev="dfs" type="update">
+ Changed package private NNTP._reader and NNTP._writer member
+ variables to protected NNTP._reader_ and NNTP._writer_
+ variables as suggested by issue report 16995 to facilitate
+ extending NNTPClient functionality in subclasses.
+ </action>
+ <action dev="dfs" type="update">
+ Changed name of FTPClient.__openDataConnection() to
+ FTPClient._openDataConnection_() to remain consistent
+ with the convention in the code that protected members
+ are of the form _foo_. At some point __openDataConnection()
+ had been changed from private to protected.
+ </action>
+ <action dev="brekke" type="add">
+ Added terminal option support to the telnet client with tests.
+ From Bruno D'Avanzo ( b.davanzo@inwind.it ).
+ </action>
+ <action dev="scohen" type="add">
+ New parsers merged with mainline with support for old list parsers.
+ </action>
+ </release>
+
+ <release version="1.0.0" date="February 23, 2003" description="first jakarta-commons release">
+ <action dev="brekke" type="add">
+ Added a migration document for moving from NetComponents to Commons/Net.
+ </action>
+ <action dev="brekke" type="fix">
+ Moved the ftp2 tree with tests to a proposal directory and setup
+ a build for that code. This can grow in this area so users don't
+ think it is production ready.
+ </action>
+ <action dev="dfs" type="fix">
+ Cleaned up license header on some source.
+ </action>
+ <action dev="dfs" type="fix">
+ Moved .io and .util to .net.io and .net.util in preparation for
+ 1.0 release.
+ </action>
+ <action dev="dfs" type="fix">
+ Fixed typo in NNTP.removeProtocolCommandListener() method name. It
+ was missing an L. From: joev@atg.com.
+ </action>
+ <action dev="brekke" type="add">
+ Various site updates including this changes doc and publish
+ date information.
+ </action>
+ <action dev="dfs" type="fix">
+ Patch for restarting FTP file transfers. The offset was not
+ being sent immediately before the data transfer command on
+ account. The bug was apparently introduced in NetComponents
+ when it was decided to always send a PORT command before each data
+ transfer to avoid socket reuse problems on Windows.
+ From: Tapan Karecha ( tapan@india.hp.com ).
+ </action>
+ <action dev="dfs" type="fix">
+ Applied a fix for potential deadlock in TelnetInputStream by
+ changing a wait() to a wait(100).
+ From: Tapan Karecha ( tapan@india.hp.com ).
+ </action>
+ <action dev="dfs" type="update">
+ FTP examples now use passive ftp connections.
+ </action>
+ </release>
+ </body>
+</document>