ntp.py 文件源码

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

项目:Mk3-Firmware 作者: emfcamp 项目源码 文件源码
def get_NTP_time():
    NTP_QUERY = bytearray(48)
    NTP_QUERY[0] = 0x1b
    addr = socket.getaddrinfo(NTP_HOST, NTP_PORT)[0][-1]
    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    s.sendto(NTP_QUERY, addr)

    # Setting timeout for receiving data. Because we're using UDP,
    # there's no need for a timeout on send.
    s.settimeout(2)
    msg = None
    try:
        msg = s.recv(48)
    except OSError:
        pass
    finally:
        s.close()

    if msg is None:
        return None

    import struct
    val = struct.unpack("!I", msg[40:44])[0]
    return val - NTP_DELTA
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号