| Index: sdk/lib/io/socket.dart
|
| diff --git a/sdk/lib/io/socket.dart b/sdk/lib/io/socket.dart
|
| index 6ad9592286edc65f4d407780e7cf3080dfd629f0..c32d5a83f6bab8b2db1f5482bf72fca0d8d2a9b3 100644
|
| --- a/sdk/lib/io/socket.dart
|
| +++ b/sdk/lib/io/socket.dart
|
| @@ -100,8 +100,9 @@ abstract class InternetAddress {
|
| }
|
|
|
| /**
|
| - * The RawServerSocket is a server socket, providing a stream of low-level
|
| - * [RawSocket]s.
|
| + * A [RawServerSocket] represents a listening socket, and provides a
|
| + * stream of low-level [RawSocket] objects, one for each connection
|
| + * made to the listening socket.
|
| *
|
| * See [RawSocket] for more info.
|
| */
|
| @@ -111,13 +112,23 @@ abstract class RawServerSocket implements Stream<RawSocket> {
|
| * completes the server socket is bound to the given [address] and
|
| * [port] and has started listening on it.
|
| *
|
| - * The default value for [address] is 127.0.0.1, which will allow
|
| - * only incoming connections from the local host. To allow for
|
| - * incoming connection from the network use either the value 0.0.0.0
|
| - * to bind to all interfaces or the IP address of a specific
|
| - * interface.
|
| + * The [address] can either be a [String] or an
|
| + * [InternetAddress]. If [address] is a [String], [bind] will
|
| + * perform a [InternetAddress.lookup] and use the first value in the
|
| + * list. To listen on the loopback adapter, which will allow only
|
| + * incoming connections from the local host, use the value
|
| + * [InternetAddress.LOOPBACK_IP_V4] or
|
| + * [InternetAddress.LOOPBACK_IP_V6]. To allow for incoming
|
| + * connection from the network use either one of the values
|
| + * [InternetAddress.ANY_IP_V4] or [InternetAddress.ANY_IP_V6] to
|
| + * bind to all interfaces or the IP address of a specific interface.
|
| *
|
| - * If [port] has the value [:0:] (the default) an ephemeral port will
|
| + * If an IP version 6 (IPv6) address is used, both IP version 6
|
| + * (IPv6) and version 4 (IPv4) connections will be accepted. To
|
| + * restrict this to version 6 (IPv6) only, use [setOption] to set
|
| + * version 6 only.
|
| + *
|
| + * If [port] has the value [:0:] an ephemeral port will
|
| * be chosen by the system. The actual port used can be retrieved
|
| * using the [:port:] getter.
|
| *
|
| @@ -126,9 +137,9 @@ abstract class RawServerSocket implements Stream<RawSocket> {
|
| * value of [:0:] (the default) a reasonable value will be chosen by
|
| * the system.
|
| */
|
| - external static Future<RawServerSocket> bind([address = "127.0.0.1",
|
| - int port = 0,
|
| - int backlog = 0]);
|
| + external static Future<RawServerSocket> bind(address,
|
| + int port,
|
| + {int backlog: 0});
|
|
|
| /**
|
| * Returns the port used by this socket.
|
| @@ -143,8 +154,9 @@ abstract class RawServerSocket implements Stream<RawSocket> {
|
|
|
|
|
| /**
|
| - * The [ServerSocket] is server socket, providing a stream of high-level
|
| - * [Socket]s.
|
| + * A [ServerSocket] represents a listening socket, and provides a
|
| + * stream of [Socket] objects, one for each connection made to the
|
| + * listening socket.
|
| *
|
| * See [Socket] for more info.
|
| */
|
| @@ -154,24 +166,34 @@ abstract class ServerSocket implements Stream<Socket> {
|
| * completes the server socket is bound to the given [address] and
|
| * [port] and has started listening on it.
|
| *
|
| - * The default value for [address] is 127.0.0.1, which will allow
|
| - * only incoming connections from the local host. To allow for
|
| - * incoming connection from the network use either the value 0.0.0.0
|
| - * to bind to all interfaces or the IP address of a specific
|
| - * interface.
|
| + * The [address] can either be a [String] or an
|
| + * [InternetAddress]. If [address] is a [String], [bind] will
|
| + * perform a [InternetAddress.lookup] and use the first value in the
|
| + * list. To listen on the loopback adapter, which will allow only
|
| + * incoming connections from the local host, use the value
|
| + * [InternetAddress.LOOPBACK_IP_V4] or
|
| + * [InternetAddress.LOOPBACK_IP_V6]. To allow for incoming
|
| + * connection from the network use either one of the values
|
| + * [InternetAddress.ANY_IP_V4] or [InternetAddress.ANY_IP_V6] to
|
| + * bind to all interfaces or the IP address of a specific interface.
|
| *
|
| - * If [port] has the value [:0:] (the default) an ephemeral port will
|
| - * be chosen by the system. The actual port used can be retrieved
|
| - * using the [port] getter.
|
| + * If an IP version 6 (IPv6) address is used, both IP version 6
|
| + * (IPv6) and version 4 (IPv4) connections will be accepted. To
|
| + * restrict this to version 6 (IPv6) only, use [setOption] to set
|
| + * version 6 only.
|
| + *
|
| + * If [port] has the value [:0:] an ephemeral port will be chosen by
|
| + * the system. The actual port used can be retrieved using the
|
| + * [port] getter.
|
| *
|
| * The optional argument [backlog] can be used to specify the listen
|
| * backlog for the underlying OS listen setup. If [backlog] has the
|
| * value of [:0:] (the default) a reasonable value will be chosen by
|
| * the system.
|
| */
|
| - external static Future<ServerSocket> bind([address = "127.0.0.1",
|
| - int port = 0,
|
| - int backlog = 0]);
|
| + external static Future<ServerSocket> bind(address,
|
| + int port,
|
| + {int backlog: 0});
|
|
|
| /**
|
| * Returns the port used by this socket.
|
|
|