Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(61)

Side by Side Diff: net/tools/quic/quic_socket_utils.cc

Issue 2130103002: Landing Recent QUIC changes until 2016-07-02 02:45 UTC (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "net/tools/quic/quic_socket_utils.h" 5 #include "net/tools/quic/quic_socket_utils.h"
6 6
7 #include <errno.h> 7 #include <errno.h>
8 #include <linux/net_tstamp.h> 8 #include <linux/net_tstamp.h>
9 #include <netinet/in.h> 9 #include <netinet/in.h>
10 #include <string.h> 10 #include <string.h>
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
49 cmsg->cmsg_type == SO_TIMESTAMPING) { 49 cmsg->cmsg_type == SO_TIMESTAMPING) {
50 LinuxTimestamping* lts = 50 LinuxTimestamping* lts =
51 reinterpret_cast<LinuxTimestamping*>(CMSG_DATA(cmsg)); 51 reinterpret_cast<LinuxTimestamping*>(CMSG_DATA(cmsg));
52 timespec* ts = &lts->systime; 52 timespec* ts = &lts->systime;
53 int64_t usec = (static_cast<int64_t>(ts->tv_sec) * 1000 * 1000) + 53 int64_t usec = (static_cast<int64_t>(ts->tv_sec) * 1000 * 1000) +
54 (static_cast<int64_t>(ts->tv_nsec) / 1000); 54 (static_cast<int64_t>(ts->tv_nsec) / 1000);
55 if (latched_walltimestamps) { 55 if (latched_walltimestamps) {
56 *walltimestamp = QuicWallTime::FromUNIXMicroseconds(usec); 56 *walltimestamp = QuicWallTime::FromUNIXMicroseconds(usec);
57 } else { 57 } else {
58 *timestamp = 58 *timestamp =
59 QuicTime::Zero().Add(QuicTime::Delta::FromMicroseconds(usec)); 59 QuicTime::Zero() + QuicTime::Delta::FromMicroseconds(usec);
60 } 60 }
61 } 61 }
62 } 62 }
63 } 63 }
64 } 64 }
65 65
66 // static 66 // static
67 bool QuicSocketUtils::GetOverflowFromMsghdr(struct msghdr* hdr, 67 bool QuicSocketUtils::GetOverflowFromMsghdr(struct msghdr* hdr,
68 QuicPacketCount* dropped_packets) { 68 QuicPacketCount* dropped_packets) {
69 if (hdr->msg_controllen > 0) { 69 if (hdr->msg_controllen > 0) {
(...skipping 239 matching lines...) Expand 10 before | Expand all | Expand 10 after
309 rc = SetGetSoftwareReceiveTimestamp(fd); 309 rc = SetGetSoftwareReceiveTimestamp(fd);
310 if (rc < 0) { 310 if (rc < 0) {
311 LOG(WARNING) << "SO_TIMESTAMPING not supported; using fallback: " 311 LOG(WARNING) << "SO_TIMESTAMPING not supported; using fallback: "
312 << strerror(errno); 312 << strerror(errno);
313 } 313 }
314 314
315 return fd; 315 return fd;
316 } 316 }
317 317
318 } // namespace net 318 } // namespace net
OLDNEW
« no previous file with comments | « net/tools/quic/quic_simple_server_session_test.cc ('k') | net/tools/quic/quic_time_wait_list_manager.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698