# Script of FTP using SSL

**URL:** <https://forum.inductiveautomation.com/t/script-of-ftp-using-ssl/62020>\
**Category:** Ignition\
**Tags:** ignition81, vision\
**Created:** [July 18, 2022, 5:45pm UTC](https://forum.inductiveautomation.com/t/script-of-ftp-using-ssl/62020 "2022-07-18T17:45:20Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![mandeep\_gill](https://avatars.discourse-cdn.com/v4/letter/m/919ad9/32.png) [@mandeep\_gill](https://forum.inductiveautomation.com/u/mandeep_gill)\
**Post date:** [July 18, 2022, 5:45pm UTC](https://forum.inductiveautomation.com/t/script-of-ftp-using-ssl/62020/1 "2022-07-18T17:45:20Z")

</div>

Hi Team,  
using ignition vision 8.1.17 and OS windows server 2019. Please let me know if more information is required.

Client want us to use FTP with TLS/SSL encryption.  
 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/f/5/f5a212f4bccb8d386dffb140178bbf91b49449de.png)

after looking at some sample code for python. Following script is written on gateway. But execution of the script gives error on the wrapper.

```auto
		from ftplib import FTP_TLS
		ftps = FTP_TLS('ftptest.server')
		ftps.login('ch\ftpuser', 'pass') # Username, Password
		ftps.prot_p()
		ftp_path = "/" # Notice the forward slashes
		ftps.cwd(ftp_path)
		print str(ftps.pwd())
		ftps.storbinary('STOR ' + filename, file_object)

```

Error which i am currently getting on wrapper log file is:

```auto
INFO | jvm 1 | 2022/07/18 15:46:00 | E [S.S.ScheduledTask] [03:46:00]: Error executing scheduled script: Ignition_Vision/ScheduledScript(name=Report 1, cronExpression=* * * * *, enabled=true). Repeat errors of this type will be logged as 'debug' messages. project=Ignition_Vision
INFO | jvm 1 | 2022/07/18 15:46:00 | com.inductiveautomation.ignition.common.script.JythonExecException: Traceback (most recent call last):
INFO | jvm 1 | 2022/07/18 15:46:00 | File "<Report 1>", line 126, in onScheduledEvent
INFO | jvm 1 | 2022/07/18 15:46:00 | File "C:\Program Files\Inductive Automation\Ignition\user-lib\pylib\ftplib.py", line 653, in login
INFO | jvm 1 | 2022/07/18 15:46:00 | return FTP.login(self, user, passwd, acct)
INFO | jvm 1 | 2022/07/18 15:46:00 | File "C:\Program Files\Inductive Automation\Ignition\user-lib\pylib\ftplib.py", line 393, in login
INFO | jvm 1 | 2022/07/18 15:46:00 | if resp[0] == '3': resp = self.sendcmd('PASS ' + passwd)
INFO | jvm 1 | 2022/07/18 15:46:00 | File "C:\Program Files\Inductive Automation\Ignition\user-lib\pylib\ftplib.py", line 249, in sendcmd
INFO | jvm 1 | 2022/07/18 15:46:00 | return self.getresp()
INFO | jvm 1 | 2022/07/18 15:46:00 | File "C:\Program Files\Inductive Automation\Ignition\user-lib\pylib\ftplib.py", line 224, in getresp
INFO | jvm 1 | 2022/07/18 15:46:00 | raise error_perm, resp
INFO | jvm 1 | 2022/07/18 15:46:00 | ftplib.error_perm: 530 User cannot log in.
INFO | jvm 1 | 2022/07/18 15:46:00 | 
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.PyException.doRaise(PyException.java:211)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.Py.makeException(Py.java:1638)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.Py.makeException(Py.java:1642)
INFO | jvm 1 | 2022/07/18 15:46:00 | at ftplib$py.getresp$17(C:/Program Files/Inductive Automation/Ignition/user-lib/pylib/ftplib.py:225)
INFO | jvm 1 | 2022/07/18 15:46:00 | at ftplib$py.call_function(C:/Program Files/Inductive Automation/Ignition/user-lib/pylib/ftplib.py)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.PyTableCode.call(PyTableCode.java:173)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.PyBaseCode.call(PyBaseCode.java:134)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.PyFunction. __call__ (PyFunction.java:416)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.PyMethod. __call__ (PyMethod.java:126)
INFO | jvm 1 | 2022/07/18 15:46:00 | at ftplib$py.sendcmd$20(C:/Program Files/Inductive Automation/Ignition/user-lib/pylib/ftplib.py:249)
INFO | jvm 1 | 2022/07/18 15:46:00 | at ftplib$py.call_function(C:/Program Files/Inductive Automation/Ignition/user-lib/pylib/ftplib.py)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.PyTableCode.call(PyTableCode.java:173)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.PyBaseCode.call(PyBaseCode.java:150)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.PyFunction. __call__ (PyFunction.java:426)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.PyMethod. __call__ (PyMethod.java:141)
INFO | jvm 1 | 2022/07/18 15:46:00 | at ftplib$py.login$28(C:/Program Files/Inductive Automation/Ignition/user-lib/pylib/ftplib.py:397)
INFO | jvm 1 | 2022/07/18 15:46:00 | at ftplib$py.call_function(C:/Program Files/Inductive Automation/Ignition/user-lib/pylib/ftplib.py)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.PyTableCode.call(PyTableCode.java:173)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.PyBaseCode.call(PyBaseCode.java:187)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.PyFunction. __call__ (PyFunction.java:449)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.PyMethod. __call__ (PyMethod.java:185)
INFO | jvm 1 | 2022/07/18 15:46:00 | at ftplib$py.login$47(C:/Program Files/Inductive Automation/Ignition/user-lib/pylib/ftplib.py:653)
INFO | jvm 1 | 2022/07/18 15:46:00 | at ftplib$py.call_function(C:/Program Files/Inductive Automation/Ignition/user-lib/pylib/ftplib.py)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.PyTableCode.call(PyTableCode.java:173)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.PyBaseCode.call(PyBaseCode.java:306)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.PyBaseCode.call(PyBaseCode.java:158)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.PyFunction. __call__ (PyFunction.java:437)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.PyMethod. __call__ (PyMethod.java:156)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.pycode._pyx94.onScheduledEvent$1(<Report 1>:470)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.pycode._pyx94.call_function(<Report 1>)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.PyTableCode.call(PyTableCode.java:173)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.PyBaseCode.call(PyBaseCode.java:306)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.PyFunction.function ___call__ (PyFunction.java:474)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.PyFunction. __call__ (PyFunction.java:469)
INFO | jvm 1 | 2022/07/18 15:46:00 | at org.python.core.PyFunction. __call__ (PyFunction.java:464)
INFO | jvm 1 | 2022/07/18 15:46:00 | at com.inductiveautomation.ignition.common.script.ScriptManager.runFunction(ScriptManager.java:831)
INFO | jvm 1 | 2022/07/18 15:46:00 | at com.inductiveautomation.ignition.common.script.ScriptManager.runFunction(ScriptManager.java:813)
INFO | jvm 1 | 2022/07/18 15:46:00 | at com.inductiveautomation.ignition.gateway.project.ProjectScriptLifecycle$TrackingProjectScriptManager.runFunction(ProjectScriptLifecycle.java:806)
INFO | jvm 1 | 2022/07/18 15:46:00 | at com.inductiveautomation.ignition.common.script.ScriptManager$ScriptFunctionImpl.invoke(ScriptManager.java:994)
INFO | jvm 1 | 2022/07/18 15:46:00 | at com.inductiveautomation.ignition.gateway.project.ProjectScriptLifecycle$AutoRecompilingScriptFunction.invoke(ProjectScriptLifecycle.java:871)
INFO | jvm 1 | 2022/07/18 15:46:00 | at com.inductiveautomation.ignition.common.script.ScheduledScriptManager$ScheduledScriptTask.run(ScheduledScriptManager.java:173)
INFO | jvm 1 | 2022/07/18 15:46:00 | at com.inductiveautomation.ignition.common.util.ExecutionQueue$PollAndExecute.run(ExecutionQueue.java:239)
INFO | jvm 1 | 2022/07/18 15:46:00 | at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
INFO | jvm 1 | 2022/07/18 15:46:00 | at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
INFO | jvm 1 | 2022/07/18 15:46:00 | at java.base/java.lang.Thread.run(Unknown Source)
INFO | jvm 1 | 2022/07/18 15:46:00 | Caused by: org.python.core.PyException: ftplib.error_perm: 530 User cannot log in.
INFO | jvm 1 | 2022/07/18 15:46:00 | ... 45 common frames omitted

```

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [July 18, 2022, 5:49pm UTC](https://forum.inductiveautomation.com/t/script-of-ftp-using-ssl/62020/2 "2022-07-18T17:49:35Z")

</div>

Try `ch\\ftpuser` as your username, backslash is an escape character and `\f` is an ascii form feed. Or even if that’s a sanitized username you’re still probably feeding it an escaped ascii character instead of a backslash.

---

<div class="post-metadata">

**Author:** ![mandeep\_gill](https://avatars.discourse-cdn.com/v4/letter/m/919ad9/32.png) [@mandeep\_gill](https://forum.inductiveautomation.com/u/mandeep_gill)\
**Post date:** [July 18, 2022, 6:02pm UTC](https://forum.inductiveautomation.com/t/script-of-ftp-using-ssl/62020/3 "2022-07-18T18:02:50Z")

</div>

Thanks for quick Response Kevin. I will try it and let you know the outcome.

---

<div class="post-metadata">

**Author:** ![mandeep\_gill](https://avatars.discourse-cdn.com/v4/letter/m/919ad9/32.png) [@mandeep\_gill](https://forum.inductiveautomation.com/u/mandeep_gill)\
**Post date:** [August 9, 2022, 11:13pm UTC](https://forum.inductiveautomation.com/t/script-of-ftp-using-ssl/62020/4 "2022-08-09T23:13:43Z")

</div>

Hi Kevin,  
Sorry there were few things which we were trying to test the FTP connection going out. Today we able to connect using filezza successfully.  
Ignition is giving me following error

```auto
E [S.S.ScheduledTask] [23:07:21]: Error executing scheduled script: Ignition_Vision/ScheduledScript(name=Report 1, cronExpression=* * * * *, enabled=true). Repeat errors of this type will be logged as 'debug' messages. project=Ignition_Vision
INFO | jvm 1 | 2022/08/10 11:07:21 | com.inductiveautomation.ignition.common.script.JythonExecException: Traceback (most recent call last):
INFO | jvm 1 | 2022/08/10 11:07:21 | File "<Report 1>", line 142, in onScheduledEvent
INFO | jvm 1 | 2022/08/10 11:07:21 | File "C:\Program Files\Inductive Automation\Ignition\user-lib\pylib\ftplib.py", line 743, in storbinary
INFO | jvm 1 | 2022/08/10 11:07:21 | conn = self.transfercmd(cmd, rest)
INFO | jvm 1 | 2022/08/10 11:07:21 | File "C:\Program Files\Inductive Automation\Ignition\user-lib\pylib\ftplib.py", line 376, in transfercmd
INFO | jvm 1 | 2022/08/10 11:07:21 | return self.ntransfercmd(cmd, rest)[0]
INFO | jvm 1 | 2022/08/10 11:07:21 | File "C:\Program Files\Inductive Automation\Ignition\user-lib\pylib\ftplib.py", line 693, in ntransfercmd
INFO | jvm 1 | 2022/08/10 11:07:21 | conn, size = FTP.ntransfercmd(self, cmd, rest)
INFO | jvm 1 | 2022/08/10 11:07:21 | File "C:\Program Files\Inductive Automation\Ignition\user-lib\pylib\ftplib.py", line 335, in ntransfercmd
INFO | jvm 1 | 2022/08/10 11:07:21 | conn = socket.create_connection((host, port), self.timeout)
INFO | jvm 1 | 2022/08/10 11:07:21 | File "C:\Program Files\Inductive Automation\Ignition\user-lib\pylib\_socket.py", line 1576, in create_connection
INFO | jvm 1 | 2022/08/10 11:07:21 | raise err
INFO | jvm 1 | 2022/08/10 11:07:21 | _socket.error: [Errno 10061] Connection refused
INFO | jvm 1 | 2022/08/10 11:07:21 | 
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyException.doRaise(PyException.java:239)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.Py.makeException(Py.java:1638)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.Py.makeException(Py.java:1642)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.Py.makeException(Py.java:1646)
INFO | jvm 1 | 2022/08/10 11:07:21 | at _socket$py.create_connection$133(C:/Program Files/Inductive Automation/Ignition/user-lib/pylib/_socket.py:1578)
INFO | jvm 1 | 2022/08/10 11:07:21 | at _socket$py.call_function(C:/Program Files/Inductive Automation/Ignition/user-lib/pylib/_socket.py)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyTableCode.call(PyTableCode.java:173)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyBaseCode.call(PyBaseCode.java:306)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyBaseCode.call(PyBaseCode.java:141)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyFunction. __call__ (PyFunction.java:426)
INFO | jvm 1 | 2022/08/10 11:07:21 | at ftplib$py.ntransfercmd$26(C:/Program Files/Inductive Automation/Ignition/user-lib/pylib/ftplib.py:372)
INFO | jvm 1 | 2022/08/10 11:07:21 | at ftplib$py.call_function(C:/Program Files/Inductive Automation/Ignition/user-lib/pylib/ftplib.py)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyTableCode.call(PyTableCode.java:173)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyBaseCode.call(PyBaseCode.java:168)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyFunction. __call__ (PyFunction.java:437)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyMethod. __call__ (PyMethod.java:169)
INFO | jvm 1 | 2022/08/10 11:07:21 | at ftplib$py.ntransfercmd$51(C:/Program Files/Inductive Automation/Ignition/user-lib/pylib/ftplib.py:697)
INFO | jvm 1 | 2022/08/10 11:07:21 | at ftplib$py.call_function(C:/Program Files/Inductive Automation/Ignition/user-lib/pylib/ftplib.py)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyTableCode.call(PyTableCode.java:173)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyBaseCode.call(PyBaseCode.java:168)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyFunction. __call__ (PyFunction.java:437)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyMethod. __call__ (PyMethod.java:156)
INFO | jvm 1 | 2022/08/10 11:07:21 | at ftplib$py.transfercmd$27(C:/Program Files/Inductive Automation/Ignition/user-lib/pylib/ftplib.py:376)
INFO | jvm 1 | 2022/08/10 11:07:21 | at ftplib$py.call_function(C:/Program Files/Inductive Automation/Ignition/user-lib/pylib/ftplib.py)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyTableCode.call(PyTableCode.java:173)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyBaseCode.call(PyBaseCode.java:168)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyFunction. __call__ (PyFunction.java:437)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyMethod. __call__ (PyMethod.java:156)
INFO | jvm 1 | 2022/08/10 11:07:21 | at ftplib$py.storbinary$54(C:/Program Files/Inductive Automation/Ignition/user-lib/pylib/ftplib.py:755)
INFO | jvm 1 | 2022/08/10 11:07:21 | at ftplib$py.call_function(C:/Program Files/Inductive Automation/Ignition/user-lib/pylib/ftplib.py)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyTableCode.call(PyTableCode.java:173)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyBaseCode.call(PyBaseCode.java:306)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyBaseCode.call(PyBaseCode.java:158)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyFunction. __call__ (PyFunction.java:437)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyMethod. __call__ (PyMethod.java:156)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.pycode._pyx313.onScheduledEvent$1(<Report 1>:454)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.pycode._pyx313.call_function(<Report 1>)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyTableCode.call(PyTableCode.java:173)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyBaseCode.call(PyBaseCode.java:306)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyFunction.function ___call__ (PyFunction.java:474)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyFunction. __call__ (PyFunction.java:469)
INFO | jvm 1 | 2022/08/10 11:07:21 | at org.python.core.PyFunction. __call__ (PyFunction.java:464)
INFO | jvm 1 | 2022/08/10 11:07:21 | at com.inductiveautomation.ignition.common.script.ScriptManager.runFunction(ScriptManager.java:831)
INFO | jvm 1 | 2022/08/10 11:07:21 | at com.inductiveautomation.ignition.common.script.ScriptManager.runFunction(ScriptManager.java:813)
INFO | jvm 1 | 2022/08/10 11:07:21 | at com.inductiveautomation.ignition.gateway.project.ProjectScriptLifecycle$TrackingProjectScriptManager.runFunction(ProjectScriptLifecycle.java:806)
INFO | jvm 1 | 2022/08/10 11:07:21 | at com.inductiveautomation.ignition.common.script.ScriptManager$ScriptFunctionImpl.invoke(ScriptManager.java:994)
INFO | jvm 1 | 2022/08/10 11:07:21 | at com.inductiveautomation.ignition.gateway.project.ProjectScriptLifecycle$AutoRecompilingScriptFunction.invoke(ProjectScriptLifecycle.java:871)
INFO | jvm 1 | 2022/08/10 11:07:21 | at com.inductiveautomation.ignition.common.script.ScheduledScriptManager$ScheduledScriptTask.run(ScheduledScriptManager.java:173)
INFO | jvm 1 | 2022/08/10 11:07:21 | at com.inductiveautomation.ignition.common.util.ExecutionQueue$PollAndExecute.run(ExecutionQueue.java:239)
INFO | jvm 1 | 2022/08/10 11:07:21 | at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
INFO | jvm 1 | 2022/08/10 11:07:21 | at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
INFO | jvm 1 | 2022/08/10 11:07:21 | at java.base/java.lang.Thread.run(Unknown Source)
INFO | jvm 1 | 2022/08/10 11:07:21 | Caused by: org.python.core.PyException: _socket.error: [Errno 10061] Connection refused
INFO | jvm 1 | 2022/08/10 11:07:21 | ... 52 common frames omitted

```

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [August 9, 2022, 11:37pm UTC](https://forum.inductiveautomation.com/t/script-of-ftp-using-ssl/62020/5 "2022-08-09T23:37:53Z")

</div>

> [@mandeep\_gill](#):
>
> `_socket.error: [Errno 10061] Connection refused`

Check your firewalls? from another FTP client on the same machine? This is a basic networking problem, not a programming issue like before.

---

<div class="post-metadata">

**Author:** ![mandeep\_gill](https://avatars.discourse-cdn.com/v4/letter/m/919ad9/32.png) [@mandeep\_gill](https://forum.inductiveautomation.com/u/mandeep_gill)\
**Post date:** [August 10, 2022, 12:03am UTC](https://forum.inductiveautomation.com/t/script-of-ftp-using-ssl/62020/6 "2022-08-10T00:03:19Z")

</div>

Thanks Kevin, That is what we were thinking.

We have installed Filezilla on same machine it is working fine. Attached is the setting of filezilla

![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/5/3/5344fe9cb6161e147015d25b0f81e88be85303e8.png)

---

<div class="post-metadata">

**Author:** ![mandeep\_gill](https://avatars.discourse-cdn.com/v4/letter/m/919ad9/32.png) [@mandeep\_gill](https://forum.inductiveautomation.com/u/mandeep_gill)\
**Post date:** [September 1, 2022, 11:37pm UTC](https://forum.inductiveautomation.com/t/script-of-ftp-using-ssl/62020/7 "2022-09-01T23:37:25Z")

</div>

This Issue is resloved.  
It was found that port number was getting changed by the end server. so have to add following code to deal with it.

```auto
_old_makepasv = FTP_TLS.makepasv# Get current IP and Port Setting			
		def _new_makepasv(self):
			host,port = _old_makepasv(self)
			print host,port
			host = self.sock.getpeername()[0]
			return host,port
			print host,port
		FTP_TLS.makepasv = _new_makepasv

```
