Comments (3)
SSLSocket.version()
Return the actual SSL protocol version negotiated by the connection as a string, or None is no secure connection is established. As of this writing, possible return values include "SSLv2", "SSLv3", "TLSv1", "TLSv1.1" and "TLSv1.2". Recent OpenSSL versions may define more return values.
New in version 3.5.
if sys.version_info >= (3, 5):
protocol_version = ssl_sock.version()
else:
protocol_version = SSL_get_version(ssl_sock)
from fopnp.
Oh, neat! The next time I return to these fopnp examples to update them, I'll include this fix.
from fopnp.
Thanks for the report! I'm not sure how soon I'll get the chance to dig in and debug this, but the big question will be whether this depends on the operating system (Mac vs Linux) or whether the struct underlying Python 3.6 is different and my ctypes code β which hand-copies the shape of the C language struct as I read it out of the SSL .h
file in the Python source code β needs to be updated and be different for different versions of Python.
If you're interested in debugging yourself, simply dig into the older .h
files that define the SSL struct, looking for the same fields you can see me naming in my ctypes code. Chances are that the fields changed somewhere between earlier versions of Python 3 and the version Python 3.6 that you're using, and that my module needs an if
statement to select a new list of fields if the Python version is recent enough. Feel free to comment here with further findings as you explore!
from fopnp.
Related Issues (20)
- Code Correction HOT 1
- p.23 The "FAKE" Message Didn't Go Through HOT 1
- Fix for broken ./build.sh (fails), need to add code to the /base/Dockerfile HOT 21
- OSError with big_sender HOT 2
- The box 'ubuntu/vivid64' could not be found HOT 3
- Unused argument in tcp_deadlock.py HOT 4
- SocketServer request_queue_size HOT 1
- docker: Error image fopnp/base:latest not found HOT 4
- Can't generate localhost.pem HOT 2
- chapter06/safe_tls.py does not work with Python 3.6 HOT 4
- opnp / py3 / chapter07 / client.py not work with python3.6
- IN meansοΌ HOT 3
- Vagrant stuck on 'SSH auth method: private key' HOT 3
- how to install it on windows? HOT 1
- Chapter 1 examples no longer work HOT 3
- To recieve data contiuously from tcp barcode scanners HOT 2
- Chapter 6 Certificate no longer accepted in Python 3.7 HOT 7
- chapter 08 memcache not working HOT 5
- Capture 11 app_insecure doesn't start with flask version >2.0.0 HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fopnp.