]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
timesync: fix wrong type for receiving timestamp in nanoseconds
authorYu Watanabe <watanabe.yu+github@gmail.com>
Thu, 19 Aug 2021 23:40:11 +0000 (08:40 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Thu, 19 Aug 2021 23:42:13 +0000 (08:42 +0900)
Fixes #20482.

src/test/test-sizeof.c
src/timesync/timesyncd-manager.c

index 3c9dc180fa455281486d57d555b7cd8eb3fc3a32..e36bee4e8f97dbe5294956dce887d3e16cb99ca2 100644 (file)
@@ -89,5 +89,7 @@ int main(void) {
         printf("big_enum2_pos → %zu\n", sizeof(big_enum2_pos));
         printf("big_enum2_neg → %zu\n", sizeof(big_enum2_neg));
 
+        printf("timeval: %zu\n", sizeof(struct timeval));
+        printf("timespec: %zu\n", sizeof(struct timespec));
         return 0;
 }
index 1c284f31e3ee6baf85043eaecc4397a1f1aef395..3a89d9b1fac175e01cb7e7a278cf272152b0971b 100644 (file)
@@ -416,7 +416,7 @@ static int manager_receive_response(sd_event_source *source, int fd, uint32_t re
                 .iov_base = &ntpmsg,
                 .iov_len = sizeof(ntpmsg),
         };
-        CMSG_BUFFER_TYPE(CMSG_SPACE(sizeof(struct timeval))) control;
+        CMSG_BUFFER_TYPE(CMSG_SPACE(sizeof(struct timespec))) control;
         union sockaddr_union server_addr;
         struct msghdr msghdr = {
                 .msg_iov = &iov,