• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

MITLibraries / carbon / 172
98%
main: 94%

Build:
Build:
LAST BUILD BRANCH: v3.1.1
DEFAULT BRANCH: main
Ran 21 Sep 2018 06:17PM UTC
Jobs 1
Files 4
Run time 4s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

pending completion
172

Pull #50

travis-ci

web-flow
Support SSL session reuse in FTP client

There are a few problems with OpenSSL and Python's FTPs implementation.
Per RFC 4217, servers can require SSL session reuse between the command
and data channel. The stdlib ftplib module does not support this. In
these cases, OpenSSL provides poor error messaging and all you will
usually see is an Errno 0. Python's ssl module was modified in 3.6 to
support session reuse by allowing an existing session to be passed to an
SSLContext's wrap_socket method. This commit modifies the stdlib's
FTP_TLS class to make use of the new session parameter. See
https://bugs.python.org/issue19500 for background.

The second problem is that the data transfer commands--in our case,
storbinary--destroy (unwrap) the SSL session after completing the
transfer. This is problematic because with the above changes, the
session is also shared with the command channel. The unwrap call seems
to only really be necessary (I think) in cases where the underlying
unencrypted socket is going to be reused. This is not the case for us.
Calling quit() on the ftp connection should still cleanly shut down the
connection. This commit also removes the unwrap call. See
https://bugs.python.org/issue10808 for background.
Pull Request #50: Support SSL session reuse in FTP client

19 of 19 new or added lines in 1 file covered. (100.0%)

199 of 204 relevant lines covered (97.55%)

0.98 hits per line

Jobs
ID Job ID Ran Files Coverage
2 172.2 (TOX_ENV=coveralls) 21 Sep 2018 06:17PM UTC 0
97.55
Travis Job 172.2
Source Files on build 172
Detailed source file information is not available for this build.
  • Back to Repo
  • Travis Build #172
  • Pull Request #50
  • PR Base - master (#170)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc