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

Side by Side Diff: runtime/bin/socket.h

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/snapshot_utils.cc ('k') | runtime/bin/socket.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) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, 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 #ifndef RUNTIME_BIN_SOCKET_H_ 5 #ifndef RUNTIME_BIN_SOCKET_H_
6 #define RUNTIME_BIN_SOCKET_H_ 6 #define RUNTIME_BIN_SOCKET_H_
7 7
8 #if defined(DART_IO_DISABLED) 8 #if defined(DART_IO_DISABLED)
9 #error "socket.h can only be included on builds with IO enabled" 9 #error "socket.h can only be included on builds with IO enabled"
10 #endif 10 #endif
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after
81 81
82 static const int kClosedFd = -1; 82 static const int kClosedFd = -1;
83 83
84 intptr_t fd_; 84 intptr_t fd_;
85 Dart_Port port_; 85 Dart_Port port_;
86 86
87 friend class ReferenceCounted<Socket>; 87 friend class ReferenceCounted<Socket>;
88 DISALLOW_COPY_AND_ASSIGN(Socket); 88 DISALLOW_COPY_AND_ASSIGN(Socket);
89 }; 89 };
90 90
91
92 class ServerSocket { 91 class ServerSocket {
93 public: 92 public:
94 static const intptr_t kTemporaryFailure = -2; 93 static const intptr_t kTemporaryFailure = -2;
95 94
96 static intptr_t Accept(intptr_t fd); 95 static intptr_t Accept(intptr_t fd);
97 96
98 // Creates a socket which is bound and listens. The port to listen on is 97 // Creates a socket which is bound and listens. The port to listen on is
99 // specified in the port component of the passed RawAddr structure. 98 // specified in the port component of the passed RawAddr structure.
100 // 99 //
101 // Returns a positive integer if the call is successful. In case of failure 100 // Returns a positive integer if the call is successful. In case of failure
102 // it returns: 101 // it returns:
103 // 102 //
104 // -1: system error (errno set) 103 // -1: system error (errno set)
105 // -5: invalid bindAddress 104 // -5: invalid bindAddress
106 static intptr_t CreateBindListen(const RawAddr& addr, 105 static intptr_t CreateBindListen(const RawAddr& addr,
107 intptr_t backlog, 106 intptr_t backlog,
108 bool v6_only = false); 107 bool v6_only = false);
109 108
110 // Start accepting on a newly created listening socket. If it was unable to 109 // Start accepting on a newly created listening socket. If it was unable to
111 // start accepting incoming sockets, the fd is invalidated. 110 // start accepting incoming sockets, the fd is invalidated.
112 static bool StartAccept(intptr_t fd); 111 static bool StartAccept(intptr_t fd);
113 112
114 private: 113 private:
115 DISALLOW_ALLOCATION(); 114 DISALLOW_ALLOCATION();
116 DISALLOW_IMPLICIT_CONSTRUCTORS(ServerSocket); 115 DISALLOW_IMPLICIT_CONSTRUCTORS(ServerSocket);
117 }; 116 };
118 117
119
120 class ListeningSocketRegistry { 118 class ListeningSocketRegistry {
121 public: 119 public:
122 ListeningSocketRegistry() 120 ListeningSocketRegistry()
123 : sockets_by_port_(SameIntptrValue, kInitialSocketsCount), 121 : sockets_by_port_(SameIntptrValue, kInitialSocketsCount),
124 sockets_by_fd_(SameIntptrValue, kInitialSocketsCount), 122 sockets_by_fd_(SameIntptrValue, kInitialSocketsCount),
125 mutex_(new Mutex()) {} 123 mutex_(new Mutex()) {}
126 124
127 ~ListeningSocketRegistry() { 125 ~ListeningSocketRegistry() {
128 CloseAllSafe(); 126 CloseAllSafe();
129 delete mutex_; 127 delete mutex_;
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
196 } 194 }
197 195
198 static bool SameIntptrValue(void* key1, void* key2) { 196 static bool SameIntptrValue(void* key1, void* key2) {
199 return reinterpret_cast<intptr_t>(key1) == reinterpret_cast<intptr_t>(key2); 197 return reinterpret_cast<intptr_t>(key1) == reinterpret_cast<intptr_t>(key2);
200 } 198 }
201 199
202 static uint32_t GetHashmapHashFromIntptr(intptr_t i) { 200 static uint32_t GetHashmapHashFromIntptr(intptr_t i) {
203 return static_cast<uint32_t>((i + 1) & 0xFFFFFFFF); 201 return static_cast<uint32_t>((i + 1) & 0xFFFFFFFF);
204 } 202 }
205 203
206
207 static void* GetHashmapKeyFromIntptr(intptr_t i) { 204 static void* GetHashmapKeyFromIntptr(intptr_t i) {
208 return reinterpret_cast<void*>(i + 1); 205 return reinterpret_cast<void*>(i + 1);
209 } 206 }
210 207
211 OSSocket* LookupByPort(intptr_t port); 208 OSSocket* LookupByPort(intptr_t port);
212 void InsertByPort(intptr_t port, OSSocket* socket); 209 void InsertByPort(intptr_t port, OSSocket* socket);
213 void RemoveByPort(intptr_t port); 210 void RemoveByPort(intptr_t port);
214 211
215 OSSocket* LookupByFd(Socket* fd); 212 OSSocket* LookupByFd(Socket* fd);
216 void InsertByFd(Socket* fd, OSSocket* socket); 213 void InsertByFd(Socket* fd, OSSocket* socket);
217 void RemoveByFd(Socket* fd); 214 void RemoveByFd(Socket* fd);
218 215
219 bool CloseOneSafe(OSSocket* os_socket, bool update_hash_maps); 216 bool CloseOneSafe(OSSocket* os_socket, bool update_hash_maps);
220 void CloseAllSafe(); 217 void CloseAllSafe();
221 218
222 HashMap sockets_by_port_; 219 HashMap sockets_by_port_;
223 HashMap sockets_by_fd_; 220 HashMap sockets_by_fd_;
224 221
225 Mutex* mutex_; 222 Mutex* mutex_;
226 223
227 DISALLOW_COPY_AND_ASSIGN(ListeningSocketRegistry); 224 DISALLOW_COPY_AND_ASSIGN(ListeningSocketRegistry);
228 }; 225 };
229 226
230 } // namespace bin 227 } // namespace bin
231 } // namespace dart 228 } // namespace dart
232 229
233 #endif // RUNTIME_BIN_SOCKET_H_ 230 #endif // RUNTIME_BIN_SOCKET_H_
OLDNEW
« no previous file with comments | « runtime/bin/snapshot_utils.cc ('k') | runtime/bin/socket.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698