]>
Commit | Line | Data |
---|---|---|
83d290c5 | 1 | /* SPDX-License-Identifier: GPL-2.0+ */ |
ea287deb WD |
2 | /* |
3 | * (C) Masami Komiya <[email protected]> 2005 | |
ea287deb WD |
4 | */ |
5 | ||
6 | #ifndef __SNTP_H__ | |
7 | #define __SNTP_H__ | |
8 | ||
9 | #define NTP_SERVICE_PORT 123 | |
10 | #define SNTP_PACKET_LEN 48 | |
11 | ||
12 | ||
13 | /* Leap Indicator */ | |
14 | #define NTP_LI_NOLEAP 0x0 | |
15 | #define NTP_LI_61SECS 0x1 | |
16 | #define NTP_LI_59SECS 0x2 | |
17 | #define NTP_LI_ALARM 0x3 | |
18 | ||
19 | /* Version */ | |
20 | ||
21 | #define NTP_VERSION 4 | |
22 | ||
23 | /* Mode */ | |
24 | #define NTP_MODE_RESERVED 0 | |
25 | #define NTP_MODE_SYMACTIVE 1 /* Symmetric Active */ | |
26 | #define NTP_MODE_SYMPASSIVE 2 /* Symmetric Passive */ | |
27 | #define NTP_MODE_CLIENT 3 | |
28 | #define NTP_MODE_SERVER 4 | |
29 | #define NTP_MODE_BROADCAST 5 | |
30 | #define NTP_MODE_NTPCTRL 6 /* Reserved for NTP control message */ | |
31 | #define NTP_MODE_PRIVATE 7 /* Reserved for private use */ | |
32 | ||
33 | struct sntp_pkt_t { | |
34 | #if __LITTLE_ENDIAN | |
35 | uchar mode:3; | |
36 | uchar vn:3; | |
37 | uchar li:2; | |
38 | #else | |
39 | uchar li:2; | |
40 | uchar vn:3; | |
41 | uchar mode:3; | |
42 | #endif | |
43 | uchar stratum; | |
44 | uchar poll; | |
45 | uchar precision; | |
46 | uint root_delay; | |
47 | uint root_dispersion; | |
48 | uint reference_id; | |
49 | unsigned long long reference_timestamp; | |
50 | unsigned long long originate_timestamp; | |
51 | unsigned long long receive_timestamp; | |
52 | unsigned long long transmit_timestamp; | |
704f3acf | 53 | } __attribute__((packed)); |
ea287deb | 54 | |
38ba2558 | 55 | void sntp_start(void); /* Begin SNTP */ |
ea287deb WD |
56 | |
57 | #endif /* __SNTP_H__ */ |