bio.py 文件源码

python
阅读 29 收藏 0 点赞 0 评论 0

项目:uvio 作者: srossross 项目源码 文件源码
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)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号