You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by ng...@apache.org on 2011/05/31 15:29:13 UTC
svn commit: r1129665 - in /mina/ftpserver/trunk/core/src:
main/java/org/apache/ftpserver/command/impl/STAT.java
main/resources/org/apache/ftpserver/message/FtpStatus.properties
test/java/org/apache/ftpserver/clienttests/StatTest.java
Author: ngn
Date: Tue May 31 13:29:13 2011
New Revision: 1129665
URL: http://svn.apache.org/viewvc?rev=1129665&view=rev
Log:
Ensuring that STAT file listings will not return a file listing record on the last line of multi-line replies (FTPSERVER-414)
Modified:
mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/command/impl/STAT.java
mina/ftpserver/trunk/core/src/main/resources/org/apache/ftpserver/message/FtpStatus.properties
mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/StatTest.java
Modified: mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/command/impl/STAT.java
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/command/impl/STAT.java?rev=1129665&r1=1129664&r2=1129665&view=diff
==============================================================================
--- mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/command/impl/STAT.java (original)
+++ mina/ftpserver/trunk/core/src/main/java/org/apache/ftpserver/command/impl/STAT.java Tue May 31 13:29:13 2011
@@ -86,11 +86,10 @@ public class STAT extends AbstractComman
replyCode = FtpReply.REPLY_213_FILE_STATUS;
}
- session
- .write(new LocalizedFileActionFtpReply(
- replyCode,
+ session.write(LocalizedFileActionFtpReply.translate(session, request, context,
+ replyCode, "STAT",
dirList, file));
-
+
} catch (FtpException e) {
session
.write(LocalizedFileActionFtpReply
Modified: mina/ftpserver/trunk/core/src/main/resources/org/apache/ftpserver/message/FtpStatus.properties
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/main/resources/org/apache/ftpserver/message/FtpStatus.properties?rev=1129665&r1=1129664&r2=1129665&view=diff
==============================================================================
--- mina/ftpserver/trunk/core/src/main/resources/org/apache/ftpserver/message/FtpStatus.properties (original)
+++ mina/ftpserver/trunk/core/src/main/resources/org/apache/ftpserver/message/FtpStatus.properties Tue May 31 13:29:13 2011
@@ -232,6 +232,8 @@
213.SIZE={output.msg}
211.STAT=Apache FtpServer\nConnected to {server.ip}\nConnected from {client.ip}\nLogged in as {client.login.name}\nEnd of status.
+212.STAT=\n{output.msg}End of status.
+213.STAT=\n{output.msg}End of status.
450.STAT=Non-existing file
501.STOR=Syntax error in parameters or arguments.
Modified: mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/StatTest.java
URL: http://svn.apache.org/viewvc/mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/StatTest.java?rev=1129665&r1=1129664&r2=1129665&view=diff
==============================================================================
--- mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/StatTest.java (original)
+++ mina/ftpserver/trunk/core/src/test/java/org/apache/ftpserver/clienttests/StatTest.java Tue May 31 13:29:13 2011
@@ -30,7 +30,7 @@ import java.util.regex.Pattern;
*/
public class StatTest extends ClientTestTemplate {
- private static final String PATTERN = "^21\\d[-\\s]-rw-------\\s\\s\\s1\\suser\\sgroup\\s{12}0\\s[A-Za-z0-9\\s]{6}\\s\\d\\d:\\d\\d\\stest\\d.txt$";
+ private static final String PATTERN = "^-rw-------\\s\\s\\s1\\suser\\sgroup\\s{12}0\\s[A-Za-z0-9\\s]{6}\\s\\d\\d:\\d\\d\\stest\\d.txt$";
private static final File TEST_DIR = new File(ROOT_DIR, "test");
private static final File TEST_FILE1 = new File(TEST_DIR, "test1.txt");
@@ -45,9 +45,8 @@ public class StatTest extends ClientTest
assertEquals(212, client.stat(TEST_DIR.getName()));
String[] reply = client.getReplyString().split("\r\n");
-
- assertTrue(reply[0], Pattern.matches(PATTERN, reply[0]));
assertTrue(reply[1], Pattern.matches(PATTERN, reply[1]));
+ assertTrue(reply[2], Pattern.matches(PATTERN, reply[2]));
}
public void testStatFile() throws Exception {
@@ -59,7 +58,7 @@ public class StatTest extends ClientTest
assertEquals(213, client.stat(TEST_DIR.getName() + "/" + TEST_FILE1.getName()));
String[] reply = client.getReplyString().split("\r\n");
- assertTrue(reply[0], Pattern.matches(PATTERN, reply[0]));
+ assertTrue(reply[1], Pattern.matches(PATTERN, reply[1]));
}
public void testStat() throws Exception {