dart / 2 / dart-io / rawsecuresocket-class.html

RawSecureSocket class

RawSecureSocket provides a secure (SSL or TLS) network connection.

Client connections to a server are provided by calling RawSecureSocket.connect. A secure server, created with RawSecureServerSocket, also returns RawSecureSocket objects representing the server end of a secure connection. The certificate provided by the server is checked using the trusted certificates set in the SecurityContext object. The default SecurityContext object contains a built-in set of trusted root certificates for well-known certificate authorities.

Implemented types

Constructors

RawSecureSocket()

Properties

address → InternetAddress
read-only, inherited
The InternetAddress used to connect this socket.
first → Future<RawSocketEvent>
read-only, inherited
The first element of this stream.
hashCode → int
read-only, inherited
The hash code for this object.
isBroadcast → bool
read-only, inherited
Whether this stream is a broadcast stream.
isEmpty → Future<bool>
read-only, inherited
Whether this stream contains any elements.
last → Future<RawSocketEvent>
read-only, inherited
The last element of this stream.
length → Future<int>
read-only, inherited
The number of elements in this stream.
peerCertificate → X509Certificate?
read-only
Get the peer certificate for a connected RawSecureSocket. If this RawSecureSocket is the server end of a secure socket connection, peerCertificate will return the client certificate, or null, if no client certificate was received. If it is the client end, peerCertificate will return the server's certificate.
port → int
read-only, inherited
The port used by this socket.
readEventsEnabled ↔ bool
read / write, inherited
Set or get, if the RawSocket should listen for RawSocketEvent.read events. Default is true.
remoteAddress → InternetAddress
read-only, inherited
The remote InternetAddress connected to by this socket.
remotePort → int
read-only, inherited
The remote port connected to by this socket.
runtimeType → Type
read-only, inherited
A representation of the runtime type of the object.
selectedProtocol → String?
read-only
The protocol which was selected during protocol negotiation.
single → Future<RawSocketEvent>
read-only, inherited
The single element of this stream.
writeEventsEnabled ↔ bool
read / write, inherited
Set or get, if the RawSocket should listen for RawSocketEvent.write events. Default is true. This is a one-shot listener, and writeEventsEnabled must be set to true again to receive another write event.

Methods

