IpSecManager.UdpEncapsulationSocket

public static final class IpSecManager.UdpEncapsulationSocket
extends Object implements AutoCloseable

java.lang.Object
   ↳ android.net.IpSecManager.UdpEncapsulationSocket


This class provides access to a UDP encapsulation Socket.

UdpEncapsulationSocket wraps a system-provided datagram socket intended for IKEv2 signalling and UDP encapsulated IPsec traffic. Instances can be obtained by calling openUdpEncapsulationSocket(). The provided socket cannot be re-bound by the caller. The caller should not close the FileDescriptor returned by getFileDescriptor(), but should use close() instead.

Allowing the user to close or unbind a UDP encapsulation socket could impact the traffic of the next user who binds to that port. To prevent this scenario, these sockets are held open by the system so that they may only be closed by calling close() or when the user process exits.

Summary

Public methods

void close()

Close this socket.

FileDescriptor getFileDescriptor()

Get the encapsulation socket's file descriptor.

int getPort()

Get the bound port of the wrapped socket.

Protected methods

void finalize()

Check that the socket was closed properly.

Inherited methods

Public methods

close

void close ()

Close this socket.

This closes the wrapped socket. Open encapsulation sockets count against a user's resource limits, and forgetting to close them eventually will result in IpSecManager.ResourceUnavailableException being thrown.

Throws
IOException

getFileDescriptor

FileDescriptor getFileDescriptor ()

Get the encapsulation socket's file descriptor.

Returns
FileDescriptor

getPort

int getPort ()

Get the bound port of the wrapped socket.

Returns
int

Protected methods

finalize

void finalize ()

Check that the socket was closed properly.

Throws
Throwable