The FTPClient.__parsePassiveModeReply function expects PASV mode parameters to be enclosed in parenthesis. While this is often the case, it is not a requirement and parsing fails with a StringIndexOutOfBoundsException when PASV mode parameters are not enclosed in parenthesis.
Please refer to RFC 1123 section 4.1.2.6 for more information.
java.util.regex.Pattern
java.util.regex.Matcher
String.split