Definitions common to NTP client and server. More...
#include "core/net.h"Go to the source code of this file.
Macros | |
| #define | NTP_PORT 123 |
| #define | NTP_MAX_MSG_SIZE 68 |
| #define | NTP_UNIX_EPOCH 2208988800U |
| #define | NTP_AREA_0 0ULL |
| #define | NTP_AREA_1 4294967296ULL |
| #define | NTP_KISS_CODE(a, b, c, d) (((a) << 24) | ((b) << 16) | ((c) << 8) | (d)) |
Functions | |
| const NtpExtension * | ntpGetExtension (const uint8_t *extensions, size_t length, uint16_t type, uint_t index) |
| Search a NTP packet for a given extension. More... | |
Variables | |
| typedef | __packed_struct |
| NTP timestamp representation. More... | |
| uint32_t | fraction |
| NtpTimestamp | |
| uint8_t | vn |
| uint8_t | li |
| uint8_t | stratum |
| uint8_t | poll |
| int8_t | precision |
| uint32_t | rootDelay |
| uint32_t | rootDispersion |
| uint32_t | referenceId |
| NtpTimestamp | referenceTimestamp |
| NtpTimestamp | originateTimestamp |
| NtpTimestamp | receiveTimestamp |
| NtpTimestamp | transmitTimestamp |
| uint8_t | extensions [] |
| NtpHeader | |
| uint16_t | length |
| uint8_t | value [] |
| NtpExtension | |
| uint16_t | nonceLength |
| uint16_t | ciphertextLength |
| uint8_t | nonce [] |
| NtpNtsAeadExtension | |
Detailed Description
Definitions common to NTP client and server.
License
SPDX-License-Identifier: GPL-2.0-or-later
Copyright (C) 2010-2025 Oryx Embedded SARL. All rights reserved.
This file is part of CycloneTCP Open.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- Version
- 2.5.4
Definition in file ntp_common.h.
Macro Definition Documentation
◆ NTP_AREA_0
| #define NTP_AREA_0 0ULL |
Definition at line 46 of file ntp_common.h.
◆ NTP_AREA_1
| #define NTP_AREA_1 4294967296ULL |
Definition at line 48 of file ntp_common.h.
◆ NTP_KISS_CODE
Definition at line 51 of file ntp_common.h.
◆ NTP_MAX_MSG_SIZE
| #define NTP_MAX_MSG_SIZE 68 |
Definition at line 40 of file ntp_common.h.
◆ NTP_PORT
| #define NTP_PORT 123 |
Definition at line 38 of file ntp_common.h.
◆ NTP_UNIX_EPOCH
| #define NTP_UNIX_EPOCH 2208988800U |
Definition at line 43 of file ntp_common.h.
Enumeration Type Documentation
◆ NtpExtensionType
| enum NtpExtensionType |
NTP extensions field types.
Definition at line 157 of file ntp_common.h.
◆ NtpKissCode
| enum NtpKissCode |
Kiss codes.
The kiss codes can provide useful information for an intelligent client. These codes are encoded in four-character ASCII strings left justified and zero filled
Definition at line 133 of file ntp_common.h.
◆ NtpLeapIndicator
| enum NtpLeapIndicator |
Leap indicator.
| Enumerator | |
|---|---|
| NTP_LI_NO_WARNING | |
| NTP_LI_LAST_MIN_HAS_61_SECS | |
| NTP_LI_LAST_MIN_HAS_59_SECS | |
| NTP_LI_ALARM_CONDITION | |
Definition at line 63 of file ntp_common.h.
◆ NtpMode
| enum NtpMode |
Protocol modes.
| Enumerator | |
|---|---|
| NTP_MODE_SYMMETRIC_ACTIVE | |
| NTP_MODE_SYMMETRIC_PASSIVE | |
| NTP_MODE_CLIENT | |
| NTP_MODE_SERVER | |
| NTP_MODE_BROADCAST | |
Definition at line 89 of file ntp_common.h.
◆ NtpStratum
| enum NtpStratum |
Stratum.
Definition at line 103 of file ntp_common.h.
◆ NtpVersion
| enum NtpVersion |
NTP version numbers.
| Enumerator | |
|---|---|
| NTP_VERSION_1 | |
| NTP_VERSION_2 | |
| NTP_VERSION_3 | |
| NTP_VERSION_4 | |
Definition at line 76 of file ntp_common.h.
Function Documentation
◆ ntpGetExtension()
| const NtpExtension* ntpGetExtension | ( | const uint8_t * | extensions, |
| size_t | length, | ||
| uint16_t | type, | ||
| uint_t | index | ||
| ) |
Search a NTP packet for a given extension.
- Parameters
-
[in] extensions Pointer to the NTP extensions [in] length Length of the NTP extensions, in bytes [in] type Extension type [in] index Extension occurrence index
- Returns
- If the specified extension is found, a pointer to the corresponding extension is returned. Otherwise NULL pointer is returned
Definition at line 53 of file ntp_common.c.
Variable Documentation
◆ __packed_struct
| typedef __packed_struct |
NTP timestamp representation.
NTS Authenticator and Encrypted Extension Fields extension.
NTP extension field.
NTP packet header.
Definition at line 181 of file ntp_common.h.
◆ ciphertextLength
| uint16_t ciphertextLength |
Definition at line 238 of file ntp_common.h.
◆ extensions
| uint8_t extensions[] |
Definition at line 213 of file ntp_common.h.
◆ fraction
| uint32_t fraction |
Definition at line 184 of file ntp_common.h.
◆ length
| uint16_t length |
Definition at line 224 of file ntp_common.h.
◆ li
| uint8_t li |
Definition at line 201 of file ntp_common.h.
◆ nonce
| uint8_t nonce[] |
Definition at line 239 of file ntp_common.h.
◆ nonceLength
| uint16_t nonceLength |
Definition at line 237 of file ntp_common.h.
◆ NtpExtension
| NtpExtension |
Definition at line 226 of file ntp_common.h.
◆ NtpHeader
| NtpHeader |
Definition at line 214 of file ntp_common.h.
◆ NtpNtsAeadExtension
| NtpNtsAeadExtension |
Definition at line 240 of file ntp_common.h.
◆ NtpTimestamp
| NtpTimestamp |
Definition at line 185 of file ntp_common.h.
◆ originateTimestamp
| NtpTimestamp originateTimestamp |
Definition at line 210 of file ntp_common.h.
◆ poll
| uint8_t poll |
Definition at line 204 of file ntp_common.h.
◆ precision
| int8_t precision |
Definition at line 205 of file ntp_common.h.
◆ receiveTimestamp
| NtpTimestamp receiveTimestamp |
Definition at line 211 of file ntp_common.h.
◆ referenceId
| uint32_t referenceId |
Definition at line 208 of file ntp_common.h.
◆ referenceTimestamp
| NtpTimestamp referenceTimestamp |
Definition at line 209 of file ntp_common.h.
◆ rootDelay
| uint32_t rootDelay |
Definition at line 206 of file ntp_common.h.
◆ rootDispersion
| uint32_t rootDispersion |
Definition at line 207 of file ntp_common.h.
◆ stratum
| uint8_t stratum |
Definition at line 203 of file ntp_common.h.
◆ transmitTimestamp
| NtpTimestamp transmitTimestamp |
Definition at line 212 of file ntp_common.h.
◆ value
| uint8_t value[] |
Definition at line 225 of file ntp_common.h.
◆ vn
| uint8_t vn |
Definition at line 200 of file ntp_common.h.
