Skip to content

Commit a80f7a7

Browse files
comments & cosmetic
1 parent 53cb0a0 commit a80f7a7

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

sockets/UDP/ntp_client.c

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ int main(int argc, char* argv[])
2323
if (argc != 2)
2424
usage(argv);
2525

26+
// 48 bytes of NTP packet (rfc5905)
2627
typedef struct
2728
{
2829
unsigned leap : 2;
@@ -49,9 +50,11 @@ int main(int argc, char* argv[])
4950
uint32_t tsm_Tm_s;
5051
uint32_t tsm_xTm_f;
5152
} ntp_packet;
52-
53+
5354
ntp_packet packet = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
54-
*((char *) &packet + 0) = 0x1b;
55+
56+
// Set the first bits to 00,011,011: leap = 0, ver = 3, mode = 3
57+
*((char *) &packet + 0) = 0x1b; // Represents 00011011 in base 2
5558

5659
struct sockaddr_in serv_addr;
5760
struct hostent *server;
@@ -67,10 +70,10 @@ int main(int argc, char* argv[])
6770
bcopy((void *)server->h_addr, (void *)&serv_addr.sin_addr, server->h_length);
6871

6972
serv_addr.sin_port = htons(123);
70-
serv_addr.sin_family = AF_INET;
73+
serv_addr.sin_family = AF_INET;
7174

7275
if (sendto(sockfd, &packet, sizeof(packet), 0,
73-
(struct sockaddr *) &serv_addr, sizeof(serv_addr)) == -1)
76+
(struct sockaddr *) &serv_addr, sizeof(serv_addr)) == -1)
7477
oops("sendto failed", 3);
7578

7679
socklen_t saddrlen = sizeof(serv_addr);

0 commit comments

Comments
 (0)