File syn_ntp_server.c¶
FileList > net > syn_ntp_server.c
Go to the source code of this file
Zero-Heap NTP v4 Server Implementation.
#include "syn_ntp_server.h"#include <string.h>
Public Functions¶
| Type | Name |
|---|---|
| SYN_Status | syn_ntp_server_init (SYN_NTPServer * server, uint8_t stratum, uint32_t(*)(void) get_epoch_sec_cb) Initialize NTP Server Instance. |
| SYN_Status | syn_ntp_server_process_packet (SYN_NTPServer * server, const uint8_t request_pkt, uint8_t response_pkt) Process an incoming 48-byte NTP client request packet and format response. |
Public Static Functions¶
| Type | Name |
|---|---|
| void | write_u32_be (uint8_t * buf, uint32_t val) Write 32-bit integer into big-endian byte buffer. |
Public Functions Documentation¶
function syn_ntp_server_init¶
Initialize NTP Server Instance.
SYN_Status syn_ntp_server_init (
SYN_NTPServer * server,
uint8_t stratum,
uint32_t(*)(void) get_epoch_sec_cb
)
Parameters:
serverPointer to NTP server instance.stratumServer stratum level (e.g. 1 for GPS, 2 for SNTP relay).get_epoch_sec_cbCallback returning current UTC epoch seconds.
Returns:
SYN_OK on success, SYN_INVALID_PARAM if NULL.
function syn_ntp_server_process_packet¶
Process an incoming 48-byte NTP client request packet and format response.
SYN_Status syn_ntp_server_process_packet (
SYN_NTPServer * server,
const uint8_t request_pkt,
uint8_t response_pkt
)
Parameters:
serverPointer to NTP server context.request_pktRaw 48-byte input request packet.response_pktOutput 48-byte response packet buffer.
Returns:
SYN_OK on success, SYN_INVALID_PARAM if NULL or invalid.
Public Static Functions Documentation¶
function write_u32_be¶
Write 32-bit integer into big-endian byte buffer.
Parameters:
bufPointer to 4-byte destination buffer.val32-bit unsigned integer value.
The documentation for this class was generated from the following file src/syntropic/net/syn_ntp_server.c