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

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

Issue 2974233002: VM: Re-format to use at most one newline between functions (Closed)
Patch Set: Rebase and merge Created 3 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
« no previous file with comments | « runtime/bin/sync_socket_unsupported.cc ('k') | runtime/bin/thread.h » ('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) 2017, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2017, 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 #if !defined(DART_IO_DISABLED) 5 #if !defined(DART_IO_DISABLED)
6 6
7 #include "platform/globals.h" 7 #include "platform/globals.h"
8 #if defined(HOST_OS_WINDOWS) 8 #if defined(HOST_OS_WINDOWS)
9 9
10 #include "bin/socket_base.h" 10 #include "bin/socket_base.h"
11 #include "bin/sync_socket.h" 11 #include "bin/sync_socket.h"
12 12
13 namespace dart { 13 namespace dart {
14 namespace bin { 14 namespace bin {
15 15
16 bool SynchronousSocket::Initialize() { 16 bool SynchronousSocket::Initialize() {
17 return SocketBase::Initialize(); 17 return SocketBase::Initialize();
18 } 18 }
19 19
20
21 static intptr_t Create(const RawAddr& addr) { 20 static intptr_t Create(const RawAddr& addr) {
22 const intptr_t type = SOCK_STREAM; 21 const intptr_t type = SOCK_STREAM;
23 SOCKET s = WSASocket(addr.ss.ss_family, type, 0, NULL, 0, 0); 22 SOCKET s = WSASocket(addr.ss.ss_family, type, 0, NULL, 0, 0);
24 return (s == INVALID_SOCKET) ? -1 : s; 23 return (s == INVALID_SOCKET) ? -1 : s;
25 } 24 }
26 25
27
28 static intptr_t Connect(intptr_t fd, const RawAddr& addr) { 26 static intptr_t Connect(intptr_t fd, const RawAddr& addr) {
29 SOCKET socket = static_cast<SOCKET>(fd); 27 SOCKET socket = static_cast<SOCKET>(fd);
30 intptr_t result = 28 intptr_t result =
31 connect(socket, &addr.addr, SocketAddress::GetAddrLength(addr)); 29 connect(socket, &addr.addr, SocketAddress::GetAddrLength(addr));
32 return (result == SOCKET_ERROR) ? -1 : socket; 30 return (result == SOCKET_ERROR) ? -1 : socket;
33 } 31 }
34 32
35
36 intptr_t SynchronousSocket::CreateConnect(const RawAddr& addr) { 33 intptr_t SynchronousSocket::CreateConnect(const RawAddr& addr) {
37 intptr_t fd = Create(addr); 34 intptr_t fd = Create(addr);
38 return (fd < 0) ? fd : Connect(fd, addr); 35 return (fd < 0) ? fd : Connect(fd, addr);
39 } 36 }
40 37
41
42 intptr_t SynchronousSocket::Available(intptr_t fd) { 38 intptr_t SynchronousSocket::Available(intptr_t fd) {
43 SOCKET socket = static_cast<SOCKET>(fd); 39 SOCKET socket = static_cast<SOCKET>(fd);
44 DWORD available; 40 DWORD available;
45 intptr_t result = ioctlsocket(socket, FIONREAD, &available); 41 intptr_t result = ioctlsocket(socket, FIONREAD, &available);
46 return (result == SOCKET_ERROR) ? -1 : static_cast<intptr_t>(available); 42 return (result == SOCKET_ERROR) ? -1 : static_cast<intptr_t>(available);
47 } 43 }
48 44
49
50 intptr_t SynchronousSocket::GetPort(intptr_t fd) { 45 intptr_t SynchronousSocket::GetPort(intptr_t fd) {
51 SOCKET socket = static_cast<SOCKET>(fd); 46 SOCKET socket = static_cast<SOCKET>(fd);
52 RawAddr raw; 47 RawAddr raw;
53 socklen_t size = sizeof(raw); 48 socklen_t size = sizeof(raw);
54 if (getsockname(socket, &raw.addr, &size) == SOCKET_ERROR) { 49 if (getsockname(socket, &raw.addr, &size) == SOCKET_ERROR) {
55 return 0; 50 return 0;
56 } 51 }
57 return SocketAddress::GetAddrPort(raw); 52 return SocketAddress::GetAddrPort(raw);
58 } 53 }
59 54
60
61 SocketAddress* SynchronousSocket::GetRemotePeer(intptr_t fd, intptr_t* port) { 55 SocketAddress* SynchronousSocket::GetRemotePeer(intptr_t fd, intptr_t* port) {
62 SOCKET socket = static_cast<SOCKET>(fd); 56 SOCKET socket = static_cast<SOCKET>(fd);
63 RawAddr raw; 57 RawAddr raw;
64 socklen_t size = sizeof(raw); 58 socklen_t size = sizeof(raw);
65 if (getpeername(socket, &raw.addr, &size)) { 59 if (getpeername(socket, &raw.addr, &size)) {
66 return NULL; 60 return NULL;
67 } 61 }
68 *port = SocketAddress::GetAddrPort(raw); 62 *port = SocketAddress::GetAddrPort(raw);
69 // Clear the port before calling WSAAddressToString as WSAAddressToString 63 // Clear the port before calling WSAAddressToString as WSAAddressToString
70 // includes the port in the formatted string. 64 // includes the port in the formatted string.
71 SocketAddress::SetAddrPort(&raw, 0); 65 SocketAddress::SetAddrPort(&raw, 0);
72 return new SocketAddress(&raw.addr); 66 return new SocketAddress(&raw.addr);
73 } 67 }
74 68
75
76 intptr_t SynchronousSocket::Read(intptr_t fd, 69 intptr_t SynchronousSocket::Read(intptr_t fd,
77 void* buffer, 70 void* buffer,
78 intptr_t num_bytes) { 71 intptr_t num_bytes) {
79 SOCKET socket = static_cast<SOCKET>(fd); 72 SOCKET socket = static_cast<SOCKET>(fd);
80 return recv(socket, reinterpret_cast<char*>(buffer), num_bytes, 0); 73 return recv(socket, reinterpret_cast<char*>(buffer), num_bytes, 0);
81 } 74 }
82 75
83
84 intptr_t SynchronousSocket::Write(intptr_t fd, 76 intptr_t SynchronousSocket::Write(intptr_t fd,
85 const void* buffer, 77 const void* buffer,
86 intptr_t num_bytes) { 78 intptr_t num_bytes) {
87 SOCKET socket = static_cast<SOCKET>(fd); 79 SOCKET socket = static_cast<SOCKET>(fd);
88 return send(socket, reinterpret_cast<const char*>(buffer), num_bytes, 0); 80 return send(socket, reinterpret_cast<const char*>(buffer), num_bytes, 0);
89 } 81 }
90 82
91
92 void SynchronousSocket::ShutdownRead(intptr_t fd) { 83 void SynchronousSocket::ShutdownRead(intptr_t fd) {
93 SOCKET socket = static_cast<SOCKET>(fd); 84 SOCKET socket = static_cast<SOCKET>(fd);
94 shutdown(socket, SD_RECEIVE); 85 shutdown(socket, SD_RECEIVE);
95 } 86 }
96 87
97
98 void SynchronousSocket::ShutdownWrite(intptr_t fd) { 88 void SynchronousSocket::ShutdownWrite(intptr_t fd) {
99 SOCKET socket = static_cast<SOCKET>(fd); 89 SOCKET socket = static_cast<SOCKET>(fd);
100 shutdown(socket, SD_SEND); 90 shutdown(socket, SD_SEND);
101 } 91 }
102 92
103
104 void SynchronousSocket::Close(intptr_t fd) { 93 void SynchronousSocket::Close(intptr_t fd) {
105 SOCKET socket = static_cast<SOCKET>(fd); 94 SOCKET socket = static_cast<SOCKET>(fd);
106 closesocket(socket); 95 closesocket(socket);
107 } 96 }
108 97
109 } // namespace bin 98 } // namespace bin
110 } // namespace dart 99 } // namespace dart
111 100
112 #endif // defined(HOST_OS_WINDOWS) 101 #endif // defined(HOST_OS_WINDOWS)
113 102
114 #endif // !defined(DART_IO_DISABLED) 103 #endif // !defined(DART_IO_DISABLED)
OLDNEW
« no previous file with comments | « runtime/bin/sync_socket_unsupported.cc ('k') | runtime/bin/thread.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698