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

MITLibraries / carbon / 171 / 2
98%
main: 94%

Build:
Build:
LAST BUILD BRANCH: v3.1.1
DEFAULT BRANCH: main
Ran 21 Sep 2018 06:10PM UTC
Files 4
Run time 0s
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

21 Sep 2018 05:48PM UTC coverage: 97.549%. First build
TOX_ENV=coveralls

push

travis-ci

gravesm
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.

199 of 204 relevant lines covered (97.55%)

0.98 hits per line

Source Files on job 171.2 (TOX_ENV=coveralls)
  • Tree
  • List 0
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 171
  • Travis Job 171.2
  • 6fec304d on github
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