def first_test():
sock = socket.create_connection(('google.com', 443))
incoming = ssl.MemoryBIO()
outgoing = ssl.MemoryBIO()
ctx = ssl.create_default_context()
ssl_obj = ctx.wrap_bio(incoming, outgoing)
try:
ssl_obj.write(b'')
except ssl.SSLWantReadError as err:
print("err", err)
print('ssl_obj', ssl_obj.pending())
print('incoming', incoming.pending)
print('outgoing', outgoing.pending)
# print()
# print(outgoing.read())
data = outgoing.read()
# print("data", data)
sock.send(data)
print('ssl_obj', ssl_obj.pending())
print('incoming', incoming.pending)
print('outgoing', outgoing.pending)
got = sock.recv(10240)
print('sock.recv got', len(got))
incoming.write(got)
# print(incoming.read())
# print(ssl_obj.read())
# print('sock.recv', got)
try:
# ssl_obj.write(got)
ssl_obj.do_handshake()
except ssl.SSLWantReadError as err:
print("err", err)
print('ssl_obj', ssl_obj.pending())
print('incoming', incoming.pending)
print('outgoing', outgoing.pending)
评论列表
文章目录