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

Side by Side Diff: sdk/lib/io/secure_server_socket.dart

Issue 2770573003: Add documentation to ALPN functionality in dart:io (Closed)
Patch Set: addressed comments Created 3 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
« no previous file with comments | « no previous file | sdk/lib/io/secure_socket.dart » ('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 part of dart.io; 5 part of dart.io;
6 6
7 /** 7 /**
8 * The [SecureServerSocket] is a server socket, providing a stream of high-level 8 * The [SecureServerSocket] is a server socket, providing a stream of high-level
9 * [Socket]s. 9 * [Socket]s.
10 * 10 *
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 * [address] must be given as a numeric address, not a host name. 46 * [address] must be given as a numeric address, not a host name.
47 * 47 *
48 * To request or require that clients authenticate by providing an SSL (TLS) 48 * To request or require that clients authenticate by providing an SSL (TLS)
49 * client certificate, set the optional parameter [requestClientCertificate] 49 * client certificate, set the optional parameter [requestClientCertificate]
50 * or [requireClientCertificate] to true. Requiring a certificate implies 50 * or [requireClientCertificate] to true. Requiring a certificate implies
51 * requesting a certificate, so setting both is redundant. 51 * requesting a certificate, so setting both is redundant.
52 * To check whether a client certificate was received, check 52 * To check whether a client certificate was received, check
53 * SecureSocket.peerCertificate after connecting. If no certificate 53 * SecureSocket.peerCertificate after connecting. If no certificate
54 * was received, the result will be null. 54 * was received, the result will be null.
55 * 55 *
56 * [supportedProtocols] is an optional list of protocols (in decreasing
57 * order of preference) to use during the ALPN protocol negogiation with
58 * clients. Example values are "http/1.1" or "h2". The selected protocol
59 * can be obtained via [SecureSocket.selectedProtocol].
60 *
56 * The optional argument [shared] specifies whether additional 61 * The optional argument [shared] specifies whether additional
57 * SecureServerSocket objects can bind to the same combination of `address`, 62 * SecureServerSocket objects can bind to the same combination of `address`,
58 * `port` and `v6Only`. If `shared` is `true` and more `SecureServerSocket`s 63 * `port` and `v6Only`. If `shared` is `true` and more `SecureServerSocket`s
59 * from this isolate or other isolates are bound to the port, then the 64 * from this isolate or other isolates are bound to the port, then the
60 * incoming connections will be distributed among all the bound 65 * incoming connections will be distributed among all the bound
61 * `SecureServerSocket`s. Connections can be distributed over multiple 66 * `SecureServerSocket`s. Connections can be distributed over multiple
62 * isolates this way. 67 * isolates this way.
63 */ 68 */
64 static Future<SecureServerSocket> bind( 69 static Future<SecureServerSocket> bind(
65 address, int port, SecurityContext context, 70 address, int port, SecurityContext context,
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
170 * 175 *
171 * [address] must be given as a numeric address, not a host name. 176 * [address] must be given as a numeric address, not a host name.
172 * 177 *
173 * To request or require that clients authenticate by providing an SSL (TLS) 178 * To request or require that clients authenticate by providing an SSL (TLS)
174 * client certificate, set the optional parameters requestClientCertificate or 179 * client certificate, set the optional parameters requestClientCertificate or
175 * requireClientCertificate to true. Require implies request, so one doesn't 180 * requireClientCertificate to true. Require implies request, so one doesn't
176 * need to specify both. To check whether a client certificate was received, 181 * need to specify both. To check whether a client certificate was received,
177 * check SecureSocket.peerCertificate after connecting. If no certificate 182 * check SecureSocket.peerCertificate after connecting. If no certificate
178 * was received, the result will be null. 183 * was received, the result will be null.
179 * 184 *
185 * [supportedProtocols] is an optional list of protocols (in decreasing
186 * order of preference) to use during the ALPN protocol negogiation with
187 * clients. Example values are "http/1.1" or "h2". The selected protocol
188 * can be obtained via [RawSecureSocket.selectedProtocol].
189 *
180 * The optional argument [shared] specifies whether additional 190 * The optional argument [shared] specifies whether additional
181 * RawSecureServerSocket objects can bind to the same combination of 191 * RawSecureServerSocket objects can bind to the same combination of
182 * `address`, `port` and `v6Only`. If `shared` is `true` and more 192 * `address`, `port` and `v6Only`. If `shared` is `true` and more
183 * `RawSecureServerSocket`s from this isolate or other isolates are bound to 193 * `RawSecureServerSocket`s from this isolate or other isolates are bound to
184 * the port, then the incoming connections will be distributed among all the 194 * the port, then the incoming connections will be distributed among all the
185 * bound `RawSecureServerSocket`s. Connections can be distributed over 195 * bound `RawSecureServerSocket`s. Connections can be distributed over
186 * multiple isolates this way. 196 * multiple isolates this way.
187 */ 197 */
188 static Future<RawSecureServerSocket> bind( 198 static Future<RawSecureServerSocket> bind(
189 address, int port, SecurityContext context, 199 address, int port, SecurityContext context,
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after
272 onError: _controller.addError, onDone: _controller.close); 282 onError: _controller.addError, onDone: _controller.close);
273 } else { 283 } else {
274 close(); 284 close();
275 } 285 }
276 } 286 }
277 287
278 void set _owner(owner) { 288 void set _owner(owner) {
279 (_socket as dynamic)._owner = owner; 289 (_socket as dynamic)._owner = owner;
280 } 290 }
281 } 291 }
OLDNEW
« no previous file with comments | « no previous file | sdk/lib/io/secure_socket.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698