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

Side by Side Diff: runtime/bin/socket_android.cc

Issue 12614014: Add setNoDelay method on Socket/RawSocket. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 9 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 | Annotate | Revision Log
« no previous file with comments | « runtime/bin/socket.cc ('k') | runtime/bin/socket_linux.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #include "platform/globals.h" 5 #include "platform/globals.h"
6 #if defined(TARGET_OS_ANDROID) 6 #if defined(TARGET_OS_ANDROID)
7 7
8 #include <errno.h> // NOLINT 8 #include <errno.h> // NOLINT
9 #include <stdio.h> // NOLINT 9 #include <stdio.h> // NOLINT
10 #include <stdlib.h> // NOLINT 10 #include <stdlib.h> // NOLINT
11 #include <string.h> // NOLINT 11 #include <string.h> // NOLINT
12 #include <unistd.h> // NOLINT 12 #include <unistd.h> // NOLINT
13 #include <netinet/tcp.h> // NOLINT
13 14
14 #include "bin/socket.h" 15 #include "bin/socket.h"
15 #include "bin/fdutils.h" 16 #include "bin/fdutils.h"
16 #include "bin/log.h" 17 #include "bin/log.h"
17 18
18 19
19 bool Socket::Initialize() { 20 bool Socket::Initialize() {
20 // Nothing to do on Android. 21 // Nothing to do on Android.
21 return true; 22 return true;
22 } 23 }
(...skipping 244 matching lines...) Expand 10 before | Expand all | Expand 10 after
267 268
268 bool Socket::SetNonBlocking(intptr_t fd) { 269 bool Socket::SetNonBlocking(intptr_t fd) {
269 return FDUtils::SetNonBlocking(fd); 270 return FDUtils::SetNonBlocking(fd);
270 } 271 }
271 272
272 273
273 bool Socket::SetBlocking(intptr_t fd) { 274 bool Socket::SetBlocking(intptr_t fd) {
274 return FDUtils::SetBlocking(fd); 275 return FDUtils::SetBlocking(fd);
275 } 276 }
276 277
278
279 bool Socket::SetNoDelay(intptr_t fd, bool enabled) {
280 int on = enabled ? 1 : 0;
281 return TEMP_FAILURE_RETRY(setsockopt(fd,
282 SOL_TCP,
283 TCP_NODELAY,
284 reinterpret_cast<char *>(&on),
285 sizeof(on))) == 0;
286 }
287
277 #endif // defined(TARGET_OS_ANDROID) 288 #endif // defined(TARGET_OS_ANDROID)
OLDNEW
« no previous file with comments | « runtime/bin/socket.cc ('k') | runtime/bin/socket_linux.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698