DTLSTransport.smali
.class public Lorg/spongycastle/crypto/tls/DTLSTransport;
.super Ljava/lang/Object;
.source "DTLSTransport.java"
# interfaces
.implements Lorg/spongycastle/crypto/tls/DatagramTransport;
# instance fields
.field private final recordLayer:Lorg/spongycastle/crypto/tls/DTLSRecordLayer;
# direct methods
.method constructor <init>(Lorg/spongycastle/crypto/tls/DTLSRecordLayer;)V
.registers 2
.prologue
.line 11
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 12
iput-object p1, p0, Lorg/spongycastle/crypto/tls/DTLSTransport;->recordLayer:Lorg/spongycastle/crypto/tls/DTLSRecordLayer;
.line 13
return-void
.end method
# virtual methods
.method public close()V
.registers 2
.prologue
.line 78
iget-object v0, p0, Lorg/spongycastle/crypto/tls/DTLSTransport;->recordLayer:Lorg/spongycastle/crypto/tls/DTLSRecordLayer;
invoke-virtual {v0}, Lorg/spongycastle/crypto/tls/DTLSRecordLayer;->close()V
.line 79
return-void
.end method
.method public getReceiveLimit()I
.registers 2
.prologue
.line 18
iget-object v0, p0, Lorg/spongycastle/crypto/tls/DTLSTransport;->recordLayer:Lorg/spongycastle/crypto/tls/DTLSRecordLayer;
invoke-virtual {v0}, Lorg/spongycastle/crypto/tls/DTLSRecordLayer;->getReceiveLimit()I
move-result v0
return v0
.end method
.method public getSendLimit()I
.registers 2
.prologue
.line 24
iget-object v0, p0, Lorg/spongycastle/crypto/tls/DTLSTransport;->recordLayer:Lorg/spongycastle/crypto/tls/DTLSRecordLayer;
invoke-virtual {v0}, Lorg/spongycastle/crypto/tls/DTLSRecordLayer;->getSendLimit()I
move-result v0
return v0
.end method
.method public receive([BIII)I
.registers 8
.prologue
const/16 v2, 0x50
.line 32
:try_start_2
iget-object v0, p0, Lorg/spongycastle/crypto/tls/DTLSTransport;->recordLayer:Lorg/spongycastle/crypto/tls/DTLSRecordLayer;
invoke-virtual {v0, p1, p2, p3, p4}, Lorg/spongycastle/crypto/tls/DTLSRecordLayer;->receive([BIII)I
:try_end_7
.catch Lorg/spongycastle/crypto/tls/TlsFatalAlert; {:try_start_2 .. :try_end_7} :catch_9
.catch Ljava/io/IOException; {:try_start_2 .. :try_end_7} :catch_14
.catch Ljava/lang/RuntimeException; {:try_start_2 .. :try_end_7} :catch_1b
move-result v0
return v0
.line 34
:catch_9
move-exception v0
.line 36
iget-object v1, p0, Lorg/spongycastle/crypto/tls/DTLSTransport;->recordLayer:Lorg/spongycastle/crypto/tls/DTLSRecordLayer;
invoke-virtual {v0}, Lorg/spongycastle/crypto/tls/TlsFatalAlert;->getAlertDescription()S
move-result v2
invoke-virtual {v1, v2}, Lorg/spongycastle/crypto/tls/DTLSRecordLayer;->fail(S)V
.line 37
throw v0
.line 39
:catch_14
move-exception v0
.line 41
iget-object v1, p0, Lorg/spongycastle/crypto/tls/DTLSTransport;->recordLayer:Lorg/spongycastle/crypto/tls/DTLSRecordLayer;
invoke-virtual {v1, v2}, Lorg/spongycastle/crypto/tls/DTLSRecordLayer;->fail(S)V
.line 42
throw v0
.line 44
:catch_1b
move-exception v0
.line 46
iget-object v1, p0, Lorg/spongycastle/crypto/tls/DTLSTransport;->recordLayer:Lorg/spongycastle/crypto/tls/DTLSRecordLayer;
invoke-virtual {v1, v2}, Lorg/spongycastle/crypto/tls/DTLSRecordLayer;->fail(S)V
.line 47
new-instance v1, Lorg/spongycastle/crypto/tls/TlsFatalAlert;
invoke-direct {v1, v2, v0}, Lorg/spongycastle/crypto/tls/TlsFatalAlert;-><init>(SLjava/lang/Throwable;)V
throw v1
.end method
.method public send([BII)V
.registers 7
.prologue
const/16 v2, 0x50
.line 56
:try_start_2
iget-object v0, p0, Lorg/spongycastle/crypto/tls/DTLSTransport;->recordLayer:Lorg/spongycastle/crypto/tls/DTLSRecordLayer;
invoke-virtual {v0, p1, p2, p3}, Lorg/spongycastle/crypto/tls/DTLSRecordLayer;->send([BII)V
:try_end_7
.catch Lorg/spongycastle/crypto/tls/TlsFatalAlert; {:try_start_2 .. :try_end_7} :catch_8
.catch Ljava/io/IOException; {:try_start_2 .. :try_end_7} :catch_13
.catch Ljava/lang/RuntimeException; {:try_start_2 .. :try_end_7} :catch_1a
.line 72
return-void
.line 58
:catch_8
move-exception v0
.line 60
iget-object v1, p0, Lorg/spongycastle/crypto/tls/DTLSTransport;->recordLayer:Lorg/spongycastle/crypto/tls/DTLSRecordLayer;
invoke-virtual {v0}, Lorg/spongycastle/crypto/tls/TlsFatalAlert;->getAlertDescription()S
move-result v2
invoke-virtual {v1, v2}, Lorg/spongycastle/crypto/tls/DTLSRecordLayer;->fail(S)V
.line 61
throw v0
.line 63
:catch_13
move-exception v0
.line 65
iget-object v1, p0, Lorg/spongycastle/crypto/tls/DTLSTransport;->recordLayer:Lorg/spongycastle/crypto/tls/DTLSRecordLayer;
invoke-virtual {v1, v2}, Lorg/spongycastle/crypto/tls/DTLSRecordLayer;->fail(S)V
.line 66
throw v0
.line 68
:catch_1a
move-exception v0
.line 70
iget-object v1, p0, Lorg/spongycastle/crypto/tls/DTLSTransport;->recordLayer:Lorg/spongycastle/crypto/tls/DTLSRecordLayer;
invoke-virtual {v1, v2}, Lorg/spongycastle/crypto/tls/DTLSRecordLayer;->fail(S)V
.line 71
new-instance v1, Lorg/spongycastle/crypto/tls/TlsFatalAlert;
invoke-direct {v1, v2, v0}, Lorg/spongycastle/crypto/tls/TlsFatalAlert;-><init>(SLjava/lang/Throwable;)V
throw v1
.end method