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

Unified Diff: runtime/bin/socket_patch.dart

Issue 25511002: Add reusePort argument to ServerSocket. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Mac os X version. Created 7 years, 3 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « runtime/bin/socket_macos.cc ('k') | runtime/bin/socket_win.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/bin/socket_patch.dart
diff --git a/runtime/bin/socket_patch.dart b/runtime/bin/socket_patch.dart
index 4fffbf7681da5b896221836d310aa03aa98cb514..5083e280e701209375fbd24df09ea9a37784cec7 100644
--- a/runtime/bin/socket_patch.dart
+++ b/runtime/bin/socket_patch.dart
@@ -6,8 +6,9 @@ patch class RawServerSocket {
/* patch */ static Future<RawServerSocket> bind(address,
int port,
{int backlog: 0,
- bool v6Only: false}) {
- return _RawServerSocket.bind(address, port, backlog, v6Only);
+ bool v6Only: false,
+ bool reusePort: false}) {
+ return _RawServerSocket.bind(address, port, backlog, v6Only, reusePort);
}
}
@@ -319,7 +320,8 @@ class _NativeSocket extends NativeFieldWrapperClass1 {
static Future<_NativeSocket> bind(host,
int port,
int backlog,
- bool v6Only) {
+ bool v6Only,
+ bool reusePort) {
return new Future.value(host)
.then((host) {
if (host is _InternetAddress) return host;
@@ -337,7 +339,8 @@ class _NativeSocket extends NativeFieldWrapperClass1 {
var result = socket.nativeCreateBindListen(address._sockaddr_storage,
port,
backlog,
- v6Only);
+ v6Only,
+ reusePort);
if (result is OSError) {
throw new SocketException("Failed to create server socket",
osError: result,
@@ -655,7 +658,8 @@ class _NativeSocket extends NativeFieldWrapperClass1 {
native "Socket_WriteList";
nativeCreateConnect(List<int> addr,
int port) native "Socket_CreateConnect";
- nativeCreateBindListen(List<int> addr, int port, int backlog, bool v6Only)
+ nativeCreateBindListen(
+ List<int> addr, int port, int backlog, bool v6Only, bool reusePort)
native "ServerSocket_CreateBindListen";
nativeAccept(_NativeSocket socket) native "ServerSocket_Accept";
int nativeGetPort() native "Socket_GetPort";
@@ -673,11 +677,12 @@ class _RawServerSocket extends Stream<RawSocket>
static Future<_RawServerSocket> bind(address,
int port,
int backlog,
- bool v6Only) {
+ bool v6Only,
+ bool reusePort) {
if (port < 0 || port > 0xFFFF)
throw new ArgumentError("Invalid port $port");
if (backlog < 0) throw new ArgumentError("Invalid backlog $backlog");
- return _NativeSocket.bind(address, port, backlog, v6Only)
+ return _NativeSocket.bind(address, port, backlog, v6Only, reusePort)
.then((socket) => new _RawServerSocket(socket));
}
@@ -893,8 +898,9 @@ patch class ServerSocket {
/* patch */ static Future<ServerSocket> bind(address,
int port,
{int backlog: 0,
- bool v6Only: false}) {
- return _ServerSocket.bind(address, port, backlog, v6Only);
+ bool v6Only: false,
+ bool reusePort: false}) {
+ return _ServerSocket.bind(address, port, backlog, v6Only, reusePort);
}
}
@@ -905,8 +911,9 @@ class _ServerSocket extends Stream<Socket>
static Future<_ServerSocket> bind(address,
int port,
int backlog,
- bool v6Only) {
- return _RawServerSocket.bind(address, port, backlog, v6Only)
+ bool v6Only,
+ bool reusePort) {
+ return _RawServerSocket.bind(address, port, backlog, v6Only, reusePort)
.then((socket) => new _ServerSocket(socket));
}
« no previous file with comments | « runtime/bin/socket_macos.cc ('k') | runtime/bin/socket_win.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698