C# Class Brunet.Security.Dtls.DtlsAssociation

A Dtls filter for use with generic transports.
Inheritance: Brunet.Security.SecurityAssociation, IIdentifierPair
Datei anzeigen Open project: pstjuste/brunet Class Usage Examples

Public Properties

Property Type Description
PType Brunet.Util.PType

Protected Properties

Property Type Description
_buffer byte[]
_buffer_sync object
_client bool
_fe FuzzyEvent
_fe_lock int
_ip Brunet.Messaging.IdentifierPair
_read OpenSSL.Core.BIO
_ssl Ssl
_write OpenSSL.Core.BIO

Public Methods

Method Description
DtlsAssociation ( ISender sender, CertificateHandler ch, PType ptype, Ssl ssl, bool client ) : Brunet.Messaging

Create a DtlsFilter.

Handshake ( ) : void

Start the session earlier than waiting for a packet to be sent. Not doing this may increase the amount of lost packets.

Renegotiate ( ) : void

The session has gone on long enough that it is time for the peers to start using a new set of symmetric keys.

ToString ( ) : string

Protected Methods

Method Description
HandleIncoming ( MemBlock data, MemBlock &app_data ) : bool
HandleOutgoing ( ICopyable app_data, ICopyable &data ) : bool
HandleWouldBlock ( ) : void

Blocking may occur for two reasons, no data available or the handshake isn't complete. If the handshake isn't complete, the timer will be set to >= 0, at 0, we need to call handshake to continue, if it is greater than 0, we need to schedule a timer to call handshake later.

RemoteCertificateValidation ( object sender, Mono.Security.X509.X509Certificate cert, Mono.Security.X509.X509Chain chain, int depth, VerifyResult result ) : bool

Override to review certificate validation decisions.

Private Methods

Method Description
HandleWouldBlock ( System.DateTime now ) : void

Timercall back for internal ssl timeout.

Method Details

DtlsAssociation() public method

Create a DtlsFilter.
public DtlsAssociation ( ISender sender, CertificateHandler ch, PType ptype, Ssl ssl, bool client ) : Brunet.Messaging
sender ISender
ch Brunet.Security.CertificateHandler
ptype Brunet.Util.PType
ssl Ssl
client bool Use client initialization parameters.
return Brunet.Messaging

HandleIncoming() protected method

protected HandleIncoming ( MemBlock data, MemBlock &app_data ) : bool
data Brunet.Util.MemBlock
app_data Brunet.Util.MemBlock
return bool

HandleOutgoing() protected method

protected HandleOutgoing ( ICopyable app_data, ICopyable &data ) : bool
app_data ICopyable
data ICopyable
return bool

HandleWouldBlock() protected method

Blocking may occur for two reasons, no data available or the handshake isn't complete. If the handshake isn't complete, the timer will be set to >= 0, at 0, we need to call handshake to continue, if it is greater than 0, we need to schedule a timer to call handshake later.
protected HandleWouldBlock ( ) : void
return void

Handshake() public method

Start the session earlier than waiting for a packet to be sent. Not doing this may increase the amount of lost packets.
public Handshake ( ) : void
return void

RemoteCertificateValidation() protected method

Override to review certificate validation decisions.
protected RemoteCertificateValidation ( object sender, Mono.Security.X509.X509Certificate cert, Mono.Security.X509.X509Chain chain, int depth, VerifyResult result ) : bool
sender object
cert Mono.Security.X509.X509Certificate
chain Mono.Security.X509.X509Chain
depth int
result VerifyResult
return bool

Renegotiate() public method

The session has gone on long enough that it is time for the peers to start using a new set of symmetric keys.
public Renegotiate ( ) : void
return void

ToString() public method

public ToString ( ) : string
return string

Property Details

PType public_oe property

public PType,Brunet.Util PType
return Brunet.Util.PType

_buffer protected_oe property

protected byte[] _buffer
return byte[]

_buffer_sync protected_oe property

protected object _buffer_sync
return object

_client protected_oe property

protected bool _client
return bool

_fe protected_oe property

protected FuzzyEvent _fe
return FuzzyEvent

_fe_lock protected_oe property

protected int _fe_lock
return int

_ip protected_oe property

protected IdentifierPair,Brunet.Messaging _ip
return Brunet.Messaging.IdentifierPair

_read protected_oe property

protected BIO,OpenSSL.Core _read
return OpenSSL.Core.BIO

_ssl protected_oe property

protected Ssl _ssl
return Ssl

_write protected_oe property

protected BIO,OpenSSL.Core _write
return OpenSSL.Core.BIO