any(bool test(RawSocketEvent element)) → Future<bool>
inherited
Checks whether test accepts any element provided by this stream.
asBroadcastStream({void onListen(StreamSubscription<RawSocketEvent> subscription)?, void onCancel(StreamSubscription<RawSocketEvent> subscription)?}) → Stream<RawSocketEvent>
inherited
Returns a multi-subscription stream that produces the same events as this.
asyncExpand<E>(Stream<E>? convert(RawSocketEvent event)) → Stream<E>
inherited
Transforms each element into a sequence of asynchronous events.
asyncMap<E>(FutureOr<E> convert(RawSocketEvent event)) → Stream<E>
inherited
Creates a new stream with each data event of this stream asynchronously mapped to a new event.
available() → int
inherited
The number of received and non-read bytes in the socket that can be read.
cast<R>() → Stream<R>
inherited
Adapt this stream to be a Stream<R>.
close() → Future<RawSocket>
inherited
Closes the socket.
contains(Object? needle) → Future<bool>
inherited
Returns whether needle occurs in the elements provided by this stream.
distinct([bool equals(RawSocketEvent previous, RawSocketEvent next)?]) → Stream<RawSocketEvent>
inherited
Skips data events if they are equal to the previous data event.
drain<E>([E? futureValue]) → Future<E>
inherited
Discards all data on this stream, but signals when it is done or an error occurred.
elementAt(int index) → Future<RawSocketEvent>
inherited
Returns the value of the indexth data event of this stream.
every(bool test(RawSocketEvent element)) → Future<bool>
inherited
Checks whether test accepts all elements provided by this stream.
expand<S>(Iterable<S> convert(RawSocketEvent element)) → Stream<S>
inherited
Transforms each element of this stream into a sequence of elements.
firstWhere(bool test(RawSocketEvent element), {RawSocketEvent orElse()?}) → Future<RawSocketEvent>
inherited
Finds the first element of this stream matching test.
fold<S>(S initialValue, S combine(S previous, RawSocketEvent element)) → Future<S>
inherited
Combines a sequence of values by repeatedly applying combine.
forEach(void action(RawSocketEvent element)) → Future
inherited
Executes action on each element of this stream.
getRawOption(RawSocketOption option) → Uint8List
@Since("2.2"), inherited
Reads low level information about the RawSocket.
handleError(Function onError, {bool test(dynamic error)?}) → Stream<RawSocketEvent>
inherited
Creates a wrapper Stream that intercepts some errors from this stream.
join([String separator = ""]) → Future<String>
inherited
Combines the string representation of elements into a single string.
lastWhere(bool test(RawSocketEvent element), {RawSocketEvent orElse()?}) → Future<RawSocketEvent>
inherited
Finds the last element in this stream matching test.
listen(void onData(RawSocketEvent event)?, {Function? onError, void onDone()?, bool? cancelOnError}) → StreamSubscription<RawSocketEvent>
inherited
Adds a subscription to this stream.
map<S>(S convert(RawSocketEvent event)) → Stream<S>
inherited
Transforms each element of this stream into a new stream event.
noSuchMethod(Invocation invocation) → dynamic
inherited
Invoked when a non-existent method or property is accessed.
pipe(StreamConsumer<RawSocketEvent> streamConsumer) → Future
inherited
Pipes the events of this stream into streamConsumer.
read([int? len]) → Uint8List?
inherited
Read up to len bytes from the socket.
readMessage([int? count]) → SocketMessage?
@Since("2.15"), inherited
Reads a message containing up to count bytes from the socket.
reduce(RawSocketEvent combine(RawSocketEvent previous, RawSocketEvent element)) → Future<RawSocketEvent>
inherited
Combines a sequence of values by repeatedly applying combine.
renegotiate({bool useSessionCache = true, bool requestClientCertificate = false, bool requireClientCertificate = false}) → void
@Deprecated("Not implemented")
Does nothing.
sendMessage(List<SocketControlMessage> controlMessages, List<int> data, [int offset = 0, int? count]) → int
@Since("2.15"), inherited
Writes socket control messages and data bytes to the socket.
setOption(SocketOption option, bool enabled) → bool
inherited
Customize the RawSocket.
setRawOption(RawSocketOption option) → void
@Since("2.2"), inherited
Customizes the RawSocket.
shutdown(SocketDirection direction) → void
inherited
Shuts down the socket in the direction.
singleWhere(bool test(RawSocketEvent element), {RawSocketEvent orElse()?}) → Future<RawSocketEvent>
inherited
Finds the single element in this stream matching test.
skip(int count) → Stream<RawSocketEvent>
inherited
Skips the first count data events from this stream.
skipWhile(bool test(RawSocketEvent element)) → Stream<RawSocketEvent>
inherited
Skip data events from this stream while they are matched by test.
take(int count) → Stream<RawSocketEvent>
inherited
Provides at most the first count data events of this stream.
takeWhile(bool test(RawSocketEvent element)) → Stream<RawSocketEvent>
inherited
Forwards data events while test is successful.
timeout(Duration timeLimit, {void onTimeout(EventSink<RawSocketEvent> sink)?}) → Stream<RawSocketEvent>
inherited
Creates a new stream with the same events as this stream.
toList() → Future<List<RawSocketEvent>>
inherited
Collects all elements of this stream in a List.
toSet() → Future<Set<RawSocketEvent>>
inherited
Collects the data of this stream in a Set.
toString() → String
inherited
A string representation of this object.
transform<S>(StreamTransformer<RawSocketEvent, S> streamTransformer) → Stream<S>
inherited
Applies streamTransformer to this stream.
where(bool test(RawSocketEvent event)) → Stream<RawSocketEvent>
inherited
Creates a new stream from this stream that discards some elements.
write(List<int> buffer, [int offset = 0, int? count]) → int
inherited
Writes up to count bytes of the buffer from offset buffer offset to the socket.

Operators

operator ==(Object other) → bool
inherited
The equality operator.

Static Methods

connect(dynamic host, int port, {SecurityContext? context, bool onBadCertificate(X509Certificate certificate)?, void keyLog(String line)?, List<String>? supportedProtocols, Duration? timeout}) → Future<RawSecureSocket>
override
Constructs a new secure client socket and connect it to the given host on the given port.
secure(RawSocket socket, {StreamSubscription<RawSocketEvent>? subscription, dynamic host, SecurityContext? context, bool onBadCertificate(X509Certificate certificate)?, void keyLog(String line)?, List<String>? supportedProtocols}) → Future<RawSecureSocket>
Initiates TLS on an existing connection.
secureServer(RawSocket socket, SecurityContext? context, {StreamSubscription<RawSocketEvent>? subscription, List<int>? bufferedData, bool requestClientCertificate = false, bool requireClientCertificate = false, List<String>? supportedProtocols}) → Future<RawSecureSocket>
Initiates TLS on an existing server connection.
startConnect(dynamic host, int port, {SecurityContext? context, bool onBadCertificate(X509Certificate certificate)?, void keyLog(String line)?, List<String>? supportedProtocols}) → Future<ConnectionTask<RawSecureSocket>>
override
Like connect, but returns a Future that completes with a ConnectionTask that can be cancelled if the RawSecureSocket is no longer needed.

© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.18.5/dart-io/RawSecureSocket-class.html