commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rob Weaver (JIRA)" <>
Subject [jira] Created: (NET-230) ParserInitializationException when connecting to a Unix FTP server
Date Fri, 08 Aug 2008 15:07:44 GMT
ParserInitializationException when connecting to a Unix FTP server

                 Key: NET-230
             Project: Commons Net
          Issue Type: Bug
            Reporter: Rob Weaver
         Attachments: type_l8.patch

Was getting an error when connecting to one of our vendor file servers that was returning
"215 UNKNOWN Type: L8" for a SYST command.

The DefaultFTPFileEntryParserFactory does a toUpperCase on the key, which was then being compared
to the constant SYST_L8.

That constant was "Type: L8", so it could never match.

Here's the patch (also attached as a file):

# This patch file was generated by NetBeans IDE # Following Index: paths are relative to:
C:\Documents and Settings\robw\My Documents\NetBeansProjects\NET_2_0
# This patch can be applied using context Tools: Patch action on respective folder.
# It uses platform neutral UTF-8 encoding and \n newlines.
# Above lines and this line are ignored by the patching process.
Index: src/main/java/org/apache/commons/net/ftp/
--- src/main/java/org/apache/commons/net/ftp/ Base
+++ src/main/java/org/apache/commons/net/ftp/
Locally Modified (Based On LOCAL)
@@ -190,9 +190,12 @@
      * This may happen if the ftpd in question was compiled without system
      * information.
+     * 2008-Aug-07 - Updated to be UPPERCASE so that the check done in
+     * createFileEntryParser will succeed.
+     *
      * @since 1.5
-    public static final String SYST_L8 = "Type: L8";
+    public static final String SYST_L8 = "TYPE: L8";
      * Identifier by which an Netware-based ftp server is known throughout
src/test/java/org/apache/commons/net/ftp/parser/DefaultFTPFileEntryParse Base (BASE)
src/test/java/org/apache/commons/net/ftp/parser/DefaultFTPFileEntryParse Locally Modified (Based On LOCAL) @@ -62,6 +62,14 @@
         parser = factory.createFileEntryParser("OS/400");
         assertTrue(parser instanceof CompositeFileEntryParser);
+        parser = factory.createFileEntryParser("AS/400");
+        assertTrue(parser instanceof CompositeFileEntryParser);
+        // Added test to make sure it handles the Unix systems that
+        // compiled with OS as "UNKNOWN". This test validates that the
+        // check is case-insensitive.
+        parser = factory.createFileEntryParser("UNKNOWN Type: L8");
         try {
             parser =
             fail("Exception should have been thrown.
\"OS2FTPFileEntryParser\" is not a recognized key");

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message