unetrepl.py 文件源码

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

项目:ulnoiot 作者: ulno 项目源码 文件源码
def start(port=23,key=None,nostop=False): # TODO: take simpler default key as it will be reset
    global _server_socket, netrepl_cfg

    if nostop: # we want to check if it's already running and not restart it
        if _server_socket: # not none
            return # no new intialization _> stop here

    stop()

    if key is None:
        key=netrepl_cfg.key
    if key is None or len(key)==0:
        key=bytearray(32) # empty default key
    elif len(key) == 64:
        key=ubinascii.unhexlify(key)

    netrepl_cfg.key = key

    # will be initialized after connection
    # cc_out = chacha.ChaCha(key, bytearray(8))
    _server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    _server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)

    ai = socket.getaddrinfo("0.0.0.0", port)
    addr = ai[0][4]

    _server_socket.bind(addr)
    _server_socket.listen(1)
    _server_socket.setsockopt(socket.SOL_SOCKET, 20, accept_telnet_connect)

    for i in (network.AP_IF, network.STA_IF):
        wlan = network.WLAN(i)
        if wlan.active():
            print("\nnetrepl: UlnoIOT netrepl server started on {}:{}".format(wlan.ifconfig()[0], port))
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号